robust model predictive control - carnegie mellon...
TRANSCRIPT
1
Robust Model Predictive Control
Formulations of robust control [1]
The robust control problem concerns to the control of plants that are only
approximately known. Usually, it is assumed that the plant lies in a set of possible plants
and this set can be quantitatively characterized. It is sought a control design that assures
some kind of performance, which includes stability, for all the members of the family of
candidate plants. Robust control theory usually assumes that the controller is linear and
most of the available theory will remain useful only when the operating point of the
system is such that the system is unconstrained or has a fixed set of active constraints.
Norm-bounded uncertainty
Assume that one has a nominal model of the plant, for instance represented by a transfer
function 0 ( )G z , and that the real plant G(z) can described by one of the following
models:
0( ) ( ) ( )G z G z z= + ∆ (1)
[ ]0( ) ( ) 1 ( )G z G z z= + ∆ (2)
[ ] [ ]10 0( ) ( ) ( ) ( ) ( )D NG z D z z N z z−= + ∆ + ∆ , where 1
0 0 0( ) ( ) ( )G z D z N z−= (3)
We do not know exactly what ( )z∆ is, but we assume that it is stable and norm bounded.
The most commonly used norm is the H infinity norm ∞∆ , which is the largest gain of
the uncertainty model [2].
Consider a linear feedback controller K(z) that stabilizes the nominal plant 0 ( )G z . This
controller will not necessarily stabilize the real plant G(z), and it is important to have
some way of testing whether this controller can stabilize all plants allowed by the
uncertainty description. Consider initially the case in which uncertainty is represented by
the additive model defined in (1). The closed loop system is shown in Fig. 1 and the
transfer function of the block constituted by the controller and the nominal system is
2
( ) 10( ) ( ) ( ) ( )M z K z I G z K z −= +
This transfer function M(z) is stable by design. Consequently, the loop transfer function is
( ) ( )M z z∆ . The small gain theorem (Chap. 10 of [2]) assures that the uncertain plant
with the proposed controller will be stable if
( )( ) ( ) 1j T j TM e eω ωσ∞
∆ < (4)
where (.)σ denotes the largest singular value. The condition defined in (4) is only
sufficient for robust stability. If condition (4) is not satisfied, it does not mean that
stability will not be attained. Inequality (4) may be tested for a given controller, to verify
if stability is guaranteed for any plant lying in the set that defines the uncertain plant.
When tuning the controller, we may attempt to shape the frequency response of the
nominal closed loop system, such that (4) will hold for the true system.
Figure 1 Closed loop with additive model uncertainty
When, uncertainty is described as in (2), the closed loop can be represented as in Fig. 2
below
Figure 2 Closed loop with input multiplicative uncertainty
In this case, the transfer function of the block constituted by the controller and plant is
represented by
3
( ) 10 0( ) ( ) ( ) ( )M z K z G z I KG Z −= +
and the following sufficient condition for robust stability is obtained:
( ) 10 0( ) ( ) ( ) ( ) ( ) 1j T j T j T j T j TK e G e I K e G e eω ω ω ω ωσ
−
∞ + ∆ <
(5)
Analogously, the model uncertainty defined in (3) produces the following condition for
robustness:
1 10 0
( ) ( ) ( ) ( ) ( ), ( ) 1j T
j T j T j T j T j TN D
K e I G e K e N e e eI
ωω ω ω ω ωσ
− −∞
+ ∆ ∆ < (6)
The uncertainty descriptions depicted in (4) to (6), in which the only specification on
uncertainty ∆ is a norm-bound, are known as unstructured uncertainty descriptions.
Robust Stability of the Unconstrained DMC
In the conventional form of DMC, which is based on the step response model, the state
vector of the predicting model is updated as follows [3]:
[ ] [ ] [ ] / 1/ 1 / 1( 1) F kk k k k k ky A y B u k K y C y− − −= + ∆ − + − (7)
[ ] [ ]/ 1 1/ 1 ( 1)k k k ky A y B u k− − −= + ∆ − (8)
where
k is the present sampling time
( ) ( 1) ( )TT T T
hy y k y k y k n = + + !
nh is selected such that it is larger than the stabilizing time of the system
(( 1). ) (( 1). )
0 0 00 0 0
,0 0 00 0 0
h h
ny
nyn ny n ny
ny
ny
II
A AII
+ × +
= ∈
!!
" " " # " $!!
1
2(( 1). )
1
, h
h
h
n ny ny
n
n
SS
B BS
S
+ ×
+
= ∈
" $
4
(( 1). ), h
ny
nyn ny ny
F F
ny
ny
II
K KII
+ ×
= ∈
" $
1,1, 1,2, 1, ,
2,1, 2,2, 2, ,
,1, ,2, , ,
,
i i nu i
i i nu i ny nui i
ny i ny i ny nu i
S S SS S S
S S
S S S
×
= ∈
!!
$" " # "
!
Si corresponds to the step response matrix related to time step i
[ ] /( ) k ky k C y= , [ ] /k ky is the state vector of the true plant and ( )y k is the measurement
of the plant output at time k.
0 0nyC C I = = !
ny is the number of outputs and nu is the number of inputs.
Combining eqs. (7) and (8), we obtain:
[ ] [ ] [ ]/ 1/ 1 /( ) ( ) ( 1)F F Fk k k k k ky I K C A y K C y I K C B u k− −= − + + − ∆ − (9)
Let us define the input horizon as m, and let the control sequence to be applied at time
step k be given [ ] ( . )( ) ( 1) ( 1)TT T T nu m nu
ku u k u k u k m × ∆ = ∆ ∆ + ∆ + − ∈ ! $ . This
control sequence, for the case of the unconstrained DMC, is obtained as the least squares
solution to the problem of minimizing the predicted error norm:
[ ] ( ) ( ) [ ] 1
/
T Tm T m T m T spn n nk k ku S Q QS R R S Q QN y y
−
∆ = + − (10)
where
( ). ( . ) .( 1)0ny n ny n ny nhN I × − = ,
1
2 1
1 1
1 1
0 00
mn
m m
n n n m
SS S
SS S S
S S S
−
− − +
= " " "
!!
" " # "!
!
Q and R are weighting matrices and n is the output horizon.
From Eq. (10), it is clear that the first control move can be represented as
5
[ ] /( ) spMPC k ku k K y y∆ = − (11)
where KMPC is constant.
We can assume that the true plant model is represented by
[ ] [ ]/ 1/ 1 ( )k k k ky A y B u k− −= + ∆ (12)
Now, substituting Eq. (12) in Eq. (9), we obtain
[ ] [ ] [ ] ( )/ 1/ 1 1/ 1( ) ( ) ( 1)F F Fk k k k k ky I K C A y K CA y B K C B B u k− − − −= − + + + − ∆ − (13)
Combining equations (12) and (13), the state space model of the system that encloses the
prediction model and the true plant model is obtained as follows
/ 1/ 1
0( 1)
( ) ( )F F Fk k k k
Ay y Bu k
K CA I K C Ay y B K C B B− −
= + ∆ − − + −
(14)
With the extended state defined above, the control move given in (11) can be written as
follows
[ ]/ /
( ) 0sp sp
MPC sp spk k k k
y y y yu k K K
y y y y
− −∆ = =
− − (15)
Suppose now that we have an additive uncertainty in the step response model of the
system:
SB B= + ∆ where 1 2 1nh
TT T TS S S S +
∆ = ∆ ∆ ∆ !
Then, the state space model of the system considering the model uncertainty as
represented in (14) can be written as follows:
[ ] [ ] 1 21/ 1 / ( ) ( )k k k ky y u k u kφ β β+ + = + ∆ + ∆% % (16)
where
0( )F F
AK CA I K C A
φ = −
, 1BB
β =
, '2 2S S
F
IK C
β β = ∆ = ∆
6
Therefore, the uncertain system in closed loop with the DMC controller can be
schematically represented as in Figure 3.
Figure 3 Additive model uncertainties with DMC
Consequently, for the additive uncertainty, we obtain
11 1 '
1 2( ) ( ) ( )M z K I zI K zIφ β φ β−− − = − + − − (17)
Suppose now that we have a multiplicative uncertainty in the process gain. In this case,
the true gain input matrix between input uj and output yi is represented as
( ),1ij ij i jB B= + ∆ (18)
Consequently, the uncertainty in the step response coefficients can be written as follows
1,1 1,1 1,2 1,2 1, 1,
2,1 2,1 2,2 2,2 2, 2,
,1 ,1 ,2 ,2 , ,
nu nu
nu nuS
ny ny ny ny ny nu ny nu
S S SS S S
S S S
∆ ∆ ∆ ∆ ∆ ∆ ∆ = ∆ ∆ ∆
!!
" " # "!
The above expression can be written in a more convenient form
1,1 1,2 1,
2,1 2,2 2,
,1 ,2 ,
0 0 0 0 0 00 0 0 0 0 0
0 0 0 0 0 0
nu
nuS
ny ny ny nu
S S SS S S
S S S
∆ = ×
! ! ! !! ! ! !
" " # " " " # " ! " " # "! ! ! !
7
1,1
,1
1,
,
1 0 00
0 1 00 1 0
0 1 00 0 0 1
0 0 1
ny
nu
ny nu
nu
∆
∆ × ∆ ∆
!" " !
# ! "!
# " " ! "!
# !" " ! "
!&''('')
or
S K uS N∆ = ∆%
Therefore, for this kind of model uncertainty, Eq. (16) can still be written with
2 2K u K uF
BN N
K CBβ β
= ∆ = ∆
% %%
where
1
1nh
SB
S +
=
%% "
%
With this kind of model uncertainty, Eq. (16) corresponds to the following transfer
function
[ ] ( )11 2( ) ( )K uy z zI N u zφ β β−= − + ∆ ∆%% (19)
From Eq. (15), we can write
( ) ( ) ( )spu z K y z y z ∆ = − % % (20)
Equations (19) and (20) can be translated into the diagram represented in Fig. 4.
8
Figure 4. Multiplicative model uncertainties with DMC
Thus, for the multiplicative uncertain represented in Eq. (18), we have
11 1
1 2( ) ( ) ( )uM z N K I zI K zIφ β φ β−− − = − + − −
% (21)
Example 1
Consider the following 2×2 system
11 12
21 22
1.77 5.8860 1 50 1( )
4.41 7.244 1 19 1
s sG s
s s
+ ∆ + ∆ + +=
+ ∆ + ∆ + +
which is based on the FCC heavy oil fractionator system proposed by Shell as a challenge
MPC problem. Our purpose is to evaluate the robustness of a given DMC controller with
respect to the additive uncertainty in the process gain. The DMC to be tested is
characterized by the following parameters: T=5, n=12, m=5, Q=diag(1,1),
R=diag(0.3,0.3).
We will initially evaluate the robustness of this controller for the general additive
uncertainty, which maximum bound is given by ( ) 1min( )S TiM eωω
σσ
∆ =
where
M(z) is given by Eq. (17). Fig.5 shows 1( )TiM eωσ
as a function of the frequency ω .
We observe that the minimum corresponds to ( ) 1.195Sσ ∆ = and it occurs at
0.0214ω * rad/min. It is interesting to evaluate the corresponding size of this uncertainty
in terms of the step response coefficients. Since in this case, it is assumed that uncertainty
is unstructured and can appear in any coefficient of the step response model, matrix S∆
9
has the same dimensions as the input matrix B defined in Eq. (7). This means that for this
particular DMC, S∆ is a matrix of dimensions 122×2. With the help of Matlab routine
rand we observe that we can generate random matrices that have the maximum singular
value larger than 1.195 and whose elements are limited to approximately 0.13. This
means that the method will not guarantee robustness outside the following approximate
range
, , , , , ,0.13 0.13 1, , ; 1, , ; 1, ,i j l i j l i j lS S S i ny j nu l nh− ≤ ≤ + = = =… … …
Figure 5. Robust stability of DMC General uncertainty
We can also compute the model uncertainty that is tolerated by the DMC controller,
using M(z) given by Eq. (21) where it is assumed that model uncertainty is limited to the
multiplicative uncertainty in the model gain. Fig. 6 shows the values of 1( )TiM eωσ
as a function of the frequency for this case.
10
Figure 6. Robust stability of DMC Gain uncertainty
In this case, we observe that the minimum of the curve occurs at 0.005=ω rad/min and
corresponds to ( ) 0.112Kσ ∆ = , which is smaller than the uncertainty bound for the case
of general uncertainty. However, in this case, matrix K∆ is a 4×4 diagonal matrix whose
singular values correspond to the absolute values of the diagonal elements. Thus, we may
conclude that the following relation is valid:
, , ,(1 0.112) (1 0.112) 1, , ; 1, ,i j i j i jK K K i ny j nu− ≤ ≤ + = =… …
Notes
-From the above example it is clear that, when following the small gain approach, the
resulting ranges of general model uncertainties in which DMC is guaranteed to be stable
are usually quite conservative. By simulation, we can verify that, for the studied system,
DMC remains stable for a much larger range of gain uncertainties. Less conservative
uncertainty bounds can be obtained by taking into account the structure of the uncertainty
in the search of the worst uncertainty. However, the results appear still not useful for
practical applications.
-The procedure presented so far has not taken into account the existence of constraints on
the input values or on the input moves. In the presence of input constraints, the controller
becomes nonlinear and the methods presented here may not be general. In other words,
when a constraint becomes active, the closed loop system may become unstable, even if
11
uncertainty is smaller than the maximum uncertainty tolerated by the unconstrained MPC
controller.
The Infinite Horizon MPC and the Robust Regulator
Another class of robust MPC derives from the infinite horizon model predictive control
(IHMPC) proposed by Rawlings and Muske [4]. This controller is based on a state space
model of the process in the conventional form:
( 1) ( ) ( )x k A x k B u k+ = + (22)
( ) ( )y k Cx k= (23)
where nxx ∈ $ is the state vector, nuu ∈ $ is the input vector, k is the sampling instant, nyy ∈ $ is the output vector, A, B and C are matrices of appropriate dimension.
The control law of IHMPC is obtained from the solution to the following optimization
problem:
( ), ( 1), , ( 1)min ku k u k u k m
J+ + −…
1
0 0( ) ( ) ( ) ( )
mT Tk
i jJ x k i Q x k i u k j R u k j
∞ −
= == + + + + +∑ ∑ (24)
min max( ) ; 0,1, , 1u u k j u j m≤ + ≤ = −! (25)
where m is the control horizon, ( )x k i+ is the predicted state at sampling time k i+ ;
nx nxQ ×∈ $ and nu nuR ×∈ $ are positive definite matrices.
For open loop stable systems, the infinite horizon optimization problem defined above
can be transformed into a finite horizon problem by defining a terminal state weight P,
which can be obtained from the solution of the following discrete Lyapunov equation: TA PA P Q− = − (26)
With the terminal state weight, the IHMPC objective function defined in (24) can be
written in the form:
12
1
0 0( ) ( ) ( ) ( ) ( ) ( )
m mT T Tk
j jJ x k j Q x k j x k m Px k m u k j R u k j
−
= == + + + + + + + +∑ ∑ (27)
At this point, it is important to emphasize that the IHMPC as presented above deals only
with the regulator problem, where the system steady state lies at the origin of the (u,x)
plane. This means that the model defined in (22) and (23) is written in terms of the
deviation variables ssu u− and ssy y− . In their seminal paper, Rawlings and Muske [4]
show that this controller is stable and stability is independent of the tuning parameters of
the controller.
Badgwell [5] extended the infinite horizon regulator presented above, to the case in
which we have uncertainty in the process model. To present the method of Badgwell, we
assume that the true plant can be represented by the model defined in (22) and with
model parameters designated as ( , )T T TA B=θ . We also assume that the plant is stable, or
that all the eigenvalues of TA lie inside the unit circle. In the presence of model
uncertainty, Tθ is not known, but it is supposed to be a member of a set Ω of L stable
models with the same dimensions as Tθ . This means that
1 2, , ,T L∈Ω , …θ θ θ θ (28)
This kind of uncertainty is usually designated as multiple-plant uncertainty where each
plant may represent the real process at a particular operating condition. With this
notation, for instance, plant i corresponds to ( , )i i iA Bθ = . For any of the plants defined
in (28), the first term on the right hand side of Eq. (27) can be written as follows
( )0
( ) ( )i i i i
m TT c cd
jx k j Q x k j x Q x
=+ + =∑ θ θ θ θ
where
( )i
ci k ix E u D x kθ = +
13
( 1)
( 2)
( )
i
ii
i
c
x k
x kx
x k m
θ
θθ
θ
+ +
=
+
";
1 2
0 00
i
i i ii
m mi i i i i
BA B B
E
A B A B B− −
=
!!
" " # "
!
; 2i
ii
mi
A
AD
A
=
";
( )( 1)
( 1)
k
u ku k
u
u k m
+ = + −
"
[ ]dm
Q diag Q Q= !&'(')
Analogously, the second term on the right hand side of (27) can be written as follows
( )( 1) ( 1) ( ) ( )i i i i i
TT T T c T T ci i i i i i i ix k m Px k m x k m A PA x k m x C A PAC xθ θ θ θ θ+ + + + = + + = % %
where 0 0 nyC I = % ! and iP is obtained from the solution of Eq. (26) for the state
matrix iA .
Consequently, the control objective defined in (27), can be written as follows
[ ] [ ], ( ) ( )i
T T T Tk i k i d i i i i k i k d kJ E u D x k Q C A P A C E u D x k u R uθ = + + + +
% % (29)
where [ ]d
m
R diag R R= !&'(')
Equation (29) can now be written in the general quadratic form
, ,2i i i i
Tk k k f kJ u H u c u cθ θ θ θ= + + (30)
where
iT T Ti d i i i i DH E Q C A P A C E Rθ = + +
% %
, ( )i
T T T T Tf i d i i i ic x k D Q C A P A C Eθ = +
% %
( ) ( )i
T T T Ti d i i i ic x k D Q C A P A C D x kθ = +
% %
Let , NkJ θ be the value of the objective function (30) corresponding to the nominal plant,
14
which is represented by ( ),N N NA Bθ = . This is the most probable model, or the model
corresponding to the design condition of the process. Let also , TkJ θ be the control
objective corresponding to the true plant. Remember that the true plant is unknown, but it
is assumed to be one of the plants lying in Ω . Thus, assuming that the state is perfectly
known, the robust regulator proposed by Badgwell [5] can be formulated as the solution
of the following problem:
Problem P1
,minN
kku
J θ
subject to
, ,
i ik kJ Jθ θ≤ iθ ∈Ω (31)
min max( ) ; 0,1, , 1u u k j u j m≤ + ≤ = −! (25)
Let the optimal solution to the above problem be represented by the following sequence
of control actions
* * * *( ) ( 1) ( 1)k ku u k u k u k m = + + − ! (32)
In the inequality defined in (31), ,
ikJ θ ( 1,2, ,i L= … ) represents the numerical value of
the control objective for each of the plants lying in Ω and obtained with the following
control sequence
* *1
( ) ( 2) 0k ku u k u k m
− = + − ! (33)
which is computed using the optimal control sequence obtained at sampling instant k-1 as
follows:
15
*1
0 0 0
0 00 0 0
k k
I
u uI
−
=
!" # # "" # # "! !! !
As the control sequence defined in (33) is inherited from the optimal control sequence at
time step k-1, it is clear that it satisfies the input constraints defined in (25). Also, it s
easy to show that for the undisturbed true plant
*, 1,
( 1) ( 1) ( 1) ( 1)T T
T Tk kJ J x k Qx k u k R u kθ θ−= − − − − − −
where *1, TkJ θ− is the value of the objective function for the true plant with the optimal
control sequence obtained at sampling time k-1, and ,
TkJ θ is the value of the objective
function of the true plant at sampling time k computed with the control sequence defined
in Eq. (33). Thus, as the optimal solution to Problem P1 at time k will result in a objective
function that is not larger than any feasible solution, we can write
* * * *, , 1, , 1,
T T T T Tk k k k kJ J J J Jθ θ θ θ θ− −≤ ≤ ⇒ ≤
This means that the control objective is a contracting function, and since it is positive
definite, it will converge to zero. Consequently, as long as the model of the true plant lies
in set Ω , the MPC regulator defined in Problem P1 will drive the true plant to the origin.
Note: In the development of the controller presented above, it is assumed that the term
0( ) ( )T
ix k i Q x k i
∞
=+ +∑ , in the control objective function, is bounded for all the plants
lying in set Ω . However, this cannot happen when the plants have different gains and a
change of set point is introduced into the system. This case is usually designated as servo
or output tracking operation. In this case, as the solution of Problem P1 will produce a
single optimal control sequence given by (32), this optimal control sequence cannot drive
simultaneously the outputs of all the plants in Ω to the same set point. Therefore, the
robust MPC presented above does not assure stability for the case in which there is a
16
change in the set point of the system output. This means that this robust MPC cannot be
implemented in practice where the control system has to face both regulator and output
tracking operations. In the next section we will present a robust MPC [6] that extends the
approach of Badgwell [5] to the practical case.
Extended IHMPC and Robust MPC
To extend the controller presented in the previous section, such that the resulting
controller can be applied to real systems, it is convenient that the state space model
defined in (22) and (23) be written in the following incremental form [7]
0( 1) ( )( )
0( 1) ( )
s s sny
d d d
Ix k x k Bu k
Fx k x k B
+ = + ∆ +
(34)
( )( )
( )
s
ny dx k
y k Ix k
= Ψ
(35)
where
s nyx ∈ $ , d ndx ∈ - , nd ndF ×∈ - , Ψ ny nd×∈ $ , ( ) ( ) ( 1)u k u k u k∆ = − −
Suppose now that the objective function of the extended IHMPC is defined as follows: 1
0 0( ( ) ) ( ( ) ) ( ) ( )
mTT T
k k k k kj j
V e k j Q e k j u k j R u k j S∞ −
= == + − δ + − δ + ∆ + ∆ + + δ δ∑ ∑ (36)
where ( ) ( ) spe k j y k j y+ = + − , ( )y k j+ is the predicted output at sampling step k+j, m
is the control horizon and nykδ ∈ $ is a vector of slack variables. ny nyQ ×∈ $ , nu nuR ×∈ $
and ny nyS ×∈ $ are positive definite weighting matrices. The vector of slack variables kδ
allows the infinite horizon controller to be applied to the cases in which there are not
enough degrees of freedom to force all the system outputs to the desired set point.
It can be shown that the control objective defined in (36) will be bounded only if [6]
17
( ) 0s spkx k m y+ − δ − = (37)
When the constraint defined in (37) is satisfied, the infinite horizon control objective can
be written as follows
( ) ( )
0
-1
0
( ) ( ) ( ) ( )
( ) ( )
m T d T dk k k
j
mT T
k kj
V e k j Q e k j x k m Q x k m
u k j R u k j S
=
=
= + − δ + − δ + + +
+ ∆ + ∆ + + δ δ
∑
∑ (38)
where ny nyQ ×∈ $ is such that
T T TQ F QF F Q F− = Ψ Ψ (39)
Using model equations (34) and (35) to represent the output prediction as a function of
the future control actions and the current state, and (39) to compute the terminal weight,
the control objective represented in (38) can be written in the quadratic form:
2k kT T Tk k k f
k k
u uV u H c c
∆ ∆ = ∆ δ + + δ δ (40)
where
( ) ( ) ( )( )
1 1 1 2 1 1 1
1 1 1
T Ts s T sm u m u u u m u
T s Tm u
B F Q B F F Q F R B F Q IH
I Q B F S I Q I Q
+ Ψ + Ψ + + − + Ψ = − + Ψ + +
(41)
( ) ( ) ( )( )
1 1 1 2
1 1
( ) ( ) ( )
( ) ( ) ( )
T Ts s d dm u x u x
f T s dx
B F Q Ie k F x k F Q F x kc
I Q Ie k F x k Q e k
+ Ψ + Ψ + = − + Ψ −
(42)
( ) ( ) ( ) ( )1 1 1 2( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )T TT s d s d d d
x x x xc e k Qe k Ie k F x k Q Ie k F x k F x k Q F x k= + + Ψ + Ψ +
(43)
ny
ny
II
I
=
" , 0s
sm
s s
BB
B B
=
!" # "!
, ( )
( 1)k
u ku
u k m
∆ ∆ = ∆ + −
"
18
2
1 2
0 0
,
d
d d
x u
m m d m d d
F BF FB B
F F
F F B F B B− −
= =
!# "
" " " # "!
, 1 [ ]m
Q diag Q Q=.'/'0! ,
2 [0 0 ]m
Q diag Q=.''/''0! , 1 [ ]
m
R diag R R=.'/'0! and 1 [ ]
m
diagΨ = Ψ Ψ.'/'0! ,
( ) ( )s s spe k x k y= −
Analogously, the constraint defined in (37) can be written as follows:
( ) 0s sk ke k B u+ ∆ − δ =% (44)
where s s s
m
B B B= % !&''('')
Finally, we can define the extended infinite horizon MPC [6] that is based on the solution to the
following optimization problem:
Problem P2
,min
k kk
uV
∆ δ
subject to (40), (44) and max max
min max
0
( )
( 1) ( ) ; 0,1, , 1j
i
u u k j u
u u k u k i u j m=
−∆ ≤ ∆ + ≤ ∆
≤ − + ∆ + ≤ = −∑ !
It can be proved that if the system remains controllable along the trajectory from the
present state to the steady state corresponding to the desired set point, then the control
law, resulting from the solution to Problem P2 at successive time steps, will drive the
system output asymptotically to the desired set point. If an open loop stable system is not
controllable at the desired output, the closed loop with the controller defined above is still
stable, but it will not be able to drive the outputs to the desired set points.
19
We can now apply the approach of Badgwell [5] to include model uncertainty in the
extended infinite horizon MPC. A robust MPC, which can be applied to both regulator
and output tracking cases, is obtained as the solution to the following optimization
problem:
Problem P3
, , 1,...,,
,min N
k k i Lik
uV
θθ
δ =∆
subject to
, , 1,...,
i ik kV V i Lθ θ≤ = (45)
,( ) 0 1,...,i
s si k ke k B u i Lθ+ ∆ − δ = =% (46)
max max
min max
0
( )
( 1) ( ) ; 0,1, , 1j
i
u u k j u
u u k u k i u j m=
−∆ ≤ ∆ + ≤ ∆
≤ − + ∆ + ≤ = −∑ !
In (45), ,
ikV θ is computed with ku∆ and ,
ik θδ . The control sequence ku∆ is obtained from the optimal control sequence computed at the previous sampling time as follows
* *1
( ) ( 2) 0k ku u k u k m
− ∆ = ∆ ∆ + − !
and ,
ik θδ is such that
,( ) 0 1,...,
is s
i k ke k B u i Lθ+ ∆ − δ = =% (47)
The introduction of ,
ik θδ is necessary to accommodate the feedback from the state of the
true plant to the other models lying within Ω . It is easy to show that, for the undisturbed
system, we have *, 1,
T Tk kθ − θδ = δ .
Suppose that at time k-1, Problem P2 was solved and the resulting optimal solution is
represented by ( *1ku −∆ , *
1, , 1,...,ik i Lθδ − = ). For the true plant, the corresponding cost is
20
( ) ( )1
* * * * *1,
0 0
* *1, 1,
( 1 ) ( 1 ) ( 1 ) ( 1 )T T T
T T
mT Tk
j j
Tk k
V e k j Q e k j u k j R u k j
S
∞ −
− θ θ θ= =
− θ − θ
= − + − δ − + − δ + ∆ − + ∆ − + +
+ δ δ
∑ ∑
Assume that the first control action *( 1)u k∆ − was injected into the true plant and we
move to the present sampling time k. At this time step, consider the value of the control
objective for the true plant with the control sequence ku∆ and slack vector equal to
, Tk θδ% :
( ) ( )* * * * *, 1, 1, 1,
* *
( 1) ( 1) ( 1) ( 1)
( , ( ), )T T T T
T Tk k k k
k k k T T
V V e k Q e k u k R u k
V u
θ − θ − θ − θ= − − − δ − − δ − ∆ − ∆ −
≤ ∆ δ θ θ
Thus, as Problem P3 is always feasible at time k, the control objective for the true plant
will satisfy the relation * *, 1,T Tk kV Vθ − θ≤
Consequently, , TkV θ , which is positive and bounded below by zero, is also non-
increasing. Thus, if the inputs do not become saturated and Inequality (45) holds true for
all the models lying within Ω , the control objective function will converge to zero for the
true plant. However, similarly to the nominal case, for a square system, if one of the
inputs becomes saturated, the resulting cost will still be bounded but it will not converge
to zero as there will not be enough degrees of freedom to zero the error on all the outputs.
The system outputs will converge to an equilibrium point, which does not correspond to
the set point.
Remark
Problem P3 can be simplified as for each iθ , there is a slack vector , ik θδ , which becomes
part of the set of decision variables of the control optimization problem. However, of the
robust IHMPC optimization problem can be reduced because , ik θδ is not constrained, and
for each , ik θδ there is an equality constraint defined in (47). Therefore, the slacks can be
21
eliminated from the optimization problem. After the substitution of , ik θδ , the left-hand
side of (46) can be written as follows
, ,2i i i i
T Tk k k f kV u H u c u cθ θ θ θ= ∆ ∆ + ∆ +% % % %
where
11, 12,
21, 22
i i
ii
H HH
H Hθ θ
θθ
=
, , ,1, ,2,i i iT T Tf f fc c cθ θ θ =
11, 12, 21, 22i i i i
T Ts s s si i i iH H H B B H B H Bθ θ θ θ= + + +% % % % %
, 21, 22 1, 2,( )i i i i
T s T s T T sf i f f ic e k H H B c c Bθ θ θ θ = + + +
% %%
22 2,( ) ( ) 2 ( )i i i
s T s T sfc e k H e k c e k cθ θ θ= + +%
iHθ , , ifc θ and
icθ can be defined as in (40), (41) and (42) respectively.
With this reduced expression for the objective function, the control law for the robust
MPC can be obtained as the solution to the following optimization problem
Problem P4
,min Nk
ku
V θ∆
%
subject to
, , 1,...,
i ik kV V i Lθ θ≤ =%
max max
min max
0
( )
( 1) ( ) ; 0,1, , 1j
i
u u k j u
u u k u k i u j m=
−∆ ≤ ∆ + ≤ ∆
≤ − + ∆ + ≤ = −∑ !
We now illustrate the application of the robust MPC with a classical system of the
process control literature.
22
Example 2 Ralhan and Badgwell (2000) studied the control of a high purity distillation column and
compared the performance of several regulators, which are robust to model uncertainty.
Here, we simulate this system with the controller defined by Problem P3. The model
below relates the outputs: distillate composition (y1) and bottom stream composition (y2),
to the inputs: reflux flow rate (u1) and reboiler vapor flow rate (u2).
1 1 2 1
2 1 2 2
( ) 0.7868(1 ) 0.6147(1 ) ( )1( ) 0.8098(1 ) 0.982(1 ) ( )22.98 1
+ γ − + γ = + γ − + γ+
y s u sy s u ss
In this model, 1γ and 2γ are parameters that define the model uncertainty, and it is
assumed that 1 20.4 , 0.4− ≤ γ γ ≤ . Here, we consider an approximated solution in which
set Ω is discretized as follows
[ ](0,0) ( 0.4, 0.4) ( 0.4,0.4) (0.4, 0.4) (0.4,0.4)Ω = − − − −
It is assumed that the nominal model corresponds to ( ) ( )1 2, 0,0γ γ = . In the simulation of
Case 1, the nominal model also represents the true plant. In the simulation cases 2 and 3,
the true plant is represented by ( ) ( )1 2, 0.4, 0.4γ γ = − − and ( ) ( )1 2, 0.4,0.4γ γ = −
respectively. In these three cases, it is simulated the following scenario: at time 0, the
system starts at the origin and the output reference is changed to 1 2( , )set sety y =(0.1, 0); at
sampling time 50, it is introduced an unmeasured disturbance corresponding to
1 2( , ) (0.5,0.5)u u∆ ∆ = . The tuning parameters of the controller are shown in Table 1.
Table 1. Tuning parameters of the cost constraining robust MPC
T m Q R S ∆umax ∆umin umax umin
2 3 diag(1,1) diag(10-2,10-2) diag(102,102) 0.25 -0.25 1.5 -1.5
Figure 7 shows the system responses with the robust controller for the three cases
simulated. As expected, a better performance is obtained when the plant model is the
nominal model. We may also note that the introduction of a disturbance that moves the
steady state of the input to a different value does not affect the convergence of the
controller, neither it makes the control optimization problem to become unfeasible.
23
Figure 7. Robust control of the distillation system. Case 1 ( ), Case 2 ( - - - -),
Case 3 ( ⋅ ⋅)
In the second simulation scenario, we verify the effect of an input saturation on the
convergence of the robust controller. It was considered the same plant as in Case 2 but
without the unmeasured disturbance. The max bound on input u1 was reduced to 0.5,
which is low enough such that u1 becomes saturated. Fig. 8 shows the responses of the
system for this case, and we can observe that the system outputs still converge to a steady
state, but, as a consequence of the input saturation, the outputs does not converge their set
points. Neither y1 tends to its reference, which is 0.1, nor y2 tends to zero. For the same
case, Fig. 9 shows the cost function (Vk) for the true plant. This cost is non-increasing
indicating convergence, but, because of the input saturation, the cost cannot be reduced to
zero.
24
Figure 8. Responses of the distillation system with input saturation
Fig. 3. Cost for the true distillation system with input saturation
References
[1] - Maciejowiski J.M., Predictive Control with Constraints, Prentice Hall, 2002.
[2] - Morari M., Zaphirou E., Robust Process Control, Prentice Hall International, 1989.
[3] Li S., Lim K. Y., Fisher D.G., A State Space formulation for Model Predictive
Control, AIChE Journal, 35 (2), 241-249 (1989).
[4] Rawlings J.B., Muske K. R., The stability of constrained multivariable receding
horizon control, IEEE Transactions on Automatic Control, 38 (10), 1512-1516 (1993).
[5] Badgwell T. A., Robust model predictive control of stable linear systems,
International Journal of Control, 68, 797-818 (1997).
25
[6] Odloak D., Extended robust model predictive control, AIChE Journal, 50 (8), 1824-
1836 (2004).
[7] Rodrigues M. A., Odloak D., MPC for stable linear systems with model uncertainty,
Automatica, 39, 569-583 (2003).
Complementary bibliography to Robust Model Predictive Control
C1) Cuzzola F.A., Geromel J.C., Morari M., An improved approach for constrained
robust model predictive control, Automatica, 38 (7), 1183-1189 (2002).
C2) Kothare, M. V., Balakrishnan V., Morari M., Robust constrained model predictive
control using linear matrix inequalities, Automatica, 32, 1361-1379 (1996).
C3) Lee J. H., Cooley B.L., Min-max predictive control techniques for a linear state-
space system with bounded set of input matrices, Automatica, 36, 463-473 (2000).
C4) Lee J.H, Xiao J., Use of two-stage optimization in model predictive control of stable
and integrating systems, Computers and Chemical Engineering, 24, 1591-1596 (2000).
C5) Ralhan S., Badgwell T.A., Robust control of stable linear systems with continuous
uncertainty, Computers and Chemical Engineering, 24, 2533-2544 (2000).
C6) Ralhan S., Badgwell T.A.,, Robust model predictive control for integrating systems
with bounded parameters, Ind. Eng. Chem. Res., 39, 2981-2991 (2000).
C7) Scokaert P.O.M., Mayne D.O., Min-max feedback model predictive control for
constrained linear systems, IEEE Transactions on Automatic Control, 43 (8), 1136-1142
(1998).
C8) Wan Z.Y., Kothare M.V., An efficient off-line formulation of robust model
predictive control using linear matrix inequalities, Automatica, 39 (5), 837-846 (2003).
C9) Wang Y. J., Rawlings J.B., A new robust model predictive control method I: theory
and computation, Journal of Process Control, 14, 231-247 (2004).
26
Exercises 1-With the help of Matlab routine PASI_Robust you should study, for the system of
example 1, the effect of the following parameters on the robustness of the unconstrained
MPC controller:
a) Control horizon m
b) Input weight rr
c) Weight q of one of the outputs while the weight of the other output is kept
constant.
d) For the controller depicted in example 1 of the class notes, show by simulation
that the method based on the small gain theorem may be very conservative.
2-Based on the results of exercise 1, propose a set of tuning parameters for the
unconstrained MPC, such that the closed loop system will be stable for gain uncertainties
as large as ±12% of the nominal gains.
3-Use Matlab routine PASI_MAIN_SIM to evaluate the performance of the MPC
controller when applied to the nominal system and to the worst case system with ±12%
uncertainty in the model gains.
4-For the system of example 2 (high purity distillation column), use Matlab routine
PASI_RIHMPC to explore by simulation to what extent the process gain uncertainty can
be tolerated by the robust extended IHMPC before becoming unstable. Try to justify why
the controller becomes unstable.
5-For the distillation column, verify by simulation the effect of weight S. For the other
tuning parameters of the controller keep the same values used in example 2.