You are on page 1of 21

Lecture 15 - Model Predictive Control Part 2: Industrial MPC

Prediction model Control optimization Receding horizon update Disturbance estimator - feedback IMC representation of MPC

EE392m - Spring 2005 Gorinevsky

Control Engineering

15-1

Cascade

loops

Control Hierarchy

V&V

sim

Across optimiz Local optimiz

Path

optimiz

PID Loop shaping

EE392m - Spring 2005 Gorinevsky

Control Engineering

15-2

MPC Setup
MV: u Plant DV: v Plant structure: CV - controlled variables y
plant outputs, output errors

CV: y

MV - manipulated variables u
control inputs

DV - disturbance variables - v
disturbances and setpoints
EE392m - Spring 2005 Gorinevsky Control Engineering 15-3

Models for MPC


FIR (Finite Impulse Response) model
is used in some formulation

FSR (Finite Step Response) model


Broadly used in process control

y ( t ) = S U ( k ) u ( t k ) + S D ( k ) v ( t k ) + d
k =1 k =1

Compact notation y (t ) = ( sU * u )(t ) + ( s D * v )(t ) + d


s U * u = s U * u = h U * u
EE392m - Spring 2005 Gorinevsky Control Engineering 15-4

= 1 z 1
h U = sU ;

Finite Step Response Model


FSR model
y ( t ) = S ( k ) v ( t k ) + d
k =1 n

Ignores anything that happened more than n steps in the past This is attributed to a constant disturbance d

EE392m - Spring 2005 Gorinevsky

Control Engineering

15-5

MPC Model Identification


Identification is a part of most industrial MPC packages Step (bump test) or PRBS
FIR model ID

Step responses are directly used as models

EE392m - Spring 2005 Gorinevsky

Control Engineering

15-6

MPC Process Model Example

CV

EE392m - Spring 2005 Gorinevsky

Control Engineering

MV, DV

15-7

Prediction Model
u ( t ) U (t ) = M u(t n + 1) n - memory depth u(t + 1) U (t ) = M u ( t + N )
FSR model Discuss later

N prediction horizon
EE392m - Spring 2005 Gorinevsky Control Engineering

y (t + 1) Y (t ) = M y (t + N )
15-8

System State for FSR Model


MPC Concept

x (t ) [MPC Problem Solver] u(t )


FSR model state
U (t ) x (t ) = ( ) V t

u ( t ) U (t ) = M u(t n + 1)
Past disturbances

Past control moves

FSR model in state-space form x (t + 1) = Ax (t ) + BU u(t ) + B D v (t ) y (t ) = Cx (t ) + d


EE392m - Spring 2005 Gorinevsky Control Engineering

v ( t ) V (t ) = M v (t n + 1) Exercise: what are the matrices A, BU , B D , C ?


15-9

Prediction Model
y (t ) = ( sU * u )(t ) + ( s D * v )(t ) + d
Future MV Toeplitz matrix CV Prediction Hankel matrix Past MV Hankel matrix Past DV Unmeasured disturbance

Y = U + U (t ) + D V (t ) + Dd
L 0 L 0 O M L 0 S D ( 2) S D (1) D S (3) S D ( 2) D = M M D 0 S ( n + 1)
Hankel matrix
Control Engineering

S U (1) 0 U S ( 2) S U (1) = M M U U S ( N ) S ( N 1)
Toeplitz matrix
EE392m - Spring 2005 Gorinevsky

L S D (n + 1) L 0 O M L 0

1 D = M 1

Future impact of the disturbance


15-10

Optimization of Future Inputs


Y (t ) = U (t ) + U (t ) + DV (t ) + Dd 1444 4 24444 3 Y * (t ) - free response of the system MPC optimization problem
J = Y T (t )Q Y Y (t ) + U T (t ) RU (t ) min
Y * (t )

Q y L 0 Ru L 0 Y Q = M O M , R = M O M 0 L Qy 0 L Ru

