This slide talk about the model predictive control / dynamic matrix control and these topics are the part of chemical engineering subject called process control
1. Model Predictive Control
Dynamic Matrix Control
Process Dynamics and Control
Supplementary Material
Indian Institute of Technology Kanpur
Modeule 6.3
2. Process Control Notes 2
The MPC Paradigm
ySP
y past
. . . u past . . .
u future
y future (predicted)
y reference
time
-4 -3 -2 -1 0 1 2 3 4 M P
. . . . . .
. . . . . .
GIVEN
A predictive model that predicts y for candidate control move sequences
QUESTION
Of all the candidate future control move sequences, which one causes the
predicted y to best follow the reference trajectory
SOLUTION
Usually solved as an optimization problem
MPC PROCEDURE
1. Obtain current y measurement
2. Calculate reference trajectory
3. Calculate uoptimum
4. Implement current move
5. Repeat at next sampling instant
M: Control Horizon
P: Prediction Horizon
3. Process Control Notes 3
Dynamic Matrix Control
Unit Step Response Coefficients
g = [g1 g2 g3 โฆ gN-1 gN]
g1
g2
g3
gN-1 gN
. . . . . . . . . . . .
time
0 1 2 3 N-1 N
u
y
Unit Step Process Reaction Curve
time
0 1 2 3
u0 u1
u2
u1
u0
u2
u = u0 + u1 + u2
Input Change Sequence
time
0 1 2 3
u
Any general input change sequence is a
superposition of appropriately delayed steps
Predicted output response is superposition
of appropriately delayed step responses
4. Process Control Notes 4
SISO DMC: Predictive Model
Process
d
y
u +
+
ySP
y past
. . . u past . . .
u future
y future (predicted)
y reference
time
-4 -3 -2 -1 0 1 2 3 4 M P
. . . . . .
. . . . . .
k
k
๐ฆ๐ =
๐=โโ
min(๐โ1,๐)
๐๐โ๐๐ข๐ + ๐๐
๐ฆ๐ =
๐=โโ
โ1
๐๐โ๐๐ข๐ +
๐=0
min(kโ1,M)
๐๐โ๐๐ข๐ + ๐๐
๐๐ = ๐๐ = ๐0 = ๐ฆ0 โ ๐ฆ0
๐ฆ0 =
๐=โโ
โ1
๐โ๐๐ข๐
๐ฆ๐ =
๐=0
min(kโ1,M)
๐๐โ๐๐ข๐ +
๐=1
โ
๐๐+๐ โ ๐๐ ๐ขโ๐ + ๐ฆ0
Effect of control
moves
Effect of past moves
๐ฆ๐ =
๐=0
min(kโ1,M)
๐๐โ๐๐ข๐ +
๐=1
N
๐๐+๐ โ ๐๐ ๐ขโ๐ + ๐ฆ0
Forced response Free response
8. Process Control Notes 8
Reference Trajectory and Tuning
Reference Trajectory
๐๐+1 = ๐ผ๐๐ + 1 โ ๐ผ ๐ฆ๐ ๐
0 โค ๐ผ โค 1
Initial Condition ๐0 = ๐ฆ0
v v v
ฮฑโ
ySP
y0
time
CONTROLLER TUNING
โข M, P, ฮฑ, ฮป: Tuning parameters
โข Usually M, P and ฮฑ are chosen to reasonable values and
ฮป adjusted for stable and tight closed loop control
โข No standard tuning procedures for MPC (Hit-and-trial)
9. Process Control Notes 9
Multivariable DMC
DMC
Controller
โฎ
โฎ
u1
u2
uN
y1
y2
yN
PROCESS
โฎ
โฎ
๐ฒ๐
๐ฒ๐
โฎ
๐ฒ๐ฃ
โฎ
๐ฒ๐
G11 G12 โฆ G1k โฆ G1N
G21 G22 โฆ G2k โฆ G2N
โฎ
Gj1 Gj2 โฆ Gjk โฆ GNN
โฎ
GN1 GN2 โฆ GNk โฆ GNN
u1
u2
โฎ
uk
โฎ
uN
f1
f2
โฎ
fj
โฎ
fN
= +
๐ฒ = ๐๐ฎ + ๐
๐ฝ =
๐=1
๐
๐=1
๐๐
(๐ฆ๐๐ โ ๐๐)2
+
๐=1
๐
๐=0
๐๐
๐๐๐ข๐๐
2
๐ฝ = ๐ฒ โ ๐ซ ๐ ๐ฒ โ ๐ซ + ๐๐ฎ๐๐ฎ
๐ฎโ
= (๐๐
๐ + ๐๐)โ๐
๐๐
๐ซ โ ๐
CONSTRAINED MULTIVARIABLE DMC
Rate Constraint
โ๐ข๐
๐๐ด๐
โค ๐ข๐๐โค ๐ข๐
๐๐ด๐
for k = 1 to N
Valve Saturation Constraint
0% โค ๐=0
๐๐
๐ข๐๐ โ ๐ข๐๐ข๐๐,๐ โค 100% for k = 1 to N
Solve using a quadratic program (quadprog in Matlab)
10. Process Control Notes 10
Some Comments
โข MPC does not address stability directly. Classical methods do.
โข Stability addressed indirectly by adjusting the objective function using
primarily ฮป (move suppression factor)
โข Since objective function itself is getting tuned to ensure stability, it makes
little sense to claim โoptimalityโ of control moves compared to classical
control methods
โข The (pseudo)inversion of the dynamic matrix makes the technique truly
multivariable
โข Same formalism can handle SISO, MIMO (square and non-square) systems
โข MPC performance degrades significantly with increasing plant model
mismatch. Models and tuning must be periodically updated
โข No systematic MPC tuning procedures (unlike classical methods)