Top Banner
Introduction to Model Predictive Control (MPC) Oscar Mauricio Agudelo Mañozca Computergestuurde regeltechniek Course : Bart De Moor ESAT - KU Leuven May 11th, 2017
200

Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Mar 10, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control (MPC)

Oscar Mauricio Agudelo Mañozca

Computergestuurde regeltechniek

Course :

Bart De Moor

ESAT - KU Leuven

May 11th, 2017

Page 2: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 2

Basic Concepts

Control method for handling input and state constraints within an optimal control setting.

It handles multivariable interactions

It handles input and state constraints

It can push the plants to their limits of performance.

It is easy to explain to operators and engineers

Principle of predictive control

1k 2k 3k

Prediction horizon

k Nk1k 2k

( )u k

( )y k

Prediction of ( )y k

Reference

FuturePast

measurement

ref y

2

ref( ), , ( 1)

1

min ( )N

u k u k Ni

y y k i

subject to

model of the process

input constraints

output / state constraints

Why to use MPC ?

time

Page 3: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3

Some applications of MPC

Control of synthesis section of a urea plant

MPC strategies have been used for stabilizing and maximizing the throughput of thesynthesis section of a urea plant, while satisfying all the process constraints.

Urea plant of Yara at Brunsbüttel (Germany), where a MPC control system has been set by IPCOS

Page 4: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 4

Some applications of MPC

Control of synthesis section of a urea plant

Results of a preliminary study done by

Throughput increment of 11.81 t/h thanks to the MPC controller

2NH3 + CO2 NH2COONH4

AmmoniaCarbon dioxide

Ammonium carbamate

Reaction 1: Fast and Exothermic

NH2COONH4 NH2CONH2 + H2O

Ammonium carbamate

Urea Water

Reaction 2: Slow and Endothermic

Page 5: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 5

Some applications of MPC

Flood Control: The Demer

The Demer in Hasselt

Flooding events due to heavy rainfall:

1905, 1926, 1965, 1966, 1993-1994,

1995, 1998, 2002 and 2010.

The Demer and its tributaries in the south of the province of LimburgControl Strategy: PLC logic

(e.g., three-pos controller)

A Nonlinear MPC control strategy has been implemented (2016) for avoiding futurefloodings of the Demer river in Belgium. Partners: STADIUS, Dept. Civil Engineering of KULeuven, IPCOS, IMDC, Antea Group, and Cofely Fabricom.

Page 6: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 6

Some applications of MPC

Flood Control: The Demer

Flooded area during the flood event of 1998. Control Strategy: PLC logic (e.g., three-position controller)

DIEST

HASSELT

Page 7: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 7

Some applications of MPC

Flood Control: The Demer

Upstream part of the Demer that is modelledand controlled in a preliminary study carriedout by STADIUS

Maximal water levels for the

five reaches for the current

three-pos. controller and the

MPC controller together with

their flood levels (Flood event

2002) .

Notice: The MPC controller takes rainpredictions into account!

Page 8: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 8

Some applications of MPC

In addition MPC, has been used

in all sort of petrochemical and chemical plants,

in food processing,

in automotive industry,

in the control of tubular chemical reactors,

in the normalization of the blood glucose level of critical ill patients,

in power converters,

for the control of power generating kites under changing wind conditions,

in mechatronic systems (e.g., mobile robots),

in power generation,

in aerospace,

in HVAC systems (building control)

Page 9: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

Basic Concepts

9

Kinds of MPC

Linear MPC : it uses a linear model of the plant

Convex optimization problem

Nonlinear MPC: it uses a nonlinear model of the plant

Non-convex optimization problem

( 1) ( ) ( )k k k x Ax Bu

( 1) ( ), ( )k k k x f x u

Linear MPC formulation (Classical MPC)

Remark: Since linear MPC includes constraints, it is a non-linear control strategy !!!

1

ref reref ref

1

f,

0

( ) ( )min ( ) ( )( (( ) ) ( ))N N

NNT

ii

Tk i k i k i k k i k i k i k ii

x u

x x Q x x u u R u u

subject to

( 1 ) ( ) ( ), 0,1, , 1,k i k i k i i N x Ax Bu

max( ) , 0,1, , 1,k i i N u u

max( ) , 1,2, , ,k i i N x x

Model of the plant

Input constraints

State constraints

( 1); ( 2); ; ( ) ,N k k k N x x x x ( ); ( 1); ; ( 1)N k k k N u u u uwith:

Page 10: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

MPC Algorithm

10

Typical MPC control Loop

MPC Algorithm

At every sampling time:

MPC Plant

Observer

( )ku

( )ky

ˆ( )kx

ref ( )kx

ref ( )ku ZOH( )tu

( )ty

sT

Digital system

Read the current state of the process, x(k)

Compute an optimal control sequence by solving the MPC optimization problem

Apply to the plant ONLY the first element of such a sequence u(k)

( ), ( 1), ( 2), , ( 1)k k k k N u u u uSolution

Page 11: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

LQR and Classical MPC

11

For simplicity, Let’s assume that the references are set to zero.

LQR CLassical Linear MPC

,1

( )min ( ) (( ) )TT

k

kk kk

x u

x Q R ux u

subject to

( 1) ( ) ( ), 0,1, ,k k k k x Ax Bu

subject to

( 1) ( ) ( ), 0,1, , 1,k k k k N x Ax Bu

max( ) , 0,1, , 1,k k N u u

max( ) , 1,2, , ,k k N x x

