# Desired Terminal State Concept in Model Predictive Control: A Case Study

Authors: František Dušek; Daniel Honc
Journal: Journal of Control Science and Engineering
 (2019)

---

## Abstract

The paper deals with an online optimization control method for dynamical processes called Model Predictive Control (MPC). It is a popular control method in industry and frequently treated in academic areas as well. The standard predictive controllers usually do not guarantee stability especially for the case of short horizons and large control error penalization. Terminal state is one way to ensure stability or at least increase the controller robustness. In the paper, deviation of the predicted terminal state from the desired terminal state is considered as one term of the cost function. Effect of the stability and control quality is demonstrated in the simulated experiments. The application area for online optimization methods is very broad including various logistics and transport problems. If the dynamics of the controlled processes cannot be neglected, the optimization problem must be solved not only for steady state but also for transient behaviour, e.g., by MPC.


---

## Body

## 1. Introduction

Minimization of a quadratic cost function is a common method for solving many engineering problems. In the control area, this method is fundamental not only for standard control design methods like optimal control, e.g., [1, 2] but also for a state estimation [3]. For example, well known Kalman estimator [4] was published in 1960. Current state of HW and SW technology allows us to look back a bit, modify, and apply some methods well known from the past but not used practically. In the contrary to standard PID controllers such methods have potential to increase control quality and solve more complicated and complex tasks. Usability, reliability, robustness, and of course also the price of such a system is the other side of the coin. In the paper we are introducing MPC desired terminal state calculated from steady state and we test it by simulation for higher order single-input single-output process.The paper is structured as follows: standard controller design is described in Section2, modified method is introduced in Section 3, simulated control experiments are presented in Section 4, and conclusions are given in Section 5.


## 2. Standard Controller Design

Under the assumptions of linear controlled system and quadratic cost function it is possible to formulate the task of the optimal controller design as a standard mathematical problem, extreme finding with an analytic solution. A unique solution exists also in the case of constrains existence in a form of linear inequalities.The key part of the controller design is to incorporate maximum of the known information and demands into the properly formulated cost function. It is possible to involve various (even conflicting) control demands. Then the controller tuning consists in weightings of the particular demands.From practical point of view, it is appropriate to formulate the task in discrete-time domain with receding (finite) control horizon [5–8]. The lengthN of the horizon is a parameter in the control design. The general formulation of a set-point tracking task is given by (1a), a state space description of the controlled dynamical linear system with state and input variables constraints, and by (1b), a quadratic cost functionJ (control objective) with three terms. The cost functionJ depends on the horizon lengthN, the initial statex(k) (initial conditions in timek), and the time course of the future set-point wN (vector along the control horizon). The solution consists in computation of such a vector of system inputs uN, which leads to the minimum of the cost function and simultaneously respects all constrains.(1a)xk+1=Axk+BukHxk≤hyk=Cxk+DukGuk≤gwhereA,B,C,D are parameters of a discrete-time dynamical process model andH,h,G,g are parameters of state and input variables constraints.(1b)minuNJN,uN,xk,wN=eNTQeN︸Je+uNTRuN︸Ju++xTk+NQxxk+N︸Jx(2)uNT=uTk,uTk+1,…,uTk+NyNT=yTk,yTk+1,…,yTk+NwNT=wTk,wTk+1,…,wTk+NeN=wN-yNwhere Qx,Q, andR are weighting matrices of particular terms.The cost function always contains the fundamental control requirement, the termJe: the controlled outputsy of the system should follow the set-pointsw. This basic requirement is usually followed by another term Ju of the cost function. The term Ju implies the control costs: the set-point tracking is desired but not at the cost of arbitrarily large control actions. The termJx in the cost function can be used only in the case of finite control horizon and state space description. It introduces into the cost function a dependence on the system state at the end of the control horizon called terminal state. The predictive controller design based on input-output description does not use it in a basic formulation of the cost function. The terminal state is obviously introduced in the extensions concerning the stability and robustness; see, e.g., [9–15]. The terminal state brings into the cost function dependence on all state variables. The standard cost function depends only on the system outputs (or control error) and it can be independent from some state variables—this is given by matrixC. Thus some states can increase ad infinitum even if the cost function is finite. In the case of control design based on input-output models, where state does not exist in a nature form, the terminal state is replaced with a sequence of input and output variables. That approach of the terminal state is called in the literature “terminal constrains” [16–20].In some cases the terminal state is important from the mathematical point of view. In case of LQ control design on finite horizon, the mathematical importance of the terminal state is that the matrixQx determines the initial value of a working matrix which is developing by iterating solution of the discrete Riccati equation.In literature the terminal state is obviously mentioned only in the context of the controller stability. The use of the terminal state has also an implication to the controller performance. The standard formulation of the terminal state in the form of (1b) leads to the permanent steady state control error in case of nonzero set-point. This problem can be easily solved by the terminal state in a form of the deviation from a the desired terminal state xw. The desired terminal state is a function of the set-point and/or other demands. Additional optimization in steady state can be an integral part of the controller due to the desired terminal state concept. Under the “optimization in steady state” we understand that controller ensures minimum of the weighted quadratic norm of a vector of deviations between desired and calculated terminal state.Clear and unique additional requirements can be formulated because the state vector contains complete information about the state of the system. The predictive controller can ensure, e.g., demand of minimum energy cost of a system with more inputs than outputs (nonsquare, overactuated system). The problem of how to determine an optimal steady state for such systems is discussed, e.g., in [21].Application area of predictive control methods is not limited to refinery, chemical, pulp, and paper industries, but it is becoming very broad. It can be advantageously applied also in transport industry, as demonstrated in [22] for traffic signal control based on traffic density prediction or in [23], where the authors propose the MPC algorithm for automatic train operation system.