Caveat: the problem might be ill-conditioned, then there is a need for regularization (an additional quadratic term in J)
EE392m - Spring 2005 Gorinevsky Control Engineering 15-11

Optimization Constraints
MV constraints
umax u(t ) umax

u max U u max u min U C u max


u ( t + k ) = u ( t ) + u ( t )
k j =2

umin u(t ) umax CV constraints ymin (t ) y (t ) ymax (t ) Terminal constraint: y (t + k ) = 0;


EE392m - Spring 2005 Gorinevsky

Ymin Y Ymax

u(t + k ) = 0 for k p
Control Engineering 15-12

QP Solution
QP Problem:
Aq b Aeq q = beq 1 T J = q Qq + f T q min 2
U q= Y

Decision vector: predicted MVs, CVs

Standard QP codes can be used


EE392m - Spring 2005 Gorinevsky Control Engineering 15-13

Control Update
System dynamics as an equality constraint in optimization Y = U + Y * ( t )
Forced response Free response

Y * = D x (t ) + d (t )

Update of the system state x (t + 1) = Ax (t ) + BU u(t ) + B D v (t ) Optimization problem solution at step t :

{U OPT , YOPT } = arg min[J (U , Y )]


EE392m - Spring 2005 Gorinevsky Control Engineering 15-14

Receding Horizon Control


Use the first computed control value only Repeat at each t u (t + 1) = [1 0 K 0] U OPT (t )

EE392m - Spring 2005 Gorinevsky

Control Engineering

15-15

State Update and Estimation


FSR model state update delay line u (t + 1)
v (t + 1)

u ( t ) v ( t ) U ( t ) V (t ) = x (t ) = U (t ) = M M V (t ) u (t n + 1) v (t n + 1) Disturbance estimator d (t + 1) = d (t ) + k I ( y m (t ) y (t ) )
Unmeasured disturbance Actually observed CV CV Prediction based on the current state x(t). Computed at the previous step

Disturbance estimator = Integrator feedback


EE392m - Spring 2005 Gorinevsky Control Engineering 15-16

MPC as IMC
MPC with disturbance estimator is a special case of IMC disturbance reference Optimizer Plant Prediction model
d (t + 1) = d (t ) + k I y (t )
IMC

output y

Integrator

Closed-loop dynamics (filter dynamics)


integrator in the disturbance estimator 2n poles z = 0 in the FSR model update
EE392m - Spring 2005 Gorinevsky Control Engineering

zeros

poles

15-17

Optimization detail
Setpoint Zone Trajectory Funnel

Soft constraints (quadratic penalties) and hard constraints for MV, CV Regularization
penalties singular value thresholding
EE392m - Spring 2005 Gorinevsky Control Engineering 15-18

Soft Constraints
Consider a QP Problem 1 T J = x Qx + f T x min 2 Ax b subject to: As x bs soft constraint, might be infeasible Slack variable formulation: w = 0 yields the original problem
Large penalty for constraint violation

1 T 1 T J = x Qx + w Sw + f T x min 2 2 x new augmented w decision vector


EE392m - Spring 2005 Gorinevsky Control Engineering

subject to: Ax b As x bs w 0w

slack

15-19

Industrial MPC Features


Industrial strength products that can be used for a broad range of applications Flexibility to plant size, automated setup Based on step response/impulse response model On the fly reconfiguration if plant is changing
MV, CV, DV channels taken off control or returned into MPC measurement problems (sensor loss), actuator failures

Systematic handling of multi-rate measurements and missed measurement points


do not update the disturbance estimate d if the data is missing

EE392m - Spring 2005 Gorinevsky

Control Engineering

15-20

Technical detail
Tuning of MPC feedback control performance is an issue.
Works in practice, without formal analysis Theory requires
Large (infinite) prediction horizon or Terminal constraint

Additional tricks for


a separate static optimization step integrating and unstable dynamics active constraints regularization shape functions for control different control horizon and prediction horizon ...
Control Engineering

EE392m - Spring 2005 Gorinevsky

15-21

You might also like