100% found this document useful (1 vote)
131 views36 pages

ESAPC

The document discusses model based predictive control (MBPC). It provides two key principles of MBPC: 1) using an explicit online process model for forecasting and 2) determining optimal control actions by minimizing a cost function subject to constraints. MBPC uses process models and optimization to determine future control moves that will minimize error over a prediction horizon while satisfying constraints.

Uploaded by

Alexis Veru Diaz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
131 views36 pages

ESAPC

The document discusses model based predictive control (MBPC). It provides two key principles of MBPC: 1) using an explicit online process model for forecasting and 2) determining optimal control actions by minimizing a cost function subject to constraints. MBPC uses process models and optimization to determine future control moves that will minimize error over a prediction horizon while satisfying constraints.

Uploaded by

Alexis Veru Diaz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

EPSAC MBPC

A ‘Gent’le Approach to MBPC


Model Based
PREDICTIVE CONTROL

Robin DE KEYSER
Ghent University / BELGIUM
Email: [email protected]
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 1
MBPC Strategy

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 2
MBPC Principles
2 KEY principles:
• explicit on-line use of a process model
(forecasting)
• optimal control action based on cost-function minimization
(constraints)

MBPC = family of methods; family-members differ by:


• type of cost function, constraints, optimizer
• type of model for process and disturbances
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 3
MBPC History
• pioneering work 2 decennia ago
- Industrial:
- EU: MAC (Adersa, Richalet, 78)
- USA: DMC (Shell Oil, Cutler, 80)
- Academic: adaptive prediction & control (all in Europe)
- EPSAC (Gent, De Keyser, 80)
- EHAC (London, Ydstie, 84)
- GPC (Oxford, Clarke, 85)
- MUSMAR (Firenze, Mosca, 85)
• 1990’s: boom all over the world : - industrial applications
- academic research
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 4
Application Area
• PID (95 %):
- lower level
- regulatory, stabilizing, DDC
• MBPC (5 %):
- optimizing level
- economically important loops (money-making loops)

• Process industry (refinery, petrochemical, chemical,


steel, pharmaceutical, food, …)
• Production lines (discrete parts manufacturing)
• Products (sophisticated mechatronic devices)
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 5
Benefits & Requirements
BENEFITS:
• easy concepts, intuitive
• nonlinear, interactive MV
• constrained control
• dead-time and feedforward compensation
• unusual dynamic behavior (NMP, unstable)
• open methodology

ENABLING TECHNOLOGIES:
• modeling and identification
• digital computers
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 6
MBPC Methodology
• prediction by means of a Reference
Trajectory
Past Inputs
process model And Outputs
Predicted
Outputs
+
• specification of a reference Model
-
trajectory
Future
• structuring of the future Inputs
(postulated) control law
• definition of a cost function Optimizer
Future Errors
(and constraints)
• calculation of the Cost Constraints
Function
optimizing control scenario
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 7
Objective
Find the control vector
Nu =4
u u(t+k/t) {u(t+k / t}, k=0…N2-1}
which minimizes the cost
y(t+k/t) function

N2

∑[r(t +k /t)− y(t +k /t)]


r=w 2
y
time
N1=2 N2=8
k=N1

PAST current time t FUTURE

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 8
EPSAC: Process Model

y(t ) = x(t ) + n(t ) e(t ): white noise (uncorrelated


 noise with zero mean value)

n C(q −1 ) = 1 + c q −1 +...+ c q −nc
u x + y  1 nc

MODEL D(q −1 ) = 1 + d q −1 +...+ d q −nd


+
 1 nd

C(q−1 ) (1 + cq−1 )
C ( q −1 ) −1 =
n(t ) = e(t ) D(q ) (1 + dq−1 )(1 − q−1 )
−1
D (q )

x(t ) = f [ x(t − 1), x(t − 2), , u(t − 1), u(t − 2), ]


Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 9
CARIMA Model
−1
−1 −1 C(q )
A(q ) y(t ) = B(q )u(t ) + −1 e(t )
1− q
 B( q −1 )