Constraints are not taken into account

No predictive capacity

The optimal solution has the form: ( ) ( )k k u Kx

PRO

Explicit, Linear solution

Low online computational burden

CON

PRO

Takes constraints into account

Proactive behavior

CON

High online computational burden

No explicit solution

feasibility? Stability?

If N∞, and constraints are not considered the MPC and LQR give the same solution

1

,01

( ) (min ( ) () )N N

NT

ik

NTk k k k

x u

u R ux Q xk = 0

Page 12: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

MPC optimization problem – Implementation details

12

The following optimization problem,

can be rewritten as a LCQP (Linearly Constrained Quadratic Program) problem in as follows:

1

ref reref ref

1

f,

0

( ) ( )min ( ) ( )( (( ) ) ( ))N N

NNT

ii

Tk i k i k i k k i k i k i k ii

x u

x x Q x x u u R u u

subject to

( 1 ) ( ) ( ), 0,1, , 1,k i k i k i i N x Ax Bu

max( ) , 0,1, , 1,k i i N u u

max( ) , 1,2, , ,k i i N x x

with: ( 1); ( 2); ; ( ) ,xn N

N k k k N

x x x x ( ); ( 1); ; ( 1)un N

N k k k N

u u u u

x

1min

2

T Tx

x Hx f x

subject to

e eA x b

i iA x b

with:

;x uN n n

N N

x x u

Page 13: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

MPC optimization problem – Implementation Details

13

where

2x u x uN n n N n n

Q

QH

R

R

ref

ref

ref

ref

(1)

( )

(0)

( 1)

x uN n n N

N

x

xf H

u

u

2

i

x

xx u x u

u

u

n N

n NN n n N n n

n N

n N

I

IA

I

I

max

2 max

i

max

max

x uN n n

x

xb

u

u

N times

N times

2N times

2N times

nx = number of states, nu = number of inputs, N = prediction horizon

Page 14: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

MPC optimization problem – Implementation Details

14

e

x

xx x u

x

n

nN n N n n

n

I B

A I BA

A I B

e

( )

xN n

k

Ax

0b

0N times

N times

nx = number of states, nu = number of inputs, N = prediction horizon

Remarks:

The problem is convex if Q and R are positive semi-definite

The hessian matrix H, and the matrices Ae and Ai are sparse.

Number of optimization variables: N(nx + nu). This number can be reduced to N·nu (Condensed

form of the MPC) through elimination of the states x(k) but at the cost of sparsity !!!

Matlab function for solving the LCQP optimization problem

x_tilde = quadprog (H, f, Ai, bi , Ae, be)

Page 15: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

MPC with terminal cost

15

Short Prediction Horizon

Large Prediction Horizon

N

What happens?

We have a winner !!!

N

What happens?

We have an accident !!!

N should be large enough in order to keep the process under control

Page 16: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

MPC with terminal cost

16

1

ref ref ref ref,

1 0

1

min ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )N N

NT T

i

N

i

k i k i k i k i k i k i k i k i

x u

x x Q x x u u R u u

subject to

( 1 ) ( ) ( ), 0,1, , 1,k i k i k i i N x Ax Bu

max( ) , 0,1, , 1,k i i N u u

max( ) , 1,2, , ,k i i N x x

ref ref( ) ( ) ( ) ( )T

k N k N k N k N x x S x x

Main goal of the terminal cost:

What do we gain?

To include the terms for which i ≥ N in the cost

function (To extend the prediction horizon to infinity)

“Stability”

( 1)k x( 2)k x

( )k Nx

Effect of the stabilizing

control law u(k) = -Kx(k)

1( )x k

2 ( )x k

ref ( ) 0k x

( )kx

( )k x

steady-state

Page 17: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Introduction to Model Predictive Control Course: Computergestuurde regeltechniek

MPC with terminal cost

17

How to calculate S ?

By solving the discrete-time Riccati equation,

How to carry out this calculation in Matlab?

1( )( ) ( )T T T T A SA S A SB B SB R B SA Q 0

where u(k) = -Kx(k) is the stabilizing control law. 1

.T T

K B SB R B SA

[K,S] = dlqr (A, B, Q, R )

Implementation details of the MPC with terminal constraint

The only change in the LCQP is the hessian matrix

2x u x uN n n N n n

Q

Q

H S

R

R

N - 1 times

N times

Page 18: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Bert Pluymers

Prof. Bart De Moor

Katholieke Universiteit Leuven, Belgium

Faculty of Engineering Sciences

Department of Electrical Engineering (ESAT)

Research Group SCD-SISTA

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

H0K03a : Advanced Process Control Model-based Predictive Control 1 : Introduction

Page 19: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

1

Overview

• MPC 1 : Introduction

• MPC 2 : Dynamic Optimization

• MPC 3 : Stability

• MPC 4 : Robustness

• Industry Speaker : Christiaan Moons (IPCOS)

(november 3rd)

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Page 20: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

2

Overview

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Lesson 1 : Introduction

• Motivating example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 21: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

3

Motivating Example

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Consider a linear discrete-time state-space model

called a ‘double integrator’.

We want to design a state feedback controller

that stabilizes the system (i.e. steers it to x=[0; 0])

starting from x=[1; 0], without violating the imposed

input constraints Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 22: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

4

Motivating Example

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Furthermore, we want the controller to lead to a

minimal control ‘cost’ defined as

with state and input weighting matrices

A straightforward candidate is the LQR controller,

