Limitations of Dynamic Matrix Control
Limitations of Dynamic Matrix Control
0098-1354(94)00063-8
Copyright © 1995 Elsevier Science Ltd
Printed in Great Britam . All rights reserved
0098-1354195 $9.50 + 0.00
(Received 5 June 1992; final revision received 13 May 1994; received [or publication 7 June 1994)
Abstract-Dynamic matrix control (DMC) is based on two assumptions which limit the feedback
performance of the algorithm. The first assumption is that a stable step response model can be used to
represent the plant. The second assumption is that the difference between the measured and the
predicted output can be modeled as a step disturbance acting on the output.
These assumptions lead to the following limitations:
Limitations 1 and 2 apply when the plant's open-loop time constant is much larger than the desired
closed-loop time constant. Limitation 3 is caused by gain uncertianty on the inputs.
In this paper we separate the DMC algorithm into a predictor and an optimizer. This enables us to
highlight the DMC limitations and to suggest how they can be avoided. We demonstrate that a new
model predictive control (MPC) algorithm, which includes an observer. does not suffer from the listed
limitations.
S;=
et al.
[
SI.I.i
52. I. i
.
Su.;
52.2. i
Sl.n".1
S2. nil' i
:
l •
1=1, ... ,n. (2)
DMC, but the results carryover to the general case Sn.' t.. Sn,.. 1.1 Snv,n ll • i
with constraints, since the issue of constraints only The step response model can be represented in
affects the optimizer. the following state space form, which is equivalent
The limitations we want to illustrate are: to that presented by Li et al. (1989):
Ll. Good performance may require an excessive Y(k + 1) = MY(k) + SAuCk), (3)
number step response coefficients.
y(k) = NY(k), (4)
L2. Poor performance may be observed for
"ramp-like" disturbances acting on the plant where
outputs. In particular, this occurs for input Au(k)=u(k)-u(k-l), (5)
disturbances for plants with large time con-
stants. Y(k) = [y(kfy(k + If ... y(k + n - W]T (6)
L3. Poor robust performance, due to input gain o In, 0 () 0
uncertainty (which is always present in prac- o 0 In, () 0
tice), may be observed for multivariable
plants with strong interactions. M= nXny;
0 0 U In, 0
0 0 0 0 111\
In addition, there is the obvious limitation that the
0 0 0 0 If/v
plant has to be stable.
This paper is organized as follows. In Section 2 we SI
present the algorithms we will use. The purpose is to S2
give a coherent overview of the algorithms and to
S=
point out the implicit assumption made in DMC. We Sn-2 (7)
also use this section to define the nomenclature. Sn-l
Readers not familiar with MPC are referred to Sn
Garcia et al. (1989). In Section 3 we use a simple
single-input-single-output (SISO) plant and a multi-
and
input-multi-output (MIMO) distillation column to
illustrate the limitations of DMC and demonstrate
,
that the algorithm by Lee et al. (1994) can be used to N=[In , 0 0 ... 0 0]. (8)
avoid these limitations. Section 4 contains a
Discussion and Section 5, Conclusions. Au(k) is a vector of changes in the manipulated
inputs at time k. y(k) is the output vector at time k.
The vector Y( k + 1) represents the dynamic states of
2. MODEL PREDICTIVE CONTROL the system. Each state, y(k + l), has a special inter-
pretation: it is the future output vector at time k + I
assuming constant inputs [i.e. Au(k + j) = 0 for
2.1. Dynamic matrix control j ~ 0]. The new state vector Y(k + 1) is the old vector
Y(k) shifted up n, elements plus the contribution
2.1.1. Modeling the plant. In the original DMC made by the latest input change Au(k).
formulation (Cutler and Ramaker, 1980) a step 2.1.2. The predictor. The DMC algorithm is illus-
response model of the plant is used to predict the trated in Fig. 1. The objective of the predictor is to
future behavior of the controlled variables. generate a vector, rw(k + 11k), of predicted open-
Let the step response of a SISO system be repre- loop outputs over a horizon of p future time steps,
sented by the sequence: the prediction horizon. This prediction vector is
then used as an input to the optimizer.
(1) The DMC predictor is described by the following
where the kth element is the output at time k caused equations:
by a unit step input at time O. For a stable plant this Y(k) = MY(k -1) + SAuCk -1), (9)
sequence will asymptotically reach a constant value,
y(k) =NY(k), (10)
i.e. Sn""'Sn+I' For a MIMO system with n; inputs and
ny outputs we get: "Y(k + 11k) = Mp Y(k) + .'1{9(k)- Y(k)] (11)
Limitations of dynamic matrix control 411
6.u(k) y(k)
Plant
Y(k + 11k)
.
I~ __ ~~,
.
' • • • • • • • • • • • • • • • • • • • • • • • • • • • _ - - • • _ - - - . _ . __ • ._ •• _._ - _ •••• _. •••• _ •• •
Optimizer Predictor
Fig. 1. DMC controller separated into a predictor and an optimizer.
s = [/ny In,
A
(12) ';j'm=
I
p ( 18)
5n> 5m~1 51
We use to denote that the output is from the
model and not from the true plant. y(k) is a vector s, 51'_1 S,. m
of measured outputs at time k. Y( k) and y(k) are
2lt(k + 11k) is a vector describing the desired output
discontinuous at L while u(k) is discontinuous at
trajectory (set points) over p future time steps r
k+, i.e. y is measured slightly before time k and u is
and A are weighting matrices and arc usually chosen
adjusted slightly after time k.
to be diagonal.
2.1.3. The optimizer. We use the QDMC objec-
The least squares solution to this problem I'
tive function from Garda and Morshedi (1986):
6.OU(klk) = W:f;')T[Tr:J';" + AI1\] I(:j;~'t Ir' r
J= min {ilr[i!Y m (k + 1)[k) - 2lt(k + l jk)lW
tl.'U(klk) x [?Jl(k + Ilk) _o)j(k + Ik)] (19)
+ IIA~OU,(klk)112}, (13) Only the first input move is implemented. and the
resulting optimizer is a constant gain matrix, K,1I'(
where
6.u(k) = [I () .. .O]L'l.jlL(klk)
~OU(klk) = [6.u(klk)T ~u(k + 11k)T
=K M Pd?Jl(k+lik)-O)J(k+ Ilk)!. (20)
... 6.u(k+m-1Ik)ly, (14) KM PC = f1 0" .O]f(:f;?[Tr:J';"+A] I
... Ym(k + plk)TjT, (15) 2.1.4. DMC assumptions, The DMC controller
can only be used with stable plants, There are two
and
reasons for this: (1) The internal model [equations
2lt(k + 11k) = [r(k + llk)Tr(k + 21k? ... (9-10)] can only describe a stable plant: (2)\'(kt
y(k) can grow unbounded for unstable svsterns lead-
r(k + plk)lY. (16)
ing to internal instability.
~OU(klk) is the optimal control sequence computed The internal model of the DMC predictor [equa-
at time k for m future input moves, where m is the tions (9-10)1 does not yield an estimate of the true
input horizon. "Ym(k + 11k) is a vector of outputs plant output. It computes the open-loop model out-
predicted at time k, over a horizon of p future time put, Y(k), for previous input moves. but does not
steps, including the effect of the m optimal input account for the effect of disturbances and model-
moves: plant mismatch, This means that generally v (k) -
y(k) is not zero when there is no steady-state offset
and y(k) = O. Rather. -y( k) equals the accumulated
where effect of disturbances and model-plant mismatch
412 P. LUNDSTROM et al.
Equation (11) gives the predicted open-loop out- outputs. It also allows modeling of integrating
put vector, "Y( k + 11 k). It is the predicted effect of systems:
previous input moves, M, Y(k), plus a simple bias
Y(k+l)=MY(k)+S~u(k)+T~w(k), (25)
adjustment given by the mismatch between the mea-
sured output, y(k), and the output form the internal y(k) = NY(k), (26)
model, y(k). y(k) = y(k) + v(k), (27)
To achieve good control performance, "Y(k+ 11k)
~w(k)=w(k)-w(k-l) is a vector of changes in
should be close to the true open-loop output. This
disturbances and v(k) is a vector of measurement
requires that n, the number of coefficient matrices in
noise:
S, is chosen such that S; = Sn+ I' otherwise M; Y(k)
will be in error. It also requires that y(k) - y(k) 0 In, 0 0 0 0 0
stays approximately constant. 0 0 In, 0 0 0 0
We formulate these requirements as two implicit
assumptions made in the DMC algorithm: M= 0 0 0 t; 0 0 0
0 0 0 0 In, 0 0
AI. A stable step response model with Sn=Sn+1 0 0 0 0 In, Cu Cw
can be used to represent the plant.
0 0 0 0 0 Au 0
A2. The difference between the measured and 0 0 0 0 0 0 Aw
the predicted output can be modeled as a
step disturbance acting on the output. n X ny +- dim{xu}+ dim{xw} , (28)
SI 0
2.2. DMC with general state space model
S2 0
The DMC algorithm can also be derived for a
general discrete state space model (Prett and S= Sn-2 T= 0 (29)
Garcia, 1988) instead of the step response model Sn-l 0
[equations (3-4)] used in the previous section. We Sn 0
will denote this algorithm DMCss. The only differ- Bu 0
ence between DMC and DMCss is the represen- 0 Bw
tation of the internal model. We include DMCss in
N = [In y 0 0 ... 0 0 0 0], (30)
this paper because it allows us to study DMC with-
out the effects of truncation errors caused by S, '* Y(k) = [y(k)T y(k + 1?... y(k + n -1)T
Sn+l' X.(k)Txw(k)T]T. (31)
Let the plant model be defined by the following
Au, B; and C, constitute a state space description
equations:
of the residual plant dynamics after n sampling
x(k+l)=Ax(k)+Bu(k), (22) intervals. A w , B; and C; describe the dynamics of
the disturbances. Xu and X w are state vectors for
y(k) = Cx(k). (23)
residual plant dynamics and disturbance dynamics,
Using this model the DMC algorithm can be de- respectively.
scribed by the block diagram in Fig. 1 by making the This representation allows very general modeling
following substitutions, Y(k) = M(k) = /H(k)- of plant and disturbances. However, we will approx-
i(k-l), M=A, S=B, N=[O .. .0] and imate the residual dynamics with ny x n u first-order
systems, each describing the slow response from one
[C~:AcA:]
input to one output. This approximation gives:
(33)
2.3. Observer based model predictive control
This algorithm is from Lee et al. (1994), we will
denote it "OBMPC". n;»; n u
Lee et al. use the following extended version of ~
the step response model in equations (3-4). The Cu = [In" In" ... In..], (34)
extension is made in order to include measurement We also restrict measurement noise and distur-
noise and general disturbances acting on the plant bances to the following special case:
Limitations of dynamic matrix control
~u(k) y(k)
Plant
Y(k + 11k)
' ~ - -" -" -" _.
Optimizer Predictor
Fig. 2. Observer based MPC controller separated into a predictor and an o ptimizer
1. The measurement noise at each output is equation (38) is parametrized as follows (Lee ,'I al.,
uncorrelated white noise. 1(94):
2. The disturbances at the outputs are integrated
white noise filtered through first-order dyna-
mics.
rIIIIn
For this special case we get the following diagonal
covariance matrices;
K= 1"-
I I"
lfJ' u,) 1j
E{~w(k)~w(k)"'1=W= [WI ... ,.J' (35)
ll.1
II
" ' !II
() l
E{v(k)v(k)T}= V= [Vt...] (36)
V,,\ I".. ,
+
t; + sa (1,1 I
!
if:A.1 (UII"J
n
s': I
1I.,(fJ?
(/;,), ~ --------: - I "" i -s n (4J)
I + 11.,' o{t,),
!iEfH
state transition matrix:
Y(~)
[ Y(k) - Y(klk)
] = [M- SKMPcMp
0 o 20 40 60 80 100 120 140 160 180 200
:83
Time [min]
Y(k-l) ]
J:[ ; ~
x [ Y(k--l)-Y(k-llk-l) .
(46)
:A"
The eigenvalues of M - SKMPcMp are the regulator
o 20 40 60 80 100 120 140 160 180 200
poles and the eigenvalues of M - KNM are the Time [min]
observer poles.
Fig. 3. Effect of truncation. Response for the SISO plant
If the measurements are noise-free and the distur-
[equation (48») with DMC controller A (Table 1). A unit
bances are random steps acting on the plant outputs, step disturbance acts on the plant output at t = 10.
then an unconstrained DMC controller where S; =
Sn+ 1 is equivalent to the unconstrained OBMPC
plant output at time t= 10. The simulation is per-
controller. That is, for this special case:
formed with a dead beat DMC controller (controller
Mp Y(klk) = M; Y(k) + J[y(k) - y(k)], (47) A, Table 1). The truncated step response causes an
erroneous prediction (a "jump") n -1 sampling
and DMC is an optimal state-observer state-
intervals after the disturbance occurred. The error
feedback controller.
here is so large that it leads to instability.
From this example we conclude that heavily trun-
3. LIMITATIONS OF DYNAMIC MATRIX CONTROL
cated models cannot be used, and thereby the
computer hardware may restrict the choice of sam-
3.1. Limitation 1: Good performance may require pling interval and the achievable closed-loop band-
an excessive number of step response coefficients width. This is especially important for plants with a
In the previous section we stated that the DMC large open-loop time constant.
step response model requires S; = Sn+ I' In this
section we demonstrate the consequence of sacrific- 3.2. Avoiding limitation 1
ing this requirement. Limitation 1 may avoided by using a state space
Assume that a high closed-loop bandwidth is model which has no truncation error. For example,
desired for the plant described by the following the DMCss algorithm requires only 2 states to repre-
model: sent equation (48) for ~ T = 1, one state for the
100
first-order transfer function and one for the delay.
P(s) = e ", (48) More states are needed if ~ T is less than the delay.
100s + 1 The OBMPC controller can also be used to avoid
In order to achieve the desired bandwidth a short limitation 1. Instead of truncating the response after
sampling interval is required. (A common rule is to
use ~ T'-S:2nllOwB' where W B is the closed-loop 80r-~~-~~~-~~~-~--'
103
- - Exact model
·····-Truncated model (DMC)
'. .-----Integrating approx imation
~ ~L1!;····=·OutPutdisturbar.lce
o . '_... -Input disturbance
"
]102~----"':":"" (OBMPC)
'§, .-... :. .
o : ---------i
,.....-;:c:c--:'::---;:;';=--~_:.~-~-'
o 5 10 15 20 25 30 35 40 45 so
::E 10' Time [min]
..".
O['!I:
'
~
10°
4()-4~5 -~()
Fig. 5. Frequency response for different models of 100/ Time [min]
(lOOs + 1) e -'. The DMC step response model is truncated
at n = 30, ~ T= 1 [equations (3-4)]. The OBMPC model Fig. 7. Responses for the SISO plant [equation (411)1 with
uses Au=l, Bu=S"+I-S,,, n=30 and ~T=I [equations DMCss controller B Crable 11 Solid curves: urut step
(25-26)]. disturbance acting on the plant output at 1 10 Dashed
curves: unit step disturbance acting on the plant input at
1= 10
!:D\=-=
--DMC controller A
:; .5 ·-----OBMPC controller D
~ 01-------' !.---.."...--------,
o
-.5
L-~~_~~~,........,~__::":""---:"=---:'::--;!
o 5 10 15 20 25 30 35 40 45 50 o 5 10 15 20 25 30 35 40 45 so
Time [min] Time [min]
!~5;':u-; ;;;B
01-----, --DMCss controller B
:; -.5 ...... OBMPC controller [)
0- . PI controller
..::; -1
o 5 10 15 20 25 30 35 40 45 50 5 10 15 20 25 30 35 4(1 45 ,n
Time [min] Time [min]
Fig. 6. Responses for the SISO plant [equation (48)] with Fig. H. Responses for the 51S0 plant [equation (4~,)i With
different controllers (Table 1). A unit step disturbance acts different controllers (Table I) A unit step disturbance acts
on the plant output at t= 10. on the plant input at 1= 10
416 P. LUNDSTROM et al.
1[£
"0 ·5
a
'2 10- 0z---;':1O~2~0,...-;;:3':::'0-4-:':0:--:5-!';::0----:60::--:7,..,,0-8~0~90--.J100
~
:a 10- 3
i T,mO[m;,): : j
10
We also included a PI controller in this comparison may use a to adjust the disturbance suppression.
to demonstrate the performance of a very simple Figure 9 also shows that the sensitivity function
controller. The PI controller is tuned according to for DMCss controller B goes to zero at (V = 1(/~ T
Ziegler-Nichols rules taking into account an extra rad/min. This is due to the dead-beat tuning and
delay of half the sampling time (Table 1). makes the controller very sensitive to high fre-
Responses to a unit input disturbance are shown quency uncertainty , e.g . dead time uncertainty.
in Fig. 8. The DMCss response is sluggish, while the
3.5. Limitation 3: Poor response for interactive
MIMO plants
(~,I : : : s;:d
In this section we will show that there are cases
with model-plant mismatch when a DMC controller
does not perform well even when the disturbance
actually is a step acting on the output.
There is always a certain mismatch between a real
10-4 10') 10-2 10-' 10° 10'
Frequency (rad/min] process and a model. The mismatch can have vari-
ous sources: uncertainty in the model parameters
Fig. 10 Magnitude vs frequency plot of the (I,I)-RGA and the model structure. inaccuracies of the actua-
element of the distillation column [equation (49») . The
interactions are large at low frequencies (Au = 35.1), but tors and measurement devices , etc . Multivariable
not at high frequencies (Au = 1.0). systems introduce a special problem here because
Limitations uf dynamic matr ix control ~1 1
t1T
T ype r A ( min) m p n IL ,
A DlC I II 3 .\ 30
B DM Css I 1I 3 .\
C DM Css I> : 1l.1l2 J,, : 5 10
D OBMPC 1 II 3 .\ 30 I '\ '1 - ' -.'I" 1 1.1 ..'
E OBMPC l : «: ll . 12S /, . , 5 III 3ll ll'195 ." , - '. " " Il.YY5 OY
F OBMPC li « : 0> : 5 111 30 0995 , . • " '-', ,." 11.995 0.22
' t1 ~
K ~)
PI Cr ,(z) = ('Z(_T; ) + K,; K, = llAS. r, =s.nmin . t1 T= 1 min
the "gain" of a multi varia ble process varies not onl y tr an sfer funct ion. We do this only because know n
with frequency, but also with "dire ctio n" , Skogestad del ays fit better into the MP C framew or k
et al. (1988) show that if a plant is ill-conditioned Skogestad et at. (l990) dem on strat e that" fre -
irrespective of scaling, then the co ntro l performance quency dependent relative gain arra y (RG A ) (Bris-
is strongly affected by input unc ertainty, in particu- tol, 1966) is a useful tool to check how se nsitive a
lar, when the controller is tr ying to invert the plant. plant is to inp ut uncertainty. Figure 10 shows the
The DMC controller is such a co ntro ller. especially , ( 1,1) RGA eleme nt. A. l l . of the dist illa tion col umn.
if the penalt y weight on the inp ut moves is low . as a function of freque ncy . ;. i t is high (:'is. l) »t low
Since there is alw ays some input uncertaint y, it frequencies but falls to one at higher freq uen cies .
should be clear that a DMC co ntro lle r is potentially T his sho ws that a D MC co ntrolle r ma y have pr ob-
bad when used for an ill-conditioned plan t. lem s with low-frequency inp ut uncertaint y
3.5.1. M1MO example. We use a distillation col- 3.5 .2. Eff ect of input uncertainty . We assume tha t
umn as an example process. The model is from th er e is 2()°j" unce rtaint y in the input move s. Fro m a
Skogestad and Morari ( 1988) and is den oted "co l- singular valu e ana lysis, one ca n deter mine that th e
umn A " in their paper. T he co lumn is described by wors t steady sta te effec t is obt aine d whe n the u nce r-
the follo wing equation s: tainties in A I. an d A VB act in opposite di re ction s
l
k ll ll 11 ll
- - - - - - eO'
( k) ++1'k:!S 1+k r,s
dYD ] = 1 + ,1'15 e- o, A L..d".,= I.2A 1. , ,,rnpu,cJ and
[ d XB k~ ,
- - gL(S) e - Os
(
+
k1 1 k 11
- -- - - -
k!l )' . C 17.\
l\ \/ Hactu at = 0.8/1 \!Jh " IUPutl:tl ' (5 1)
1 +1' ,5 I+r ~ I + r, s Respon ses for co ntro ller C (T able 1) to a n.OO I
ste p disturbance acting on I' D are sho wn in Fig 11
(49) E rro rs in th e input gains lead to very sluggish distu r-
ban ce rej ect ion although the dis turba nce IS In
where gL(S) expresses the liquid flow dynamics: accordan ce with the DMC disturbanc e assu mp tio n,
I Th e reaso n for this slow settling is tha t t he effect of
(50) the er ro rs in the manipulated inp uts is similar l O the
ef fect of inp ut step di sturba nces . Not e that this
OL is the overall liquid lag from the top to the bottom sluggish be havior ca nno t be Improved by a lterna tive
of the col umn. nT in equa tion (50) sho uld be equal choices of t uni ng par ame te rs
to the number of tra ys in the co lumn, bu t we use Th is ca n also be dem on strat ed in a plot 0 1 the
nT= 5 to avoid a mod el of unn ecessar y high order. sing ular values of the se nsitivity funct ion (Fig 12) .
Reflux Land bo ilup VB are man ipul at ed inputs , top Bo th the so lid cu rves (no unce rtaint y) have slope 1
co mpos ition, YD and bottom composition XH ar e which is a co nse q ue nce of the dis turbance asvurnp-
controlled outputs. We use th e following par ameter tion . Th ey also lie close to each other. which shows
values ; k ll == 0.878, k ,z = - O.RM, k 21 = 1.082, k 22 = th at the sens itivity function is we ll-cond itio ned .
1.096. T,=194min , Tz=1 5min. 0 = 1 min , 8 L = Since the plant itse lf is ill-con d ition ed we can con-
2.46 min and nT= 5. Skoges tad and Morar i do not elude that the co ntroller IS co mpe nsat ing h)l the
include any specified del ays in their model , inste ad dir ect ion ality o f the plant. Such a co nt ro lle r IS basi -
the y use a norm bounded uncertaint y de script ion to ca lly inve rti ng the plant and the syste m shou td be
cover the effect of de lays and ot he r un modeled high se nsitive to input uncertaint y. Indeed , th i-, I , the
frequency dynamics. In equa tion (49) we assume the case as see n both from the simulation in Fig. 1! a nd
delays to be known and eq ual to 1 min for each from the large difference bet ween so lid and dot te d
418 P. LUNDSTROM et al.
- - Without uncertainty
10° ...... With uncertainty
10 20 30 40 50 60 70 80 90 100
Time [min]
J~~:: ;: :<1
--Without uncertainty
10- "
"
.... --With uncertainty
.' .... -. Reference
IO"''--;--'~~"--:;-~~'"'''''~~'''-;-~~'''-;;-~~:'''
10- 4 IO. J 10 2 10.1 10° 10
1
~
--Without uncertainty
The first method is suggested in Skogestad et al. ...... With uncertainty
"a. 5
~--::::=.:..
(1988). It gives a controller with somewhat sacri- o" 0 '\~
ficed nominal performance, but the performance is ·5 ",\,:,~,:::"
much less sensitive to uncertainty because the con- o 10 20 30 40 50 60 70 80 90 100
Time [min]
troller does not correct for directionality.
J~nv:: :: :::
The second approach will work if the uncertainty
only causes problem at low frequencies. With this
approach the controller is still sensitive to uncer-
tainty, but this is counteracted by increasing the 1
controller gain at low frequencies to make the .80 10 20 30 40 50 60 70 80 90 100
Time [min]
nominal response much better than what is nomi-
nally needed. Fig. 14. Responses for the distillation column [equation
(49)J with OBMPC controller F (Table 1). A 0.001 step
We will now demonstrate the two approaches, disturbance acts on YD at t= 10. Uncertainty as defined in
using OBMPC controllers E and F (Table 1). In equation (51).
Limitations of dynamic matrix control 419
CACE 19-4-0