with: x (t ) = −1 u ( t ), a linear PTF
 A( q )
( Pulse Transfer Function )
 B( q −1 ) = b1q −1 +…+bnb q − nb  −1
 n ( t ) = C ( q )
−1 −1 − na −1 e ( t )
 A( q ) = 1 + a1q +…+a na q  −1
A( q )(1 − q )

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 10
NN Model
1 1
wi1 w11 w1
x(t-1) 12
z1 S
x(t-2) 2
.. w1 1
x(t-3) zi x(t)
u(t-1) .. z 2
n wn
u(t-2) 0
u(t-3) 1 -3 -2 -1 1 2 3 X
wn6

-1

INPUT HIDDEN OUTPUT


layer layer layer

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 11
EPSAC : Multistep Predictor
The prediction of the process output
{y(t+k / t), k=1…N2 }is based on:
• measurements available at time t:
{y( t ), y( t-1 ), … , u( t-1 ), u( t-2 ), …}
• future (postulated) values of the input:
{u( t / t ), u( t+1 / t ), …}

GPC: Diophantine equations EPSAC: Filtering techniques

y(t+k / t) = x(t+k / t) + n(t+k / t)


Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 12
Prediction x(t+k/t)
x(t+k-1/t) y(t+k-1/t)
x(t+k-2/t) y(t+k-2/t)
x(t+k-3/t) y(t+k-3/t)
x(t+k/t) x(t+k/t)
u(t+k-1/t) u(t+k-1/t)
u(t+k-2/t) u(t+k-2/t)
u(t+k-3/t) u(t+k-3/t)
PARALLEL SERIES-PARALLEL

P rocess P rocess
u y u y

+ +
x P -M od el y S /P -M o d el
x - n x - n
u u

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 13
Prediction n(t+k/t)
D ( q −1 ) C ( q −1 )
n f (t ) = −1 n(t ) n(t) = −1 e(t )
C (q ) D (q )

C(q −1 )
nf (t) = − c1nf (t −1) − c2nf (t − 2) −... n(t + k / t ) = −1 n f ( t + k / t )
D(q )
...+ n(t ) + d1n(t −1) + d2n(t − 2)+...

n f (t + k / t ) ≡ 0, k = 1… N 2 n(t +k / t) =−dn
1 (t +k −1/ t) −d2n(t +k −2/ t)−…

…+nf (t +k / t)+cn1 f (t +k −1/ t) +…

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 14
Base/ Optimizing response
y(t + k / t) = ybase(t + k / t) + yoptimize(t + k / t)
• ybase(t+k/t)
-Effect of past control {u(t-1), u(t-2), ... }
-Effect of a basic future control scenario Nu =4
-Effect of future disturbances n(t+k / t) u(t+k/t)
u
• yoptimize(t+k/t)
-Effect of the
optimizing δu(t+k/t)
future control actions ubase(t+k/t)
{δu( t / t ), δu( t + 1 / t ), … δu( t + N u − 1 / t )}
time
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 15
y(t+k/t)=ybase(t+k/t)+yoptimize(t+k/t)

Nu =4
u u(t+k/t)

δu(t+k/t)
ubase(t+k/t)

time

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 16
Optimizing response
impulse input impulse input
δ u(t/t) δu(t+1/t)

h δ u(t+1/t)
impulse response k-1 impulse response
h δ u(t/t)
k

k samples time (k-1) samples time

t t+k t t+k

yoptimize (t + k / t ) = hk δu (t / t ) + hk −1δu ( t + 1 / t ) +...


...+ gk − N u+1 δu (t + N u − 1 / t )
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 17
Basic EPSAC equation

Y = Y + G. U
 hN1 hN1 −1 hN1 −2 ... g N1 − N u +1 
Y=[ y(t +N1 /t) y(t +N2 /t)]T h hN1 hN1 −1 ... ... 
  N1 +1 

 [ base ] G =  ... ... 