which has the form

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 23: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

5

Motivating Example

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

LQR controller

0 50 100 150 200 250 300-0.5

0

0.5

1

k

xk,1

0 50 100 150 200 250 300-30

-20

-10

0

10

k

uk

Page 24: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

6

Motivating Example

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

LQR controller with clipped inputs

0 50 100 150 200 250 300-1

-0.5

0

0.5

1

k

xk,1

0 50 100 150 200 250 300

-0.1

-0.05

0

0.05

0.1

0.15

k

uk

Page 25: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

7

Motivating Example

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

LQR controller with R=100

0 50 100 150 200 250 300-0.5

0

0.5

1

k

xk,1

0 50 100 150 200 250 300-0.1

-0.05

0

0.05

0.1

k

uk

Page 26: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

8

Motivating Example

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

P

Fuel gas

Feed

EDC

EDC / VC / HCl

Cracking

Furnace

evaporato

r

superheater

waste gas

T

P

L

T F

H

F

condenser

Systematic way to deal with this issue… ?

Page 27: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

9

MPC Paradigm

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Process industry in ’70s : how to control a process ???

and… easy to understand (i.e. teach) and implement !

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 28: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

10

MPC Paradigm

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

→ Modelbased Predictive Control (MPC)

• Predictive : use model to optimize future input sequence

• Feedback : incoming measurements used to compensate for

inaccuracies in predictions and unmeasured disturbances

Page 29: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

11

MPC has earned its place in the control hierarchy…

• Econ. Opt. : optimize profits using market and plant information (~day)

• MPC : steer process to desired trajectory (~minute)

• PID : control flows, temp., press., … towards MPC setpoints (~second)

MPC Paradigm

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 30: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

12

History

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Before 1960’s :

• only input/output models, i.e. transfer functions, FIR

models

• Controllers :

• heuristic (e.g. on/off controllers)

• PID, lead/lag compensators, …

• mostly SISO

• MIMO case : input/output pairing, then SISO control

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 31: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

13

History

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Early 1960’s : Rudolf Kalman

• Introduction of the State Space model :

• notion of states as ‘internal memory’ of the system

• states not always directly measurable : ‘Kalman’ Filter !

• afterwards LQR (as the dual of Kalman filtering)

• LQG : LQR + Kalman filter

• But LQG no real succes in industry :

• constraints not taken into account

• only for linear models

• only quadratic cost objectives

• no model uncertainties Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 32: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

14

History

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

During 1960’s : ‘Receding Horizon’ concept

• Propoi, A. I. (1963). “Use of linear programming methods for synthesizing

sampled-data automatic systems”. Automatic Remote Control, 24(7), 837–844.

• Lee, E. B., & Markus, L. (1967). “Foundations of optimal control theory”. New

York: Wiley. :

“… One technique for obtaining a feedback controller synthesis

from knowledge of open-loop controllers is to measure the current

control process state and then compute very rapidly for the open-

loop control function. The first portion of this function is then used

during a short time interval, after which a new measurement of the

function is computed for this new measurement. The procedure is

then repeated. …”

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 33: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

15

History

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

During 1960’s : ‘Receding Horizon’ concept

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 34: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

16

History

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

1970’s : 1st generation MPC

• Extension of the LQR / LQG framework through combination with the

‘receding horizon’ concept

• IDCOM (Richalet et al., 1976) :

• IR models

• quadratic objective

• input / output constraints

• heuristic solution strategy

• DMC (Shell, 1973) :

• SR models

• quadratic objective

• no constraints

• solved as least-squares problem

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 35: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

17

History

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Early 1980’s : 2nd generation MPC

• Improve the rather ad-hoc constraint handling of the 1st generation

MPC algorithms

• QDMC (Shell, 1983) :

• SR models

• quadratic objective

• linear constraints

• solved as a quadratic program (QP)

Late 1980’s : 3rd generation MPC

• IDCOM-M (Setpoint, 1988), SMOC (Shell, late 80’s), …

• Constraint prioritizing

• Monitoring / Removal of ill-conditioning

• fault-tolerance w.r.t. lost signals

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 36: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

18

History

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Formulation

• MPC Basics

Mid 1990’s : 4th generation MPC

• DMC-Plus (Honeywell Hi-Spec, ‘95), RMPCT (Aspen Tech, ‘96)

• Graphical user interfaces

• Explicit control objective hierarchy

• Estimation of model uncertainty

Currently (in industry) still …

• … no guarantees for stability

• … often approximate optimization methods

• … not all support state-space models

• … no explicit use of model uncertainty in controller design Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 37: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

19

MPC Formulation

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Basic ingredients :

• prediction model to predict plant response to future input

sequence

• (finite,) sliding window (receding horizon control)

• parameterization of future input sequence into finite number of

parameters

• discrete-time : inputs at discrete time steps

• continuous-time : weighted sum of basis functions

• optimization of future input sequence

• reference trajectory

• constraints

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 38: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

20

MPC Formulation

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 39: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

21

MPC Formulation

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Assumptions / simplifications :

• no plant-model mismatch :

• no disturbance inputs

• all states are measured

(or estimation errors are negligible)

• no sensor noise

. . . seem trivial issues but form essential difficulties

in applications . . .

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 40: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

22

Theoretical Formulation (cfr. CACSD)

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

• future window of length ∞

• impossible to solve, because . . .

• infinite number of optimization variables

• infinite number of inequality constraints

• infinite number of equality constraints

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 41: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