## 3. Modified Controller Design

The controller design starts from a discrete-time state space model of the controlled MIMO (Multi-Input Multi-Output) system withnu inputs,nx state variables, andny outputs. The model is in a standard form (3a); we suppose matrixD =0.(3a)xk+1=Axk+Bukyk=Cxkwhereu(k) is vector of inputs with size [nu,1],x(k) is state vector with size [nx,1] andy(k) is the vector of outputs with size [ny,1].Matrix equations (3b) describe vector of predicted system outputs yN on the control horizon of lengthN. Vectors yN and terminal statex(k+N+1) depend on the actual statex(k) and on a vector of future inputs uN1.(3b)xk+N+1=Sxxxk+SxuuN1yN=Syxxk+SyuuN1(4)uN1T=uTk,uTk+1,…,uTk+NyNT=yTk+1,…,yTk+NMatricesSxx, Sxu, Syu a Syu depend on the state space model parameters according to (4c).With respect to a terminal state in the cost function (5) in time instantk+N+1, the input vector has to be of lengthk+N and thus the vector is marked as uN1. On the other hand the last item in the vector uN1 does not influence output vector yN. Because of this the last column of the matrix Syu (4c) is filled with zeros.(4c)Sxx=AN+1Sxu=ANBAN-1B⋯A3BA2BABBSyx=CACA2⋮CAN-1CANSyu=CB0⋯0000CA1BCB⋯0000⋮⋮⋱⋮⋮⋮⋮CAN-2BCAN-3B⋯CABCB00CAN-1BCAN-2B⋯CA2BCABCB0The cost function in matrix form (5) changes from (1b) because of the terminal state application as a deviation from the desired terminal state xw and the vector of manipulated variable ∆uN1 is calculated as a deviation from the supposed future inputs u0,N1.(5)JN,uN1,xk,wN=eNTQeN+ΔuN1TRΔuN1++ΔxTk+N+1QxΔxk+N+1(6)∆xk+N+1=xw-xk+N+1eN=wN-yNwNT=wTk+1,…,wTk+N∆uN1=uN1-u0,N1whereN is length of control horizon,xw is desired terminal state,wN is vector of future set-points with size [N×ny,1],u0,N1 is vector of supposed future inputs with size [(N+1)×nu,1],uN1 is vector of optimal future inputs with size [(N+1)×nu,1],Qx is terminal state ∆x weighting matrix with size [nx,nx],Q is control error eN weighting matrix with size [N×ny,N×ny] andR is manipulated variable ∆uN1 weighting matrix with size [(N+1)×nu, (N+1)×nu].First item of the vectoruN1 is applied as a control actionu(k) every time instant and whole procedure is repeated. Constant vector filled with values ofu(k-1) is used as supposed future inputs (vector u0,N1) in the following simulations. Another possibility how to choose the supposed future input vector u0,N1 is to use shifted vector uN1 from the previous calculation step. Both approaches are identical in principle, but the control response differs because of the effect of changed weighting proportions.


### 3.1. Desired Terminal State

Computation of the desired terminal state is trivial in case of the system with identical number of inputs and outputs and if we consider steady state. The controlled system steady state behaviour is given by(7a)xk=Axk+Bu0w0=y0=CxkThe solution for the desired outputy0=w0 is(7b)xk=Axk+Bu0⇒xk=I-A-1Bu0w0=Cxk=CI-A-1Bu0⇒u0=CI-A-1B-1w0x0=I-A-1BCI-A-1B-1w0


## 3.1. Desired Terminal State

Computation of the desired terminal state is trivial in case of the system with identical number of inputs and outputs and if we consider steady state. The controlled system steady state behaviour is given by(7a)xk=Axk+Bu0w0=y0=CxkThe solution for the desired outputy0=w0 is(7b)xk=Axk+Bu0⇒xk=I-A-1Bu0w0=Cxk=CI-A-1Bu0⇒u0=CI-A-1B-1w0x0=I-A-1BCI-A-1B-1w0