T
Y= y (t + N1 / t) ybase (t + N2 / t) ... ... ...
  
U=[δ u(t /t) δ u(t +Nu −1/t)]  ... ... ... ... ... 
T

 hN hN 2 −1 hN 2 −2 ... g N 2 − N u +1 
 2

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 18
Objective
Find the control vector
Nu =4
u u(t+k/t) {u(t+k / t}, k=0…N2-1}
which minimizes the cost
y(t+k/t) function

N2

∑[r(t +k /t)− y(t +k /t)]


r=w 2
y
time
N1=2 N2=8
k=N1

PAST current time t FUTURE

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 19
EPSAC solution
N2

∑[ r(t + k / t ) − y(t + k / t )] = [R − Y − GU] [R − Y − GU]


2 T

k =N1

U = [G G ] [G T (R − Y )]
∗ T −1

The actual control action applied to the process is



u(t ) = ubase (t / t ) + δu(t / t ) = ubase (t / t ) + U (1)
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 20
MIMO MBPC - The method
Generic process model (2 inputs and 2 outputs) :
y1(t) = x1(t) + n1(t)
y2 (t) = x2 (t) + n2t)

x1(t ) = f1[ x1(t −1), x1(t − 2),...


Parallel model structure: ..., u1(t −1), u1(t − 2),..., u2 (t −1), u2 (t − 2),...]
x2 (t ) = f2[ x2 (t −1), x2 (t − 2),...
..., u1(t −1), u1(t − 2),..., u2 (t −1), u2 (t − 2),...]

x1 ( t ) = f1[ y1 ( t − 1), y1 ( t − 2),...


Series-parallel model ..., u1 ( t − 1), u1 ( t − 2),..., u2 ( t − 1), u2 ( t − 2),...]
structure: x2 ( t ) = f2 [ y2 ( t − 1), y2 ( t − 2),...
..., u1 ( t − 1), u1 ( t − 2),..., u2 ( t − 1), u2 ( t − 2),...]
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 21
MIMO MBPC - The method
The disturbances are modeled as  y1 forced ( t + 1 / t ) 
 y 
colored noise processes:  1 forced ( t + 2 / t ) 
 ...... =
 
......
C ( q −1 ) C ( q −1 )  
n1 ( t ) = −1 1
e ( t ) and n 2 ( t ) = −1
e2 ( t )  y1
 forced
( t + N 2 / t )

D(q ) D(q )
 g111 0 0 ... 0 
 11  ∆u1( t / t ) 
 g2 g111 0 ... 0   ∆u ( t + 1 / t ) 
The concepts of base and optimizing  ... ... ... ... ...  
1 +
  ... 
 ... ... ... ... ...   
response lead to the following:  g11 g11 11   ∆ u1 ( t + N u − 1 / t ) 
 N 2 N 2 −1 g N 2 − 2 ... g11
N 2 − N u +1 

 y1(t + k / t) = y1base (t + k / t) + y1optim (t + k / t)  g112


 12
0 0 ... 0 
 ∆u2 ( t / t ) 
  g2 g112 0 ... 0   ∆u ( t + 1 / t ) 
 y2 (t + k / t) = y2base (t + k / t) + y2optim (t + k / t)  ...

... ... ... ...  

2
...


 ... ... ... ... ...   
 g12 g12 12 12  ∆u2 ( t + N u − 1 / t )
 N 2 N 2 −1 g N 2 − 2 ... g N 2 − N u +1 

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 22
MIMO MBPC - The method
1. N2 could be chosen differently for the 2 outputs
2. Nu could be chosen differently for the 2 outputs
3. y1 forced ( t + k / t ) denotes the forced part in the predicted process output
y1 ( t + k / t ) ,being the effects of both future control actions
∆u1 ( t + k / t ) and ∆u2 ( t + k / t )
4. The coefficients of the step response of input j to the output i are denoted by :
{g ij
1 }
g2ij g3ij ... KEY MBPC EQUATION - MIMO CASE