23

Formulation 1

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

• still future window of length ∞, BUT

• quadratic cost function

• no input or state constraints

• linear model

• Optimal solution has the form uk = -Kxk

• Find K by solving Ricatti equation → LQR controller

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 42: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

24

Formulation 1 : LQR

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

PRO

• explicit, linear solution

• low online computational complexity

CON

• constraints not taken into account

• linear model assumption

• only quadratic cost functions

• no predictive capacity

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 43: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

25

Formulation 2

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

• changes :

• keep all constraints etc.

• reduce horizon to length N

• solution obtainable through dynamic optimization

• only u0 is applied, in order to obtain feedback at each k about xk

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 44: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

26

Formulation 2 : Classic MPC

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

PRO

• takes constraints into account

• proactive behaviour

• wide range of (convex) cost functions possible

• also for nonlinear models (but convex ?)

CON

• high online computational complexity

• no explicit solution

• feasibility ?

• stability ?

• robustness ?

• In what follows, we will concentrate on this formulation.

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 45: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

27

Formulation 3

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

• linear form of feedback law is enforced

• problem can be recast as a convex (LMI-based) optimization problem

more on this later . . .

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 46: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

28

Summary

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Formulation 1

• infinite horizon

• no constraints

• explicit solution

• → LQR

Formulation 2

• finite horizon

• constraints

• no explicit solution

• → Classic MPC

Formulation 3

• infinite horizon

• constraints

• explicit solution enforced

• → has elements of LQR ánd MPC

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 47: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

29

Open vs. closed loop control

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

• Open loop : no state/output feedback : feedforward control

• Closed loop : state/output feedback : e.g. LQR

MPC is a mix of both :

• internally optimizing an open loop finite horizon control problem

• but at each k there is state feedback to compensate unmodelled

dynamics and disturbance inputs → closed loop control paradigm.

• has implications on e.g stability analysis

• Is of essential importance in Robust MPC, more on this later…

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 48: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

30

Standard MPC Algorithm

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

1. Assume current time = 0

2. Measure or estimate x0 and solve for uN and xN :

3. Apply uo0 and go to step 1

Remarks :

• : Terminal state cost and constraint

• : some kind of norm function

• Sliding Window

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 49: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

31

MPC design choices

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

1.prediction model

2. cost function

• norm

• horizon N

• terminal state cost

3. constraints

• typical input/state constraints

• terminal constraint

Page 50: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

32

Prediction Model

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

• Input/Output or State-Space ?

• I/O restricted to stable, linear plants

• Hence SS-models

• Type of model determines class of MPC algorithm

• Linear model : Linear MPC

• Non-linear model : Non-linear MPC (or NMPC)

• Linear model with uncertainties : Robust MPC

• BUT : MPC is always a non-linear feedback law due to the

constraints

• Type of model determines class of involved optimization problem

• Linear models lead to most efficiently solvable opt.-problems

• Choose simplest model that fits the real plant ‘sufficiently well’

Page 51: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

33

Cost Function

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

General Cost Function:

Design Functions and Parameters:

1.

2. Horizon N

3. F(x)

4. Reference Trajectory

Page 52: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

34

Cost Function

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 53: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

35

Cost Function

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 54: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

36

Cost Function

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 55: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

37

Constraints

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 56: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

38

Constraints

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 57: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

39

Constraints

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 58: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

40

Constraints

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 59: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

41

Terminal State Constraints

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 60: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

42

Reference Insertion

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 61: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

43

Reference Insertion

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 62: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

44

Reference Insertion

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 63: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

45

Reference Insertion

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 64: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

46

Exercise Sessions

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

• Ex. 1 : Optimization oriented

• Ex. 2 : MPC oriented

• Ex. 3 : real-life MPC/optimization problem

Evaluation

• (brief !) report (groups of 2)

• oral examination → insight !

Page 65: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

47

• Overview

• Motivating Example

• MPC Paradigm

• History

• Mathematical Form.

• MPC Basics

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 1 : Introduction [email protected]

Page 66: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Bert Pluymers

Prof. Bart De Moor

Katholieke Universiteit Leuven, Belgium

Faculty of Engineering Sciences

Department of Electrical Engineering (ESAT)

Research Group SCD-SISTA

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

H0K03a : Advanced Process Control Model-based Predictive Control 2 : Dynamic Optimization

Page 67: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

1

Overview

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Lesson 2 : Dynamic Optimization

• Optimization basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 68: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

2

General form :

Legend :

• : vector of optimization variables

• : objective function / cost function

• : equality constraints

• : inequality constraints

• : solution to optimization problem

• : optimal function value

Notation

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 69: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

3

Gradient :

(points in direction of

steepest ascent)

Hessian :

(gives information about local curvature of )

Gradient & Hessian

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 70: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

4

Gradient & Hessian

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Example :

Gradients for different Eigenvectors of hessian

at the origin ( )

Page 71: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

5

Unconstrained Optimality Conditions

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Necessary condition for optimality of

Sufficient conditions for minimum

positive definite

Classification of optima :

positive definite minimum

indefinite saddle point

negative definite maximum

Page 72: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

6

Introduction of Lagrange multipliers leads to Lagrangian :

with

Lagrange multipliers of the ineq. constraints

Lagrange multipliers of the eq. constriants

Constrained optimum can be found as

Minimization over but Maximization over !!!!

Lagrange Multipliers

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 73: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

7

Constrained optimum can be found as

First-order optimality conditions in

