You are on page 1of 35

DYNAMIC MATRIX

CONTROL

Presented by
Chinta Manohar
D Surya Suvidha

Evolved from representing process dynamics with a set

of numerical coefficients

Uses a least square formulation to minimize the integral

of the error/time curve

DMC algorithm incorporates feedforward and

multivariable control

Incorporation of the process dynamics makes it possible

to consider deadtime and unusual dynamic behavior

Using the least square formulation made it possible to

solve complex multivariable control calculations quickly

At each time step control is computed by

solving an openloop optimization problem for
the prediction horizon
First value of the computed control sequence is
applied
At the next time step, new system is recomputed

Consider

the following furnace example

(Cutlet & Ramaker)
Process
Heater
MV (manipulated variable)
Fuel

flow FIC

DV(dynamic
Inlet

variable)

temperature TI

CV(control
Outlet

Process Flow

Ti

Fp
FIC

variable)

temperature TIC
Fuel

TIC

CONT
furnace DMC
model is defined by its
dynamic coefficients a
and b
Response to step
change in fuel, a
Response to step
change in inlet
temperature, b

0.014
0.086

0.214

0.0
0.240

0.340

0.414
0.600

0.465
0.540

The

,b

0.736
0.836

0.590
0.622

0.904
0.949

0.640
0.653

0.986

0.658

CONT
DMC

Dynamic
coefficents
Response to step
change in fuel, a
Response to step
change in inlet
temperature, b

Fuel Coefficients ai
1.5
1
0.5
0

Fuel Coefficients ai

10

Inlet Temperature Coefficients bi

1
Inlet Temperature
Coefficients bi

0.5
0
0

10

DYNAMIC MATRIX CONTROL

MATRIX COMPUTATION
The

DMC prediction may be calculated from those

coefficients and the independent variable changes
CV 1

2
CV

a1
a
2

0
a1

0
0

b1
b2

0
b1

CV 3 a3 a2

CV i ai ai 1

a1

b3

b2

ai 2

bi

bi 1

MV 1
0
2

MV

0
MV 3
b1
1
DV

DV 2

bi 2
3
DV
8

DYNAMIC MATRIX CONTROL

FEED FORWARD PREDICTION
Feedforward

prediction is enabled by moving the

DV to the left hand side
CV 1 b1

CV

CV 3 b3 DV 1

CV i bi

a1
a2

0
a1

a3 a2

ai ai 1

0
0 MV 1

2
a1 MV

MV 3
ai 2
9

CONT
Controller

definition

Prediction

horizon = 30

time steps
Control horizon = 10
time steps
Initialization
Set

CV prediction vector
to current outlet
temperature
Calculate error vector

CV 1 CV 0

CV 30 CV 0

e1 SP1 CV 1

e 30 SP 30 CV 30

10

Least

suppression
0
a1
a2

0
0
a1

a
30

a29

a28

1,1 0
0
2, 2

0
0

0
9,9
0

a1
a
2
a3

Move
suppression

0
0
a1

MV 1

MV 2

a21

0 MV 30

0
10,10

e1
2
e

e10
0

11

CYCLE

DMC Controller steps

Calculate moves using least square solution
Use predicted fuel moves to calculate changes to outlet
temperature and update predictions
Shift prediction forward one unit in time
Compare current predicted with actual and adjust all 30
predictions (accounts for unmeasured disturbances)
Calculate feedforward effect using inlet temperature
Solve for another 10 moves and add to previously
calculated moves
12

FURNACE RESPONSE
Furnace

Temperature

Example
Temperature
Disturbance
DT=15 at t=0
Three Fuel
Moves Calculated

15
10
5
0
-5 0
-10
-15

625

600
5
Fuel_0
Temp_0
Fuel_1
Temp_1
Fuel_2
Prediction

10
Time

13

15
575

Constrain

max MV movements during each time

interval
Constrain min/max MV values at all times
Constrain min/max CV values at all times
Drive to economic optimum
Allow for feedforward disturbances

14

CONT
Restrict

computed MV move sizes (move

suppression)
Relative weighting of MV moves
Relative weighting of CV errors (equal concern
errors)
Minimize control effort

15

CONT
For

linear differential equations the process output

can be given by the convolution theorem
k

CV k 1 CV 0 ak j 1 MV j d k
j 0

