Predictions Based on Evolutionary Algorithms Using Predefined Control Profiles
Abstract
:1. Introduction
- RHC is a closed-loop control structure (Appendix A) using a Process Model (PM).
2. Optimal Control Problems—Defining Elements
2.1. Process Model
2.2. Constraints
2.3. Performance Index
3. Controller with Predictions Based on EAs and Control Profiles
3.1. Main Idea of the Proposed Controller
- Nota Bene:
- The smaller the value , the smaller the extent of the new control variables’ range. This implication seems favourable for our objective and encourages us to choose a small value . However, a too-small value will cause the EA’s convergence to be lost, that is, the value J to be smaller than the reference value. That is why a practical approach is to choose following a few simulations.
3.2. Controller Structure with the Adaptation of Control Variables’ Range
- The prediction and optimization module—called Predictor in the sequel—is implemented using an EA, not mandatorily a certain version of the EA. The sole request is to assure good efficiency in solving the optimization problem.
- The prediction’s length depends on the difference between the current () and final () moments. So, a prediction has control output values for the remaining sampling periods.
- The objective function computation module uses the PM and an integration procedure. The Predictor sends a candidate prediction and the current state vector toward this module, both needed by the numerical integration.
- The Controller adapts the control variables’ range online to the sampling period’s rank (). These ranges are determined offline using the reference CP, that is, the CP yielding the optimal or quasi-optimal process evolution from an initial state vector.
- The online control ranges’ adaptation will cause the computational complexity to decrease, keeping the EA’s convergence.
- At the moment , the Controller sends the first element of the predicted sequence toward the Process.
- The grey arrows correspond to data obtained offline and available to the Controller, while the red arrows indicate the data exchanged between the Process and the Controller.
- -
- The closed-loop CP, which is effectively achieved by the control structure, will be in the neighbourhood of the reference CP;
- -
- The PM accuracy is good enough to involve the state predictions resembling the process state trajectories.
3.3. Implementation of the Controller
Algorithm 1 Pseudocode of the function “Predictor_EA” |
Predicted_sequence /* This function determines .*/ 1 # Global parameters’ initialization. 2 NN0 /*N0: number of individuals*/ 3 NGen Ngen0; /*NGen0: number of generations */ 4 ngeneH-k; /*ngene: number of genes */ 5 for i = 1…N. 6 for j = 1…ngene; 7 pop (i, j) random(). /*The control variables’ ranges are */ 8 end. 9 end. 10 # Objective function’computation for the initial population 11 g1; 12 Ncalls0; 13 F 0; 14 while (g ≤ Ngen) and (F = 0) 15 #Selection of chromozomes; 16 #Crossover; 17 #Mutation; 18 #Replacement; 19 #Update F. 20 g g + 1. 21 end. 22 Predicted_sequence pop(1) |
4. Simulation Study
4.1. Study’s Objectives and Preliminaries
- To implement and simulate the RHC and an EA that makes optimal predictions. The authors have already achieved this objective in previous works, but there is a new context related to predefined control profiles requiring the adjustment of old implementations.
- To integrate reference control profiles and adaptation of control variables’ ranges within predictions based on EA. The new ranges are involved in the initial population generation and mutation operator.
- To validate the hypothesis that the new technique can reduce the computational complexity of the Controller through the results’ analysis. The computational complexity is the major impediment to the Controller’s feasibility when using metaheuristics.
- The simulation model of the Process and PM are identical. This situation is not trivial because there will be differences between the reference CP and the CP achieved by the closed loop. These differences are due to the closing of the control loop. The reference CP is an open-loop solution.
- The simulation model of the Process is considered equivalent to the PM to which a uniformly distributed perturbation is added. If the vectors and are the state variables of the Process and PM, respectively, it holds:
4.2. Algorithm of the Closed-Loop Simulation
- At step , the procedure “Controller_EA” is called to calculate the optimal control value considering the current state . This control value is memorized as a vector “uRHC” element.
- The procedure “RealProcessStep” uses the Process’s simulation model and returns the next state of the Process.
- This state is memorized and considered a new current state for the next sampling period.
- The variable “Ncalls_C” cumulates the numbers Ncalls of all steps and, in this way, evaluates the computational complexity on the entire control horizon.
5. Case Study #1—Process with a Single Control Variable
5.1. Optimal Control Problem # 1
- —concentration of secreted protein.
- —concentration of total protein.
- —density of culture cell.
- —concentration of substrate.
- —holdup volume.
5.2. The Reference Control Profile
5.3. Simulation Results
5.3.1. Simulation without Range Adaptation
5.3.2. Simulation with Range Adaptation (Predefined Control Profile)
5.3.3. Simulation with Range Adaptation and Perturbated Process
5.4. Discussion of Case #1
- The aspects of process evolution are very alike.
- The Controller shows convergences in all simulations.
- The optimal behaviour is not degraded. The J0 and standard deviation values are very similar because the shrunken ranges do not impede the convergence process. Practically the solutions converge toward the same optimal region of the searching space.
6. Case Study #2: Multivariable Process and Complete Objective Function
6.1. OCP’s Statement
- -
- The Process is multivariable; it has two control variables.
- -
- Besides the final cost, the objective function also has an integral component (Remark 2).
6.2. Results and Discussion of Case #2
7. Conclusions
- In the new context related to predefined control profiles, we reconsidered the implementation and simulation of closed loops based on RHC and EAs to make optimal predictions. The necessary adjustments have been made.
- The control profiles were determined and integrated into the EA, and the control range adaptation was involved in the initial population generation at each sampling period.
- The computational complexity is a bar for using metaheuristics to optimize inside control structures. The simulation analysis of the two case studies proved that the proposed technique is effective, and the computational complexity decrease is large (63% and, respectively, 43%).
Supplementary Materials
Author Contributions
Funding
Acknowledgments
Conflicts of Interest
Appendix A
Receding Horizon Control
- The Controller makes optimal predictions that optimize the cost criterion by looking ahead for several sampling periods, but the Controller’s output is only implemented for the current step.
- Predictions consider the number of steps that define the current prediction horizon and use a PM; the latter has to reproduce the system’s dynamic as accurately as possible.
- An optimal prediction is a control values sequence covering the current prediction horizon () that optimizes the objective function. The first element in this optimal sequence, denoted by , will be the control output value at the moment .
- The prediction horizon’s left extremity “recedes” at the next step but keeps the final time. The Controller takes updated information concerning the process state and looks ahead for the new prediction horizon.
Appendix B
Description of the Evolutionary Algorithm
- -
- The population has μ chromosomes (individuals);
- -
- The offspring: λ chromosomes ();
- -
- The selection uses universal sampling with selection pressure (s) [3];
- -
- The mutation operator: variable step size with global variance adaptation, using the “1/5 success rule” [1].
- -
- The crossover operator: in a single point;
- -
- The replacement strategy: the offspring replaces the λ worst individuals of the current generation.
- -
- After NGen generations, the first stop criterion stops the population’s evolution.
- -
- The second stop criterion: the best chromosome’s fitness value is superior to a preestablished value J0.
| . J0 = 31.8. N0 = 35. . NGen = 70. s = 1.8. amic = 0.85. |
Appendix C
Appendix C.1. Simulation without Range Adaptation
Appendix C.2. Simulation with Range Adaptation
Appendix C.3. Simulation with Range Adaptation and Process Different from PM
Appendix D
Appendix D.1. Simulation without Range Adaptation
Appendix D.2. Simulation with Range Adaptation
References
- Kruse, R.; Borgelt, C.; Braune, C.; Mostaghim, S.; Steinbrecher, M. Computational Intelligence—A Methodological Introduction, 2nd ed.; Springer: Berlin/Heidelberg, Germany, 2016. [Google Scholar] [CrossRef]
- Siarry, P. Metaheuristics; Springer: Berlin/Heidelberg, Germany, 2016; ISBN 978-3-319-45403-0. [Google Scholar]
- Talbi, E.G. Metaheuristics—From Design to Implementation; Wiley: Hoboken, NJ, USA, 2009; ISBN 978-0-470-27858-1. [Google Scholar]
- Faber, R.; Jockenhövelb, T.; Tsatsaronis, G. Dynamic optimization with simulated annealing. Comput. Chem. Eng. 2005, 29, 273–290. [Google Scholar] [CrossRef]
- Onwubolu, G.; Babu, B.V. New Optimization Techniques in Engineering; Springer: Berlin/Heidelberg, Germany, 2004. [Google Scholar]
- Valadi, J.; Siarry, P. Applications of Metaheuristics in Process Engineering; Springer International Publishing: Berlin/Heidelberg, Germany, 2014; pp. 1–39. [Google Scholar] [CrossRef]
- Minzu, V.; Riahi, S.; Rusu, E. Optimal control of an ultraviolet water disinfection system. Appl. Sci. 2021, 11, 2638. [Google Scholar] [CrossRef]
- Minzu, V.; Ifrim, G.; Arama, I. Control of Microalgae Growth in Artificially Lighted Photobioreactors Using Metaheuristic-Based Predictions. Sensors 2021, 21, 8065. [Google Scholar] [CrossRef] [PubMed]
- Hu, X.B.; Chen, W.H. Genetic algorithm based on receding horizon control for arrival sequencing and scheduling. Eng. Appl. Artif. Intell. 2005, 18, 633–642. [Google Scholar] [CrossRef] [Green Version]
- Hu, X.B.; Chen, W.H. Genetic algorithm based on receding horizon control for real-time implementations in dynamic environments. In Proceedings of the 16th Triennial World Congress, Prague, Czech Republic, 4–8 July 2005; Elsevier IFAC Publications: Amsterdam, The Netherlands, 2005. [Google Scholar]
- Mayne, D.Q.; Michalska, H. Receding Horizon Control of Nonlinear Systems. IEEE Trans. Autom. Control 1990, 35, 814–824. [Google Scholar] [CrossRef]
- Minzu, V.; Serbencu, A. Systematic procedure for optimal controller implementation using metaheuristic algorithms. Intell. Autom. Soft Comput. 2020, 26, 663–677. [Google Scholar] [CrossRef]
- Goggos, V.; King, R. Evolutionary predictive control. Comput. Chem. Eng. 1996, 20 (Suppl. 2), S817–S822. [Google Scholar] [CrossRef]
- Chiang, P.-K.; Willems, P. Combine Evolutionary Optimization with Model Predictive Control in Real-time Flood Control of a River System. Water Resour. Manag. 2015, 29, 2527–2542. [Google Scholar] [CrossRef]
- Minzu, V. Quasi-Optimal Character of Metaheuristic-Based Algorithms Used in Closed-Loop—Evaluation through Simulation Series. In Proceedings of the ISEEE, Galati, Romania, 18–20 October 2019. [Google Scholar]
- Minzu, V. Optimal Control Implementation with Terminal Penalty Using Metaheuristic Algorithms. Automation 2020, 1, 48–65. [Google Scholar] [CrossRef]
- Minzu, V.; Riahi, S.; Rusu, E. Implementation aspects regarding closed-loop control systems using evolutionary algorithms. Inventions 2021, 6, 53. [Google Scholar] [CrossRef]
- Minzu, V.; Arama, I. Optimal Control Systems Using Evolutionary Algorithm-Control Input Range Estimation. Automation 2022, 3, 95–115. [Google Scholar] [CrossRef]
- Abraham, A.; Jain, L.; Goldberg, R. Evolutionary Multiobjective Optimization—Theoretical Advances and Applications; Springer: Berlin/Heidelberg, Germany, 2005; ISBN 1-85233-787-7. [Google Scholar]
- Banga, J.R.; Balsa-Canto, E.; Moles, C.G.; Alonso, A. Dynamic optimization of bioprocesses: Efficient and robust numerical strategies. J. Biotechnol. 2005, 117, 407–419. [Google Scholar] [CrossRef] [PubMed]
- Balsa-Canto, E.; Banga, J.R.; Aloso, A.V.; Vassiliadis, V.S. Dynamic optimization of chemical and biochemical processes using restricted second-order information 2001. Comput. Chem. Eng. 2001, 25, 539–546. [Google Scholar] [CrossRef]
Run # | J0 | Ncalls | Run # | J0 | Ncalls |
---|---|---|---|---|---|
1 | 31.867 | 103,893 | 21 | 31.869 | 115,447 |
2 | 31.960 | 101,867 | 22 | 31.940 | 106,851 |
3 | 31.939 | 97,526 | 23 | 31.904 | 114,410 |
4 | 31.962 | 105,024 | 24 | 31.887 | 91,767 |
5 | 31.915 | 78,322 | 25 | 31.994 | 107,582 |
6 | 31.894 | 94,649 | 26 | 31.804 | 109,752 |
7 | 31.873 | 104,159 | 27 | 31.813 | 97,892 |
8 | 31.961 | 87,972 | 28 | 31.971 | 95,134 |
9 | 32.054 | 99,993 | 29 | 31.852 | 93,878 |
10 | 31.885 | 121,889 | 30 | 31.863 | 92,734 |
11 | 31.868 | 102,303 | 31 | 31.971 | 99,226 |
12 | 31.863 | 112,949 | 32 | 31.823 | 110,145 |
13 | 31.866 | 97,014 | 33 | 31.908 | 121,515 |
14 | 32.115 | 112,166 | 34 | 31.844 | 111,978 |
15 | 31.845 | 115,368 | 35 | 31.964 | 90,920 |
16 | 31.889 | 116,501 | 36 | 31.912 | 106,542 |
17 | 31.896 | 102,256 | 37 | 31.913 | 101,207 |
18 | 31.872 | 109,789 | 38 | 31.986 | 89,939 |
19 | 31.838 | 102,723 | 39 | 31.945 | 97,510 |
20 | 31.884 | 118,861 | 40 | 31.927 | 111,641 |
Jmin | Javg | Jmax | Sdev | Jtypical |
---|---|---|---|---|
31.04 | 31.908 | 32.114 | 0.064 | 31.9082 |
Run # | J | Ncalls | Run # | J | Ncalls |
---|---|---|---|---|---|
1 | 31.836 | 43,972 | 21 | 31.937 | 42,637 |
2 | 31.837 | 30,398 | 22 | 32.030 | 31,717 |
3 | 32.043 | 29,163 | 23 | 32.045 | 35,026 |
4 | 31.877 | 29,030 | 24 | 31.935 | 36,893 |
5 | 31.916 | 49,406 | 25 | 31.870 | 49,992 |
6 | 31.958 | 28,613 | 26 | 31.862 | 35,178 |
7 | 31.989 | 37,383 | 27 | 31.978 | 39,042 |
8 | 31.819 | 41,684 | 28 | 31.910 | 39,695 |
9 | 31.955 | 40,298 | 29 | 31.802 | 43,910 |
10 | 32.128 | 30,774 | 30 | 32.030 | 33,208 |
11 | 31.920 | 36,427 | 31 | 31.879 | 43,079 |
12 | 31.863 | 31,645 | 32 | 31.899 | 36,875 |
13 | 32.197 | 28,777 | 33 | 31.867 | 27,142 |
14 | 31.880 | 41,636 | 34 | 31.972 | 34,325 |
15 | 31.873 | 35,715 | 35 | 31.842 | 31,758 |
16 | 31.914 | 35,094 | 36 | 31.841 | 47,849 |
17 | 31.878 | 42,261 | 37 | 32.071 | 30,180 |
18 | 31.853 | 42,556 | 38 | 31.962 | 31,795 |
19 | 31.878 | 46,671 | 39 | 31.923 | 53,447 |
20 | 32.058 | 31,562 | 40 | 31.909 | 57,182 |
Jmin | Javg | Jmax | Sdev | Jtypical |
---|---|---|---|---|
31.802 | 31.930 | 32.196 | 0.088 | 31.935 |
k | uRHC(k) | J0 | Ncalls |
---|---|---|---|
0 | 0.396 | 31.94 | 8460 |
1 | 0.135 | 32.299 | 798 |
2 | 0.116 | 30.820 | 51,740 |
3 | 0.452 | 28.906 | 47,940 |
4 | 0.318 | 29.635 | 43,747 |
5 | 0.913 | 30.379 | 39,620 |
6 | 1.057 | 30.197 | 35,991 |
7 | 1.133 | 30.578 | 31,816 |
8 | 1.738 | 31.900 | 1610 |
9 | 1.972 | 32.147 | 354 |
10 | 0.107 | 32.578 | 354 |
11 | 0.870 | 32.252 | 232 |
12 | 0.933 | 33.062 | 171 |
13 | 0.914 | 34.687 | 110 |
14 | 1.313 | 34.698 | 59 |
J0 | Ncalls | |||||
---|---|---|---|---|---|---|
Typical Value | Sdev | Min | Avg | Max | Sdev | |
without control range | 31.908 | 0.064 | 78,322 | 103,782 | 121,889 | 9912 |
with control range | 31.935 | 0.088 | 27,142 | 37,850 | 57,182 | 7401 |
with control range and perturbation | 34.69 | a single simulation |
Run # | J0 | Ncalls | Run # | J0 | Ncalls |
---|---|---|---|---|---|
1 | 5.624 | 15,420 | 21 | 5.648 | 14,100 |
2 | 5.628 | 14,460 | 22 | 5.772 | 14,940 |
3 | 5.761 | 16,020 | 23 | 5.684 | 14,040 |
4 | 5.640 | 36,000 | 24 | 5.708 | 16,200 |
5 | 5.637 | 17,580 | 25 | 5.638 | 23,580 |
6 | 5.720 | 15,540 | 26 | 5.670 | 14,700 |
7 | 5.760 | 14,040 | 27 | 5.697 | 17,340 |
8 | 5.719 | 12,480 | 28 | 5.684 | 16,260 |
9 | 5.707 | 14,280 | 29 | 5.712 | 12,780 |
10 | 5.672 | 14,100 | 30 | 5.459 | 36,600 |
11 | 5.707 | 11,880 | 31 | 5.675 | 12,540 |
12 | 5.721 | 13,800 | 32 | 5.696 | 14,580 |
13 | 5.643 | 14,520 | 33 | 5.730 | 13,380 |
14 | 5.622 | 13,380 | 34 | 5.589 | 12,840 |
15 | 5.618 | 17,580 | 35 | 5.758 | 13,680 |
16 | 5.641 | 17,880 | 36 | 5.677 | 18,960 |
17 | 5.781 | 9120 | 37 | 5.732 | 13,800 |
18 | 5.689 | 13,020 | 38 | 5.670 | 10,200 |
19 | 5.705 | 12,240 | 39 | 5.6845 | 16,260 |
20 | 5.719 | 11,640 | 40 | 5.6590 | 14,040 |
Min | Avg | Max | Sdev | Typical | |
---|---|---|---|---|---|
J0 | 5.459 | 5.682 | 5.781 | 0.06 | 5.685 |
Ncalls | 9120 | 15645 | 36600 | 5409.3 |
k | |
---|---|
0 | |
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 |
Run # | J0 | Ncalls | Run # | J0 | Ncalls |
---|---|---|---|---|---|
1 | 5.773 | 8640 | 21 | 5.630 | 18,900 |
2 | 5.793 | 8100 | 22 | 5.752 | 10,440 |
3 | 5.786 | 8820 | 23 | 5.783 | 6720 |
4 | 5.791 | 10,560 | 24 | 5.754 | 9720 |
5 | 5.818 | 9120 | 25 | 5.746 | 8580 |
6 | 5.694 | 10,080 | 26 | 5.659 | 6000 |
7 | 5.735 | 8520 | 27 | 5.706 | 10,140 |
8 | 5.611 | 9660 | 28 | 5.735 | 7980 |
9 | 5.761 | 7560 | 29 | 5.708 | 9660 |
10 | 5.709 | 8820 | 30 | 5.684 | 12,240 |
11 | 5.862 | 9660 | 31 | 5.812 | 6960 |
12 | 5.716 | 10,020 | 32 | 5.743 | 12,300 |
13 | 5.670 | 10,440 | 33 | 5.751 | 5460 |
14 | 5.736 | 8040 | 34 | 5.785 | 7500 |
15 | 5.816 | 6180 | 35 | 5.926 | 7380 |
16 | 5.824 | 6000 | 36 | 5.826 | 7800 |
17 | 5.728 | 10,200 | 37 | 5.691 | 10,620 |
18 | 5.637 | 9540 | 38 | 5.818 | 6000 |
19 | 5.905 | 7860 | 39 | 5.917 | 9360 |
20 | 5.810 | 9840 | 40 | 5.692 | 9120 |
Min | Avg | Max | Sdev | Typical | |
---|---|---|---|---|---|
J0 | 5.611 | 5.758 | 5.927 | 0.07 | 5.761 |
Ncalls | 5460 | 9013 | 18,900 | 2300.7 | - |
J0 | Ncalls | |||||
---|---|---|---|---|---|---|
Typical Value | Sdev | Min | Avg | Max | Sdev | |
without control range | 5.685 | 0.06 | 9120 | 15,645 | 36,600 | 5409.3 |
with control range | 5.761 | 0.07 | 5460 | 9013 | 18,900 | 2300.7 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Mînzu, V.; Georgescu, L.; Rusu, E. Predictions Based on Evolutionary Algorithms Using Predefined Control Profiles. Electronics 2022, 11, 1682. https://doi.org/10.3390/electronics11111682
Mînzu V, Georgescu L, Rusu E. Predictions Based on Evolutionary Algorithms Using Predefined Control Profiles. Electronics. 2022; 11(11):1682. https://doi.org/10.3390/electronics11111682
Chicago/Turabian StyleMînzu, Viorel, Lucian Georgescu, and Eugen Rusu. 2022. "Predictions Based on Evolutionary Algorithms Using Predefined Control Profiles" Electronics 11, no. 11: 1682. https://doi.org/10.3390/electronics11111682