Lagrange Multipliers

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Gradient of Gradient of

ineq.

Gradient of

eq.

Interpretation ???

Page 74: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

8

Lagrange Multipliers

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 75: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

9

Lagrange Multipliers

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 76: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

10

Lagrange Multipliers

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 77: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

11

Lagrange Duality

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 78: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

12

Karush-Kuhn-Tucker Conditions

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

From previous considerations we can now state

necessary conditions for constrained optimality :

These are called the KKT conditions.

Page 79: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

13

Optimization Tree

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Optimization

discrete continuous

unconstrained constrained

convex

optimization

non-convex

optimization

NLP LP QP SOCP SDP

Page 80: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

14

Convex Optimization

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

An optimization problem of the form

is convex iff for any two feasible points :

• is feasible

This is satisfied iff

•`the cost function is a convex function

• the equality constraints or linear or absent

• the inequality constraints define a convex region

Page 81: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

15

Convex Optimization

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Importance of convexity :

• no local minima, one global optimum

• under certain conditions, primal and dual have

same solution

• efficient solvers exist

• polynomial worst-case execution time

• guaranteed precision

Page 82: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

16

From LP to SDP

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

SDP

SOCP

QP

LP

Semi-Definite Programming

Second Order Cone Progr.

Quadratic Programming

Linear Programming

computational

efficiency

generality

Page 83: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

17

General form :

Remarks :

• always convex

• optimal solution always at a corner of ineq. constraints

• typically used in finance / economics / management

Linear Programming (LP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Page 84: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

18

Linear Programming (LP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Eliminating equality constraints :

Reparametrize optimization vector :

Leading to

Page 85: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

19

Quadratic Programming (QP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

General form :

Remarks :

• convex iff

• LP is a special case of QP (imagine )

• Used in all domains of engineering

Page 86: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

20

Second-Order Cone Programming (SOCP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

General form :

Remarks :

• Always convex

• Second-Order, Ice-Cream, Lorentz cone :

• Engineering applications with sum-of-squares,

robust LP, robust QP

SOC constraint

Page 87: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

21

Second-Order Cone Programming (SOCP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

QP as special case of SOCP :

Rewrite this as

which is equivalent to

By introducing an additional variable we get the SOCP

Page 88: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

22

Semi-Definite Programming (SDP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

General form :

with

Remarks :

• means that should be positive semi-definite

• means that should be pos. semi-def.

• always convex :

• ineq. constraints called LMI’s : Linear Matrix Ineq.

• LMI’s arise in many applications of

Systems & Control Theory

Page 89: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

23

Semi-Definite Programming (SDP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

convexity :

Easily verified :

hence

and therefore

which means that LMI’s are convex constraints.

Page 90: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

24

Semi-Definite Programming (SDP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Schur Complement :

is equivalent with

More general :

Remarks :

• Originally developed in a statistical framework

• Today widely used in S&C in order to reformulate

problems involving eigenvalues as an LMI.

Page 91: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

25

Semi-Definite Programming (SDP)

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

SOCP as special case of SDP :

is equivalent with (by using Schur complement) :

(exercise : apply Schur complement to LMI and

reconstruct SOC constraint)

Page 92: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

26

Convexity = SDP ?

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Formulated as SDP Convex optimization

Convex optimization formulatable as SDP

Example :

Page 93: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

27

Convexity ≠ SDP !

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

SDP

SOCP

QP

LP

convex optimization

structure easily exploitable

(many toolboxes available)

→ significant efficiency gains !

convexity difficult to exploit

(computationally)

Page 94: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

28

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

MPC Paradigm

• At every discrete time instant , given information about

the current system state , calculate an ‘optimal’ input

sequence over a finite time horizon :

• Apply the first input to the real system

• Repeat at the next time instant , using new state

measurements / estimates.

N

N

Page 95: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

29

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Dynamic Programming

• Finding the optimal input sequence is done by means

of Dynamic Programming

• Definition* :

“DP is a class of solution methods for solving sequential

decision problems with a compositional cost structure”

• Invented by Richard Bellman (1920-1984) in 1953

Page 96: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

30

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Example 1 : The darts problem* :

“Obtain a score of 301 as fast as possible while

beginning and ending in a double.”

• Decision : next area towards which to throw the dart

• Cost : time

http://plus.maths.org/issue3/dynamic/

* D. Kohler, Journal of the Operational Research Society, 1982.

Dynamic Programming

Page 97: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

31

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Example 2 : DNA sequence allignment :

G A A T T C A G T T A (sequence #1)

G G A T C G A (sequence #2)

• Decisions : which nucleotides to match

• Cost : e.g. based on substitution / insertion prob.

• Algorithms : Baum/Welch, Waterman/Smith, …

Dynamic Programming

Page 98: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

32

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

“Series of sequential decisions” :

Dynamic Programming in MPC

Typical optimization problem :

measured

Optimization variables

→ standard QP formulation ?

Page 99: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

33

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Optimization vector :

Cost function :

For convexity hence .

Linear MPC as standard QP

Page 100: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

34

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Equality constraints

with

Sparsity : many entries in equal to 0

Linear MPC as standard QP

Page 101: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

35

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Inequality constraints

with

Sparsity : many entries in equal to 0

Linear MPC as standard QP

Page 102: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

36

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Alternatives

• slightly faster to solve

• ‘chattering’ : optimal solution jumps around

Page 103: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

37

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Alternatives

Non-convex optimization in general : to be avoided !!!

Page 104: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

38

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

MPC and optimization

Page 105: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

39

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

MPC and optimization

Page 106: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

40

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Active Set Methods

Page 107: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

41

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Active Set Methods

Page 108: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

42

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Interior Point Methods

1. Choose initial point

2. Linearize KKT conditions around current point

3. Solve Linearized KKT system to obtain search

direction

4. Calculate step length such that

5. Repeat from step 2, until convergence

Page 109: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

43

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Interior Point Methods

Page 110: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

44

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Comparison

• ASM allow hot start

• reuse of active set, factorizations, …

• ASM has feasible intermediate results

• by construction

• IPM can exploit sparsity

• solution of KKT system by sparse solver

In industry currently mostly ASM due to first two

advantages, but IPM under consideration…

Page 111: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

45

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Comparison

Page 112: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

46

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Comparison

Page 113: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

47

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Comparison

Page 114: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

48

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Comparison

Page 115: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

49

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

Conclusion

• convex optimization powerful tool !!!

• different optimization algorithm have pro’s and con’s

• try to avoid NLP’s !!!!

Page 116: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

50

• Overview

• Optimization Basics

• Convex Optimization

• Dynamic Optimization

• Optimization Algorithms

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 2 : Dynamic Optimization [email protected]

References

Page 117: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Bert Pluymers

Prof. Bart De Moor

Katholieke Universiteit Leuven, Belgium

Faculty of Engineering Sciences

Department of Electrical Engineering (ESAT)

Research Group SCD-SISTA

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

H0K03a : Advanced Process Control Model-based Predictive Control 3 : Stability

Page 118: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

1

Overview

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Lecture 3 : Stability

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Page 119: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

2

MPC Paradigm

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

• At every discrete time instant , given information about

the current system state , calculate an ‘optimal’ input

sequence over a finite time horizon :

• Apply the first input to the real system

• Repeat at the next time instant , using new state

measurements / estimates.

N

N

Page 120: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

3

Optimality of input sequence

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

co

mp

ute

d a

t

to be applied at

Optimal input sequences

Input sequence applied to the system

Page 121: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

4

Stability Analysis

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

• Classical Way :

Analyse poles/zeros of and associated

transfer functions.

+ -

plant linear controller

u x r

+ -

plant MPC controller

u x r

• Modelbased Predictive Control :

Lyapunov theory for stability.

Page 122: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

5

Inverted Pendulum

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

• 1 input :

• 4 states :

• open loop unstable system

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Page 123: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

6

Inverted Pendulum

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

• 4 different horizon lengths

• 3 different MPC variants (to be defined later)

Non-minimum phase

behaviour

Page 124: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

7

Stability Theory

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

• Explicit vs. Optimization-based controller

• Transfer functions → Lyapunov theory

Stability is obtained / proven in 2 steps :

1. Recursive feasibility

i.e. controller well-defined for all k

2. Lyapunov function construction

i.e. trajectories converge to equilibrium

Page 125: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

8

Stability Theory

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Limited validity of MPC stability framework :

• only for ‘stabilization’ problems :

• initial state

• system steered towards

• no disturbances allowed (but extension possible)

• no general stability framework for ‘tracking’ problems

Page 126: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

9

Stability Theory

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Recursive Feasibility

If the optimization problem is feasible for time , then it

is also feasible for time .

(and hence for all )

Feasible Region

The region in state space, defined by all states for

which the MPC optimization problem is feasible.

→ Recursive feasibility proven : all states within feasible

region lead to trajectories for which the MPC-controller is

feasible and hence well-defined.

Page 127: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

10

Stability Theory

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

→ Recursive feasibility proven : all states within feasible

region lead to trajectories for which the MPC-controller is

feasible and hence well-defined.

feasible region

Page 128: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

11

MPC Stability Measures

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Page 129: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

12

MPC Stability Measures

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

recursive feasibility

(terminal constraint) Lyapunov stability

(terminal cost)

Page 130: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

13

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Problem : given the optimal (and hence feasible) solution

to the optimization at time , construct a feasible solution

for the optimization at time .

Page 131: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

14

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Given :

To be found :

Observe / Choose :

?

Page 132: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

15

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Plant state at time predicted at time :

Real plant state at time :

Assumption : No plant model mismatch, i.e.

Hence, reusing the overlapping part of the input sequence

will also result in an identical state sequence

Page 133: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

16

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

OK OK

OK OK OK ???

??? ???

Page 134: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

17

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Condition 1 :

Satisfied if

Condition 2 :

Condition 3 :

How to choose

and ?

Page 135: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

18

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Assume we know a locally stabilizing controller :

i.e. such that is locally stable.

How to choose and ?

Then choose

Page 136: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

19

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

OK OK

OK OK OK ???

OK ???

Condition 2 :

Condition 3 :

Page 137: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

20

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Condition 2 :

Condition 3 :

Since we know that …

Condition 2 is satisfied if

Condition 3 is satisfied if

Page 138: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

21

Step 1 : Recursive Feasibility

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Summary & Interpretation

Recursive feasibility is guaranteed if

1)

2)

3)

Terminal constraint is

feasible w.r.t state constraints

Terminal constraint is

feasible w.r.t input constraints

Terminal constraint is

a positive invariant set w.r.t

Page 139: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

22

Step 2 : Lyapunov stability

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

•Lyapunov stability :

If such that for some region around 0

then all trajectories starting within asymptotically

evolve towards 0.

• In the MPC context :

• is chosen as the feasible region,

• is chosen as the optimal cost value of the MPC

optimization problem for the given

Under which conditions is a Lyapunov function ???

Page 140: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

23

Step 2 : Lyapunov stability

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Under which conditions is a Lyapunov function ???

We have to prove that

Or in other words that

This is satisfied if

Page 141: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

24

Step 2 : Lyapunov stability

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Special relationship between the two cost expressions :

should be < 0

Satisfied if

Condition 4 :

Page 142: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

25

Lyapunov inequality

i.e. should ‘overbound’ cost of terminal controller

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Recursive feasibility and asymptotic stability is guaranteed if

1)

2)

3)

4)

Terminal constraint is

feasible w.r.t state constraints

Terminal constraint is

feasible w.r.t input constraints

Terminal constraint is

a positive invariant set w.r.t

Summary & Interpretation

Iff the optimization problem is feasible at time !!!!!

• conditions are sufficient, but not necessary

• is only used implicitly !

Page 143: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

26

Set Invariance

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

“Given an autonomous dynamical system, then a set is

(positive) invariant if it is guaranteed that if the current state

lies within , all future states will also lie within .”

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

not invariant invariant

Page 144: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

27

• Useful tool for analysis of controllers for constrained systems

• Example :

– linear system

– linear controller

Set Invariance

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

– state constraints

-1.5 -1 -0.5 0 0.5 1 1.5-1.5

-1

-0.5

0

0.5

1

1.5

‘feasible region’ of closed loop system

Page 145: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

28

Consider an autonomous time-invariant system as

defined previously

A set is …

Set Invariance

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

… feasible iff

Problem :

Given an autonomous dynamical system subject to state

constraints, find the feasible invariant set of maximal size.

… invariant iff

Page 146: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

29

Given an LTI system subject to linear constraints

then the largest size feasible invariant set can be found as

with a finite integer.

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Given an LTI system subject to linear constraints

then the largest size feasible invariant set can be found as

with a finite integer.

• is constructed by simple forward prediction

• can be proven to be the largest feasible invariant set

• is called the Maximal Admissible Set (MAS)

• is constructed by simple forward prediction

• can be proven to be the largest feasible invariant set

• is called the Maximal Admissible Set (MAS)

Invariant sets for LTI systems (Gilbert et al.,1991, IEEE TAC)

Page 147: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

30

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

How to choose such that conditions are

satisfied ?

Different possibilities, depending of

• type of system (linear, non-linear)

• stability of the system

• presence of state constraints

• horizon length

• time constraints during design !

Page 148: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

31

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

Page 149: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

32

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

Page 150: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

33

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

2

1

Page 151: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

34

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

Page 152: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

35

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

Page 153: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

36

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

Page 154: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

37

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

Terminal constraint set determines feasible region

Page 155: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

38

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Implementations

Solid : standard MPC, dashed : terminal cost, constraint, dotted : terminal equality constr.

Page 156: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

39

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

Conclusion

• stability of standard MPC not guaranteed

• pole/zero analysis impossible

• recursive feasibility

• Lyapunov stability

• general stability framework for stabilization problems

• different implementations

• stability measures allow the use of shorter horizons

Page 157: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

40

• Introduction

• Example

• Stability Theory

• Set Invariance

• Implementations

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 3 : Stability [email protected]

References

Page 158: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

Bert Pluymers

Prof. Bart De Moor

Katholieke Universiteit Leuven, Belgium

Faculty of Engineering Sciences

Department of Electrical Engineering (ESAT)

Research Group SCD-SISTA

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

H0K03a : Advanced Process Control Model-based Predictive Control 4 : Robustness

Page 159: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

1

Overview

• Example

• Robustness

• Robust MPC

• Conclusion

Lecture 4 : Robustness

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Page 160: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

2

Example

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Linear state-space system of the form

with bounded parametric uncertainty

Aim : steer this system towards the origin from initial state

without violating the constraint

Page 161: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

3

Example

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Results for 4 different parameter settings :

• Recursive feasibility ?

• Monotonicity of the cost ?

Page 162: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

4

Robustness

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Robust with respect to what ?

• Disturbances

• Model uncertainty

Cause predictions of

‘nominal’ MPC to be inaccurate

Page 163: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

5

Robustness

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Main aims :

• Keep recursive feasibility properties, despite model errors,

disturbances

• Keep asymptotic stability (in the case without disturbances)

We need to have an idea about …

• the size of the model uncertainty

• the size of the disturbances

Page 164: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

6

Uncertain Models

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Linear Parameter-Varying state space models with

polytopic uncertainty description

Page 165: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

7

Uncertain Models

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Linear Parameter-Varying state space models with

norm-bounded uncertainty description

Page 166: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

8

Bounded Disturbances

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

• Typically bounded by a polytope :

• Can be described in two ways

• Trivial condition for well-posedness :

Page 167: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

9

Robust MPC

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Main aims :

• Keep recursive feasibility properties, despite model errors,

disturbances

• Keep asymptotic stability (in the case without disturbances)

Necessary modifications :

•Uncertain predictions (e.g predictions with all models within

uncertainty region)

• worst-case constraint satisfaction over all predictions

• worst-case cost over all predictions

•Terminal cost has to satisfy multiple Lyap. Ineq.

•Terminal constraint has to be a robust invariant set

Page 168: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

10

Robust MPC

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

model uncertainty

disturbances

Uncertain predictions :

N

N

Page 169: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

11

Uncertain Predictions

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Step 1) Robust Constraint Satisfaction

Result : Sufficient to impose constraint only for vert. of :

Observations :

• depends linearly on

• is a convex polytopic set

• is a convex set

Page 170: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

12

Uncertain Predictions

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

LTI (L=1)

LPV (L>1, e.g. 2)

Page 171: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

13

Uncertain Predictions

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Impose state constraints on all nodes

of state prediction tree

→ number of constraints increases expon. with incr. !!!

Page 172: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

14

Worst-Case Cost Objective

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Step 2) Worst-Case cost minimization

Observations :

• depends linearly on

• is a convex polytopic set

• cost function typically convex function of

→ Also for objective function sufficient to make

predictions only with vertices of uncertainty polytope

Page 173: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

15

Worst-Case Cost Objective

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

sta

tes

inp

uts

Page 174: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

16

Worst-Case Cost Objective (1-norm)

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

LP

Page 175: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

17

Worst-Case Cost Objective (2-norm)

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

CVX ?

Page 176: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

18

Worst-Case Cost Objective (2-norm)

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Constraints of the form :

SOC

CVX ?

Page 177: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

19

Worst-Case Cost Objective (2-norm)

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

SOCP

Page 178: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

20

Robust MPC (2-norm)

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

SOCP

By rewriting we now get

Terminal cost

Terminal constraint

Page 179: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

21

Robust Terminal Cost

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

“non-robust” stability condition for terminal cost:

In case of…

• LPV system with polytopic uncertainty

• linear feedback controller

• quadratic cost criterion

• quadratic terminal cost

… this becomes :

or equivalent :

Page 180: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

22

Robust Terminal Cost

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Robust stability condition for terminal cost:

Observations :

• inequality is convex and linear in and (i.e. LMI in )

• is a convex polytopic set

Hence, inequality satisfied iff

Page 181: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

23

Robust Terminal Cost : Design

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

1. Find a robustly stabilizing controller

2. Find a terminal cost satisfying

by solving the following optimization problem :

SDP

optimization variables

Minimization of

eigenvalues of

Page 182: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

24

Robust Terminal Constraint

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Recursive feasibility is guaranteed if

1)

2)

3)

Terminal constraint is

feasible w.r.t state constraints

Terminal constraint is

feasible w.r.t input constraints

Terminal constraint is

a positive invariant set w.r.t

Reminder : nominal case

remain unchanged

Has to be modified in order to

Model uncertainty into account Robust positive invariance

Page 183: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

25

Robust Terminal Constraint

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Consider linear terminal controller ,

then the resulting closed loop system is :

Robust positive invariance :

Again : sufficient to satisfy inclusion

Page 184: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

26

Robust Terminal Constraint

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Reminder : invariant sets for LTI systems

Given an LTI system subject to linear constraints

then the largest size feasible invariant set can be found as

with a finite integer.

Given an LTI system subject to linear constraints

then the largest size feasible invariant set can be found as

with a finite integer.

Comes down to making forward predictions using

Page 185: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

27

Robust Terminal Constraint

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

LTI (L=1,n=2)

LPV (L>1, e.g. 2, n=2)

Page 186: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

28

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

-0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

S X

• Constructed by solving semi-definite program (SDP)

• Conservative with respect to constraints

Ellipsoidal invariant sets for LPV systems

(Kothare et al.,1996, Automatica)

Page 187: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

29

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

A set is invariant with respect to a system defined

by iff

with

Reformulate invariance condition :

Sufficient condition :

Also necessary condition

Page 188: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

30

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Advantages :

• in step 2 only ‘significant’ constraints are added to :

significant insignificant

• Initialize

• iteratively add constraints from to until

Algorithm :

Page 189: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

31

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Algorithm :

Advantages :

• prediction tree never explicitly constructed

• given a polyhedral set , it is straightforward

to calculate :

• Initialize

• iteratively add constraints from to until

Page 190: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

32

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Example

Initialization

Page 191: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

33

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Example

Iteration 10

Page 192: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

34

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Example

Iteration 10 + garbage collection

Page 193: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

35

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Example

Iteration 20

Page 194: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

36

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Example

Final Result

Page 195: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

37

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Example

Final Result

Page 196: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

38

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Polyhedral invariant sets for LPV systems

Example

Page 197: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

39

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Recursive feasibility, stability guarantee ?

Open loop

optimal input sequence

Closed loop

optimal input sequence

NO recursive feasibility !!! Recursive feasibility

Page 198: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

40

Example revisited…

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Results for 4 different parameter settings :

• Recursive feasibility ?

• Monotonicity of the cost ?

Page 199: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

41

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Example revisited…

Page 200: Introduction to Model Predictive Control (MPC)maapc/static/files/CACSD/... · 2017-05-15 · Introduction to Model Predictive Control Course: Computergestuurde regeltechniek 3 Some

42

• Example

• Robustness

• Robust MPC

• Conclusion

Signal processing

Identification

System Theory Automation

H0k03a : Advanced Process Control – Model-based Predictive Control 4 : Robustness [email protected]

Conclusion

• Robustness w.r.t a) bounded model uncertainty

b) bounded disturbances

• necessary modifications :

• worst-case constraints satisfaction

• worst-case objective function

• terminal cost

• terminal constraint

• “open-loop” vs. “closed-loop” predictions

→ currently hot research topic !

• convex optimization but problem size impractical

→ currently hot research topic !