CV 1 CV 0 a1 MV 0 d 0
CV 2 CV 0 a2 MV 0 a1 MV 1 d 1

CV 3 CV 0 a3 MV 0 a2 MV 1 a1 MV 2 d 2
16

CONT
Breaking

up the summation terms into past and

future contributions

CV k l CV

k l

k N 1

ak l j MV

j k

k 1

k 1

CV CV a1 MV k
k 2
k 2
CV CV a2 MV k a1 MV k 1
CV

k 3

CV

k 3

a3 MV k a2 MV k 1 a3 MV k 2
17

CONT
Let

N=number future moves, M=time horizon to

reach steady state, then in matrix form
CV

k 2
CV

CV

k 1

k M
CV

k 1
k 2

a1
a
2

CV a N

k M
CV
aM

aM

0
a1

a N 1

aM 1

aM

MV k

a1 MV k 1

aM N 1 MV k N 1

aM
18

CONT
Setting

the predicted CV value to its setpoint and

subtracting the past contributions, the simple DMC
equation results

CV k 1 CV k 1
S
k 2
S

CV

CV

CVSk M CV

k 2

k M

e A MV

19

CONT
Predicted

response is determined from current

outlet temperature, predicted changes and past
history of the MVs and DVs
Desired response is determined by subtracting
the predicted response from the setpoint
Solve for future MVs -- Overdetermined system
Least square criteria (L2 norm)
Very large changes in MVs not physically
realizable
Solved by introduction of move suppression

20

SCALING OF RESIDUALS

1
posed
1
Min W 2 A MV e
2
2
w1

For example,
the relative
weights with
two CVs

w1

1
2

w1

w2

w2

w2

21

DMC-RESTRICTION
To

restrict the size of

calculated moves a
relative weight for
each of the MVs is
imposed

Min W MV
2

R
1
2

r1

r1

r1

r2

r2

r2

22

CONT
Subject
The

to linear constraints

change in each MV is within a step bound

MV LO

LO
MV

MV

LO

MV HI

HI
MV

MV

k 1
MV

k N 1
HI
MV
MV
k

23

CONT
Subject

to linear constraints

Size

of each MV step for each

time interval

MV k
k 1

MV

MV
MV

MV

k N 1
MV
MV

IL

1 0 0 MV k
1 1
k 1
MV

k N 1

1 1 1 MV
24

CONT
Subject

to linear constraints

MV calculated

and low limits

MV LO

MV

MV k
k 1

MV HI

MV

MV MV I MV
MV MV
L

LO
k N 1
HI
MV MV
MV
MV MV
LO

HI

25

CONT
Subject

to linear constraints

CV calculated

low limits

CV

LO
CV

LO

CV

LO

CV k 1
MV k CV HI

k 2
k 1
HI
MV
CV
CV

k M
k N 1
HI
MV
CV
CV

26

The

where

Minimize 1MV1* 2 MV2* 3 MV3*

Subject to:
CV1LO g11MV1* g12 MV2* g13MV3* CV1HI
CV2LO g 21MV1* g 22 MV2* g 23MV3* CV2HI
27

MODIFIED DMC
The

Aij

to the jth MV,

A 11
A
21
A 1t

0
0

A 12
A 22
0
1t
0

A13

A 23

0 ,e

1t

e1

e2

MV1* MV 1

*
MV2 MV 2
MV3* MV 3
28

Approximate

the process dynamics of all

controller output to measured process variables

29

CONT
Select

Compute

horizon, N

30

CONT...
Compute

Select

the controlled variable weights to scale

process variable units to be the same

Compute

31

CONT

Implement DMC using the traditional step

response of the actual process and the initial
values of parameters
32

RESPONSE OF DMC

Performance of DMC using tuning rules

T=100, P=N=198, =3.53

33

REFERENCES

Tuning guidelines for DMC- Danielle

Dougherty and Douglas J. Cooper-Ind. Eng.
Chem. Res. 2003, 42, 1739-1752
http://web.stanford.edu/class/archive/ee/ee392m/
ee392m.1056/Lecture14_MPC.pdf
www.che.utexas.edu/course/che360/lecture_notes
tx.technion.ac.il/~dlewin/054414/LECTURE_12.
pdf
34

THANK YOU

35