Y1 = Y1 + G 11 . U 1 + G 12 . U 2

Y2 = Y2 + G 21 . U 1 + G 22 . U 2
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 23
MIMO MBPC - Solidary Control

Makes sense even in the case of the number nu of


control variables being unequal to the number ny of (R 1 − Y1 ) T (R 1 − Y1 ) + (R 2 − Y2 ) T (R 2 − Y2 ) +
controlled process outputs. The objective is to find the λ . ( U 1T U 1 + U 2 T U 2 )
control vectors U1 and U2 that minimize the cost
function:
N2

∑1
[ ] Compound matrices:
2
r ( t + k / t ) − y1 ( t + k / t ) +
k = N1 G 1 = [G 11 G 12 ] and G 2 = [G 21 G 22 ]
N2

∑2
[ ]2
r ( t + k / t ) − y 2 ( t + k / t ) +
k = N1 U1 
N u −1
Compound vector: U= 
∑{ 1
[ ] [ ] } U 2 
2 2
λ ∆ u ( t + k / t ) + ∆ u2 ( t + k / t )
k =0
subject to:
∆u1 ( t + k / t ) ≡ 0 and ∆u2 ( t + k / t ) ≡ 0 for k ≥ N u
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 24
MIMO MBPC - Solidary Control

Predicted errors : (R 1 − Y1 ) = (R 1 − Y1 ) − G 1 . U The minimization of the scalar


(R 2 − Y2 ) = (R 2 − Y2 ) − G 2 .U expression V(U) w.r.t to the vector U
Cost function: leads to the optimal (unconstrained)
[(R1 − Y1 ) − G1 .U] [(R 1 − Y1 ) − G1 .U] +
T
solution:
[(R 2 − Y2 ) − G 2 .U] [(R 2 − Y 2 ) − G 2 . U] + λ U T U
T

Standard quadratic cost index: U ∗ = − H −1 f

V ( U ) = U T HU + 2 f T U + c
[
H = G 1T G 1 + G 2T G 2 + λ I ]
H = G1TG1 + G2TG2 + λ I

 f [
=− G T
1 (R1 − Y1 ) + GT
2 (R2 − Y2 ) ] [
f = − G 1T (R 1 − Y1 ) + G T2 (R 2 − Y2 ) ]

c = (R1 − Y1 )T(R1 − Y1 ) + (R2 − Y2 )T(R2 − Y2 )
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 25
MIMO MBPC - Selfish Control
This approach is valid if the number of control variables (manipulated process inputs)
is equal to the number of controlled variables (controlled process outputs). The
objective is to:
• Find the control vector U2 • and the control vector U1
which minimizes the cost which minimizes the cost
function: function:
N2 N2

∑ [ r ( t + k / t ) − y ( t + k / t )] ∑ [r (t + k / t ) − y (t + k / t )]
2 2
1 1 + 2 2 +
k = N1 k = N1
N u −1 N u −1

∑ [ ∆u1( t + k / t )] ∑ [∆u2 ( t + k / t )]
2 2
λ λ
k =0 k =0
subject to: ∆ u1 ( t + k / t ) ≡ 0 for k ≥ N u subject to: ∆u2 ( t + k / t ) ≡ 0 for k ≥ N u
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 26
MIMO MBPC - Selfish Control

Using the matrix notations the The minimization of V1(U1) w.r.t U1 leads to the
optimal (unconstrained) solution:
first cost function can be written:
(R1 − Y1 )T (R1 − Y1 ) + λ .U 1T U 1 = U 1∗ = − H1−1f1 =

[ ] [ ]
(R 1 − Y1 − G 11 .U 1 − G 12 .U 2 )T * T −1 T
G11G11 +λ I . G 11 (R 1 − Y1 − G 12 U 2 )
(R 1 − Y1 − G 11 .U 1 − G 12 .U 2 ) + λ .U 1T U 1

Quadratic form in U1:


The minimization of V2(U2) w.r.t U2 leads to the
V1 ( U 1 ) = U 1T H 1 U 1 + 2 f 1T U 1 + c1 optimal (unconstrained) solution:

H1 = G11 T
G11 + λ I U ∗2 = − H 2−1f 2 =

[ ] .[G ]
−1
T
f1 = −G11 (R 1 − Y1 − G12 U 2 ) G T22G 22 +λ I T
22 (R 2 − Y2 − G 21U 1 )
 T
c1 = (R 1 − Y1 − G 12 U 2 ) (R 1 − Y1 − G 12 U 2 )

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 27
MIMO MBPC - Selfish Control
Combining the 2 expressions
The optimal (unconstrained)
for the optimal solution:
solution is given by:
(G 11
T
G 11 + λ I)U 1 + G 11T T
G 12 U 2 = G 11 (R 1 − Y1 )
 T
G 22G 21 U 1 + (G T22G 22 + λ I)U 2 = G T22 (R 2 − Y2 )
U ∗ = − H −1 f

gives (with the definitions of the  G T G  


H =   T11 1  + λ I
compound matrices and vector):  G 22 G 2  

 G T G    G 11 (R 1 − Y1 )   G 11 (R 1 − Y1 ) 
T T
  11 1  + λ I . U =  T 
 GT G
  22 2    G 22 (R 2 − Y2 ) f = − T 
 G 22 (R 2 − Y2 )

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 28
Constraints

• actuators, valves: limited rate of action, maximum slew


rate
• constructive and safety reasons: bounds in process
variables
• economic targets: operating points are close to limits
• example: input constraints
- clipping
- constrained control

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 29
Constrained Control
Clipping:
Constrained optimization problem
uj < uj (t) < uj (QP: quadratic programming)
u
w + u u 60

-
PID u
u
50
y
u*2 M
40

Constrained Control: 30

• minimize 20

u2 C O

V(U) = UTHU + 2fTU + c 10

• subject to AU < b 10 20
u*1 30 40 50 60

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 30
Interactive MIMO process (1)

Side

R C F
Center
Wafer

S
Side

Rear Center Front

Semiconductor Reactor Wafer and lamp-bank configuration


(3=wafer) (top view of reactor chamber)

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 31
Interactive MIMO process (2)
Clipping (solidary EPSAC): Constrained Control (solidary EPSAC):

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 32
Interactive MIMO process (3)
Constrained Control (solidary EPSAC): Constrained Control (selfish EPSAC):

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 33
Advanced control
C on ve n tion a l m an ua l con trol
C on tr ol P ID con trol
ra tio con trol
ca sca d e con trol
fe ed forw a rd con trol
A d va n c e d g a in sch ed ulin g
C on tr ol: tim e-d ela y c om p en sa tion
c la ssic a l d ec ou p lin g
A d va n c e d p red ictive con trol (M B P C )
C on tr ol: sta tistical qu ality con trol (S Q C )
wid e ly u se d in tern al m od el con trol (IM C )
a d a ptive con trol
A d va n c e d n on lin ear con trol
C on tr ol: op tim al con trol (L Q G )
fe w a p p lic a tio n s ex p ert system s
n eural/fu zz y c on trol
robu st con trol

Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 34
Why advanced control ?
Requirements:
• flexibility in production
• improved quality control
• environmental restrictions
• energy/raw material saving
• maximize product yield
• avoid process shutdown

An Optimizing Control system should drive the process tight


against the operating constraints ===> The control system has
to understand the dynamics of the process.
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 35
WHY Advanced Control?
MOISTURE CONTROL IN PAPER MAKING

• improved moisture control will allow moisture setpoint to be increased (without incurring
a higher risk of excess moisture) THE BEST PRODUCT IS MADE
• this will save energy (steam) BY THE WORST PRODUCER
• it will also enable the paper maker to sell the customer more water (which is cheaper
than selling him fiber)
Robin De KEYSER, Ghent University / Belgium, EeSA Department of Electrical energy, Systems & Automation 36

You might also like