## 4. Simulated Experiments

The aim of the following control simulations is to demonstrate the effect of the terminal state in predictive controller design to the control quality and stability. The simulations are supposed as an ideal case; controlled system is identical with the process model used for the controller design and neither noises nor disturbances are considered. The controller is designed for the set-point tracking task.Two different controlled systems are treated in the simulations. The first system is a standard system of a higher order (8a) and the second one is a system with nonminimum phase (8b), with unstable zero. Both systems have similar settling time (cca. 50 s). The step and impulse responses of both systems are in Figure 1(8a)Fs=9s+19s+15s+15(8b)Fs=9s+1-9s+15s+15Figure 1
Characteristics of controlled systems.Standard predictive controller described in Section2 operates without any modifications with MIMO or SISO systems. The sampling time and the control period is T = 1 s. The weighting matrices Qx,Q, andR are diagonal. All diagonal elements of the weighting matrices are constant and their values are chosen so that the weight of every term in the cost function is comparable. From this reason the weighting matrices are computed as reciprocal quadratic norms of the corresponding steady state vectors according to (9). Tuning parameters of the controller are relative weightings ω and ωx.(9)Qx=ωxx0Tx0IQ=1y0NTy0NIR=ωu0NTu0NIwherex0 is steady state vector,y0N is vector of constant outputs,u0N is vector of constant inputs,ωx is relative weight of matrix Qx,ω is relative weight of matrixR andI is identity matrix of appropriate dimensions.The set-point shape consists from tree parts. The first part takes the same time as a control horizon plus 5 sampling periods and the set-point is constant. The second part lasts as a system settling time (50 s) and the set-point linearly increases from the first to third part. The third part is as long as the second one and the set-point is constant again. The control quality measure is calculated as an integral of the absolute control error(10)IAE=T∑k=1NSekwhereNS is number of samples during the control experiment.The effect of the terminal state can be observed from IAE measure values for simulated control experiments summarized in Table1 for system (8a) and in Table 2 for system (8b). The control experiments were simulated for several values of control horizon lengthN and terminal state relative weightsωx.Table 1
IAE quality measure for system (8a).
T = 1 sω = 0.01 N ω x = 0.0 ω x = 0.1 ω x = 1.0 ω x = 10  15 0.3507 4.0338 27.240 65.718  20 0.4231 4.6390 28.661 62.632  35 0.4032 3.0894 16.149 30.107  50 0.4034 1.3764 5.685 9.295Table 2
IAE quality measure for system (8b).
T = 1 sω = 0.01 N ω x = 0.0 ω x = 0.1 ω x = 1.0 ω x = 10  15 unstable unstable 13.878 10.911  20 unstable 10.842 7.697 8.017  35 4.0766 1.769 2.117 3.069  50 1.2727 0.658 0.807 1.239The control responses of two selected control experiments are plotted in Figure2(a), controlled system (8a), and in Figure 2(b), controlled system (8b). Both experiments are considered with same parameters: the length of the control horizon isN = 35 and the relative gain of the terminal state is ωx = 0.1.Figure 2 (a)
Control response of system (8a) (b)
Control response of system (8b)


## 5. Conclusion

Effect of the terminal state to the stability of the control is definitely positive. Even in the case of wrong choice of the controller parameters (control horizon is too short) the terminal state increases dramatically the controller stability.Nevertheless the control quality is obviously worse if the terminal state is used. The control deterioration is evident even if the terminal state was considered in a form of the deviation from the desired terminal state calculated from the steady state. The deviation form solves the main problem, permanent control error in the steady state. Control quality decrease is caused by stronger effect of the terminal state in the cost function then the other two terms (although in one point of the control horizon). This statement is not true generally because the effect depends on the controlled system and on the controller parameters, firs of all on the length of the control horizon.This effect was strong especially by the control of system (8a). The cost function minimization leads to large initial items of the calculated vector ∆uN1 even if only one item of the set-point vector wN is changed at the end of the horizon, the last item of the vectorw(k+N+1). This situation is demonstrated in Figure 3. The relative weight of the terminal state deviation is ωx = 1.0. The diagonal elements of matrix Qx = 1.6e-8, diagonal elements of matrixQ= 2.94e-2, and diagonal elements of matrixR= 2.85e-1.Figure 3
Prediction along control horizon.The desired terminal state in our case is a steady state corresponding to the set-point at the end of the control horizon. The question remains whether to use more accurate desired terminal state. This should increase the control quality, but it will make the whole controller more complicated and we will lose interesting feature for the steady state optimization especially for nonsquare systems.



---

*Source: 5208612-2019-05-08.xml*