On Data Reutilization for Historian Based Predictive Control
Abstract
This paper presents a robust finite-horizon control scheme based on data that produces feasible control sequences. The scheme makes use of a database that includes information from prior experiences of the same and others controllers handling similar systems. By the convex combination of feasible histories plus an auxiliary control law that deals with uncertainties, this scheme can be used as a robust historian-based predictive controller. Further application could include a cooperative learning-based strategy in which multiple controllers share their previous executions to gain collective benefits in terms of performance. The validity of the proposed controller is tested in a simulated case study.
Full text
This is a repository copy of On Data Reutilization for Historian Based Predictive Control in the Depósito de Investigación de la Universidad de Sevilla. Version: Accepted Paper. Citation: Maestre, J. M., Masero, E., Salvador, J. R., Ramirez, D. R., Zhu, Q.. On data reutilization for historian based predictive control. In proceedings of the 61st Conference on Decision and Control (CDC). IEEE; 2022, pp. 474 – 478. DOI: https://doi.org/10.1109/CDC51059.2022.9992531 To cite this publication, please use the final published version (if applicable). Please check the document version above. Copyright: © 2023 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works. Takedown policy: Please contact us ([email protected]) and provide details if you believe this document breaches copyrights. We will remove access to the work immediately and investigate your claim.
On Data Reutilization for Historian Based Predictive Control J. M. Maestre1, Eva Masero1, J. R. Salvador2, D. R. Ramirez1and Q. Zhu3 Abstract— This paper presents a robust finite-horizon control scheme based on data that produces feasible control sequences. The scheme makes use of a database that includes information from prior experiences of the same and others controllers handling similar systems. By the convex combination of feasible histories plus an auxiliary control law that deals with uncertainties, this scheme can be used as a robust historianbased predictive controller. Further application could include a cooperative learning-based strategy in which multiple controllers share their previous executions to gain collective benefits in terms of performance. The validity of the proposed controller is tested in a simulated case study. Index Terms— Predictive control; Data-based control; Cloudbased control. I. INTRODUCTION Many applications of model predictive control (MPC) in the industry, e.g., [1]–[3], have stimulated the interest in approaches combining data-based and learning methods with predictive control schemes [4]. We say renewed because there was already some learning flavor in many control methods based on historical data, e.g., those based on neural networks [5], adaptive models [6], scenarios [7], and the extension of terminal regions [8], to name a few examples. In the recent literature, we can find an MPC scheme for repetitive tasks that learns from previous executions to improve its performance, e.g., [9], where the theoretical properties are derived from the use of safe sets, which can be defined as regions of the state space where there exists a control law that guarantees constraint satisfaction for all successive time steps. This topic is also addressed in [10], [11], where methods for expanding regions of safe states are proposed. Learning is also used to infer the plant model, as in [12], where experimental data on system inputs and outputs are used to feed a nonparametric machine learning method. This paper focuses on reutilizing past historical information following the method presented in [13], where a predictive data-based approach that feeds the plant with a convex combination of previously applied trajectories is proposed for linear systems in the ideal case that successive executions of the system remain constant and disturbance-free. In the present study, we extend the original approach to outweigh lack of robustness for constraint satisfaction, e.g., caused by parametric uncertainties and process noise. For that reason, 1 J. M. Maestre, Eva Masero and D. R. Ramirez are with the Systems and Automation Department, University of Seville, Seville, Spain {pepemaestre, evamasero, danirr}@us.es 2 J. R. Salvador is with the Engineering Department, Loyola University, Seville, Spain. [email protected] 3 Q. Zhu is with the Department of Electrical and Computer Engineering, Tandon School of Engineering, New York University, New York, United States [email protected] the trajectories employed by the historian-based controller must fulfill a set of conditions to assure robust constraint satisfaction. To this end, we can apply a strategy analogous to traditional tube-based MPC [14], with the difference that here it is the data-based controller that provides nominal disturbance-free trajectories for the current system. Therefore, the newly proposed method can even deal with databases in which the information has been generated by different instances of the system being controlled (e.g., consider a set of autonomous vehicles that share a cloud-based database). The outline of the rest of the paper is as follows. Section II presents the problem settings and the control strategy. Sections III and IV detail the design and implementation of the nominal and auxiliary controllers. Section V illustrates simulation results, and Section VI shows concluding remarks. II. PROBLEM FORMULATION The system dynamics is considered to follow a discretetime linear time-invariant (LTI) model with an unknown vector of parameters w∈W⊆Rnw: x+=A(w)x+B(w)u, (1) where x, x+∈Rnx are the current and successor states, and u∈Rnu is input of the system. Likewise, A(w)∈Rnx×nx and B(w)∈Rnx×nu are, respectively, the state-transition and the input-to-state matrices, which depend on the realization of parametric uncertainty w. We assume that: 1) All system realizations (A(w), B(w)) are controllable. 2) There exists a robust control law u=Kx that can stabilize all system realizations (A(w), B(w)). 3) Two different realizations of w , say wi, wj∈W , lead to two different system realizations (Ai, Bi) and (Aj, Bj) , with Ai−Aj∈∆Aw, Bi−Bj∈∆Bw,(2) i.e., differences between system realizations are bounded. Here, ∆Aw and ∆Bw are polytopic sets accounting for the possible parameter variations. State and inputs of the system are subject to convex polytopic constraints with the origin in their interior, i.e., x∈X⊆Rnx, u ∈U⊆Rnu.(3) A direct consequence of (2) and (3) is that it is possible to recast the uncertainty of the system parameters as an unknown disturbance. For example, the viewpoints corresponding to the system realizations iand jcan be related as x+=Aix+Biu ∈(Aj⊕∆Aw)x+ (Bj⊕∆Bw)u =Ajx+Bju+η, (4)
with η∈Ω≜∆AwX⊕∆BwU being a polytopic convex set that contains the origin in its interior. The symbol ⊕ denotes the Minkowski sum: X⊕Y≜{x+y:x∈X, y ∈Y} . Finally, note that in case of need, set Ω can be enlarged to deal with additional uncertainty sources. A. Database and control goal Any system realization has access to a database that contains a set T≜{1,· · · , T} of feasible trajectories for different realizations of (1). Here, note that we do not make any particular assumption about how the trajectories are generated. In particular, a trajectory t∈ T is composed of a sequence of samples xr(kr), ur(kr) for kr={1, . . . , kt end} that satisfy (1) and (3) for the particular system realization, with kt end being the time instant where the sequence t reaches the origin. Table I shows an example of the considered database, where each trajectory also provides us with metainformation about the trajectory identifier and the system realization in which that data was generated. Each row of the table can be considered as a partial trajectory with information about the time instant, the state, and the control input. TABLE I EXAMPLE OF DATABASE STRUCTURE Traj. ID System ID krxr(kr)ur(kr) 1 1 1 xr(1) ur(1) . . . . . . . . . . . . . . . 1 1 k1 end xr(k1 end)ur(k1 end) 2 1 1 xr(1) ur(1) . . . . . . . . . . . . . . . 2 1 k2 end xr(k2 end)ur(k2 end) . . . . . . . . . . . . . . . The control objective is to regulate the system to the origin while minimizing the following global infinite-horizon cost. J∞= ∞ X k=0 ℓx(k), u(k),(5) where ℓ(·,·) is the stage cost, which is defined by the positive definite weighting matrices Q∈Rnx×nxand R∈Rnu×nu: ℓx(k), u(k)=x(k+ 1)⊤Qx(k+ 1) + u(k)⊤Ru(k).(6) For the sake of implementability, it is desirable to consider a finite horizon N , so that the minimization of (5) is replaced by that of JN= N−1 X k=0 ℓx(k), u(k)+fx(k+N),(7) where f(x(k+N)) = x⊤Px is a terminal cost function, with P≻0. B. Control strategy We control the system realization (Ai, Bi) using a databased controller that combines the trajectories contained in T . A robust feedback controller is also employed to deal with the differences η due to the uncertain system realization (recall Eq. (4)). That is, the control law becomes u(x) = v(x) + ve(x, ¯x),(8) where v(x) corresponds to the first element of a sequence of control actions generated by the data-based law (obtained, e.g., following [13]), and ve(x, ¯x) = K(x−¯x) rejects the differences between the system state x and the corresponding nominal value ¯x , which is the predicted state in k computed at instant k−1 ,i.e., ¯x(k) = x(k|k−1) . Since there is a lack of information to compute x(1|0) at instant k= 0 , we consider ¯x(1) = x(1|0) = x(1) at k= 1 . A block diagram of the proposed dual control law is shown in Fig. 1. III. DATA-BASED CONTROL LAW Let us consider a particular system realization (Ai, Bi) , which starts in state xi . In the most restrictive case, there is no previous information in the database T on previous executions of this system, i.e., we need to rely on information from other system realizations. First, we consider that the information is obtained from a single system realization (Aj, Bj) , with j=i . Since the sequences of system realization j might not be feasible for (Ai, Bi) , we need to check their robustness. If we recall the dynamics of the system from the viewpoint of system realization j (Eq. (4)) and the double control law (Eq. (8)), it yields x(k+ 1) = Ajx(k) + Bjv(k) + Ke(k),(9) where e(k) = x(k)−¯x(k)∈Ω captures the difference between real and nominal values of the state. Hence, any candidate trajectory xr(kr), ur(kr) , with kr={1, . . . , kt end} , must possess enough margin with the state constraints to allow the uncertainty given by the closed-loop dynamics of the errors due to model discrepancies. One way to do this is to check: xr(k)⊕ R ∈ X, kr={1, . . . , kt end},(10) where R is a robust positively invariant (RPI) set R , which is assumed to exist, i.e., (Aj+BjK)R ⊕ Ω⊆R⊆X, KR ⊆ U.(11) Therefore, we need to check the following conditions: xi∈xr(1) ⊕ R, xr(kr)∈X⊖ R, ur(kr)∈U⊖KR, (12) with kr={1, . . . , kt end} , where the symbol ⊖ denotes the Pontryagin difference defined as X⊖Y≜{x∈X:x+y∈ X,∀y∈Y} . In this way, we can determine which of the available sequences of the database are valid by considering a robust control problem from the viewpoint of subsystem (Aj, Bj) . Details on the calculation of K and R are given in Section IV.
System i u x K x x v x− ++ + Database Cost function Constraints Optimizer Data-based controller Fig. 1. Block diagram of the combined data-based and feedback controller. By checking (12), we can find the set of robust feasible trajectories for each system j in the database, say Tj . 1 Here, let F denote the set of system realizations providing at least one feasible trajectory, which is assumed to be nonempty. For a given N -length partial sequence pj⊆t∈ Tj , j∈ F , obtained taking N consecutive states and control actions from a trajectory t, that is pjxpj={xpj(0), xpj(1), . . . , xpj(N−1)} upj={upj(0), upj(1), . . . , upj(N−1)}. Let JN pj denote the performance of this sequence measured by (7). A feasible weight vector Λ∈Rm for the convex combination of control sequences when the current state measurement is xi(k)can be computed as min Λ∈RmP j∈F P pj∈Tj λpjJN pj, s.t.P j∈F P pj∈Tj λpjxpj(0) = xi(k), P pj∈Tj λpj= 1, λpj≥0, pj⊆t∈ Tj, j ∈ F, (13) where Λ is the set of weighs λpj , with pj⊆t∈ Tj and j∈ F, which are the decision variables of (13). Thus, let Λ∗={λ∗ 1, λ∗ 2, . . . , λ∗ m} be the minimizer of (13), provided that it exists,2then uc=X j∈F X pj∈Tj λ∗ pjupj(14) is a nominal solution for system (Ai, Bi) and the first element correspond to the control action v(k) = uc(1) . The auxiliary part of the control law becomes: ve(k) = Kxi(k)−X j∈F X pj∈Tj λk−1 pjxpj(k|k−1),(15) where λk−1 pj is the optimal weigh vector computed in k−1 and xpj(k|k−1) , which corresponds to the nominal state ¯x , is the predicted state in kcomputed at instant k−1. As a consequence, the trajectory of the system realization i will lie within a tube around the trajectory generated by the data-based controller, which will be recursively feasible because the combined partial sequences reach the origin. At that moment, the state of the system will lie in a region R around the origin. Likewise, it is also possible to produce a 1 Feasible sequences can be extended with zeros so that their length becomes greater or at least equal to N,i.e.,kt end ≥N. 2 One option to guarantee the existence of the minimizer is to use soft constraints in Problem (13). new combination of partial sequences based on the most recent information available in the database following a receding-horizon strategy. Algorithm 1 details the steps of the proposed robust historian-based controller. Note that we consider as a selection criterion that only the m feasible partial trajectories of the database can be combined to obtain the control input to relieve the computational burden. Algorithm 1 Inputs: k,x(k),Tj,K,R 1: Compute the distance between the current state measurement x(k)and the state xrof all rows in the database: d(x(k), xr) = |x(k)−xr|2. 2: Select the m feasible partial sequences of the database with the lowest distance. 3: Evaluate the cost (7) of each candidate p∈m. 4: Solve (13) to optimize the weight vector Λ∗ for the convex combination of the mcontrol sequences. 5: Obtain ucas (14) and then v(k) = uc(1). 6: Calculate the auxiliary control input term ve(k) that penalizes the deviation between current and the corresponding nominal states using (15). 7: Apply u(k) = v(k) + ve(k)to the system. IV. AUXILIARY CONTROL LAW The design of a robust feedback controller u=Kx is based on standard linear matrix inequalities (LMIs) [15]. In particular, we assume that the uncertainty set (A(w), B(w)) of system realizations is polytopic with vertices denoted by set V, leading to the dynamics: x+=Aix+Biu, i ∈ V. In this context, it is possible to find K by maximizing the trace of matrix Wsubject to the set of LMIs: W WA⊤ i+Y⊤B⊤ i AiW+BiY W ≻0, i ∈ V,(16) where W and Y are the optimization variables. The stabilizing control law is K=Y W−1 and the corresponding Lyapunov function becomes P=W−1 . Then, given an ellipsoidal bound on the disturbance, it is straightforward to find an RPI for the system realizations by using standard LMIs methods. As for the polytopic case, one can employ methods such as the LP proposed in [16] to compute a common minimal RPI
1 2 43 Fig. 2. Scheme of the quadruple-tank plant. for the system realizations. Likewise, one can find a feedback gain and an RPI set for each vertex and then use the union of the RPI sets in the checking steps (12). V. CASE STUDY We evaluate the proposed control scheme in the quadrupletank plant presented in [17], which consists of four interconnected water tanks, as shown in Fig. 2. The two upper tanks ( #3 and #4 ) discharge flow rates to the lower ones ( #1 and #2 ), and these, in turn, into a sinking tank. The plant is controlled by two pumps that keep the water circulation between tanks. There are also two threeway valves that divide the flow into two ways. Applying the mass balance and Bernoulli’s law to the plant, we obtain the following: Sdh1 dt =−a1p2gh1+a3p2gh3+γa qa 3600, Sdh2 dt =−a2p2gh2+a4p2gh4+γb qb 3600, Sdh3 dt =−a3p2gh3+ (1 −γb)qb 3600, Sdh4 dt =−a4p2gh4+ (1 −γa)qb 3600, (17) where hn is the water level of tank n∈ {1,2,3,4} , an is the cross section of the outlet pipe n , S= 0.03 m2 is the cross section of all tanks, γa, γb∈[0,1] are the opening of the three-way valves ( γa= 0.3 , γb= 0.4 ), g= 9.81 m/s2 is the gravitational constant, and qa, qb are the pump flow rates. The nonlinear system dynamics expressed by (17) can be linearized by its Taylor expansion. Given the operating point: h0= [h0 1, h0 2, h0 3, h0 4] = [0.5006,0.4704,0.5206,0.4319] m q0= [q0 a, q0 b] = [1.5355,1.6794] m3/h, the discrete linearized state-space dynamics are ˆx+=Aˆx+Bˆu, ˆy=Cˆx, (18) with ˆx= [h1−h0 1, . . . , h4−h0 4]⊤ and ˆu= [qa−q0 a, qb−q0 b]⊤ . The discrete matrices ( A, B, C ) of the nominal system using a sample time ts= 30 s are: A= 0.6654 0 0.1919 0 0 0.5971 0 0.2250 0 0 0.7643 0 0 0 0 0.7077 , B = 0.0684 0.0179 0.0254 0.0868 0 0.1461 0.1644 0 , and C=I , which is the unit matrix of appropriate dimension. Regarding constraints, the system is subject to the following operational state and input constraints: 0.2 m ≤ {h1, h2, h3, h4} ≤ 1.2 m, 0 m/h3≤ {qa, qb} ≤ 3 m/h3. A. Control parameters We aim to achieve the reference levels of the two lower tanks ( h0 1, h0 2 ) by minimizing an N -horizon cost function while satisfying some constraints. We consider a prediction horizon of N= 5 , weighting matrices Q=I and R= 0.01·I , and a simulation length of Nend = 2000 s . The feedback gain Kis calculated by solving (16): K(A,B)=−0.8572 −0.6449 0.29360 −3.1792 −0.7400 −1.0007 −3.4503 0.07570, and the RPI set R is computed with the MPT toolbox of MATLAB taking into account K and the uncertainty polytopic set Ωfor all system realizations. B. Database and system realizations The database is composed of a set To={1, . . . , To} with To= 100 trajectories, which have been obtained from the nominal plant (A, B) using PID controllers. These trajectories start at different points and steer the system to the operating point {h0, q0} , which becomes the origin in (18). We consider the most restrictive case where there is no information in the database about other system realizations. Each trajectory has 7000 -second information of the plant operation. Hence, there are To·7000/ts candidate trajectories at each time step, but only m= 1000 are considered to compute the control input. C. Simulation results We perform simulations for three system realizations: (A1, B1) , (A2, B2) , and (A3, B3) , which are obtained by slightly changing the cross section of the outlet pipes of the nominal system (A, B) , as detailed in Table II. Note that, for a practical application of the control method, the difference between systems should be small to apply robust arguments. As illustration, Figs. 3 and 4 display the results corresponding to the first and second system realizations and show trajectories of the tank levels (m) and the flow rates ( m3/h ) considering four initial states: (h0 1, h0 2)±(0.05,0.05) with their corresponding h0 3 and h0 4 , and the saturated flow rates qsat a, qsat b . As shown, our proposed robust data-based controller take advantages of information from the database, which only contains trajectories from the nominal system (A, B) , to carry the tanks levels #1 and #2 to their operating points, i.e., h0 1 and h0 2 . Note that the levels h1 and h2 have steady-state errors because the database does not have offsetfree trajectories. The mean relative error of these tank levels n={1,2}computed as Erel(%) = (E1 rel +E2 rel)/2, with: En rel =En abs h0 n ·100, En abs =PNend/ts k=1 hn(k)−h0 n Nend/ts , and the accumulated cost: Jacc =PNend/ts k=1 ˆ h(k)⊤Qˆ h(k) + ˆq(k)⊤Rˆq(k) , with ˆ h(k)=[h1(k), h2(k)] −[h0 1, h0 2] and
TABLE II NUMERICAL RESULTS OF THE ROBUST DATA-BASED CONTROLLER FOR THE DIFFERENT SYSTEM REALIZATIONS. System Realizations Cross section of outlet pipes (m) Robust data-based controller a1·10−4a2·10−4a3·10−4a4·10−4Erel(%) Jacc (A, B) 1.301 1.597 0.8758 1.026 2.1812 0.2465 (A1, B1) 1.341 1.627 0.8961 1.108 4.7457 0.2726 (A2, B2) 1.436 1.588 0.9769 0.9568 8.8432 3.4295 (A3, B3) 1.436 1.588 0.9769 1.226 8.9097 0.5190 0 400 800 1200 1600 2000 0.4 0.45 0.5 0.55 Time (s) Level (m) h1 h0 1 0 400 800 1200 1600 2000 0.3 0.35 0.4 0.45 0.5 Time (s) Level (m) h2 h0 2 0 400 800 1200 1600 2000 0.4 0.6 0.8 Time (s) Level (m) h3 0 400 800 1200 1600 2000 0.2 0.3 0.4 0.5 0.6 Time (s) Level (m) h4 0 400 800 1200 1600 2000 0.5 1 1.5 2 Time (s) Flow (m3/h) qa qb 0 400 800 1200 1600 2000 0.5 1 1.5 2 Time (s) Flow (m3/h) qsat a qsat b Fig. 3. Results for system realization (A1, B1) with the proposed approach. 0 400 800 1200 1600 2000 0.4 0.45 0.5 0.55 Time (s) Level (m) h1 h0 1 0 400 800 1200 1600 2000 0.3 0.4 0.5 0.6 Time (s) Level (m) h2 h0 2 0 400 800 1200 1600 2000 0.4 0.5 0.6 0.7 0.8 Time (s) Level (m) h3 0 400 800 1200 1600 2000 0.2 0.3 0.4 0.5 0.6 Time (s) Level (m) h4 0 400 800 1200 1600 2000 1 1.2 1.4 1.6 1.8 2 Time (s) Flow (m3/h) qa qb 0 400 800 1200 1600 2000 1 1.2 1.4 1.6 1.8 2 Time (s) Flow (m3/h) qsat a qsat b Fig. 4. Results for system realization (A2, B2) with the proposed approach. ˆq(k)=[qa(k), qb(k)] −[q0 a, q0 b] are shown in Table II. By combining the data-based and feedback controller, we can stabilize plant realizations with data from the nominal plant. VI. CONCLUSIONS A robust data-based predictive approach that allows a set of controllers to share information employing a common database has been proposed. An interesting application is cloud-based cooperative learning, where multiple controllers may cooperate and reuse their collective experiences. The proposed method is related to tube-based model predictive control that uses a bound on disturbance to drive the system by using a dual control law in which a data-based controller steers the nominal system, and the error is dealt with auxiliary feedback. Our results in the quadruple-tank plant show promising results and highlight the relevance of exchanging data between different system realizations in this context. ACKNOWLEDGEMENTS The authors appreciate the financial support by the European Research Council under the H2020 programme for the Advanced Research Grant: OCONTSOLAR [ref. 789051 ], the Spanish Ministry of Economy for the project: C3PO- R2D2 [ref. PID2020-119476RB-I00], Junta de Andaluc ´ ıa and FEDER FUNDS for project P20 00546 and the Spanish Ministry of Science and Innovation for Grant FPU 18/04476 . REFERENCES [1] J. Richalet, “Industrial applications of model based predictive control,” Automatica, vol. 29, no. 5, pp. 1251–1274, 1993. [2] S. Vazquez, J. Leon, L. Franquelo, J. Rodriguez, H. Young, A. Marquez, and P. Zanchetta, “Model predictive control: A review of its applications in power electronics,” IEEE Industrial Electronics Magazine, vol. 8, pp. 16–31, March 2014. [3] S. J. Qin and T. A. Badgwell, “A survey of industrial model predictive control technology,” Control Eng. Pract., vol. 11, no. 7, pp. 733–764, 2003. [4] D. G ¨ orges, “Relations between model predictive control and reinforcement learning,” IFAC-PapersOnLine, vol. 50, no. 1, pp. 4920–4928, 2017. [5] P. Masding and B. Lennox, “Use of dynamic modelling and plant historian data for improved control design,” Control Eng. Pract., vol. 18, no. 1, pp. 77–83, 2010. [6] N. Bhat and T. J. McAvoy, “Use of neural nets for dynamic modeling and control of chemical process systems,” Computers & Chemical Engineering, vol. 14, no. 4-5, pp. 573–582, 1990. [7] G. C. Calafiore and M. C. Campi, “The scenario approach to robust control design,” IEEE Trans. Automat. Contr., vol. 51, no. 5, pp. 742– 753, 2006. [8] C. J. Ong, D. Sui, and E. G. Gilbert, “Enlarging the terminal region of nonlinear model predictive control using the support vector machine method,” Automatica, vol. 42, no. 6, pp. 1011 – 1016, 2006. [9] U. Rosolia and F. Borrelli, “Learning model predictive control for iterative tasks. A data-driven control framework,” IEEE Trans. Automat. Contr., vol. 63, no. 7, pp. 1883–1896, 2018. [10] K. P. Wabersich and M. N. Zeilinger, “Linear model predictive safety certification for learning-based control,” in IEEE Conference on Decision and Control (CDC), pp. 7130–7135, IEEE, 2018. [11] T. Koller, F. Berkenkamp, M. Turchetta, and A. Krause, “Learningbased model predictive control for safe exploration,” in IEEE Conference on Decision and Control (CDC), pp. 6059–6066, Dec 2018. [12] D. Limon, J. Calliess, and J. M. Maciejowski, “Learning-based nonlinear model predictive control,” IFAC-PapersOnLine, vol. 50, no. 1, pp. 7769–7776, 2017. [13] J. R. Salvador, D. Mu ˜ noz de la Pe ˜ na, D. R. Ramirez, and T. Alamo, “Predictive control of a water distribution system based on process historian data,” Optim. Control Appl. Methods, vol. 41, no. 2, pp. 571– 586, 2020. [14] W. Langson, I. Chryssochoos, S. V. Rakovi ´ c, and D. Q. Mayne, “Robust model predictive control using tubes,” Automatica, vol. 40, no. 1, pp. 125–133, 2004. [15] S. Boyd, L. El Ghaoui, E. Feron, and V. Balakrishnan, Linear matrix inequalities in system and control theory. SIAM, 1994. [16] P. Trodden, “A one-step approach to computing a polytopic robust positively invariant set,” IEEE Trans. Automat. Contr., vol. 61, no. 12, pp. 4100–4105, 2016. [17] K. H. Johansson, “The quadruple-tank process: A multivariable laboratory process with an adjustable zero,” IEEE Trans. on Control Systems Technology, vol. 8, no. 3, pp. 456–465, 2000.