559
Nonlinear Model Predictive Control Lars Gr¨ une Mathematical Institute, University of Bayreuth, Germany NTNU Trondheim, September 24–25, 2012

Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Nonlinear Model Predictive Control

Lars Grune

Mathematical Institute, University of Bayreuth, Germany

NTNU Trondheim, September 24–25, 2012

Page 2: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Contents

(1) Introduction: What is Model Predictive Control?

(2) Background material

(2a) Lyapunov Functions(2b) Dynamic Programming(2c) Relaxed Dynamic Programming

(3) Stability with stabilizing constraints

(3a) Equilibrium terminal constraint(3b) Regional terminal constraint and terminal cost

(4) Inverse optimality and suboptimality estimates

(5) Stability and suboptimality without stabilizing constraints

(6) Examples for the design of MPC schemes

(7) Feasibility (time permitting)

Lars Grune, Nonlinear Model Predictive Control, p. 2

Page 3: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(1) Introduction

What is Model Predictive Control (MPC)?

Page 4: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

SetupWe consider nonlinear discrete time control systems

xu(n+ 1) = f(xu(n),u(n)), xu(0) = x0

or, brieflyx+ = f(x, u)

with x ∈ X, u ∈ U

we consider discrete time systems for simplicity ofexpositioncontinuous time systems can be treated by using thediscrete time representation of the corresponding sampleddata systemX and U depend on the model. These may be Euclideanspaces Rn and Rm or more general (e.g., infinitedimensional) spaces. For simplicity of exposition weassume that we have a norm ‖ · ‖ on both spaces

Lars Grune, Nonlinear Model Predictive Control, p. 4

Page 5: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

SetupWe consider nonlinear discrete time control systems

xu(n+ 1) = f(xu(n),u(n)), xu(0) = x0

or, brieflyx+ = f(x, u)

with x ∈ X, u ∈ U

we consider discrete time systems for simplicity ofexposition

continuous time systems can be treated by using thediscrete time representation of the corresponding sampleddata systemX and U depend on the model. These may be Euclideanspaces Rn and Rm or more general (e.g., infinitedimensional) spaces. For simplicity of exposition weassume that we have a norm ‖ · ‖ on both spaces

Lars Grune, Nonlinear Model Predictive Control, p. 4

Page 6: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

SetupWe consider nonlinear discrete time control systems

xu(n+ 1) = f(xu(n),u(n)), xu(0) = x0

or, brieflyx+ = f(x, u)

with x ∈ X, u ∈ U

we consider discrete time systems for simplicity ofexpositioncontinuous time systems can be treated by using thediscrete time representation of the corresponding sampleddata system

X and U depend on the model. These may be Euclideanspaces Rn and Rm or more general (e.g., infinitedimensional) spaces. For simplicity of exposition weassume that we have a norm ‖ · ‖ on both spaces

Lars Grune, Nonlinear Model Predictive Control, p. 4

Page 7: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

SetupWe consider nonlinear discrete time control systems

xu(n+ 1) = f(xu(n),u(n)), xu(0) = x0

or, brieflyx+ = f(x, u)

with x ∈ X, u ∈ U

we consider discrete time systems for simplicity ofexpositioncontinuous time systems can be treated by using thediscrete time representation of the corresponding sampleddata systemX and U depend on the model. These may be Euclideanspaces Rn and Rm or more general (e.g., infinitedimensional) spaces.

For simplicity of exposition weassume that we have a norm ‖ · ‖ on both spaces

Lars Grune, Nonlinear Model Predictive Control, p. 4

Page 8: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

SetupWe consider nonlinear discrete time control systems

xu(n+ 1) = f(xu(n),u(n)), xu(0) = x0

or, brieflyx+ = f(x, u)

with x ∈ X, u ∈ U

we consider discrete time systems for simplicity ofexpositioncontinuous time systems can be treated by using thediscrete time representation of the corresponding sampleddata systemX and U depend on the model. These may be Euclideanspaces Rn and Rm or more general (e.g., infinitedimensional) spaces. For simplicity of exposition weassume that we have a norm ‖ · ‖ on both spaces

Lars Grune, Nonlinear Model Predictive Control, p. 4

Page 9: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prototype Problem

Assume there exists an equilibrium x∗ ∈ X for u = 0, i.e.

f(x∗, 0) = x∗

Task: stabilize the system x+ = f(x, u)at x∗ via static state feedback, i.e., find µ : X → U , such thatx∗ is asymptotically stable for the feedback controlled system

xµ(n+ 1) = f(xµ(n), µ(xµ(n))), xµ(0) = x0

Additionally, we impose state constraints xµ(n) ∈ Xand control constraints µ(x(n)) ∈ Ufor all n ∈ N and given sets X ⊆ X, U ⊆ U

Lars Grune, Nonlinear Model Predictive Control, p. 5

Page 10: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prototype Problem

Assume there exists an equilibrium x∗ ∈ X for u = 0, i.e.

f(x∗, 0) = x∗

Task: stabilize the system x+ = f(x, u)at x∗ via static state feedback,

i.e., find µ : X → U , such thatx∗ is asymptotically stable for the feedback controlled system

xµ(n+ 1) = f(xµ(n), µ(xµ(n))), xµ(0) = x0

Additionally, we impose state constraints xµ(n) ∈ Xand control constraints µ(x(n)) ∈ Ufor all n ∈ N and given sets X ⊆ X, U ⊆ U

Lars Grune, Nonlinear Model Predictive Control, p. 5

Page 11: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prototype Problem

Assume there exists an equilibrium x∗ ∈ X for u = 0, i.e.

f(x∗, 0) = x∗

Task: stabilize the system x+ = f(x, u)at x∗ via static state feedback, i.e., find µ : X → U , such thatx∗ is asymptotically stable for the feedback controlled system

xµ(n+ 1) = f(xµ(n), µ(xµ(n))), xµ(0) = x0

Additionally, we impose state constraints xµ(n) ∈ Xand control constraints µ(x(n)) ∈ Ufor all n ∈ N and given sets X ⊆ X, U ⊆ U

Lars Grune, Nonlinear Model Predictive Control, p. 5

Page 12: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prototype Problem

Asymptotic stability means

Attraction: xµ(n)→ x∗ as n→∞plus

Stability: Solutions starting close to x∗ remain close to x∗

(we will later formalize this property using KL functions)

Informal interpretation: control the system to x∗ and keep itthere while obeying the state and control constraints

Idea of MPC: use an optimal control problem which minimizesthe distance to x∗ in order to synthesize a feedback law µ

Lars Grune, Nonlinear Model Predictive Control, p. 6

Page 13: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prototype Problem

Asymptotic stability means

Attraction: xµ(n)→ x∗ as n→∞plus

Stability: Solutions starting close to x∗ remain close to x∗

(we will later formalize this property using KL functions)

Informal interpretation: control the system to x∗ and keep itthere while obeying the state and control constraints

Idea of MPC: use an optimal control problem which minimizesthe distance to x∗ in order to synthesize a feedback law µ

Lars Grune, Nonlinear Model Predictive Control, p. 6

Page 14: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prototype Problem

Asymptotic stability means

Attraction: xµ(n)→ x∗ as n→∞plus

Stability: Solutions starting close to x∗ remain close to x∗

(we will later formalize this property using KL functions)

Informal interpretation: control the system to x∗ and keep itthere while obeying the state and control constraints

Idea of MPC: use an optimal control problem which minimizesthe distance to x∗ in order to synthesize a feedback law µ

Lars Grune, Nonlinear Model Predictive Control, p. 6

Page 15: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prototype Problem

Asymptotic stability means

Attraction: xµ(n)→ x∗ as n→∞plus

Stability: Solutions starting close to x∗ remain close to x∗

(we will later formalize this property using KL functions)

Informal interpretation: control the system to x∗ and keep itthere while obeying the state and control constraints

Idea of MPC: use an optimal control problem which minimizesthe distance to x∗ in order to synthesize a feedback law µ

Lars Grune, Nonlinear Model Predictive Control, p. 6

Page 16: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The idea of MPCFor defining the MPC scheme, we choose a stage cost `(x, u)penalizing the distance from x∗ and the control effort, e.g.,`(x, u) = ‖x− x∗‖2 + λ‖u‖2 for λ ≥ 0

The basic idea of MPC is:

minimize the summed stage cost along trajectoriesgenerated from our model over a prediction horizon N

use the first element of the resulting optimal controlsequence as feedback value

repeat this procedure iteratively for all sampling instantsn = 0, 1, 2, . . .

Notation in what follows:

general feedback laws will be denoted by µ

the MPC feedback law will be denoted by µN

Lars Grune, Nonlinear Model Predictive Control, p. 7

Page 17: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The idea of MPCFor defining the MPC scheme, we choose a stage cost `(x, u)penalizing the distance from x∗ and the control effort, e.g.,`(x, u) = ‖x− x∗‖2 + λ‖u‖2 for λ ≥ 0

The basic idea of MPC is:

minimize the summed stage cost along trajectoriesgenerated from our model over a prediction horizon N

use the first element of the resulting optimal controlsequence as feedback value

repeat this procedure iteratively for all sampling instantsn = 0, 1, 2, . . .

Notation in what follows:

general feedback laws will be denoted by µ

the MPC feedback law will be denoted by µN

Lars Grune, Nonlinear Model Predictive Control, p. 7

Page 18: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The idea of MPCFor defining the MPC scheme, we choose a stage cost `(x, u)penalizing the distance from x∗ and the control effort, e.g.,`(x, u) = ‖x− x∗‖2 + λ‖u‖2 for λ ≥ 0

The basic idea of MPC is:

minimize the summed stage cost along trajectoriesgenerated from our model over a prediction horizon N

use the first element of the resulting optimal controlsequence as feedback value

repeat this procedure iteratively for all sampling instantsn = 0, 1, 2, . . .

Notation in what follows:

general feedback laws will be denoted by µ

the MPC feedback law will be denoted by µN

Lars Grune, Nonlinear Model Predictive Control, p. 7

Page 19: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The basic MPC schemeFormal description of the basic MPC scheme:

At each time instant n solve for the current state xµN(n)

minimizeu admissible

JN(xµN(n),u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = xµN(n)

(u admissible ⇔ u ∈ UN and xu(k) ∈ X)

optimal trajectory x?(0), . . . , x?(N)

with optimal control u?(0), . . . ,u?(N − 1)

Define the MPC feedback law µ(xµ(n)) := u∗(0)

xµN (n+ 1) = f(xµN (n), µN (xµN (n))) = f(xµN (n),u?(0)) = x?(1)

Lars Grune, Nonlinear Model Predictive Control, p. 8

Page 20: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The basic MPC schemeFormal description of the basic MPC scheme:

At each time instant n solve for the current state xµN(n)

minimizeu admissible

JN(xµN(n),u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = xµN(n)

(u admissible ⇔ u ∈ UN and xu(k) ∈ X)

optimal trajectory x?(0), . . . , x?(N)

with optimal control u?(0), . . . ,u?(N − 1)

Define the MPC feedback law µ(xµ(n)) := u∗(0)

xµN (n+ 1) = f(xµN (n), µN (xµN (n))) = f(xµN (n),u?(0)) = x?(1)

Lars Grune, Nonlinear Model Predictive Control, p. 8

Page 21: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The basic MPC schemeFormal description of the basic MPC scheme:

At each time instant n solve for the current state xµN(n)

minimizeu admissible

JN(xµN(n),u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = xµN(n)

(u admissible ⇔ u ∈ UN and xu(k) ∈ X)

optimal trajectory x?(0), . . . , x?(N)

with optimal control u?(0), . . . ,u?(N − 1)

Define the MPC feedback law µ(xµ(n)) := u∗(0)

xµN (n+ 1) = f(xµN (n), µN (xµN (n))) = f(xµN (n),u?(0)) = x?(1)

Lars Grune, Nonlinear Model Predictive Control, p. 8

Page 22: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The basic MPC schemeFormal description of the basic MPC scheme:

At each time instant n solve for the current state xµN(n)

minimizeu admissible

JN(xµN(n),u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = xµN(n)

(u admissible ⇔ u ∈ UN and xu(k) ∈ X)

optimal trajectory x?(0), . . . , x?(N)

with optimal control u?(0), . . . ,u?(N − 1)

Define the MPC feedback law µ(xµ(n)) := u∗(0)

xµN (n+ 1) = f(xµN (n), µN (xµN (n))) = f(xµN (n),u?(0)) = x?(1)

Lars Grune, Nonlinear Model Predictive Control, p. 8

Page 23: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The basic MPC schemeFormal description of the basic MPC scheme:

At each time instant n solve for the current state xµN(n)

minimizeu admissible

JN(xµN(n),u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = xµN(n)

(u admissible ⇔ u ∈ UN and xu(k) ∈ X)

optimal trajectory x?(0), . . . , x?(N)

with optimal control u?(0), . . . ,u?(N − 1)

Define the MPC feedback law µ(xµ(n)) := u∗(0)

xµN (n+ 1) = f(xµN (n), µN (xµN (n)))

= f(xµN (n),u?(0)) = x?(1)

Lars Grune, Nonlinear Model Predictive Control, p. 8

Page 24: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The basic MPC schemeFormal description of the basic MPC scheme:

At each time instant n solve for the current state xµN(n)

minimizeu admissible

JN(xµN(n),u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = xµN(n)

(u admissible ⇔ u ∈ UN and xu(k) ∈ X)

optimal trajectory x?(0), . . . , x?(N)

with optimal control u?(0), . . . ,u?(N − 1)

Define the MPC feedback law µ(xµ(n)) := u∗(0)

xµN (n+ 1) = f(xµN (n), µN (xµN (n))) = f(xµN (n),u?(0))

= x?(1)

Lars Grune, Nonlinear Model Predictive Control, p. 8

Page 25: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The basic MPC schemeFormal description of the basic MPC scheme:

At each time instant n solve for the current state xµN(n)

minimizeu admissible

JN(xµN(n),u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = xµN(n)

(u admissible ⇔ u ∈ UN and xu(k) ∈ X)

optimal trajectory x?(0), . . . , x?(N)

with optimal control u?(0), . . . ,u?(N − 1)

Define the MPC feedback law µ(xµ(n)) := u∗(0)

xµN (n+ 1) = f(xµN (n), µN (xµN (n))) = f(xµN (n),u?(0)) = x?(1)

Lars Grune, Nonlinear Model Predictive Control, p. 8

Page 26: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

x0

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 27: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

black = predictions (open loop optimization)

red = MPC closed loop, xn = xµN(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 28: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

x

x1

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 29: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 30: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

x2

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 31: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 32: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

x3

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 33: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

...

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 34: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

...

x4

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 35: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

...

...

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 36: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

...

...x5

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 37: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

...

...

...

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 38: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC from the trajectory point of view

n

x

0 1 2 3 4 5 6

...

...

...x6

black = predictions (open loop optimization)red = MPC closed loop, xn = xµN

(n)

Lars Grune, Nonlinear Model Predictive Control, p. 9

Page 39: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963]

, often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?How good is the performance of the MPC feedback law?How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 40: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963], often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?How good is the performance of the MPC feedback law?How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 41: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963], often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?How good is the performance of the MPC feedback law?How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 42: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963], often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?How good is the performance of the MPC feedback law?How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 43: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963], often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?How good is the performance of the MPC feedback law?How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 44: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963], often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?

How good is the performance of the MPC feedback law?How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 45: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963], often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?How good is the performance of the MPC feedback law?

How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 46: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963], often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?How good is the performance of the MPC feedback law?How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 47: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Model predictive control (aka Receding horizon control)

Idea first formulated in [A.I. Propoi, Use of linear programming

methods for synthesizing sampled-data automatic systems,

Automation and Remote Control 1963], often rediscovered

used in industrial applications since the mid 1970s, mainly forconstrained linear systems [Qin & Badgwell, 1997, 2001]

more than 9000 industrial MPC applications in Germanycounted in [Dittmar & Pfeifer, 2005]

development of theory since ∼1980 (linear), ∼1990 (nonlinear)

Central questions:

When does MPC stabilize the system?How good is the performance of the MPC feedback law?How long does the optimization horizon N need to be?

and, of course, the development of good algorithms (not topic of this course)

Lars Grune, Nonlinear Model Predictive Control, p. 10

Page 48: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

An example

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x+1 = sin(ϕ+ u)

x+2 = cos(ϕ+ u)/2

with ϕ =

arccos 2x2, x1 ≥ 02π − arccos 2x2, x1 < 0,

X = x ∈ R2 : ‖(x1, 2x2)T‖ = 1, U = [0, umax]

x∗ = (0,−1/2)T , x0 = (0, 1/2)T

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 yieldsasymptotic stability for N = 11 but not for N ≤ 10

Lars Grune, Nonlinear Model Predictive Control, p. 11

Page 49: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

An example

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x+1 = sin(ϕ+ u)

x+2 = cos(ϕ+ u)/2

with ϕ =

arccos 2x2, x1 ≥ 02π − arccos 2x2, x1 < 0,

X = x ∈ R2 : ‖(x1, 2x2)T‖ = 1, U = [0, umax]

x∗ = (0,−1/2)T , x0 = (0, 1/2)T

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 yieldsasymptotic stability for N = 11 but not for N ≤ 10

Lars Grune, Nonlinear Model Predictive Control, p. 11

Page 50: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

An example

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x+1 = sin(ϕ+ u)

x+2 = cos(ϕ+ u)/2

with ϕ =

arccos 2x2, x1 ≥ 02π − arccos 2x2, x1 < 0,

X = x ∈ R2 : ‖(x1, 2x2)T‖ = 1, U = [0, umax]

x∗ = (0,−1/2)T , x0 = (0, 1/2)T

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 yieldsasymptotic stability for N = 11

but not for N ≤ 10

Lars Grune, Nonlinear Model Predictive Control, p. 11

Page 51: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

An example

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x+1 = sin(ϕ+ u)

x+2 = cos(ϕ+ u)/2

with ϕ =

arccos 2x2, x1 ≥ 02π − arccos 2x2, x1 < 0,

X = x ∈ R2 : ‖(x1, 2x2)T‖ = 1, U = [0, umax]

x∗ = (0,−1/2)T , x0 = (0, 1/2)T

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 yieldsasymptotic stability for N = 11 but not for N ≤ 10

Lars Grune, Nonlinear Model Predictive Control, p. 11

Page 52: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (1)

MPC is an online optimal control based method forcomputing stabilizing feedback laws

MPC computes the feedback law by iteratively solvingfinite horizon optimal control problems using the currentstate x0 = xµN

(n) as initial value

the feedback value µN(x0) is the first element of theresulting optimal control sequence

the example shows that MPC does not always yield anasymptotically stabilizing feedback law

Lars Grune, Nonlinear Model Predictive Control, p. 12

Page 53: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (1)

MPC is an online optimal control based method forcomputing stabilizing feedback laws

MPC computes the feedback law by iteratively solvingfinite horizon optimal control problems using the currentstate x0 = xµN

(n) as initial value

the feedback value µN(x0) is the first element of theresulting optimal control sequence

the example shows that MPC does not always yield anasymptotically stabilizing feedback law

Lars Grune, Nonlinear Model Predictive Control, p. 12

Page 54: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (1)

MPC is an online optimal control based method forcomputing stabilizing feedback laws

MPC computes the feedback law by iteratively solvingfinite horizon optimal control problems using the currentstate x0 = xµN

(n) as initial value

the feedback value µN(x0) is the first element of theresulting optimal control sequence

the example shows that MPC does not always yield anasymptotically stabilizing feedback law

Lars Grune, Nonlinear Model Predictive Control, p. 12

Page 55: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (1)

MPC is an online optimal control based method forcomputing stabilizing feedback laws

MPC computes the feedback law by iteratively solvingfinite horizon optimal control problems using the currentstate x0 = xµN

(n) as initial value

the feedback value µN(x0) is the first element of theresulting optimal control sequence

the example shows that MPC does not always yield anasymptotically stabilizing feedback law

Lars Grune, Nonlinear Model Predictive Control, p. 12

Page 56: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(2a) Background material:

Lyapunov functions

Page 57: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Purpose of this sectionWe introduce Lyapunov functions as a tool to rigorously verifyasymptotic stability

In the subsequent sections, this will be used in order toestablish asymptotic stability of the MPC closed loop

In this section, we consider discrete time systems withoutinput, i.e.,

x+ = g(x)

with x ∈ X or, in long form

x(n+ 1) = g(x(n)), x(0) = x0

(later we will apply the results to g(x) = f(x, µN (x)))

Note: we do not require g to be continuous

Lars Grune, Nonlinear Model Predictive Control, p. 14

Page 58: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Purpose of this sectionWe introduce Lyapunov functions as a tool to rigorously verifyasymptotic stability

In the subsequent sections, this will be used in order toestablish asymptotic stability of the MPC closed loop

In this section, we consider discrete time systems withoutinput, i.e.,

x+ = g(x)

with x ∈ X or, in long form

x(n+ 1) = g(x(n)), x(0) = x0

(later we will apply the results to g(x) = f(x, µN (x)))

Note: we do not require g to be continuous

Lars Grune, Nonlinear Model Predictive Control, p. 14

Page 59: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Purpose of this sectionWe introduce Lyapunov functions as a tool to rigorously verifyasymptotic stability

In the subsequent sections, this will be used in order toestablish asymptotic stability of the MPC closed loop

In this section, we consider discrete time systems withoutinput, i.e.,

x+ = g(x)

with x ∈ X or, in long form

x(n+ 1) = g(x(n)), x(0) = x0

(later we will apply the results to g(x) = f(x, µN (x)))

Note: we do not require g to be continuous

Lars Grune, Nonlinear Model Predictive Control, p. 14

Page 60: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Purpose of this sectionWe introduce Lyapunov functions as a tool to rigorously verifyasymptotic stability

In the subsequent sections, this will be used in order toestablish asymptotic stability of the MPC closed loop

In this section, we consider discrete time systems withoutinput, i.e.,

x+ = g(x)

with x ∈ X or, in long form

x(n+ 1) = g(x(n)), x(0) = x0

(later we will apply the results to g(x) = f(x, µN (x)))

Note: we do not require g to be continuous

Lars Grune, Nonlinear Model Predictive Control, p. 14

Page 61: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Purpose of this sectionWe introduce Lyapunov functions as a tool to rigorously verifyasymptotic stability

In the subsequent sections, this will be used in order toestablish asymptotic stability of the MPC closed loop

In this section, we consider discrete time systems withoutinput, i.e.,

x+ = g(x)

with x ∈ X or, in long form

x(n+ 1) = g(x(n)), x(0) = x0

(later we will apply the results to g(x) = f(x, µN (x)))

Note: we do not require g to be continuous

Lars Grune, Nonlinear Model Predictive Control, p. 14

Page 62: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comparison functionsFor R+

0 = [0,∞) we use the following classes of comparisonfunctions

K :=

α : R+

0 → R+0

∣∣∣∣ α is continuous and strictlyincreasing with α(0) = 0

K∞ :=α : R+

0 → R+0

∣∣∣α ∈ K and α is unbounded

KL :=

β : R+0 × R+

0 → R+0

∣∣∣∣∣∣β(·, t) ∈ K for all t ∈ R+

0

and β(r, ·) is strictly de-creasing to 0 for all r ∈ R+

0

Lars Grune, Nonlinear Model Predictive Control, p. 15

Page 63: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Asymptotic stability revisited

A point x∗ is called an equilibrium of x+ = g(x) if g(x∗) = x∗

A set Y ⊆ X is called forward invariant for x+ = g(x) ifg(x) ∈ Y holds for each x ∈ Y

We say that x∗ is asymptotically stable for x+ = g(x) on aforward invariant set Y if there exists β ∈ KL such that

‖x(n)− x∗‖ ≤ β(‖x(0)− x∗‖, n)

holds for all x ∈ Y and n ∈ N

How can we check whether this property holds?

Lars Grune, Nonlinear Model Predictive Control, p. 16

Page 64: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Asymptotic stability revisited

A point x∗ is called an equilibrium of x+ = g(x) if g(x∗) = x∗

A set Y ⊆ X is called forward invariant for x+ = g(x) ifg(x) ∈ Y holds for each x ∈ Y

We say that x∗ is asymptotically stable for x+ = g(x) on aforward invariant set Y if there exists β ∈ KL such that

‖x(n)− x∗‖ ≤ β(‖x(0)− x∗‖, n)

holds for all x ∈ Y and n ∈ N

How can we check whether this property holds?

Lars Grune, Nonlinear Model Predictive Control, p. 16

Page 65: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Asymptotic stability revisited

A point x∗ is called an equilibrium of x+ = g(x) if g(x∗) = x∗

A set Y ⊆ X is called forward invariant for x+ = g(x) ifg(x) ∈ Y holds for each x ∈ Y

We say that x∗ is asymptotically stable for x+ = g(x) on aforward invariant set Y if there exists β ∈ KL such that

‖x(n)− x∗‖ ≤ β(‖x(0)− x∗‖, n)

holds for all x ∈ Y and n ∈ N

How can we check whether this property holds?

Lars Grune, Nonlinear Model Predictive Control, p. 16

Page 66: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Asymptotic stability revisited

A point x∗ is called an equilibrium of x+ = g(x) if g(x∗) = x∗

A set Y ⊆ X is called forward invariant for x+ = g(x) ifg(x) ∈ Y holds for each x ∈ Y

We say that x∗ is asymptotically stable for x+ = g(x) on aforward invariant set Y if there exists β ∈ KL such that

‖x(n)− x∗‖ ≤ β(‖x(0)− x∗‖, n)

holds for all x ∈ Y and n ∈ N

How can we check whether this property holds?

Lars Grune, Nonlinear Model Predictive Control, p. 16

Page 67: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Lyapunov function

Let Y ⊆ X be a forward invariant set and x∗ ∈ X. A functionV : Y → R+

0 is called a Lyapunov function for x+ = g(x) ifthe following two conditions hold for all x ∈ Y :

(i) There exists α1, α2 ∈ K∞ such that

α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖)

(ii) There exists αV ∈ K such that

V (x+) ≤ V (x)− αV (‖x− x∗‖)

Lars Grune, Nonlinear Model Predictive Control, p. 17

Page 68: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem

Theorem: If the system x+ = g(x) admits a Lyapunovfunction V on a forward invariant set Y , then x∗ is anasymptotically stable equilibrium on Y

Idea of proof: V (x+) ≤ V (x)− αV (‖x− x∗‖) implies that Vis strictly decaying along solutions away from x∗

This allows to construct β ∈ KL with V (x(n)) ≤ β(V (x(0)), n)

The bounds α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) imply thatasymptotic stability holds with β(r, t) = α−1

1 (β(α2(r), t))

Lars Grune, Nonlinear Model Predictive Control, p. 18

Page 69: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem

Theorem: If the system x+ = g(x) admits a Lyapunovfunction V on a forward invariant set Y , then x∗ is anasymptotically stable equilibrium on Y

Idea of proof: V (x+) ≤ V (x)− αV (‖x− x∗‖) implies that Vis strictly decaying along solutions away from x∗

This allows to construct β ∈ KL with V (x(n)) ≤ β(V (x(0)), n)

The bounds α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) imply thatasymptotic stability holds with β(r, t) = α−1

1 (β(α2(r), t))

Lars Grune, Nonlinear Model Predictive Control, p. 18

Page 70: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem

Theorem: If the system x+ = g(x) admits a Lyapunovfunction V on a forward invariant set Y , then x∗ is anasymptotically stable equilibrium on Y

Idea of proof: V (x+) ≤ V (x)− αV (‖x− x∗‖) implies that Vis strictly decaying along solutions away from x∗

This allows to construct β ∈ KL with V (x(n)) ≤ β(V (x(0)), n)

The bounds α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) imply thatasymptotic stability holds with β(r, t) = α−1

1 (β(α2(r), t))

Lars Grune, Nonlinear Model Predictive Control, p. 18

Page 71: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem

Theorem: If the system x+ = g(x) admits a Lyapunovfunction V on a forward invariant set Y , then x∗ is anasymptotically stable equilibrium on Y

Idea of proof: V (x+) ≤ V (x)− αV (‖x− x∗‖) implies that Vis strictly decaying along solutions away from x∗

This allows to construct β ∈ KL with V (x(n)) ≤ β(V (x(0)), n)

The bounds α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) imply thatasymptotic stability holds with β(r, t) = α−1

1 (β(α2(r), t))

Lars Grune, Nonlinear Model Predictive Control, p. 18

Page 72: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Lyapunov functions — discussion

While the convergence x(n)→ x∗ is typically non-monotonefor an asymptotically stable system, the convergenceV (x(n))→ 0 is strictly monotone

It is hence sufficient to check the decay of V in one time step

it is typically quite easy to check whether a given functionis a Lyapunov function

But it is in general difficult to find a candidate for a Lyapunovfunction

For MPC, we will use the optimal value functions which weintroduce in the next section

Lars Grune, Nonlinear Model Predictive Control, p. 19

Page 73: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Lyapunov functions — discussion

While the convergence x(n)→ x∗ is typically non-monotonefor an asymptotically stable system, the convergenceV (x(n))→ 0 is strictly monotone

It is hence sufficient to check the decay of V in one time step

it is typically quite easy to check whether a given functionis a Lyapunov function

But it is in general difficult to find a candidate for a Lyapunovfunction

For MPC, we will use the optimal value functions which weintroduce in the next section

Lars Grune, Nonlinear Model Predictive Control, p. 19

Page 74: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Lyapunov functions — discussion

While the convergence x(n)→ x∗ is typically non-monotonefor an asymptotically stable system, the convergenceV (x(n))→ 0 is strictly monotone

It is hence sufficient to check the decay of V in one time step

it is typically quite easy to check whether a given functionis a Lyapunov function

But it is in general difficult to find a candidate for a Lyapunovfunction

For MPC, we will use the optimal value functions which weintroduce in the next section

Lars Grune, Nonlinear Model Predictive Control, p. 19

Page 75: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Lyapunov functions — discussion

While the convergence x(n)→ x∗ is typically non-monotonefor an asymptotically stable system, the convergenceV (x(n))→ 0 is strictly monotone

It is hence sufficient to check the decay of V in one time step

it is typically quite easy to check whether a given functionis a Lyapunov function

But it is in general difficult to find a candidate for a Lyapunovfunction

For MPC, we will use the optimal value functions which weintroduce in the next section

Lars Grune, Nonlinear Model Predictive Control, p. 19

Page 76: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Lyapunov functions — discussion

While the convergence x(n)→ x∗ is typically non-monotonefor an asymptotically stable system, the convergenceV (x(n))→ 0 is strictly monotone

It is hence sufficient to check the decay of V in one time step

it is typically quite easy to check whether a given functionis a Lyapunov function

But it is in general difficult to find a candidate for a Lyapunovfunction

For MPC, we will use the optimal value functions which weintroduce in the next section

Lars Grune, Nonlinear Model Predictive Control, p. 19

Page 77: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(2b) Background material:

Dynamic Programming

Page 78: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Purpose of this section

We define the optimal value functions VN for the optimalcontrol problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

used within the MPC scheme (with x0 = xµN(n))

We present the dynamic programming principle, whichestablishes a relation for these functions and will eventuallyenable us to derive conditions under which VN is a Lyapunovfunction

Lars Grune, Nonlinear Model Predictive Control, p. 21

Page 79: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Purpose of this section

We define the optimal value functions VN for the optimalcontrol problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

used within the MPC scheme (with x0 = xµN(n))

We present the dynamic programming principle, whichestablishes a relation for these functions and will eventuallyenable us to derive conditions under which VN is a Lyapunovfunction

Lars Grune, Nonlinear Model Predictive Control, p. 21

Page 80: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimal value functions

We define the optimal value function

VN(x0) := infu admissible

JN(x0,u)

setting VN(x0) :=∞ if x0 is not feasible, i.e., if there is noadmissible u (recall: u admissible ⇔ xu(k) ∈ X, u(k) ∈ U)

An admissible control sequence u? is called optimal, if

JN(x0,u?) = VN(x0)

Note: an optimal u? does not need to exist in general. In thesequel we assume that u? exists if x0 is feasible

Lars Grune, Nonlinear Model Predictive Control, p. 22

Page 81: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimal value functions

We define the optimal value function

VN(x0) := infu admissible

JN(x0,u)

setting VN(x0) :=∞ if x0 is not feasible, i.e., if there is noadmissible u

(recall: u admissible ⇔ xu(k) ∈ X, u(k) ∈ U)

An admissible control sequence u? is called optimal, if

JN(x0,u?) = VN(x0)

Note: an optimal u? does not need to exist in general. In thesequel we assume that u? exists if x0 is feasible

Lars Grune, Nonlinear Model Predictive Control, p. 22

Page 82: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimal value functions

We define the optimal value function

VN(x0) := infu admissible

JN(x0,u)

setting VN(x0) :=∞ if x0 is not feasible, i.e., if there is noadmissible u (recall: u admissible ⇔ xu(k) ∈ X, u(k) ∈ U)

An admissible control sequence u? is called optimal, if

JN(x0,u?) = VN(x0)

Note: an optimal u? does not need to exist in general. In thesequel we assume that u? exists if x0 is feasible

Lars Grune, Nonlinear Model Predictive Control, p. 22

Page 83: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimal value functions

We define the optimal value function

VN(x0) := infu admissible

JN(x0,u)

setting VN(x0) :=∞ if x0 is not feasible, i.e., if there is noadmissible u (recall: u admissible ⇔ xu(k) ∈ X, u(k) ∈ U)

An admissible control sequence u? is called optimal, if

JN(x0,u?) = VN(x0)

Note: an optimal u? does not need to exist in general. In thesequel we assume that u? exists if x0 is feasible

Lars Grune, Nonlinear Model Predictive Control, p. 22

Page 84: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimal value functions

We define the optimal value function

VN(x0) := infu admissible

JN(x0,u)

setting VN(x0) :=∞ if x0 is not feasible, i.e., if there is noadmissible u (recall: u admissible ⇔ xu(k) ∈ X, u(k) ∈ U)

An admissible control sequence u? is called optimal, if

JN(x0,u?) = VN(x0)

Note: an optimal u? does not need to exist in general. In thesequel we assume that u? exists if x0 is feasible

Lars Grune, Nonlinear Model Predictive Control, p. 22

Page 85: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Dynamic Programming PrincipleTheorem: (Dynamic Programming Principle) For any feasiblex0 ∈ X the optimal value function satisfies

VN(x0) = infu∈U`(x0, u) + VN−1(f(x0, u))

Moreover, if u? is an optimal control, then

VN(x0) = `(x0,u∗(0)) + VN−1(f(x0,u

?(0)))

holds.

Idea of Proof: Follows by taking infima in the identity

JN(x0,u) = `(xu(0),u(0)) +N−1∑k=1

`(xu(k),u(k))

= `(x0,u(0)) + JN−1(f(x0,u(0)),u(·+ 1))

Lars Grune, Nonlinear Model Predictive Control, p. 23

Page 86: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Dynamic Programming PrincipleTheorem: (Dynamic Programming Principle) For any feasiblex0 ∈ X the optimal value function satisfies

VN(x0) = infu∈U`(x0, u) + VN−1(f(x0, u))

Moreover, if u? is an optimal control, then

VN(x0) = `(x0,u∗(0)) + VN−1(f(x0,u

?(0)))

holds.

Idea of Proof: Follows by taking infima in the identity

JN(x0,u) = `(xu(0),u(0)) +N−1∑k=1

`(xu(k),u(k))

= `(x0,u(0)) + JN−1(f(x0,u(0)),u(·+ 1))

Lars Grune, Nonlinear Model Predictive Control, p. 23

Page 87: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Dynamic Programming PrincipleTheorem: (Dynamic Programming Principle) For any feasiblex0 ∈ X the optimal value function satisfies

VN(x0) = infu∈U`(x0, u) + VN−1(f(x0, u))

Moreover, if u? is an optimal control, then

VN(x0) = `(x0,u∗(0)) + VN−1(f(x0,u

?(0)))

holds.

Idea of Proof: Follows by taking infima in the identity

JN(x0,u) = `(xu(0),u(0)) +N−1∑k=1

`(xu(k),u(k))

= `(x0,u(0)) + JN−1(f(x0,u(0)),u(·+ 1))

Lars Grune, Nonlinear Model Predictive Control, p. 23

Page 88: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

CorollariesCorollary: Let x? be an optimal trajectory of length N withoptimal control u? and x?(0) = x.

Then

(i) The “tail” (x?(k), x?(k + 1), . . . , x?(N − 1)

)is an optimal trajectory of length N − k.

(ii) The MPC feedback µN satisfies

µN(x) = argminu∈U

`(x, u) + VN−1(f(x, u))

(i.e., u = µN (x) minimizes this expression),

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

andu?(k) = µN−k(x

?(k)), k = 0, . . . , N − 1

Lars Grune, Nonlinear Model Predictive Control, p. 24

Page 89: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

CorollariesCorollary: Let x? be an optimal trajectory of length N withoptimal control u? and x?(0) = x. Then

(i) The “tail” (x?(k), x?(k + 1), . . . , x?(N − 1)

)is an optimal trajectory of length N − k.

(ii) The MPC feedback µN satisfies

µN(x) = argminu∈U

`(x, u) + VN−1(f(x, u))

(i.e., u = µN (x) minimizes this expression),

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

andu?(k) = µN−k(x

?(k)), k = 0, . . . , N − 1

Lars Grune, Nonlinear Model Predictive Control, p. 24

Page 90: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

CorollariesCorollary: Let x? be an optimal trajectory of length N withoptimal control u? and x?(0) = x. Then

(i) The “tail” (x?(k), x?(k + 1), . . . , x?(N − 1)

)is an optimal trajectory of length N − k.

(ii) The MPC feedback µN satisfies

µN(x) = argminu∈U

`(x, u) + VN−1(f(x, u))

(i.e., u = µN (x) minimizes this expression)

,

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

andu?(k) = µN−k(x

?(k)), k = 0, . . . , N − 1

Lars Grune, Nonlinear Model Predictive Control, p. 24

Page 91: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

CorollariesCorollary: Let x? be an optimal trajectory of length N withoptimal control u? and x?(0) = x. Then

(i) The “tail” (x?(k), x?(k + 1), . . . , x?(N − 1)

)is an optimal trajectory of length N − k.

(ii) The MPC feedback µN satisfies

µN(x) = argminu∈U

`(x, u) + VN−1(f(x, u))

(i.e., u = µN (x) minimizes this expression),

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

andu?(k) = µN−k(x

?(k)), k = 0, . . . , N − 1

Lars Grune, Nonlinear Model Predictive Control, p. 24

Page 92: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

CorollariesCorollary: Let x? be an optimal trajectory of length N withoptimal control u? and x?(0) = x. Then

(i) The “tail” (x?(k), x?(k + 1), . . . , x?(N − 1)

)is an optimal trajectory of length N − k.

(ii) The MPC feedback µN satisfies

µN(x) = argminu∈U

`(x, u) + VN−1(f(x, u))

(i.e., u = µN (x) minimizes this expression),

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

andu?(k) = µN−k(x

?(k)), k = 0, . . . , N − 1

Lars Grune, Nonlinear Model Predictive Control, p. 24

Page 93: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Dynamic Programming Principle — discussion

We will see later, that under suitable conditions the optimalvalue function will play the role of a Lyapunov function for theMPC closed loop

The dynamic programming principle and its corollaries willprove to be important tools to establish this fact

In order to see why this can work, in the next section webriefly look at infinite horizon optimal control problems

Moreover, for simple systems the principle can be used forcomputing VN and µN — we will see an example in theexcercises

Lars Grune, Nonlinear Model Predictive Control, p. 25

Page 94: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Dynamic Programming Principle — discussion

We will see later, that under suitable conditions the optimalvalue function will play the role of a Lyapunov function for theMPC closed loop

The dynamic programming principle and its corollaries willprove to be important tools to establish this fact

In order to see why this can work, in the next section webriefly look at infinite horizon optimal control problems

Moreover, for simple systems the principle can be used forcomputing VN and µN — we will see an example in theexcercises

Lars Grune, Nonlinear Model Predictive Control, p. 25

Page 95: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Dynamic Programming Principle — discussion

We will see later, that under suitable conditions the optimalvalue function will play the role of a Lyapunov function for theMPC closed loop

The dynamic programming principle and its corollaries willprove to be important tools to establish this fact

In order to see why this can work, in the next section webriefly look at infinite horizon optimal control problems

Moreover, for simple systems the principle can be used forcomputing VN and µN — we will see an example in theexcercises

Lars Grune, Nonlinear Model Predictive Control, p. 25

Page 96: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Dynamic Programming Principle — discussion

We will see later, that under suitable conditions the optimalvalue function will play the role of a Lyapunov function for theMPC closed loop

The dynamic programming principle and its corollaries willprove to be important tools to establish this fact

In order to see why this can work, in the next section webriefly look at infinite horizon optimal control problems

Moreover, for simple systems the principle can be used forcomputing VN and µN — we will see an example in theexcercises

Lars Grune, Nonlinear Model Predictive Control, p. 25

Page 97: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(2c) Background material:

Relaxed Dynamic Programming

Page 98: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Infinite horizon optimal control

Just like the finite horizon problem we can define the infinitehorizon optimal control problem

minimizeu admissible

J∞(x0,u) =∞∑k=0

`(xu(k),u(k)), xu(0) = x0

and the corresponding optimal value function

V∞(x0) := infu admissible

J∞(x0,u)

If we could compute an optimal feedback µ∞ for this problem(which is — in contrast to computing µN — in general a very

difficult problem), we would have solved the stabilizationproblem

Lars Grune, Nonlinear Model Predictive Control, p. 27

Page 99: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Infinite horizon optimal control

Just like the finite horizon problem we can define the infinitehorizon optimal control problem

minimizeu admissible

J∞(x0,u) =∞∑k=0

`(xu(k),u(k)), xu(0) = x0

and the corresponding optimal value function

V∞(x0) := infu admissible

J∞(x0,u)

If we could compute an optimal feedback µ∞ for this problem(which is — in contrast to computing µN — in general a very

difficult problem), we would have solved the stabilizationproblem

Lars Grune, Nonlinear Model Predictive Control, p. 27

Page 100: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Infinite horizon optimal control

Just like the finite horizon problem we can define the infinitehorizon optimal control problem

minimizeu admissible

J∞(x0,u) =∞∑k=0

`(xu(k),u(k)), xu(0) = x0

and the corresponding optimal value function

V∞(x0) := infu admissible

J∞(x0,u)

If we could compute an optimal feedback µ∞ for this problem(which is — in contrast to computing µN — in general a very

difficult problem), we would have solved the stabilizationproblem

Lars Grune, Nonlinear Model Predictive Control, p. 27

Page 101: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Infinite horizon dynamic programming principleRecall the corollary from the finite horizon dynamicprogramming principle

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

The corresponding result which can be proved for the infinitehorizon problem reads

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

if `(x, µ∞(x)) ≥ αV (‖x− x∗‖) holds, then we get

V∞(f(x, µ∞(x))) ≤ V∞(x)− αV (‖x− x∗‖)

and if in addition α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) holds,then V∞ is a Lyapunov function asymptotic stability

Lars Grune, Nonlinear Model Predictive Control, p. 28

Page 102: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Infinite horizon dynamic programming principleRecall the corollary from the finite horizon dynamicprogramming principle

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

The corresponding result which can be proved for the infinitehorizon problem reads

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

if `(x, µ∞(x)) ≥ αV (‖x− x∗‖) holds, then we get

V∞(f(x, µ∞(x))) ≤ V∞(x)− αV (‖x− x∗‖)

and if in addition α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) holds,then V∞ is a Lyapunov function asymptotic stability

Lars Grune, Nonlinear Model Predictive Control, p. 28

Page 103: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Infinite horizon dynamic programming principleRecall the corollary from the finite horizon dynamicprogramming principle

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

The corresponding result which can be proved for the infinitehorizon problem reads

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

if `(x, µ∞(x)) ≥ αV (‖x− x∗‖) holds, then we get

V∞(f(x, µ∞(x))) ≤ V∞(x)− αV (‖x− x∗‖)

and if in addition α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) holds,then V∞ is a Lyapunov function asymptotic stability

Lars Grune, Nonlinear Model Predictive Control, p. 28

Page 104: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Infinite horizon dynamic programming principleRecall the corollary from the finite horizon dynamicprogramming principle

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

The corresponding result which can be proved for the infinitehorizon problem reads

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

if `(x, µ∞(x)) ≥ αV (‖x− x∗‖) holds, then we get

V∞(f(x, µ∞(x))) ≤ V∞(x)− αV (‖x− x∗‖)

and if in addition α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) holds,then V∞ is a Lyapunov function

asymptotic stability

Lars Grune, Nonlinear Model Predictive Control, p. 28

Page 105: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Infinite horizon dynamic programming principleRecall the corollary from the finite horizon dynamicprogramming principle

VN(x) = `(x, µN(x)) + VN−1(f(x, µN(x)))

The corresponding result which can be proved for the infinitehorizon problem reads

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

if `(x, µ∞(x)) ≥ αV (‖x− x∗‖) holds, then we get

V∞(f(x, µ∞(x))) ≤ V∞(x)− αV (‖x− x∗‖)

and if in addition α1(‖x− x∗‖) ≤ V (x) ≤ α2(‖x− x∗‖) holds,then V∞ is a Lyapunov function asymptotic stability

Lars Grune, Nonlinear Model Predictive Control, p. 28

Page 106: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxing dynamic programmingUnfortunately, an equation of the type

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

cannot be expected if we replace “∞” by “N” everywhere

(in fact, it would imply VN = V∞)

However, we will see that we can establish relaxed versions ofthis inequality in which we

relax “=” to “≥”

relax `(x, µ(x)) to α`(x, µ(x)) for some α ∈ (0, 1]

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

“relaxed dynamic programming inequality” [Rantzer et al. ’06ff]

What can we conclude from this inequality?

Lars Grune, Nonlinear Model Predictive Control, p. 29

Page 107: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxing dynamic programmingUnfortunately, an equation of the type

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

cannot be expected if we replace “∞” by “N” everywhere(in fact, it would imply VN = V∞)

However, we will see that we can establish relaxed versions ofthis inequality in which we

relax “=” to “≥”

relax `(x, µ(x)) to α`(x, µ(x)) for some α ∈ (0, 1]

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

“relaxed dynamic programming inequality” [Rantzer et al. ’06ff]

What can we conclude from this inequality?

Lars Grune, Nonlinear Model Predictive Control, p. 29

Page 108: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxing dynamic programmingUnfortunately, an equation of the type

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

cannot be expected if we replace “∞” by “N” everywhere(in fact, it would imply VN = V∞)

However, we will see that we can establish relaxed versions ofthis inequality in which we

relax “=” to “≥”

relax `(x, µ(x)) to α`(x, µ(x)) for some α ∈ (0, 1]

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

“relaxed dynamic programming inequality” [Rantzer et al. ’06ff]

What can we conclude from this inequality?

Lars Grune, Nonlinear Model Predictive Control, p. 29

Page 109: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxing dynamic programmingUnfortunately, an equation of the type

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

cannot be expected if we replace “∞” by “N” everywhere(in fact, it would imply VN = V∞)

However, we will see that we can establish relaxed versions ofthis inequality in which we

relax “=” to “≥”

relax `(x, µ(x)) to α`(x, µ(x)) for some α ∈ (0, 1]

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

“relaxed dynamic programming inequality” [Rantzer et al. ’06ff]

What can we conclude from this inequality?

Lars Grune, Nonlinear Model Predictive Control, p. 29

Page 110: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxing dynamic programmingUnfortunately, an equation of the type

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

cannot be expected if we replace “∞” by “N” everywhere(in fact, it would imply VN = V∞)

However, we will see that we can establish relaxed versions ofthis inequality in which we

relax “=” to “≥”

relax `(x, µ(x)) to α`(x, µ(x)) for some α ∈ (0, 1]

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

“relaxed dynamic programming inequality” [Rantzer et al. ’06ff]

What can we conclude from this inequality?

Lars Grune, Nonlinear Model Predictive Control, p. 29

Page 111: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxing dynamic programmingUnfortunately, an equation of the type

V∞(x) = `(x, µ∞(x)) + V∞(f(x, µ∞(x)))

cannot be expected if we replace “∞” by “N” everywhere(in fact, it would imply VN = V∞)

However, we will see that we can establish relaxed versions ofthis inequality in which we

relax “=” to “≥”

relax `(x, µ(x)) to α`(x, µ(x)) for some α ∈ (0, 1]

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

“relaxed dynamic programming inequality” [Rantzer et al. ’06ff]

What can we conclude from this inequality?

Lars Grune, Nonlinear Model Predictive Control, p. 29

Page 112: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programmingWe define the infinite horizon performance of the MPC closedloop system x+ = f(x, µN(x)) as

J cl∞(x0, µN) =∞∑k=0

`(xµN(k), µN(xµN

(k))), xµN(0) = x0

Theorem: [Gr./Rantzer ’08, Gr./Pannek ’11] Let Y ⊆ X be aforward invariant set for the MPC closed loop and assume that

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

holds for all x ∈ Y and some N ∈ N and α ∈ (0, 1]

Then for all x ∈ Y the infinite horizon performance satisfies

J cl∞(x0, µN) ≤ VN(x0)/α

Lars Grune, Nonlinear Model Predictive Control, p. 30

Page 113: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programmingWe define the infinite horizon performance of the MPC closedloop system x+ = f(x, µN(x)) as

J cl∞(x0, µN) =∞∑k=0

`(xµN(k), µN(xµN

(k))), xµN(0) = x0

Theorem: [Gr./Rantzer ’08, Gr./Pannek ’11] Let Y ⊆ X be aforward invariant set for the MPC closed loop and assume that

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

holds for all x ∈ Y and some N ∈ N and α ∈ (0, 1]

Then for all x ∈ Y the infinite horizon performance satisfies

J cl∞(x0, µN) ≤ VN(x0)/α

Lars Grune, Nonlinear Model Predictive Control, p. 30

Page 114: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programmingWe define the infinite horizon performance of the MPC closedloop system x+ = f(x, µN(x)) as

J cl∞(x0, µN) =∞∑k=0

`(xµN(k), µN(xµN

(k))), xµN(0) = x0

Theorem: [Gr./Rantzer ’08, Gr./Pannek ’11] Let Y ⊆ X be aforward invariant set for the MPC closed loop and assume that

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

holds for all x ∈ Y and some N ∈ N and α ∈ (0, 1]

Then for all x ∈ Y the infinite horizon performance satisfies

J cl∞(x0, µN) ≤ VN(x0)/α

Lars Grune, Nonlinear Model Predictive Control, p. 30

Page 115: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programming

Theorem (continued): If, moreover, there exists α2, α3 ∈ K∞such that the inequalities

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

hold for all x ∈ Y , then the MPC closed loop is asymptoticallystable on Y with Lyapunov function VN .

Proof: The assumed inequalities immediately imply thatV = VN is a Lyapunov function for x+ = g(x) = f(x, µN(x))with

α1(r) = α3(r), αV (r) = αα3(r)

⇒ asymptotic stability

Lars Grune, Nonlinear Model Predictive Control, p. 31

Page 116: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programming

Theorem (continued): If, moreover, there exists α2, α3 ∈ K∞such that the inequalities

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

hold for all x ∈ Y , then the MPC closed loop is asymptoticallystable on Y with Lyapunov function VN .

Proof: The assumed inequalities immediately imply thatV = VN is a Lyapunov function for x+ = g(x) = f(x, µN(x))with

α1(r) = α3(r), αV (r) = αα3(r)

⇒ asymptotic stability

Lars Grune, Nonlinear Model Predictive Control, p. 31

Page 117: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programming

Theorem (continued): If, moreover, there exists α2, α3 ∈ K∞such that the inequalities

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

hold for all x ∈ Y , then the MPC closed loop is asymptoticallystable on Y with Lyapunov function VN .

Proof: The assumed inequalities immediately imply thatV = VN is a Lyapunov function for x+ = g(x) = f(x, µN(x))with

α1(r) = α3(r), αV (r) = αα3(r)

⇒ asymptotic stability

Lars Grune, Nonlinear Model Predictive Control, p. 31

Page 118: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programmingFor proving the performance estimate J cl∞(x0, µN) ≤ VN(x0)/α,the relaxed dynamic programming inequality implies

αK−1∑n=0

`(xµN(k), µN(xµN

(k)))

≤K−1∑n=0

(VN(xµN

(n))− VN(xµN(n+ 1))

)= VN(xµN

(0))− VN(xµN(K)) ≤ VN(xµN

(0))

Since all summands are ≥ 0, this implies that the limit forK →∞ exists and we get

αJ cl∞(x0, µN) = α

∞∑n=0

`(xµN(k), µN(xµN

(k))) ≤ VN(xµN(0))

⇒ assertion

Lars Grune, Nonlinear Model Predictive Control, p. 32

Page 119: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programmingFor proving the performance estimate J cl∞(x0, µN) ≤ VN(x0)/α,the relaxed dynamic programming inequality implies

αK−1∑n=0

`(xµN(k), µN(xµN

(k)))

≤K−1∑n=0

(VN(xµN

(n))− VN(xµN(n+ 1))

)= VN(xµN

(0))− VN(xµN(K)) ≤ VN(xµN

(0))

Since all summands are ≥ 0, this implies that the limit forK →∞ exists and we get

αJ cl∞(x0, µN) = α∞∑n=0

`(xµN(k), µN(xµN

(k))) ≤ VN(xµN(0))

⇒ assertion

Lars Grune, Nonlinear Model Predictive Control, p. 32

Page 120: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programmingFor proving the performance estimate J cl∞(x0, µN) ≤ VN(x0)/α,the relaxed dynamic programming inequality implies

αK−1∑n=0

`(xµN(k), µN(xµN

(k)))

≤K−1∑n=0

(VN(xµN

(n))− VN(xµN(n+ 1))

)= VN(xµN

(0))− VN(xµN(K)) ≤ VN(xµN

(0))

Since all summands are ≥ 0, this implies that the limit forK →∞ exists and we get

αJ cl∞(x0, µN) = α∞∑n=0

`(xµN(k), µN(xµN

(k))) ≤ VN(xµN(0))

⇒ assertionLars Grune, Nonlinear Model Predictive Control, p. 32

Page 121: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (2)

Lyapunov functions are our central tool for verifyingasymptotic stability

Dynamic programming provides us with equations whichwill be heavily used in the subsequent analysis

Infinite horizon optimal control would solve thestabilization problem — if we could compute the feedbacklaw µ∞

The performance of the MPC controller can be measuredby looking at the infinite horizon value along the MPCclosed loop trajectories

Relaxed dynamic programming gives us conditions underwhich both asymptotic stability and performance resultscan be derived

Lars Grune, Nonlinear Model Predictive Control, p. 33

Page 122: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (2)

Lyapunov functions are our central tool for verifyingasymptotic stability

Dynamic programming provides us with equations whichwill be heavily used in the subsequent analysis

Infinite horizon optimal control would solve thestabilization problem — if we could compute the feedbacklaw µ∞

The performance of the MPC controller can be measuredby looking at the infinite horizon value along the MPCclosed loop trajectories

Relaxed dynamic programming gives us conditions underwhich both asymptotic stability and performance resultscan be derived

Lars Grune, Nonlinear Model Predictive Control, p. 33

Page 123: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (2)

Lyapunov functions are our central tool for verifyingasymptotic stability

Dynamic programming provides us with equations whichwill be heavily used in the subsequent analysis

Infinite horizon optimal control would solve thestabilization problem — if we could compute the feedbacklaw µ∞

The performance of the MPC controller can be measuredby looking at the infinite horizon value along the MPCclosed loop trajectories

Relaxed dynamic programming gives us conditions underwhich both asymptotic stability and performance resultscan be derived

Lars Grune, Nonlinear Model Predictive Control, p. 33

Page 124: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (2)

Lyapunov functions are our central tool for verifyingasymptotic stability

Dynamic programming provides us with equations whichwill be heavily used in the subsequent analysis

Infinite horizon optimal control would solve thestabilization problem — if we could compute the feedbacklaw µ∞

The performance of the MPC controller can be measuredby looking at the infinite horizon value along the MPCclosed loop trajectories

Relaxed dynamic programming gives us conditions underwhich both asymptotic stability and performance resultscan be derived

Lars Grune, Nonlinear Model Predictive Control, p. 33

Page 125: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (2)

Lyapunov functions are our central tool for verifyingasymptotic stability

Dynamic programming provides us with equations whichwill be heavily used in the subsequent analysis

Infinite horizon optimal control would solve thestabilization problem — if we could compute the feedbacklaw µ∞

The performance of the MPC controller can be measuredby looking at the infinite horizon value along the MPCclosed loop trajectories

Relaxed dynamic programming gives us conditions underwhich both asymptotic stability and performance resultscan be derived

Lars Grune, Nonlinear Model Predictive Control, p. 33

Page 126: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Application of background resultsThe main task will be to verify the assumptions of the relaxeddynamic programming theorem, i.e.,

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

for some α ∈ (0, 1], and

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

for all x in a forward invariant set Y for x+ = f(x, µN(x))

To this end, we present two different approaches:

modify the optimal control problem in the MPC loop byadding terminal constraints and costs

derive assumptions on f and ` under which MPC workswithout terminal constraints and costs

Lars Grune, Nonlinear Model Predictive Control, p. 34

Page 127: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Application of background resultsThe main task will be to verify the assumptions of the relaxeddynamic programming theorem, i.e.,

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

for some α ∈ (0, 1], and

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

for all x in a forward invariant set Y for x+ = f(x, µN(x))

To this end, we present two different approaches:

modify the optimal control problem in the MPC loop byadding terminal constraints and costs

derive assumptions on f and ` under which MPC workswithout terminal constraints and costs

Lars Grune, Nonlinear Model Predictive Control, p. 34

Page 128: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Application of background resultsThe main task will be to verify the assumptions of the relaxeddynamic programming theorem, i.e.,

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

for some α ∈ (0, 1], and

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

for all x in a forward invariant set Y for x+ = f(x, µN(x))

To this end, we present two different approaches:

modify the optimal control problem in the MPC loop byadding terminal constraints and costs

derive assumptions on f and ` under which MPC workswithout terminal constraints and costs

Lars Grune, Nonlinear Model Predictive Control, p. 34

Page 129: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(3) Stability with stabilizing constraints

Page 130: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

VN as a Lyapunov FunctionProblem: Prove that the MPC feedback law µN is stabilizing

Approach: Verify the assumptions

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

for some α ∈ (0, 1], and

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

of the relaxed dynamic programming theorem for the optimalvalue function

VN(x0) := infu admissible

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

Lars Grune, Nonlinear Model Predictive Control, p. 36

Page 131: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

VN as a Lyapunov FunctionProblem: Prove that the MPC feedback law µN is stabilizing

Approach: Verify the assumptions

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

for some α ∈ (0, 1], and

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

of the relaxed dynamic programming theorem for the optimalvalue function

VN(x0) := infu admissible

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

Lars Grune, Nonlinear Model Predictive Control, p. 36

Page 132: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?

Let us first consider the inequality

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

The dynamic programming principle for VN yields

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we have VN−1 where we would like to have VN

we would get the desired inequality if we could ensure

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

(where “small” means that the error can be compensated replacing

`(x, µN (x)) by α`(x, µN (x)) with α ∈ (0, 1))

Lars Grune, Nonlinear Model Predictive Control, p. 37

Page 133: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?Let us first consider the inequality

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

The dynamic programming principle for VN yields

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we have VN−1 where we would like to have VN

we would get the desired inequality if we could ensure

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

(where “small” means that the error can be compensated replacing

`(x, µN (x)) by α`(x, µN (x)) with α ∈ (0, 1))

Lars Grune, Nonlinear Model Predictive Control, p. 37

Page 134: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?Let us first consider the inequality

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

The dynamic programming principle for VN yields

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we have VN−1 where we would like to have VN

we would get the desired inequality if we could ensure

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

(where “small” means that the error can be compensated replacing

`(x, µN (x)) by α`(x, µN (x)) with α ∈ (0, 1))

Lars Grune, Nonlinear Model Predictive Control, p. 37

Page 135: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?Let us first consider the inequality

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

The dynamic programming principle for VN yields

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we have VN−1 where we would like to have VN

we would get the desired inequality if we could ensure

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

(where “small” means that the error can be compensated replacing

`(x, µN (x)) by α`(x, µN (x)) with α ∈ (0, 1))

Lars Grune, Nonlinear Model Predictive Control, p. 37

Page 136: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?Let us first consider the inequality

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

The dynamic programming principle for VN yields

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we have VN−1 where we would like to have VN

we would get the desired inequality if we could ensure

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

(where “small” means that the error can be compensated replacing

`(x, µN (x)) by α`(x, µN (x)) with α ∈ (0, 1))

Lars Grune, Nonlinear Model Predictive Control, p. 37

Page 137: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?Let us first consider the inequality

VN(x) ≥ α`(x, µN(x)) + VN(f(x, µN(x)))

The dynamic programming principle for VN yields

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we have VN−1 where we would like to have VN

we would get the desired inequality if we could ensure

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

(where “small” means that the error can be compensated replacing

`(x, µN (x)) by α`(x, µN (x)) with α ∈ (0, 1))

Lars Grune, Nonlinear Model Predictive Control, p. 37

Page 138: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?

Task: Find conditions under which

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

holds

For

VN(x0) := infu admissible

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

this appeared to be out of reach until the mid 1990s

Note: VN−1 ≤ VN by definition; typically with strict “<”

additional stabilizing constraints were proposed

Lars Grune, Nonlinear Model Predictive Control, p. 38

Page 139: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?

Task: Find conditions under which

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

holds

For

VN(x0) := infu admissible

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

this appeared to be out of reach until the mid 1990s

Note: VN−1 ≤ VN by definition; typically with strict “<”

additional stabilizing constraints were proposed

Lars Grune, Nonlinear Model Predictive Control, p. 38

Page 140: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?

Task: Find conditions under which

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

holds

For

VN(x0) := infu admissible

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

this appeared to be out of reach until the mid 1990s

Note: VN−1 ≤ VN by definition; typically with strict “<”

additional stabilizing constraints were proposed

Lars Grune, Nonlinear Model Predictive Control, p. 38

Page 141: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Why is this difficult?

Task: Find conditions under which

VN−1(f(x, µN(x))) ≥ VN(f(x, µN(x))) + “small error”

holds

For

VN(x0) := infu admissible

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

this appeared to be out of reach until the mid 1990s

Note: VN−1 ≤ VN by definition; typically with strict “<”

additional stabilizing constraints were proposed

Lars Grune, Nonlinear Model Predictive Control, p. 38

Page 142: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(3a) Equilibrium terminal constraint (3a)

Page 143: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraintOptimal control problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

Assumption: f(x∗, 0) = x∗ and `(x∗, 0) = 0

Idea: add equilibrium terminal constraint

xu(N) = x∗

[Keerthi/Gilbert ’88, . . . ]

we now solve

minimizeu∈UN

x∗ (x0)JN(x0,u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

with UNx∗(x0) := u ∈ UN admissible and xu(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 40

Page 144: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraintOptimal control problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

Assumption: f(x∗, 0) = x∗ and `(x∗, 0) = 0

Idea: add equilibrium terminal constraint

xu(N) = x∗

[Keerthi/Gilbert ’88, . . . ]

we now solve

minimizeu∈UN

x∗ (x0)JN(x0,u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

with UNx∗(x0) := u ∈ UN admissible and xu(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 40

Page 145: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraintOptimal control problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

Assumption: f(x∗, 0) = x∗ and `(x∗, 0) = 0

Idea: add equilibrium terminal constraint

xu(N) = x∗

[Keerthi/Gilbert ’88, . . . ]

we now solve

minimizeu∈UN

x∗ (x0)JN(x0,u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

with UNx∗(x0) := u ∈ UN admissible and xu(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 40

Page 146: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraintOptimal control problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

Assumption: f(x∗, 0) = x∗ and `(x∗, 0) = 0

Idea: add equilibrium terminal constraint

xu(N) = x∗

[Keerthi/Gilbert ’88, . . . ]

we now solve

minimizeu∈UN

x∗ (x0)JN(x0,u) =

N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

with UNx∗(x0) := u ∈ UN admissible and xu(N) = x∗Lars Grune, Nonlinear Model Predictive Control, p. 40

Page 147: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

x∗ (x0)

⇒ xu(N − 1) = x∗

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 20, k = N − 1

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x∗, 0) = x∗

⇒ uN ∈ UNx∗(x0)

every u ∈ UN−1x∗ (x0) can be prolonged to an uN ∈ UNx∗(x0)

Moreover, since

`(xuN(N − 1),uN(N − 1)) = `(x∗, 0) = 0,

the prolongation has zero stage cost

Lars Grune, Nonlinear Model Predictive Control, p. 41

Page 148: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

x∗ (x0) ⇒ xu(N − 1) = x∗

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 20, k = N − 1

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x∗, 0) = x∗

⇒ uN ∈ UNx∗(x0)

every u ∈ UN−1x∗ (x0) can be prolonged to an uN ∈ UNx∗(x0)

Moreover, since

`(xuN(N − 1),uN(N − 1)) = `(x∗, 0) = 0,

the prolongation has zero stage cost

Lars Grune, Nonlinear Model Predictive Control, p. 41

Page 149: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

x∗ (x0) ⇒ xu(N − 1) = x∗

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 20, k = N − 1

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x∗, 0) = x∗

⇒ uN ∈ UNx∗(x0)

every u ∈ UN−1x∗ (x0) can be prolonged to an uN ∈ UNx∗(x0)

Moreover, since

`(xuN(N − 1),uN(N − 1)) = `(x∗, 0) = 0,

the prolongation has zero stage cost

Lars Grune, Nonlinear Model Predictive Control, p. 41

Page 150: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

x∗ (x0) ⇒ xu(N − 1) = x∗

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 20, k = N − 1

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x∗, 0) = x∗

⇒ uN ∈ UNx∗(x0)

every u ∈ UN−1x∗ (x0) can be prolonged to an uN ∈ UNx∗(x0)

Moreover, since

`(xuN(N − 1),uN(N − 1)) = `(x∗, 0) = 0,

the prolongation has zero stage cost

Lars Grune, Nonlinear Model Predictive Control, p. 41

Page 151: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

x∗ (x0) ⇒ xu(N − 1) = x∗

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 20, k = N − 1

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x∗, 0) = x∗

⇒ uN ∈ UNx∗(x0)

every u ∈ UN−1x∗ (x0) can be prolonged to an uN ∈ UNx∗(x0)

Moreover, since

`(xuN(N − 1),uN(N − 1)) = `(x∗, 0) = 0,

the prolongation has zero stage cost

Lars Grune, Nonlinear Model Predictive Control, p. 41

Page 152: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

x∗ (x0) ⇒ xu(N − 1) = x∗

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 20, k = N − 1

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x∗, 0) = x∗

⇒ uN ∈ UNx∗(x0)

every u ∈ UN−1x∗ (x0) can be prolonged to an uN ∈ UNx∗(x0)

Moreover, since

`(xuN(N − 1),uN(N − 1)) = `(x∗, 0) = 0,

the prolongation has zero stage cost

Lars Grune, Nonlinear Model Predictive Control, p. 41

Page 153: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

x∗ (x0) ⇒ xu(N − 1) = x∗

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 20, k = N − 1

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x∗, 0) = x∗

⇒ uN ∈ UNx∗(x0)

every u ∈ UN−1x∗ (x0) can be prolonged to an uN ∈ UNx∗(x0)

Moreover, since

`(xuN(N − 1),uN(N − 1)) = `(x∗, 0) = 0,

the prolongation has zero stage cost

Lars Grune, Nonlinear Model Predictive Control, p. 41

Page 154: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 155: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 156: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?)

=N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 157: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 158: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 159: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k))

= JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 160: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u)

≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 161: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 162: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 163: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains valid

Lars Grune, Nonlinear Model Predictive Control, p. 42

Page 164: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNNow, let u? ∈ UN−1

x∗ (x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNx∗(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?) =

N−2∑k=0

`(xu?(k), u?(k))

=N−2∑n=0

`(xu(k),u(k)) + `(xu(N − 1),u(N − 1))︸ ︷︷ ︸=0

=N−1∑n=0

`(xu(k),u(k)) = JN(x0,u) ≥ VN(x0)

The inequality VN−1 ≤ VN is reversed to VN−1 ≥ VN

Note: VN−1 ≤ VN does no longer hold now

But: the dynamic programming principle remains validLars Grune, Nonlinear Model Predictive Control, p. 42

Page 165: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programming inequalityFrom the reversed inequality

VN−1(x) ≥ VN(x)

and the dynamic programming principle

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we immediately get

VN(x) ≥ `(x, µN(x)) + VN(f(x, µN(x)))

This is exactly the desired relaxed dynamic programminginequality, even with α = 1, since no “small error” occurs

stability follows if we can ensure the additional inequalities

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

Lars Grune, Nonlinear Model Predictive Control, p. 43

Page 166: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programming inequalityFrom the reversed inequality

VN−1(x) ≥ VN(x)

and the dynamic programming principle

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we immediately get

VN(x) ≥ `(x, µN(x)) + VN(f(x, µN(x)))

This is exactly the desired relaxed dynamic programminginequality, even with α = 1, since no “small error” occurs

stability follows if we can ensure the additional inequalities

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

Lars Grune, Nonlinear Model Predictive Control, p. 43

Page 167: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Relaxed dynamic programming inequalityFrom the reversed inequality

VN−1(x) ≥ VN(x)

and the dynamic programming principle

VN(x) ≥ `(x, µN(x)) + VN−1(f(x, µN(x)))

we immediately get

VN(x) ≥ `(x, µN(x)) + VN(f(x, µN(x)))

This is exactly the desired relaxed dynamic programminginequality, even with α = 1, since no “small error” occurs

stability follows if we can ensure the additional inequalities

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

Lars Grune, Nonlinear Model Predictive Control, p. 43

Page 168: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy

,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 169: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 170: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 171: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible

, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 172: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 173: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 174: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 175: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 176: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible setsThe inequality infu∈U `(x, u) ≥ α3(‖x− x∗‖) is easy to satisfy,e.g., `(x, u) = ‖x− x∗‖2 + λ‖u‖2 will work (with α3(r) = r2)

What about VN(x) ≤ α2(‖x− x∗‖) ?

Recall: by definition VN(x) =∞ if x is not feasible, i.e., ifthere is no u ∈ UNx∗(x)

define the feasible set XN := x ∈ X |UNx∗(x) 6= ∅

For x 6∈ XN the inequality VN(x) ≤ α2(‖x− x∗‖) cannot hold

But: for all x ∈ XN we can ensure this inequality under rathermild conditions (details can be given if desired)

the feasible set XN is the “natural” operating region ofMPC with equilbrium terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 44

Page 177: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with equilibrium terminalconstraint xu(N) = x∗ where x∗ satisfies f(x∗, u) = x∗ and`(x∗, 0) = 0.

Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Note: The constraint xu(N) = x∗ does not imply xµN(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 45

Page 178: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with equilibrium terminalconstraint xu(N) = x∗ where x∗ satisfies f(x∗, u) = x∗ and`(x∗, 0) = 0. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Note: The constraint xu(N) = x∗ does not imply xµN(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 45

Page 179: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with equilibrium terminalconstraint xu(N) = x∗ where x∗ satisfies f(x∗, u) = x∗ and`(x∗, 0) = 0. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant

, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Note: The constraint xu(N) = x∗ does not imply xµN(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 45

Page 180: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with equilibrium terminalconstraint xu(N) = x∗ where x∗ satisfies f(x∗, u) = x∗ and`(x∗, 0) = 0. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN

and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Note: The constraint xu(N) = x∗ does not imply xµN(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 45

Page 181: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with equilibrium terminalconstraint xu(N) = x∗ where x∗ satisfies f(x∗, u) = x∗ and`(x∗, 0) = 0. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Note: The constraint xu(N) = x∗ does not imply xµN(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 45

Page 182: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with equilibrium terminalconstraint xu(N) = x∗ where x∗ satisfies f(x∗, u) = x∗ and`(x∗, 0) = 0. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Note: The constraint xu(N) = x∗ does not imply xµN(N) = x∗

Lars Grune, Nonlinear Model Predictive Control, p. 45

Page 183: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem — sketch of proof

Sketch of proof: All assertions follow from the relaxed dynamicprogramming theorem if we prove forward invariance of XN forthe MPC closed loop system x+ = f(x, µN(x))

we need to prove x ∈ XN ⇒ x+ ∈ XN

(1) The prolongation property implies XN−1 ⊆ XN(2) For x ∈ XN , the definition µN(x) := u?(0) implies

x+ = f(x, µN(x)) = f(x, u?(0)) = x?(1)

and since x?(N) = x∗, the sequence (x?(1), . . . , x?(N − 1))is an admissible trajectory of length N − 1 from x?(1) = x+ tox?(N − 1) = x∗

(3) This implies x+ ∈ XN−1 ⊆ XN

Lars Grune, Nonlinear Model Predictive Control, p. 46

Page 184: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem — sketch of proof

Sketch of proof: All assertions follow from the relaxed dynamicprogramming theorem if we prove forward invariance of XN forthe MPC closed loop system x+ = f(x, µN(x))

we need to prove x ∈ XN ⇒ x+ ∈ XN

(1) The prolongation property implies XN−1 ⊆ XN(2) For x ∈ XN , the definition µN(x) := u?(0) implies

x+ = f(x, µN(x)) = f(x, u?(0)) = x?(1)

and since x?(N) = x∗, the sequence (x?(1), . . . , x?(N − 1))is an admissible trajectory of length N − 1 from x?(1) = x+ tox?(N − 1) = x∗

(3) This implies x+ ∈ XN−1 ⊆ XN

Lars Grune, Nonlinear Model Predictive Control, p. 46

Page 185: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem — sketch of proof

Sketch of proof: All assertions follow from the relaxed dynamicprogramming theorem if we prove forward invariance of XN forthe MPC closed loop system x+ = f(x, µN(x))

we need to prove x ∈ XN ⇒ x+ ∈ XN

(1) The prolongation property implies XN−1 ⊆ XN

(2) For x ∈ XN , the definition µN(x) := u?(0) implies

x+ = f(x, µN(x)) = f(x, u?(0)) = x?(1)

and since x?(N) = x∗, the sequence (x?(1), . . . , x?(N − 1))is an admissible trajectory of length N − 1 from x?(1) = x+ tox?(N − 1) = x∗

(3) This implies x+ ∈ XN−1 ⊆ XN

Lars Grune, Nonlinear Model Predictive Control, p. 46

Page 186: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem — sketch of proof

Sketch of proof: All assertions follow from the relaxed dynamicprogramming theorem if we prove forward invariance of XN forthe MPC closed loop system x+ = f(x, µN(x))

we need to prove x ∈ XN ⇒ x+ ∈ XN

(1) The prolongation property implies XN−1 ⊆ XN(2) For x ∈ XN , the definition µN(x) := u?(0) implies

x+ = f(x, µN(x)) = f(x, u?(0)) = x?(1)

and since x?(N) = x∗, the sequence (x?(1), . . . , x?(N − 1))is an admissible trajectory of length N − 1 from x?(1) = x+ tox?(N − 1) = x∗

(3) This implies x+ ∈ XN−1 ⊆ XN

Lars Grune, Nonlinear Model Predictive Control, p. 46

Page 187: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem — sketch of proof

Sketch of proof: All assertions follow from the relaxed dynamicprogramming theorem if we prove forward invariance of XN forthe MPC closed loop system x+ = f(x, µN(x))

we need to prove x ∈ XN ⇒ x+ ∈ XN

(1) The prolongation property implies XN−1 ⊆ XN(2) For x ∈ XN , the definition µN(x) := u?(0) implies

x+ = f(x, µN(x)) = f(x, u?(0)) = x?(1)

and since x?(N) = x∗, the sequence (x?(1), . . . , x?(N − 1))is an admissible trajectory of length N − 1 from x?(1) = x+ tox?(N − 1) = x∗

(3) This implies x+ ∈ XN−1

⊆ XN

Lars Grune, Nonlinear Model Predictive Control, p. 46

Page 188: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theorem — sketch of proof

Sketch of proof: All assertions follow from the relaxed dynamicprogramming theorem if we prove forward invariance of XN forthe MPC closed loop system x+ = f(x, µN(x))

we need to prove x ∈ XN ⇒ x+ ∈ XN

(1) The prolongation property implies XN−1 ⊆ XN(2) For x ∈ XN , the definition µN(x) := u?(0) implies

x+ = f(x, µN(x)) = f(x, u?(0)) = x?(1)

and since x?(N) = x∗, the sequence (x?(1), . . . , x?(N − 1))is an admissible trajectory of length N − 1 from x?(1) = x+ tox?(N − 1) = x∗

(3) This implies x+ ∈ XN−1 ⊆ XN

Lars Grune, Nonlinear Model Predictive Control, p. 46

Page 189: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraint — Discussion

The additional condition

x(N) = x∗

ensures asymptotic stability in a rigorously provable way

, but

online optimization may become harder

if we want a large feasible set XN we typically need alarge optimization horizon N

(see the car-and-mountains example)

system needs to be controllable to x∗ in finite time

not very often used in industrial practice

Lars Grune, Nonlinear Model Predictive Control, p. 47

Page 190: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraint — Discussion

The additional condition

x(N) = x∗

ensures asymptotic stability in a rigorously provable way, but

online optimization may become harder

if we want a large feasible set XN we typically need alarge optimization horizon N

(see the car-and-mountains example)

system needs to be controllable to x∗ in finite time

not very often used in industrial practice

Lars Grune, Nonlinear Model Predictive Control, p. 47

Page 191: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraint — Discussion

The additional condition

x(N) = x∗

ensures asymptotic stability in a rigorously provable way, but

online optimization may become harder

if we want a large feasible set XN we typically need alarge optimization horizon N

(see the car-and-mountains example)

system needs to be controllable to x∗ in finite time

not very often used in industrial practice

Lars Grune, Nonlinear Model Predictive Control, p. 47

Page 192: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraint — Discussion

The additional condition

x(N) = x∗

ensures asymptotic stability in a rigorously provable way, but

online optimization may become harder

if we want a large feasible set XN we typically need alarge optimization horizon N(see the car-and-mountains example)

system needs to be controllable to x∗ in finite time

not very often used in industrial practice

Lars Grune, Nonlinear Model Predictive Control, p. 47

Page 193: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraint — Discussion

The additional condition

x(N) = x∗

ensures asymptotic stability in a rigorously provable way, but

online optimization may become harder

if we want a large feasible set XN we typically need alarge optimization horizon N(see the car-and-mountains example)

system needs to be controllable to x∗ in finite time

not very often used in industrial practice

Lars Grune, Nonlinear Model Predictive Control, p. 47

Page 194: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Equilibrium terminal constraint — Discussion

The additional condition

x(N) = x∗

ensures asymptotic stability in a rigorously provable way, but

online optimization may become harder

if we want a large feasible set XN we typically need alarge optimization horizon N(see the car-and-mountains example)

system needs to be controllable to x∗ in finite time

not very often used in industrial practice

Lars Grune, Nonlinear Model Predictive Control, p. 47

Page 195: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(3b) Regional terminal constraint

and terminal cost

Page 196: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal costOptimal control problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

We want VN to become a Lyapunov function

Idea: add local Lyapunov function F : X0 → R+0 as terminal cost

JN(x0, u) =N−1∑k=0

`(xu(k),u(k)) + F (xu(N))

F is defined on a region X0 around x∗ which is imposed asterminal constraint x(N) ∈ XN

[Chen & Allgower ’98, Jadbabaie et al. ’98 . . . ]

Lars Grune, Nonlinear Model Predictive Control, p. 49

Page 197: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal costOptimal control problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

We want VN to become a Lyapunov function

Idea: add local Lyapunov function F : X0 → R+0 as terminal cost

JN(x0, u) =N−1∑k=0

`(xu(k),u(k)) + F (xu(N))

F is defined on a region X0 around x∗ which is imposed asterminal constraint x(N) ∈ XN

[Chen & Allgower ’98, Jadbabaie et al. ’98 . . . ]

Lars Grune, Nonlinear Model Predictive Control, p. 49

Page 198: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal costOptimal control problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

We want VN to become a Lyapunov function

Idea: add local Lyapunov function F : X0 → R+0 as terminal cost

JN(x0, u) =N−1∑k=0

`(xu(k),u(k)) + F (xu(N))

F is defined on a region X0 around x∗ which is imposed asterminal constraint x(N) ∈ XN

[Chen & Allgower ’98, Jadbabaie et al. ’98 . . . ]

Lars Grune, Nonlinear Model Predictive Control, p. 49

Page 199: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal costOptimal control problem

minimizeu admissible

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0

We want VN to become a Lyapunov function

Idea: add local Lyapunov function F : X0 → R+0 as terminal cost

JN(x0, u) =N−1∑k=0

`(xu(k),u(k)) + F (xu(N))

F is defined on a region X0 around x∗ which is imposed asterminal constraint x(N) ∈ XN

[Chen & Allgower ’98, Jadbabaie et al. ’98 . . . ]

Lars Grune, Nonlinear Model Predictive Control, p. 49

Page 200: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost

We thus change the optimal control problem to

minimizeu∈UN

X0(x0)

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)) + F (xu(N))

with

UNX0(x0) := u ∈ UN admissible and xu(N) ∈ X0

Which properties do we need for F and X0 in order to makethis work?

Lars Grune, Nonlinear Model Predictive Control, p. 50

Page 201: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost

We thus change the optimal control problem to

minimizeu∈UN

X0(x0)

JN(x0,u) =N−1∑k=0

`(xu(k),u(k)) + F (xu(N))

with

UNX0(x0) := u ∈ UN admissible and xu(N) ∈ X0

Which properties do we need for F and X0 in order to makethis work?

Lars Grune, Nonlinear Model Predictive Control, p. 50

Page 202: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal costAssumptions on F : X0 → R+

0 and X0

There exists a controller κ : X0 → U with the followingproperties:

(i) X0 is forward invariant for x+ = f(x, κ(x)):

for each x ∈ X0 we have f(x, κ(x)) ∈ X0

(ii) F is a Lyapunov function for x+ = f(x, κ(x)) on X0

which is compatible with the stage cost ` in the followingsense:

for each x ∈ X0 the inequality

F (f(x, κ(x))) ≤ F (x)− `(x, κ(x))

holds

Lars Grune, Nonlinear Model Predictive Control, p. 51

Page 203: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal costAssumptions on F : X0 → R+

0 and X0

There exists a controller κ : X0 → U with the followingproperties:

(i) X0 is forward invariant for x+ = f(x, κ(x)):

for each x ∈ X0 we have f(x, κ(x)) ∈ X0

(ii) F is a Lyapunov function for x+ = f(x, κ(x)) on X0

which is compatible with the stage cost ` in the followingsense:

for each x ∈ X0 the inequality

F (f(x, κ(x))) ≤ F (x)− `(x, κ(x))

holds

Lars Grune, Nonlinear Model Predictive Control, p. 51

Page 204: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal costAssumptions on F : X0 → R+

0 and X0

There exists a controller κ : X0 → U with the followingproperties:

(i) X0 is forward invariant for x+ = f(x, κ(x)):

for each x ∈ X0 we have f(x, κ(x)) ∈ X0

(ii) F is a Lyapunov function for x+ = f(x, κ(x)) on X0

which is compatible with the stage cost ` in the followingsense:

for each x ∈ X0 the inequality

F (f(x, κ(x))) ≤ F (x)− `(x, κ(x))

holds

Lars Grune, Nonlinear Model Predictive Control, p. 51

Page 205: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal costAssumptions on F : X0 → R+

0 and X0

There exists a controller κ : X0 → U with the followingproperties:

(i) X0 is forward invariant for x+ = f(x, κ(x)):

for each x ∈ X0 we have f(x, κ(x)) ∈ X0

(ii) F is a Lyapunov function for x+ = f(x, κ(x)) on X0

which is compatible with the stage cost ` in the followingsense:

for each x ∈ X0 the inequality

F (f(x, κ(x))) ≤ F (x)− `(x, κ(x))

holds

Lars Grune, Nonlinear Model Predictive Control, p. 51

Page 206: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

X0(x0)

⇒ x := xu(N − 1) ∈ X0

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 2κ(x), k = N − 1

with κ from (i)

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x, κ(x)) ∈ X0

⇒ u ∈ UNX0(x0)

every u ∈ UN−1X0

(x0) can be prolonged to an u ∈ UNX0(x0)

By (ii) the stage cost of the prolongation is bounded by

`(xu(N − 1),u(N − 1)) ≤ F (xu(N − 1))− F (xu(N))

Lars Grune, Nonlinear Model Predictive Control, p. 52

Page 207: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

X0(x0) ⇒ x := xu(N − 1) ∈ X0

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 2κ(x), k = N − 1

with κ from (i)

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x, κ(x)) ∈ X0

⇒ u ∈ UNX0(x0)

every u ∈ UN−1X0

(x0) can be prolonged to an u ∈ UNX0(x0)

By (ii) the stage cost of the prolongation is bounded by

`(xu(N − 1),u(N − 1)) ≤ F (xu(N − 1))− F (xu(N))

Lars Grune, Nonlinear Model Predictive Control, p. 52

Page 208: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

X0(x0) ⇒ x := xu(N − 1) ∈ X0

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 2κ(x), k = N − 1

with κ from (i)

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x, κ(x)) ∈ X0

⇒ u ∈ UNX0(x0)

every u ∈ UN−1X0

(x0) can be prolonged to an u ∈ UNX0(x0)

By (ii) the stage cost of the prolongation is bounded by

`(xu(N − 1),u(N − 1)) ≤ F (xu(N − 1))− F (xu(N))

Lars Grune, Nonlinear Model Predictive Control, p. 52

Page 209: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

X0(x0) ⇒ x := xu(N − 1) ∈ X0

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 2κ(x), k = N − 1

with κ from (i)

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x, κ(x)) ∈ X0

⇒ u ∈ UNX0(x0)

every u ∈ UN−1X0

(x0) can be prolonged to an u ∈ UNX0(x0)

By (ii) the stage cost of the prolongation is bounded by

`(xu(N − 1),u(N − 1)) ≤ F (xu(N − 1))− F (xu(N))

Lars Grune, Nonlinear Model Predictive Control, p. 52

Page 210: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

X0(x0) ⇒ x := xu(N − 1) ∈ X0

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 2κ(x), k = N − 1

with κ from (i)

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x, κ(x)) ∈ X0

⇒ u ∈ UNX0(x0)

every u ∈ UN−1X0

(x0) can be prolonged to an u ∈ UNX0(x0)

By (ii) the stage cost of the prolongation is bounded by

`(xu(N − 1),u(N − 1)) ≤ F (xu(N − 1))− F (xu(N))

Lars Grune, Nonlinear Model Predictive Control, p. 52

Page 211: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

X0(x0) ⇒ x := xu(N − 1) ∈ X0

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 2κ(x), k = N − 1

with κ from (i)

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x, κ(x)) ∈ X0

⇒ u ∈ UNX0(x0)

every u ∈ UN−1X0

(x0) can be prolonged to an u ∈ UNX0(x0)

By (ii) the stage cost of the prolongation is bounded by

`(xu(N − 1),u(N − 1)) ≤ F (xu(N − 1))− F (xu(N))

Lars Grune, Nonlinear Model Predictive Control, p. 52

Page 212: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Prolongation of control sequencesLet u ∈ UN−1

X0(x0) ⇒ x := xu(N − 1) ∈ X0

Define u ∈ UN as u(k) :=

u(k), k = 0, . . . , N − 2κ(x), k = N − 1

with κ from (i)

⇒ xu(N) = f(xu(N − 1),u(N − 1)) = f(x, κ(x)) ∈ X0

⇒ u ∈ UNX0(x0)

every u ∈ UN−1X0

(x0) can be prolonged to an u ∈ UNX0(x0)

By (ii) the stage cost of the prolongation is bounded by

`(xu(N − 1),u(N − 1)) ≤ F (xu(N − 1))− F (xu(N))

Lars Grune, Nonlinear Model Predictive Control, p. 52

Page 213: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNLet u? ∈ UN−1

X0(x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNX0(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?)

=N−2∑k=0

`(xu?(k), u?(k)) + F (xu?(N − 1))

≥N−1∑n=0

`(xu(k),u(k)) + F (xu(N))

= JN(x0,u) ≥ VN(x0)

again we get VN−1 ≥ VN

Lars Grune, Nonlinear Model Predictive Control, p. 53

Page 214: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNLet u? ∈ UN−1

X0(x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNX0(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?)

=N−2∑k=0

`(xu?(k), u?(k)) + F (xu?(N − 1))

≥N−1∑n=0

`(xu(k),u(k)) + F (xu(N))

= JN(x0,u) ≥ VN(x0)

again we get VN−1 ≥ VN

Lars Grune, Nonlinear Model Predictive Control, p. 53

Page 215: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNLet u? ∈ UN−1

X0(x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNX0(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?)

=N−2∑k=0

`(xu?(k), u?(k)) + F (xu?(N − 1))︸ ︷︷ ︸≥`(xu(N−1),u(N−1))+F (xu(N))

≥N−1∑n=0

`(xu(k),u(k)) + F (xu(N))

= JN(x0,u) ≥ VN(x0)

again we get VN−1 ≥ VN

Lars Grune, Nonlinear Model Predictive Control, p. 53

Page 216: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNLet u? ∈ UN−1

X0(x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNX0(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?)

=N−2∑k=0

`(xu?(k), u?(k)) + F (xu?(N − 1))︸ ︷︷ ︸≥`(xu(N−1),u(N−1))+F (xu(N))

≥N−1∑n=0

`(xu(k),u(k)) + F (xu(N))

= JN(x0,u) ≥ VN(x0)

again we get VN−1 ≥ VN

Lars Grune, Nonlinear Model Predictive Control, p. 53

Page 217: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNLet u? ∈ UN−1

X0(x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNX0(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?)

=N−2∑k=0

`(xu?(k), u?(k)) + F (xu?(N − 1))︸ ︷︷ ︸≥`(xu(N−1),u(N−1))+F (xu(N))

≥N−1∑n=0

`(xu(k),u(k)) + F (xu(N))

= JN(x0,u) ≥ VN(x0)

again we get VN−1 ≥ VN

Lars Grune, Nonlinear Model Predictive Control, p. 53

Page 218: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Reversal of VN−1 ≤ VNLet u? ∈ UN−1

X0(x0) be the optimal control for JN−1, i.e.,

VN−1(x0) = JN−1(x0, u?)

Denote by u ∈ UNX0(x0) its prolongation

⇒ VN−1(x0) = JN−1(x0, u?)

=N−2∑k=0

`(xu?(k), u?(k)) + F (xu?(N − 1))︸ ︷︷ ︸≥`(xu(N−1),u(N−1))+F (xu(N))

≥N−1∑n=0

`(xu(k),u(k)) + F (xu(N))

= JN(x0,u) ≥ VN(x0)

again we get VN−1 ≥ VN

Lars Grune, Nonlinear Model Predictive Control, p. 53

Page 219: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible sets

Define the feasible set

XN := x ∈ X |UNX0(x) 6= ∅

Like in the equilibrium constrained case, on XN one canensure the inequality

VN(x) ≤ α2(‖x− x∗‖)

for some α2 ∈ K∞ under mild conditions, while outside XN weget VN(x) =∞

Lars Grune, Nonlinear Model Predictive Control, p. 54

Page 220: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible sets

Define the feasible set

XN := x ∈ X |UNX0(x) 6= ∅

Like in the equilibrium constrained case, on XN one canensure the inequality

VN(x) ≤ α2(‖x− x∗‖)

for some α2 ∈ K∞ under mild conditions

, while outside XN weget VN(x) =∞

Lars Grune, Nonlinear Model Predictive Control, p. 54

Page 221: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible sets

Define the feasible set

XN := x ∈ X |UNX0(x) 6= ∅

Like in the equilibrium constrained case, on XN one canensure the inequality

VN(x) ≤ α2(‖x− x∗‖)

for some α2 ∈ K∞ under mild conditions, while outside XN weget VN(x) =∞

Lars Grune, Nonlinear Model Predictive Control, p. 54

Page 222: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with regional terminalconstraint xu(N) ∈ X0 and Lyapunov function terminal costF compatible with `.

Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Proof: Almost identical to the equilibrium constrained case

Lars Grune, Nonlinear Model Predictive Control, p. 55

Page 223: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with regional terminalconstraint xu(N) ∈ X0 and Lyapunov function terminal costF compatible with `. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Proof: Almost identical to the equilibrium constrained case

Lars Grune, Nonlinear Model Predictive Control, p. 55

Page 224: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with regional terminalconstraint xu(N) ∈ X0 and Lyapunov function terminal costF compatible with `. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant

, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Proof: Almost identical to the equilibrium constrained case

Lars Grune, Nonlinear Model Predictive Control, p. 55

Page 225: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with regional terminalconstraint xu(N) ∈ X0 and Lyapunov function terminal costF compatible with `. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN

and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Proof: Almost identical to the equilibrium constrained case

Lars Grune, Nonlinear Model Predictive Control, p. 55

Page 226: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with regional terminalconstraint xu(N) ∈ X0 and Lyapunov function terminal costF compatible with `. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Proof: Almost identical to the equilibrium constrained case

Lars Grune, Nonlinear Model Predictive Control, p. 55

Page 227: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability theoremTheorem: Consider the MPC scheme with regional terminalconstraint xu(N) ∈ X0 and Lyapunov function terminal costF compatible with `. Assume that

VN(x) ≤ α2(‖x− x∗‖), infu∈U

`(x, u) ≥ α3(‖x− x∗‖)

holds for all x ∈ XN .

Then XN is forward invariant, the MPC closed loop isasymptotically stable on XN and the performance estimate

J cl∞(x, µN) ≤ VN(x)

holds.

Proof: Almost identical to the equilibrium constrained case

Lars Grune, Nonlinear Model Predictive Control, p. 55

Page 228: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost —

DiscussionCompared to the equilibrium constraint, the regionalconstraint

yields easier online optimization problems

yields larger feasible sets

does not need exact controllability to x∗

But:

large feasible set still needs a large optimization horizon N(see again the car-and-mountains example)

additional analytical effort for computing F

hardly ever used in industrial practice

In Section (5) we will see how stability can be proved withoutstabilizing terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 56

Page 229: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost —

DiscussionCompared to the equilibrium constraint, the regionalconstraint

yields easier online optimization problems

yields larger feasible sets

does not need exact controllability to x∗

But:

large feasible set still needs a large optimization horizon N(see again the car-and-mountains example)

additional analytical effort for computing F

hardly ever used in industrial practice

In Section (5) we will see how stability can be proved withoutstabilizing terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 56

Page 230: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost —

DiscussionCompared to the equilibrium constraint, the regionalconstraint

yields easier online optimization problems

yields larger feasible sets

does not need exact controllability to x∗

But:

large feasible set still needs a large optimization horizon N(see again the car-and-mountains example)

additional analytical effort for computing F

hardly ever used in industrial practice

In Section (5) we will see how stability can be proved withoutstabilizing terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 56

Page 231: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost —

DiscussionCompared to the equilibrium constraint, the regionalconstraint

yields easier online optimization problems

yields larger feasible sets

does not need exact controllability to x∗

But:

large feasible set still needs a large optimization horizon N

(see again the car-and-mountains example)

additional analytical effort for computing F

hardly ever used in industrial practice

In Section (5) we will see how stability can be proved withoutstabilizing terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 56

Page 232: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost —

DiscussionCompared to the equilibrium constraint, the regionalconstraint

yields easier online optimization problems

yields larger feasible sets

does not need exact controllability to x∗

But:

large feasible set still needs a large optimization horizon N(see again the car-and-mountains example)

additional analytical effort for computing F

hardly ever used in industrial practice

In Section (5) we will see how stability can be proved withoutstabilizing terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 56

Page 233: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost —

DiscussionCompared to the equilibrium constraint, the regionalconstraint

yields easier online optimization problems

yields larger feasible sets

does not need exact controllability to x∗

But:

large feasible set still needs a large optimization horizon N(see again the car-and-mountains example)

additional analytical effort for computing F

hardly ever used in industrial practice

In Section (5) we will see how stability can be proved withoutstabilizing terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 56

Page 234: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost —

DiscussionCompared to the equilibrium constraint, the regionalconstraint

yields easier online optimization problems

yields larger feasible sets

does not need exact controllability to x∗

But:

large feasible set still needs a large optimization horizon N(see again the car-and-mountains example)

additional analytical effort for computing F

hardly ever used in industrial practice

In Section (5) we will see how stability can be proved withoutstabilizing terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 56

Page 235: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Regional constraint and terminal cost —

DiscussionCompared to the equilibrium constraint, the regionalconstraint

yields easier online optimization problems

yields larger feasible sets

does not need exact controllability to x∗

But:

large feasible set still needs a large optimization horizon N(see again the car-and-mountains example)

additional analytical effort for computing F

hardly ever used in industrial practice

In Section (5) we will see how stability can be proved withoutstabilizing terminal constraints

Lars Grune, Nonlinear Model Predictive Control, p. 56

Page 236: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (3)

terminal constraints yield that the usual inequalityVN−1 ≤ VN is reversed to VN−1 ≥ VN

this enables us to derive therelaxed dynamic programming inequality (with α = 1)from the dynamic programming principle

equilibrium constraints demand more properties of thesystem than regional constraints but do not require aLyapunov function terminal cost

in both cases, the operating region is restricted to thefeasible set XN

Lars Grune, Nonlinear Model Predictive Control, p. 57

Page 237: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (3)

terminal constraints yield that the usual inequalityVN−1 ≤ VN is reversed to VN−1 ≥ VN

this enables us to derive therelaxed dynamic programming inequality (with α = 1)from the dynamic programming principle

equilibrium constraints demand more properties of thesystem than regional constraints but do not require aLyapunov function terminal cost

in both cases, the operating region is restricted to thefeasible set XN

Lars Grune, Nonlinear Model Predictive Control, p. 57

Page 238: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (3)

terminal constraints yield that the usual inequalityVN−1 ≤ VN is reversed to VN−1 ≥ VN

this enables us to derive therelaxed dynamic programming inequality (with α = 1)from the dynamic programming principle

equilibrium constraints demand more properties of thesystem than regional constraints but do not require aLyapunov function terminal cost

in both cases, the operating region is restricted to thefeasible set XN

Lars Grune, Nonlinear Model Predictive Control, p. 57

Page 239: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (3)

terminal constraints yield that the usual inequalityVN−1 ≤ VN is reversed to VN−1 ≥ VN

this enables us to derive therelaxed dynamic programming inequality (with α = 1)from the dynamic programming principle

equilibrium constraints demand more properties of thesystem than regional constraints but do not require aLyapunov function terminal cost

in both cases, the operating region is restricted to thefeasible set XN

Lars Grune, Nonlinear Model Predictive Control, p. 57

Page 240: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(4) Inverse optimality and suboptimality

Page 241: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Performance of µNOnce stability can be guaranteed, we can investigate theperformance of the MPC feedback law µN

As already mentioned, we measure the performance of thefeedback µN : X → U via the infinite horizon functional

J cl∞(x0, µN) :=∞∑n=0

`(xµN(n), µN(xµN

(n)))

Recall: the optimal feedback µ∞ satisfies J cl∞(x0, µ∞) = V∞(x0)

In the literature, two different concepts can be found:

Inverse Optimality: show that µN is optimal for analtered running cost ˜ 6= `

Suboptimality: derive upper bounds for J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 59

Page 242: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Performance of µNOnce stability can be guaranteed, we can investigate theperformance of the MPC feedback law µN

As already mentioned, we measure the performance of thefeedback µN : X → U via the infinite horizon functional

J cl∞(x0, µN) :=∞∑n=0

`(xµN(n), µN(xµN

(n)))

Recall: the optimal feedback µ∞ satisfies J cl∞(x0, µ∞) = V∞(x0)

In the literature, two different concepts can be found:

Inverse Optimality: show that µN is optimal for analtered running cost ˜ 6= `

Suboptimality: derive upper bounds for J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 59

Page 243: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Performance of µNOnce stability can be guaranteed, we can investigate theperformance of the MPC feedback law µN

As already mentioned, we measure the performance of thefeedback µN : X → U via the infinite horizon functional

J cl∞(x0, µN) :=∞∑n=0

`(xµN(n), µN(xµN

(n)))

Recall: the optimal feedback µ∞ satisfies J cl∞(x0, µ∞) = V∞(x0)

In the literature, two different concepts can be found:

Inverse Optimality: show that µN is optimal for analtered running cost ˜ 6= `

Suboptimality: derive upper bounds for J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 59

Page 244: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Performance of µNOnce stability can be guaranteed, we can investigate theperformance of the MPC feedback law µN

As already mentioned, we measure the performance of thefeedback µN : X → U via the infinite horizon functional

J cl∞(x0, µN) :=∞∑n=0

`(xµN(n), µN(xµN

(n)))

Recall: the optimal feedback µ∞ satisfies J cl∞(x0, µ∞) = V∞(x0)

In the literature, two different concepts can be found:

Inverse Optimality: show that µN is optimal for analtered running cost ˜ 6= `

Suboptimality: derive upper bounds for J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 59

Page 245: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Performance of µNOnce stability can be guaranteed, we can investigate theperformance of the MPC feedback law µN

As already mentioned, we measure the performance of thefeedback µN : X → U via the infinite horizon functional

J cl∞(x0, µN) :=∞∑n=0

`(xµN(n), µN(xµN

(n)))

Recall: the optimal feedback µ∞ satisfies J cl∞(x0, µ∞) = V∞(x0)

In the literature, two different concepts can be found:

Inverse Optimality: show that µN is optimal for analtered running cost ˜ 6= `

Suboptimality: derive upper bounds for J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 59

Page 246: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimalityTheorem: [Poubelle/Bitmead/Gevers ’88, Magni/Sepulchre ’97]

For both types of terminal constraints, µN is optimal for

minimizeu admissible

J∞(x0,u) =∞∑k=0

˜(xu(n),u(n)), xu(0) = x0

with ˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

Note: ˜≥ `

Idea of proof: By the dynamic programming principle

VN(x) = infu∈U`(x, u) + VN−1(f(x, u))

= infu∈U˜(x, u) + VN(f(x, u))

and VN(x) = ˜(x, µN) + VN(f(x, µN))

⇒ VN and µN satisfy the principle for ˜⇒ optimality

Lars Grune, Nonlinear Model Predictive Control, p. 60

Page 247: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimalityTheorem: [Poubelle/Bitmead/Gevers ’88, Magni/Sepulchre ’97]

For both types of terminal constraints, µN is optimal for

minimizeu admissible

J∞(x0,u) =∞∑k=0

˜(xu(n),u(n)), xu(0) = x0

with ˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

Note: ˜≥ `

Idea of proof: By the dynamic programming principle

VN(x) = infu∈U`(x, u) + VN−1(f(x, u))

= infu∈U˜(x, u) + VN(f(x, u))

and VN(x) = ˜(x, µN) + VN(f(x, µN))

⇒ VN and µN satisfy the principle for ˜⇒ optimality

Lars Grune, Nonlinear Model Predictive Control, p. 60

Page 248: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimalityTheorem: [Poubelle/Bitmead/Gevers ’88, Magni/Sepulchre ’97]

For both types of terminal constraints, µN is optimal for

minimizeu admissible

J∞(x0,u) =∞∑k=0

˜(xu(n),u(n)), xu(0) = x0

with ˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

Note: ˜≥ `

Idea of proof: By the dynamic programming principle

VN(x) = infu∈U`(x, u) + VN−1(f(x, u))

= infu∈U˜(x, u) + VN(f(x, u))

and VN(x) = ˜(x, µN) + VN(f(x, µN))

⇒ VN and µN satisfy the principle for ˜⇒ optimality

Lars Grune, Nonlinear Model Predictive Control, p. 60

Page 249: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimalityTheorem: [Poubelle/Bitmead/Gevers ’88, Magni/Sepulchre ’97]

For both types of terminal constraints, µN is optimal for

minimizeu admissible

J∞(x0,u) =∞∑k=0

˜(xu(n),u(n)), xu(0) = x0

with ˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

Note: ˜≥ `

Idea of proof: By the dynamic programming principle

VN(x) = infu∈U`(x, u) + VN−1(f(x, u))

= infu∈U˜(x, u) + VN(f(x, u))

and VN(x) = ˜(x, µN) + VN(f(x, µN))

⇒ VN and µN satisfy the principle for ˜⇒ optimality

Lars Grune, Nonlinear Model Predictive Control, p. 60

Page 250: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimalityTheorem: [Poubelle/Bitmead/Gevers ’88, Magni/Sepulchre ’97]

For both types of terminal constraints, µN is optimal for

minimizeu admissible

J∞(x0,u) =∞∑k=0

˜(xu(n),u(n)), xu(0) = x0

with ˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

Note: ˜≥ `

Idea of proof: By the dynamic programming principle

VN(x) = infu∈U`(x, u) + VN−1(f(x, u))

= infu∈U˜(x, u) + VN(f(x, u))

and VN(x) = ˜(x, µN) + VN(f(x, µN))

⇒ VN and µN satisfy the principle for ˜⇒ optimality

Lars Grune, Nonlinear Model Predictive Control, p. 60

Page 251: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimalityTheorem: [Poubelle/Bitmead/Gevers ’88, Magni/Sepulchre ’97]

For both types of terminal constraints, µN is optimal for

minimizeu admissible

J∞(x0,u) =∞∑k=0

˜(xu(n),u(n)), xu(0) = x0

with ˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

Note: ˜≥ `

Idea of proof: By the dynamic programming principle

VN(x) = infu∈U`(x, u) + VN−1(f(x, u))

= infu∈U˜(x, u) + VN(f(x, u))

and VN(x) = ˜(x, µN) + VN(f(x, µN))

⇒ VN and µN satisfy the principle for ˜

⇒ optimality

Lars Grune, Nonlinear Model Predictive Control, p. 60

Page 252: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimalityTheorem: [Poubelle/Bitmead/Gevers ’88, Magni/Sepulchre ’97]

For both types of terminal constraints, µN is optimal for

minimizeu admissible

J∞(x0,u) =∞∑k=0

˜(xu(n),u(n)), xu(0) = x0

with ˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

Note: ˜≥ `

Idea of proof: By the dynamic programming principle

VN(x) = infu∈U`(x, u) + VN−1(f(x, u))

= infu∈U˜(x, u) + VN(f(x, u))

and VN(x) = ˜(x, µN) + VN(f(x, µN))

⇒ VN and µN satisfy the principle for ˜⇒ optimalityLars Grune, Nonlinear Model Predictive Control, p. 60

Page 253: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimality

Inverse optimality

shows that µN is an infinite horizon optimal feedback law

thus implies inherent robustness against perturbations(sector margin (1/2,∞))

But

the running cost

˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

is unknown and difficult to compute

knowing that µN is optimal for J∞(x0, u) doesn’t give usa simple way to estimate J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 61

Page 254: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimality

Inverse optimality

shows that µN is an infinite horizon optimal feedback law

thus implies inherent robustness against perturbations(sector margin (1/2,∞))

But

the running cost

˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

is unknown and difficult to compute

knowing that µN is optimal for J∞(x0, u) doesn’t give usa simple way to estimate J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 61

Page 255: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimality

Inverse optimality

shows that µN is an infinite horizon optimal feedback law

thus implies inherent robustness against perturbations(sector margin (1/2,∞))

But

the running cost

˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

is unknown and difficult to compute

knowing that µN is optimal for J∞(x0, u) doesn’t give usa simple way to estimate J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 61

Page 256: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Inverse optimality

Inverse optimality

shows that µN is an infinite horizon optimal feedback law

thus implies inherent robustness against perturbations(sector margin (1/2,∞))

But

the running cost

˜(x, u) := `(x, u) + VN−1(f(x, u))− VN(f(x, u))

is unknown and difficult to compute

knowing that µN is optimal for J∞(x0, u) doesn’t give usa simple way to estimate J cl∞(x0, µN)

Lars Grune, Nonlinear Model Predictive Control, p. 61

Page 257: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality

Recall: For both stabilizing terminal constraints the relaxeddynamic programming theorem yields the estimate

J cl∞(x0, µN) ≤ VN(x0)

But: How large is VN ?

Without terminal constraints, the inequality VN ≤ V∞ isimmediate

However, the terminal constraints also reverse this inequality,i.e., we have VN ≥ V∞ and the gap is very difficult to estimate

Lars Grune, Nonlinear Model Predictive Control, p. 62

Page 258: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality

Recall: For both stabilizing terminal constraints the relaxeddynamic programming theorem yields the estimate

J cl∞(x0, µN) ≤ VN(x0)

But: How large is VN ?

Without terminal constraints, the inequality VN ≤ V∞ isimmediate

However, the terminal constraints also reverse this inequality,i.e., we have VN ≥ V∞ and the gap is very difficult to estimate

Lars Grune, Nonlinear Model Predictive Control, p. 62

Page 259: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality

Recall: For both stabilizing terminal constraints the relaxeddynamic programming theorem yields the estimate

J cl∞(x0, µN) ≤ VN(x0)

But: How large is VN ?

Without terminal constraints, the inequality VN ≤ V∞ isimmediate

However, the terminal constraints also reverse this inequality,i.e., we have VN ≥ V∞ and the gap is very difficult to estimate

Lars Grune, Nonlinear Model Predictive Control, p. 62

Page 260: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality

Recall: For both stabilizing terminal constraints the relaxeddynamic programming theorem yields the estimate

J cl∞(x0, µN) ≤ VN(x0)

But: How large is VN ?

Without terminal constraints, the inequality VN ≤ V∞ isimmediate

However, the terminal constraints also reverse this inequality,i.e., we have VN ≥ V∞ and the gap is very difficult to estimate

Lars Grune, Nonlinear Model Predictive Control, p. 62

Page 261: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality — example

We consider two examples with X = R, U = R for N = 2

Example 1: x+ = x+ u, `(x, u) = x2 + u2

Terminal constraints xu(N) = x∗ = 0

V∞(x) ≈ 1.618x2, J cl∞(x, µ2) = 1.625x2

Example 2: as Example 1, but with `(x, u) = x2 + u4

V∞(20) ≤ 1726, J cl∞(x, µ2) ≈ 11240

General estimates for fixed N appear difficult to obtain. Butwe can give an asymptotic result for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 63

Page 262: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality — example

We consider two examples with X = R, U = R for N = 2

Example 1: x+ = x+ u, `(x, u) = x2 + u2

Terminal constraints xu(N) = x∗ = 0

V∞(x) ≈ 1.618x2, J cl∞(x, µ2) = 1.625x2

Example 2: as Example 1, but with `(x, u) = x2 + u4

V∞(20) ≤ 1726, J cl∞(x, µ2) ≈ 11240

General estimates for fixed N appear difficult to obtain. Butwe can give an asymptotic result for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 63

Page 263: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality — example

We consider two examples with X = R, U = R for N = 2

Example 1: x+ = x+ u, `(x, u) = x2 + u2

Terminal constraints xu(N) = x∗ = 0

V∞(x) ≈ 1.618x2, J cl∞(x, µ2) = 1.625x2

Example 2: as Example 1, but with `(x, u) = x2 + u4

V∞(20) ≤ 1726, J cl∞(x, µ2) ≈ 11240

General estimates for fixed N appear difficult to obtain. Butwe can give an asymptotic result for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 63

Page 264: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality — example

We consider two examples with X = R, U = R for N = 2

Example 1: x+ = x+ u, `(x, u) = x2 + u2

Terminal constraints xu(N) = x∗ = 0

V∞(x) ≈ 1.618x2, J cl∞(x, µ2) = 1.625x2

Example 2: as Example 1, but with `(x, u) = x2 + u4

V∞(20) ≤ 1726, J cl∞(x, µ2) ≈ 11240

General estimates for fixed N appear difficult to obtain. Butwe can give an asymptotic result for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 63

Page 265: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality — example

We consider two examples with X = R, U = R for N = 2

Example 1: x+ = x+ u, `(x, u) = x2 + u2

Terminal constraints xu(N) = x∗ = 0

V∞(x) ≈ 1.618x2, J cl∞(x, µ2) = 1.625x2

Example 2: as Example 1, but with `(x, u) = x2 + u4

V∞(20) ≤ 1726, J cl∞(x, µ2) ≈ 11240

General estimates for fixed N appear difficult to obtain. Butwe can give an asymptotic result for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 63

Page 266: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality — example

We consider two examples with X = R, U = R for N = 2

Example 1: x+ = x+ u, `(x, u) = x2 + u2

Terminal constraints xu(N) = x∗ = 0

V∞(x) ≈ 1.618x2, J cl∞(x, µ2) = 1.625x2

Example 2: as Example 1, but with `(x, u) = x2 + u4

V∞(20) ≤ 1726, J cl∞(x, µ2) ≈ 11240

General estimates for fixed N appear difficult to obtain. Butwe can give an asymptotic result for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 63

Page 267: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality — example

We consider two examples with X = R, U = R for N = 2

Example 1: x+ = x+ u, `(x, u) = x2 + u2

Terminal constraints xu(N) = x∗ = 0

V∞(x) ≈ 1.618x2, J cl∞(x, µ2) = 1.625x2

Example 2: as Example 1, but with `(x, u) = x2 + u4

V∞(20) ≤ 1726, J cl∞(x, µ2) ≈ 11240

General estimates for fixed N appear difficult to obtain.

Butwe can give an asymptotic result for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 63

Page 268: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Suboptimality — example

We consider two examples with X = R, U = R for N = 2

Example 1: x+ = x+ u, `(x, u) = x2 + u2

Terminal constraints xu(N) = x∗ = 0

V∞(x) ≈ 1.618x2, J cl∞(x, µ2) = 1.625x2

Example 2: as Example 1, but with `(x, u) = x2 + u4

V∞(20) ≤ 1726, J cl∞(x, µ2) ≈ 11240

General estimates for fixed N appear difficult to obtain. Butwe can give an asymptotic result for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 63

Page 269: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Asymptotic Suboptimality

Theorem: For both types of terminal constraints theassumptions of the stability theorems ensure

VN(x)→ V∞(x)

and thusJ cl∞(x, µN)→ V∞(x)

as N →∞ uniformly on compact subsets of the feasible sets

,i.e., the MPC performance converges to the optimal one

Idea of proof: uses that any approximately optimal trajectoryfor J∞ converges to x∗ and can thus be modified to meet theconstraints with only moderately changing its value

Lars Grune, Nonlinear Model Predictive Control, p. 64

Page 270: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Asymptotic Suboptimality

Theorem: For both types of terminal constraints theassumptions of the stability theorems ensure

VN(x)→ V∞(x)

and thusJ cl∞(x, µN)→ V∞(x)

as N →∞ uniformly on compact subsets of the feasible sets,i.e., the MPC performance converges to the optimal one

Idea of proof: uses that any approximately optimal trajectoryfor J∞ converges to x∗ and can thus be modified to meet theconstraints with only moderately changing its value

Lars Grune, Nonlinear Model Predictive Control, p. 64

Page 271: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Asymptotic Suboptimality

Theorem: For both types of terminal constraints theassumptions of the stability theorems ensure

VN(x)→ V∞(x)

and thusJ cl∞(x, µN)→ V∞(x)

as N →∞ uniformly on compact subsets of the feasible sets,i.e., the MPC performance converges to the optimal one

Idea of proof: uses that any approximately optimal trajectoryfor J∞ converges to x∗ and can thus be modified to meet theconstraints with only moderately changing its value

Lars Grune, Nonlinear Model Predictive Control, p. 64

Page 272: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (4)

µN is infinite horizon optimal for a suitably alteredrunning cost

the infinite horizon functional along the µN -controlledtrajectory is bounded by VN , i.e.,

J cl∞(x, µN) ≤ VN(x)

VN >> V∞ is possible under terminal constraints

VN → V∞ holds for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 65

Page 273: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (4)

µN is infinite horizon optimal for a suitably alteredrunning cost

the infinite horizon functional along the µN -controlledtrajectory is bounded by VN , i.e.,

J cl∞(x, µN) ≤ VN(x)

VN >> V∞ is possible under terminal constraints

VN → V∞ holds for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 65

Page 274: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (4)

µN is infinite horizon optimal for a suitably alteredrunning cost

the infinite horizon functional along the µN -controlledtrajectory is bounded by VN , i.e.,

J cl∞(x, µN) ≤ VN(x)

VN >> V∞ is possible under terminal constraints

VN → V∞ holds for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 65

Page 275: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (4)

µN is infinite horizon optimal for a suitably alteredrunning cost

the infinite horizon functional along the µN -controlledtrajectory is bounded by VN , i.e.,

J cl∞(x, µN) ≤ VN(x)

VN >> V∞ is possible under terminal constraints

VN → V∞ holds for N →∞

Lars Grune, Nonlinear Model Predictive Control, p. 65

Page 276: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(5) Stability and suboptimality without

stabilizing constraints

Page 277: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC without stabilizing terminal constraints

We return to the basic MPC formulation

minimizeu admissible

JN(x0, u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0 = xµN(n)

without any stabilizing terminal constraints and costs

In order to motivate why we want to avoid terminalconstraints and costs, we consider an example of P doubleintegrators in the plane

Lars Grune, Nonlinear Model Predictive Control, p. 67

Page 278: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC without stabilizing terminal constraints

We return to the basic MPC formulation

minimizeu admissible

JN(x0, u) =N−1∑k=0

`(xu(k),u(k)), xu(0) = x0 = xµN(n)

without any stabilizing terminal constraints and costs

In order to motivate why we want to avoid terminalconstraints and costs, we consider an example of P doubleintegrators in the plane

Lars Grune, Nonlinear Model Predictive Control, p. 67

Page 279: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

A motivating example for avoiding terminal

constraintsExample: [Jahn ’10] Consider P 4-dimensional systems

xi = f(xi, ui) := (xi2, ui1, xi4, ui2)T , i = 1, . . . , P

Interpretation: (xi1, xi3)T = position, (xi2, xi4)

T = velocity

Stage cost: `(x, u) =P∑i=1

‖(xi1, xi3)T − xd‖+ ‖(xi2, xi4)T‖/50

with xd = (0, 0)T until t = 20s and xd = (3, 0)T afterwards

Constraints: no collision, obstacles, limited speed and control

The simulation shows MPC for P = 128 ( system dimension512) with sampling time T = 0.02s and horizon N = 6

Lars Grune, Nonlinear Model Predictive Control, p. 68

Page 280: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

A motivating example for avoiding terminal

constraintsExample: [Jahn ’10] Consider P 4-dimensional systems

xi = f(xi, ui) := (xi2, ui1, xi4, ui2)T , i = 1, . . . , P

Interpretation: (xi1, xi3)T = position, (xi2, xi4)

T = velocity

Stage cost: `(x, u) =P∑i=1

‖(xi1, xi3)T − xd‖+ ‖(xi2, xi4)T‖/50

with xd = (0, 0)T until t = 20s and xd = (3, 0)T afterwards

Constraints: no collision, obstacles, limited speed and control

The simulation shows MPC for P = 128 ( system dimension512) with sampling time T = 0.02s and horizon N = 6

Lars Grune, Nonlinear Model Predictive Control, p. 68

Page 281: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

A motivating example for avoiding terminal

constraintsExample: [Jahn ’10] Consider P 4-dimensional systems

xi = f(xi, ui) := (xi2, ui1, xi4, ui2)T , i = 1, . . . , P

Interpretation: (xi1, xi3)T = position, (xi2, xi4)

T = velocity

Stage cost: `(x, u) =P∑i=1

‖(xi1, xi3)T − xd‖+ ‖(xi2, xi4)T‖/50

with xd = (0, 0)T until t = 20s and xd = (3, 0)T afterwards

Constraints: no collision, obstacles, limited speed and control

The simulation shows MPC for P = 128 ( system dimension512) with sampling time T = 0.02s and horizon N = 6

Lars Grune, Nonlinear Model Predictive Control, p. 68

Page 282: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

A motivating example for avoiding terminal

constraintsExample: [Jahn ’10] Consider P 4-dimensional systems

xi = f(xi, ui) := (xi2, ui1, xi4, ui2)T , i = 1, . . . , P

Interpretation: (xi1, xi3)T = position, (xi2, xi4)

T = velocity

Stage cost: `(x, u) =P∑i=1

‖(xi1, xi3)T − xd‖+ ‖(xi2, xi4)T‖/50

with xd = (0, 0)T until t = 20s and xd = (3, 0)T afterwards

Constraints: no collision, obstacles, limited speed and control

The simulation shows MPC for P = 128 ( system dimension512) with sampling time T = 0.02s and horizon N = 6

Lars Grune, Nonlinear Model Predictive Control, p. 68

Page 283: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stabilizing NMPC without terminal constraint

(Some) stability and performance results known in the literature:

[Alamir/Bornard ’95]

use a controllability condition for all x ∈ X

[Shamma/Xiong ’97, Primbs/Nevistic ’00]

use knowledge of optimal value functions

[Jadbabaie/Hauser ’05]

use controllability of linearization in x∗

[Grimm/Messina/Tuna/Teel ’05, Tuna/Messina/Teel ’06,Gr./Rantzer ’08, Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

use bounds on optimal value functions

Here we explain the last approach

Lars Grune, Nonlinear Model Predictive Control, p. 69

Page 284: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stabilizing NMPC without terminal constraint

(Some) stability and performance results known in the literature:

[Alamir/Bornard ’95]use a controllability condition for all x ∈ X

[Shamma/Xiong ’97, Primbs/Nevistic ’00]

use knowledge of optimal value functions

[Jadbabaie/Hauser ’05]

use controllability of linearization in x∗

[Grimm/Messina/Tuna/Teel ’05, Tuna/Messina/Teel ’06,Gr./Rantzer ’08, Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

use bounds on optimal value functions

Here we explain the last approach

Lars Grune, Nonlinear Model Predictive Control, p. 69

Page 285: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stabilizing NMPC without terminal constraint

(Some) stability and performance results known in the literature:

[Alamir/Bornard ’95]use a controllability condition for all x ∈ X

[Shamma/Xiong ’97, Primbs/Nevistic ’00]use knowledge of optimal value functions

[Jadbabaie/Hauser ’05]

use controllability of linearization in x∗

[Grimm/Messina/Tuna/Teel ’05, Tuna/Messina/Teel ’06,Gr./Rantzer ’08, Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

use bounds on optimal value functions

Here we explain the last approach

Lars Grune, Nonlinear Model Predictive Control, p. 69

Page 286: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stabilizing NMPC without terminal constraint

(Some) stability and performance results known in the literature:

[Alamir/Bornard ’95]use a controllability condition for all x ∈ X

[Shamma/Xiong ’97, Primbs/Nevistic ’00]use knowledge of optimal value functions

[Jadbabaie/Hauser ’05]use controllability of linearization in x∗

[Grimm/Messina/Tuna/Teel ’05, Tuna/Messina/Teel ’06,Gr./Rantzer ’08, Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

use bounds on optimal value functions

Here we explain the last approach

Lars Grune, Nonlinear Model Predictive Control, p. 69

Page 287: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stabilizing NMPC without terminal constraint

(Some) stability and performance results known in the literature:

[Alamir/Bornard ’95]use a controllability condition for all x ∈ X

[Shamma/Xiong ’97, Primbs/Nevistic ’00]use knowledge of optimal value functions

[Jadbabaie/Hauser ’05]use controllability of linearization in x∗

[Grimm/Messina/Tuna/Teel ’05, Tuna/Messina/Teel ’06,Gr./Rantzer ’08, Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

use bounds on optimal value functions

Here we explain the last approach

Lars Grune, Nonlinear Model Predictive Control, p. 69

Page 288: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stabilizing NMPC without terminal constraint

(Some) stability and performance results known in the literature:

[Alamir/Bornard ’95]use a controllability condition for all x ∈ X

[Shamma/Xiong ’97, Primbs/Nevistic ’00]use knowledge of optimal value functions

[Jadbabaie/Hauser ’05]use controllability of linearization in x∗

[Grimm/Messina/Tuna/Teel ’05, Tuna/Messina/Teel ’06,Gr./Rantzer ’08, Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

use bounds on optimal value functions

Here we explain the last approach

Lars Grune, Nonlinear Model Predictive Control, p. 69

Page 289: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Bounds on the optimal value function

Recall the definition of the optimal value function

VN(x) := infu admissible

N−1∑k=0

`(xu(k, x),u(k))

Boundedness assumption: there exists γ > 0 with

VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N

where `?(x) := minu∈U

`(x, u)

(sufficient conditions for and relaxations of this bound will be

discussed later)

Lars Grune, Nonlinear Model Predictive Control, p. 70

Page 290: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Bounds on the optimal value function

Recall the definition of the optimal value function

VN(x) := infu admissible

N−1∑k=0

`(xu(k, x),u(k))

Boundedness assumption: there exists γ > 0 with

VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N

where `?(x) := minu∈U

`(x, u)

(sufficient conditions for and relaxations of this bound will be

discussed later)

Lars Grune, Nonlinear Model Predictive Control, p. 70

Page 291: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance indexWe choose `, such that

α3(‖x− x∗‖) ≤ `?(x) ≤ α4(‖x− x∗‖)

holds for α3, α4 ∈ K∞ (again, `(x, u) = ‖x− x∗‖2 + λ‖u‖2works)

Then, the only inequality left to prove in order to apply therelaxed dynamic programming theorem is

VN(f(x, µN(x))) ≤ VN(x)− αN`(x, µN(x))

for some αN ∈ (0, 1) and all x ∈ X

We can compute αN from the bound VN(x) ≤ γ`?(x)

Lars Grune, Nonlinear Model Predictive Control, p. 71

Page 292: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance indexWe choose `, such that

α3(‖x− x∗‖) ≤ `?(x) ≤ α4(‖x− x∗‖)

holds for α3, α4 ∈ K∞ (again, `(x, u) = ‖x− x∗‖2 + λ‖u‖2works)

Then, the only inequality left to prove in order to apply therelaxed dynamic programming theorem is

VN(f(x, µN(x))) ≤ VN(x)− αN`(x, µN(x))

for some αN ∈ (0, 1) and all x ∈ X

We can compute αN from the bound VN(x) ≤ γ`?(x)

Lars Grune, Nonlinear Model Predictive Control, p. 71

Page 293: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance indexWe choose `, such that

α3(‖x− x∗‖) ≤ `?(x) ≤ α4(‖x− x∗‖)

holds for α3, α4 ∈ K∞ (again, `(x, u) = ‖x− x∗‖2 + λ‖u‖2works)

Then, the only inequality left to prove in order to apply therelaxed dynamic programming theorem is

VN(f(x, µN(x))) ≤ VN(x)− αN`(x, µN(x))

for some αN ∈ (0, 1) and all x ∈ X

We can compute αN from the bound VN(x) ≤ γ`?(x)

Lars Grune, Nonlinear Model Predictive Control, p. 71

Page 294: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(f(x, µN(x))) ≤ VN(x)− αN`(x, µN(x))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))︸ ︷︷ ︸=“small error′′

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 72

Page 295: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))︸ ︷︷ ︸=“small error′′

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 72

Page 296: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))︸ ︷︷ ︸=“small error′′

x?(k)

kLars Grune, Nonlinear Model Predictive Control, p. 72

Page 297: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))︸ ︷︷ ︸=“small error′′

x?(k)

kLars Grune, Nonlinear Model Predictive Control, p. 72

Page 298: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))︸ ︷︷ ︸=“small error′′

x?(k) k*

kLars Grune, Nonlinear Model Predictive Control, p. 72

Page 299: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?)

x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))︸ ︷︷ ︸=“small error′′

x?(k)*k

kLars Grune, Nonlinear Model Predictive Control, p. 72

Page 300: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))︸ ︷︷ ︸=“small error′′

x?(k)*k

kLars Grune, Nonlinear Model Predictive Control, p. 72

Page 301: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))

x?(k)*k

kLars Grune, Nonlinear Model Predictive Control, p. 72

Page 302: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN ) `(x?(0),u?(0))︸ ︷︷ ︸=“small error′′

x?(k)*k

kLars Grune, Nonlinear Model Predictive Control, p. 72

Page 303: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Computing αNWe assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N (∗)We want VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

• use (∗) to find ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`?(x?(0))

• concatenate x?(1), . . . , x?(k?) and the optimal trajectorystarting in x?(k?) x(·), u(·)

⇒ VN (x?(1)) ≤ JN (x?(1), u) ≤ VN (x?(0))− (1− γηN )︸ ︷︷ ︸=αN

`(x?(0),u?(0))

x?(k)*k

kLars Grune, Nonlinear Model Predictive Control, p. 72

Page 304: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 1 [Grimm/Messina/Tuna/Teel ’05]

one k? ⇒ αN = 1− γ(γ − 1)/N

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 73

Page 305: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 1 [Grimm/Messina/Tuna/Teel ’05]

VN(x) ≤ γ`?(x)

⇒ `(x?(k), u?(k)) ≤ γ`?(x)/N for at least

one k? ⇒ αN = 1− γ(γ − 1)/N

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 73

Page 306: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 1 [Grimm/Messina/Tuna/Teel ’05]

VN(x) ≤ γ`?(x) ⇒ `(x?(k), u?(k)) ≤ γ`?(x)/N for at least

one k?

⇒ αN = 1− γ(γ − 1)/N

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 73

Page 307: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 1 [Grimm/Messina/Tuna/Teel ’05]

VN(x) ≤ γ`?(x) ⇒ `(x?(k), u?(k)) ≤ γ`?(x)/N for at least

one k?

⇒ αN = 1− γ(γ − 1)/N

x?(k)*k

k

Lars Grune, Nonlinear Model Predictive Control, p. 73

Page 308: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 1 [Grimm/Messina/Tuna/Teel ’05]

VN(x) ≤ γ`?(x) ⇒ `(x?(k), u?(k)) ≤ γ`?(x)/N for at least

one k?

⇒ αN = 1− γ(γ − 1)/N

x?(k) k*

k

Lars Grune, Nonlinear Model Predictive Control, p. 73

Page 309: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 1 [Grimm/Messina/Tuna/Teel ’05]

VN(x) ≤ γ`?(x) ⇒ `(x?(k), u?(k)) ≤ γ`?(x)/N for at least

one k? ⇒ αN = 1− γ(γ − 1)/N

x?(k) k*

k

Lars Grune, Nonlinear Model Predictive Control, p. 73

Page 310: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 2 [Tuna/Messina/Teel ’06, Gr./Rantzer ’08]

⇒ k? = N − 1 ⇒ αN = 1− (γ − 1)N/γN−2

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 74

Page 311: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 2 [Tuna/Messina/Teel ’06, Gr./Rantzer ’08]

VN(x) ≤ γ`?(x)

⇒ `(x?(k), u?(k)) ≤ γ(γ−1γ

)k`?(x)

⇒ k? = N − 1 ⇒ αN = 1− (γ − 1)N/γN−2

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 74

Page 312: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 2 [Tuna/Messina/Teel ’06, Gr./Rantzer ’08]

VN(x) ≤ γ`?(x) ⇒ `(x?(k), u?(k)) ≤ γ(γ−1γ

)k`?(x)

⇒ k? = N − 1 ⇒ αN = 1− (γ − 1)N/γN−2

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 74

Page 313: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 2 [Tuna/Messina/Teel ’06, Gr./Rantzer ’08]

VN(x) ≤ γ`?(x) ⇒ `(x?(k), u?(k)) ≤ γ(γ−1γ

)k`?(x)

⇒ k? = N − 1

⇒ αN = 1− (γ − 1)N/γN−2

x?(k)*k

k

Lars Grune, Nonlinear Model Predictive Control, p. 74

Page 314: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 2 [Tuna/Messina/Teel ’06, Gr./Rantzer ’08]

VN(x) ≤ γ`?(x) ⇒ `(x?(k), u?(k)) ≤ γ(γ−1γ

)k`?(x)

⇒ k? = N − 1

⇒ αN = 1− (γ − 1)N/γN−2

x?(k)*k

k

Lars Grune, Nonlinear Model Predictive Control, p. 74

Page 315: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 2 [Tuna/Messina/Teel ’06, Gr./Rantzer ’08]

VN(x) ≤ γ`?(x) ⇒ `(x?(k), u?(k)) ≤ γ(γ−1γ

)k`?(x)

⇒ k? = N − 1 ⇒ αN = 1− (γ − 1)N/γN−2

x?(k)*k

k

Lars Grune, Nonlinear Model Predictive Control, p. 74

Page 316: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 3 [Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

⇒ optimize for αN ⇒ αN = 1− (γ−1)N

γN−1−(γ−1)N−2

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 75

Page 317: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 3 [Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

VN(x) ≤ γ`?(x)

⇒ formulate all constraints

and trajectories

⇒ optimize for αN ⇒ αN = 1− (γ−1)N

γN−1−(γ−1)N−2

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 75

Page 318: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 3 [Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

VN(x) ≤ γ`?(x) ⇒ formulate all constraints

and trajectories

⇒ optimize for αN ⇒ αN = 1− (γ−1)N

γN−1−(γ−1)N−2

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 75

Page 319: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 3 [Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

VN(x) ≤ γ`?(x) ⇒ formulate all constraints and trajectories

⇒ optimize for αN ⇒ αN = 1− (γ−1)N

γN−1−(γ−1)N−2

x?(k)

k

Lars Grune, Nonlinear Model Predictive Control, p. 75

Page 320: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 3 [Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

VN(x) ≤ γ`?(x) ⇒ formulate all constraints and trajectories

⇒ optimize for αN

⇒ αN = 1− (γ−1)N

γN−1−(γ−1)N−2

x?(k) *k

k

Lars Grune, Nonlinear Model Predictive Control, p. 75

Page 321: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Decay of the optimal trajectory

We assume VN(x) ≤ γ`?(x) for all x ∈ X, N ∈ NWe want ηN > 0, k? ≥ 1 with `?(x?(k?)) ≤ ηN`

?(x?(0))

Variant 3 [Gr. ’09, Gr./Pannek/Seehafer/Worthmann ’10]

VN(x) ≤ γ`?(x) ⇒ formulate all constraints and trajectories

⇒ optimize for αN ⇒ αN = 1− (γ−1)N

γN−1−(γ−1)N−2

x?(k) *k

k

Lars Grune, Nonlinear Model Predictive Control, p. 75

Page 322: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αNWe explain the optimization approach (Variant 3) in moredetail. We want αN such that

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

holds for all optimal trajectories x?(n),u?(n) for VN

The bound and the dynamic programming principle imply:

VN(x?(1)) ≤ γ`?(x?(1))

VN(x?(1)) ≤ `(x?(1),u?(1)) + γ`?(x?(2))

VN(x?(1)) ≤ `(x?(1),u?(1)) + `(x?(2),u?(2)) + γ`?(x?(3))

......

...

Lars Grune, Nonlinear Model Predictive Control, p. 76

Page 323: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αNWe explain the optimization approach (Variant 3) in moredetail. We want αN such that

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

holds for all optimal trajectories x?(n),u?(n) for VN

The bound and the dynamic programming principle imply:

VN(x?(1)) ≤ γ`?(x?(1))

VN(x?(1)) ≤ `(x?(1),u?(1)) + γ`?(x?(2))

VN(x?(1)) ≤ `(x?(1),u?(1)) + `(x?(2),u?(2)) + γ`?(x?(3))

......

...

Lars Grune, Nonlinear Model Predictive Control, p. 76

Page 324: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αNWe explain the optimization approach (Variant 3) in moredetail. We want αN such that

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

holds for all optimal trajectories x?(n),u?(n) for VN

The bound and the dynamic programming principle imply:

VN(x?(1)) ≤ γ`?(x?(1))

VN(x?(1)) ≤ `(x?(1),u?(1)) + γ`?(x?(2))

VN(x?(1)) ≤ `(x?(1),u?(1)) + `(x?(2),u?(2)) + γ`?(x?(3))

......

...

Lars Grune, Nonlinear Model Predictive Control, p. 76

Page 325: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αNWe explain the optimization approach (Variant 3) in moredetail. We want αN such that

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

holds for all optimal trajectories x?(n),u?(n) for VN

The bound and the dynamic programming principle imply:

VN(x?(1)) ≤ γ`?(x?(1))

VN(x?(1)) ≤ `(x?(1),u?(1)) + γ`?(x?(2))

VN(x?(1)) ≤ `(x?(1),u?(1)) + `(x?(2),u?(2)) + γ`?(x?(3))

......

...

Lars Grune, Nonlinear Model Predictive Control, p. 76

Page 326: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αNWe explain the optimization approach (Variant 3) in moredetail. We want αN such that

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0))

holds for all optimal trajectories x?(n),u?(n) for VN

The bound and the dynamic programming principle imply:

VN(x?(1)) ≤ γ`?(x?(1))

VN(x?(1)) ≤ `(x?(1),u?(1)) + γ`?(x?(2))

VN(x?(1)) ≤ `(x?(1),u?(1)) + `(x?(2),u?(2)) + γ`?(x?(3))

......

...

Lars Grune, Nonlinear Model Predictive Control, p. 76

Page 327: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αN VN(x?(1)) is bounded by sums over `(x?(n),u?(n))

For sums of these values, in turn, we get bounds from thedynamic programming principle and the bound

:

N−1∑n=0

`(x?(n),u?(n)) = VN(x?(0)) ≤ γ`?(x?(0))

N−1∑n=1

`(x?(n),u?(n)) = VN−1(x?(1)) ≤ γ`?(x?(1))

N−1∑n=2

`(x?(n),u?(n)) = VN−2(x?(2)) ≤ γ`?(x?(2))

......

Lars Grune, Nonlinear Model Predictive Control, p. 77

Page 328: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αN VN(x?(1)) is bounded by sums over `(x?(n),u?(n))

For sums of these values, in turn, we get bounds from thedynamic programming principle and the bound:

N−1∑n=0

`(x?(n),u?(n)) = VN(x?(0)) ≤ γ`?(x?(0))

N−1∑n=1

`(x?(n),u?(n)) = VN−1(x?(1)) ≤ γ`?(x?(1))

N−1∑n=2

`(x?(n),u?(n)) = VN−2(x?(2)) ≤ γ`?(x?(2))

......

Lars Grune, Nonlinear Model Predictive Control, p. 77

Page 329: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αN VN(x?(1)) is bounded by sums over `(x?(n),u?(n))

For sums of these values, in turn, we get bounds from thedynamic programming principle and the bound:

N−1∑n=0

`(x?(n),u?(n)) = VN(x?(0)) ≤ γ`?(x?(0))

N−1∑n=1

`(x?(n),u?(n)) = VN−1(x?(1)) ≤ γ`?(x?(1))

N−1∑n=2

`(x?(n),u?(n)) = VN−2(x?(2)) ≤ γ`?(x?(2))

......

Lars Grune, Nonlinear Model Predictive Control, p. 77

Page 330: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αN VN(x?(1)) is bounded by sums over `(x?(n),u?(n))

For sums of these values, in turn, we get bounds from thedynamic programming principle and the bound:

N−1∑n=0

`(x?(n),u?(n)) = VN(x?(0)) ≤ γ`?(x?(0))

N−1∑n=1

`(x?(n),u?(n)) = VN−1(x?(1)) ≤ γ`?(x?(1))

N−1∑n=2

`(x?(n),u?(n)) = VN−2(x?(2)) ≤ γ`?(x?(2))

......

Lars Grune, Nonlinear Model Predictive Control, p. 77

Page 331: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization approach to compute αN VN(x?(1)) is bounded by sums over `(x?(n),u?(n))

For sums of these values, in turn, we get bounds from thedynamic programming principle and the bound:

N−1∑n=0

`(x?(n),u?(n)) = VN(x?(0)) ≤ γ`?(x?(0))

N−1∑n=1

`(x?(n),u?(n)) = VN−1(x?(1)) ≤ γ`?(x?(1))

N−1∑n=2

`(x?(n),u?(n)) = VN−2(x?(2)) ≤ γ`?(x?(2))

......

Lars Grune, Nonlinear Model Predictive Control, p. 77

Page 332: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Verifying the relaxed Lyapunov inequalityFind αN , such that for all optimal trajectories x?, u?:

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0)) (∗)

Define λn := `(x?(n),u?(n)), ν := VN(x?(1))

Then: (∗) ⇔ ν ≤N−1∑n=0

λn − αNλ0

The inequalities from the last slides translate to

N−1∑n=k

λn ≤ γλk, k = 0, . . . , N − 2 (1)

ν ≤j∑

n=1

λn + γλj+1, j = 0, . . . , N − 2 (2)

We call λ0, . . . , λN−1, ν ≥ 0 with (1), (2) admissible

Lars Grune, Nonlinear Model Predictive Control, p. 78

Page 333: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Verifying the relaxed Lyapunov inequalityFind αN , such that for all optimal trajectories x?, u?:

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0)) (∗)Define λn := `(x?(n),u?(n)), ν := VN(x?(1))

Then: (∗) ⇔ ν ≤N−1∑n=0

λn − αNλ0

The inequalities from the last slides translate to

N−1∑n=k

λn ≤ γλk, k = 0, . . . , N − 2 (1)

ν ≤j∑

n=1

λn + γλj+1, j = 0, . . . , N − 2 (2)

We call λ0, . . . , λN−1, ν ≥ 0 with (1), (2) admissible

Lars Grune, Nonlinear Model Predictive Control, p. 78

Page 334: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Verifying the relaxed Lyapunov inequalityFind αN , such that for all optimal trajectories x?, u?:

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0)) (∗)Define λn := `(x?(n),u?(n)), ν := VN(x?(1))

Then: (∗) ⇔ ν ≤N−1∑n=0

λn − αNλ0

The inequalities from the last slides translate to

N−1∑n=k

λn ≤ γλk, k = 0, . . . , N − 2 (1)

ν ≤j∑

n=1

λn + γλj+1, j = 0, . . . , N − 2 (2)

We call λ0, . . . , λN−1, ν ≥ 0 with (1), (2) admissible

Lars Grune, Nonlinear Model Predictive Control, p. 78

Page 335: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Verifying the relaxed Lyapunov inequalityFind αN , such that for all optimal trajectories x?, u?:

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0)) (∗)Define λn := `(x?(n),u?(n)), ν := VN(x?(1))

Then: (∗) ⇔ ν ≤N−1∑n=0

λn − αNλ0

The inequalities from the last slides translate to

N−1∑n=k

λn ≤ γλk, k = 0, . . . , N − 2 (1)

ν ≤j∑

n=1

λn + γλj+1, j = 0, . . . , N − 2 (2)

We call λ0, . . . , λN−1, ν ≥ 0 with (1), (2) admissible

Lars Grune, Nonlinear Model Predictive Control, p. 78

Page 336: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Verifying the relaxed Lyapunov inequalityFind αN , such that for all optimal trajectories x?, u?:

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0)) (∗)Define λn := `(x?(n),u?(n)), ν := VN(x?(1))

Then: (∗) ⇔ ν ≤N−1∑n=0

λn − αNλ0

The inequalities from the last slides translate to

N−1∑n=k

λn ≤ γλk, k = 0, . . . , N − 2 (1)

ν ≤j∑

n=1

λn + γλj+1, j = 0, . . . , N − 2 (2)

We call λ0, . . . , λN−1, ν ≥ 0 with (1), (2) admissible

Lars Grune, Nonlinear Model Predictive Control, p. 78

Page 337: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Verifying the relaxed Lyapunov inequalityFind αN , such that for all optimal trajectories x?, u?:

VN(x?(1)) ≤ VN(x?(0))− αN`(x?(0),u?(0)) (∗)Define λn := `(x?(n),u?(n)), ν := VN(x?(1))

Then: (∗) ⇔ ν ≤N−1∑n=0

λn − αNλ0

The inequalities from the last slides translate to

N−1∑n=k

λn ≤ γλk, k = 0, . . . , N − 2 (1)

ν ≤j∑

n=1

λn + γλj+1, j = 0, . . . , N − 2 (2)

We call λ0, . . . , λN−1, ν ≥ 0 with (1), (2) admissible

Lars Grune, Nonlinear Model Predictive Control, p. 78

Page 338: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization problem⇒ if αN is such that the inequality

ν ≤N−1∑n=0

λn − αNλ0

⇔ αN ≤∑N−1

n=0 λn − νλ0

holds for all admissible λn and ν, then the desired inequalitywill hold for all optimal trajectories

The largest αN satisfying this condition is

αN := minλn, ν admissible

∑N−1n=0 λn − νλ0

This is a linear optimization problem whose solution can becomputed explicitly (which is nontrivial) and reads

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1

Lars Grune, Nonlinear Model Predictive Control, p. 79

Page 339: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization problem⇒ if αN is such that the inequality

ν ≤N−1∑n=0

λn − αNλ0 ⇔ αN ≤∑N−1

n=0 λn − νλ0

holds for all admissible λn and ν, then the desired inequalitywill hold for all optimal trajectories

The largest αN satisfying this condition is

αN := minλn, ν admissible

∑N−1n=0 λn − νλ0

This is a linear optimization problem whose solution can becomputed explicitly (which is nontrivial) and reads

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1

Lars Grune, Nonlinear Model Predictive Control, p. 79

Page 340: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization problem⇒ if αN is such that the inequality

ν ≤N−1∑n=0

λn − αNλ0 ⇔ αN ≤∑N−1

n=0 λn − νλ0

holds for all admissible λn and ν, then the desired inequalitywill hold for all optimal trajectories

The largest αN satisfying this condition is

αN := minλn, ν admissible

∑N−1n=0 λn − νλ0

This is a linear optimization problem whose solution can becomputed explicitly (which is nontrivial) and reads

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1

Lars Grune, Nonlinear Model Predictive Control, p. 79

Page 341: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Optimization problem⇒ if αN is such that the inequality

ν ≤N−1∑n=0

λn − αNλ0 ⇔ αN ≤∑N−1

n=0 λn − νλ0

holds for all admissible λn and ν, then the desired inequalitywill hold for all optimal trajectories

The largest αN satisfying this condition is

αN := minλn, ν admissible

∑N−1n=0 λn − νλ0

This is a linear optimization problem whose solution can becomputed explicitly (which is nontrivial) and reads

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1

Lars Grune, Nonlinear Model Predictive Control, p. 79

Page 342: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance theoremTheorem: [Gr./Pannek/Seehafer/Worthmann ’10]: AssumeVN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N. If

αN > 0

⇔ N > 2 +ln(γ − 1)

ln γ − ln(γ − 1)∼ γ ln γ

then the NMPC closed loop is asymptotically stable withLyapunov function VN

and we get the performance estimateJ cl∞(x, µN) ≤ V∞(x)/αN with

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1→ 1 as N →∞

Conversely, if N < 2 + ln(γ−1)ln γ−ln(γ−1)

, then there exists a system

for which VN(x) ≤ γ`?(x) holds but the NMPC closed loop isnot asymptotically stable.

Lars Grune, Nonlinear Model Predictive Control, p. 80

Page 343: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance theoremTheorem: [Gr./Pannek/Seehafer/Worthmann ’10]: AssumeVN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N. If

αN > 0

⇔ N > 2 +ln(γ − 1)

ln γ − ln(γ − 1)∼ γ ln γ

then the NMPC closed loop is asymptotically stable withLyapunov function VN and we get the performance estimateJ cl∞(x, µN) ≤ V∞(x)/αN with

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1

→ 1 as N →∞

Conversely, if N < 2 + ln(γ−1)ln γ−ln(γ−1)

, then there exists a system

for which VN(x) ≤ γ`?(x) holds but the NMPC closed loop isnot asymptotically stable.

Lars Grune, Nonlinear Model Predictive Control, p. 80

Page 344: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance theoremTheorem: [Gr./Pannek/Seehafer/Worthmann ’10]: AssumeVN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N. If

αN > 0 ⇔ N > 2 +ln(γ − 1)

ln γ − ln(γ − 1)

∼ γ ln γ

then the NMPC closed loop is asymptotically stable withLyapunov function VN and we get the performance estimateJ cl∞(x, µN) ≤ V∞(x)/αN with

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1

→ 1 as N →∞

Conversely, if N < 2 + ln(γ−1)ln γ−ln(γ−1)

, then there exists a system

for which VN(x) ≤ γ`?(x) holds but the NMPC closed loop isnot asymptotically stable.

Lars Grune, Nonlinear Model Predictive Control, p. 80

Page 345: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance theoremTheorem: [Gr./Pannek/Seehafer/Worthmann ’10]: AssumeVN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N. If

αN > 0 ⇔ N > 2 +ln(γ − 1)

ln γ − ln(γ − 1)∼ γ ln γ

then the NMPC closed loop is asymptotically stable withLyapunov function VN and we get the performance estimateJ cl∞(x, µN) ≤ V∞(x)/αN with

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1

→ 1 as N →∞

Conversely, if N < 2 + ln(γ−1)ln γ−ln(γ−1)

, then there exists a system

for which VN(x) ≤ γ`?(x) holds but the NMPC closed loop isnot asymptotically stable.

Lars Grune, Nonlinear Model Predictive Control, p. 80

Page 346: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance theoremTheorem: [Gr./Pannek/Seehafer/Worthmann ’10]: AssumeVN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N. If

αN > 0 ⇔ N > 2 +ln(γ − 1)

ln γ − ln(γ − 1)∼ γ ln γ

then the NMPC closed loop is asymptotically stable withLyapunov function VN and we get the performance estimateJ cl∞(x, µN) ≤ V∞(x)/αN with

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1→ 1 as N →∞

Conversely, if N < 2 + ln(γ−1)ln γ−ln(γ−1)

, then there exists a system

for which VN(x) ≤ γ`?(x) holds but the NMPC closed loop isnot asymptotically stable.

Lars Grune, Nonlinear Model Predictive Control, p. 80

Page 347: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability and performance theoremTheorem: [Gr./Pannek/Seehafer/Worthmann ’10]: AssumeVN(x) ≤ γ`?(x) for all x ∈ X, N ∈ N. If

αN > 0 ⇔ N > 2 +ln(γ − 1)

ln γ − ln(γ − 1)∼ γ ln γ

then the NMPC closed loop is asymptotically stable withLyapunov function VN and we get the performance estimateJ cl∞(x, µN) ≤ V∞(x)/αN with

αN = 1− (γ − 1)N

γN−1 − (γ − 1)N−1→ 1 as N →∞

Conversely, if N < 2 + ln(γ−1)ln γ−ln(γ−1)

, then there exists a system

for which VN(x) ≤ γ`?(x) holds but the NMPC closed loop isnot asymptotically stable.

Lars Grune, Nonlinear Model Predictive Control, p. 80

Page 348: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Horizon dependent γ-values

The theorem remains valid if we replace the bound condition

VN(x) ≤ γ`?(x)

byVN(x) ≤ γN`

?(x)

for horizon-dependent bounded values γN ∈ R, N ∈ N

αN = 1−(γN − 1)

N∏i=2

(γi − 1)

N∏i=2

γi −N∏i=2

(γi − 1)

This allows for tighter bounds and a refined analysis

Lars Grune, Nonlinear Model Predictive Control, p. 81

Page 349: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Horizon dependent γ-values

The theorem remains valid if we replace the bound condition

VN(x) ≤ γ`?(x)

byVN(x) ≤ γN`

?(x)

for horizon-dependent bounded values γN ∈ R, N ∈ N

αN = 1−(γN − 1)

N∏i=2

(γi − 1)

N∏i=2

γi −N∏i=2

(γi − 1)

This allows for tighter bounds and a refined analysis

Lars Grune, Nonlinear Model Predictive Control, p. 81

Page 350: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Horizon dependent γ-values

The theorem remains valid if we replace the bound condition

VN(x) ≤ γ`?(x)

byVN(x) ≤ γN`

?(x)

for horizon-dependent bounded values γN ∈ R, N ∈ N

αN = 1−(γN − 1)

N∏i=2

(γi − 1)

N∏i=2

γi −N∏i=2

(γi − 1)

This allows for tighter bounds and a refined analysis

Lars Grune, Nonlinear Model Predictive Control, p. 81

Page 351: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Controllability conditionA refined analysis can be performed if we compute γN from acontrollability condition

, e.g., exponential controllability:

Assume that for each x0 ∈ X there exists an admissible controlu such that

`(xu(k),u(k)) ≤ Cσk`?(x0), k = 0, 1, 2, . . .

for given overshoot constant C > 0 and decay rate σ ∈ (0, 1)

VN(x) ≤ γN`?(x) for γN =

N−1∑k=0

Cσk

This allows to compute the minimal stabilizing horizon

minN ∈ N |αN > 0depending on C and σ

Lars Grune, Nonlinear Model Predictive Control, p. 82

Page 352: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Controllability conditionA refined analysis can be performed if we compute γN from acontrollability condition, e.g., exponential controllability:

Assume that for each x0 ∈ X there exists an admissible controlu such that

`(xu(k),u(k)) ≤ Cσk`?(x0), k = 0, 1, 2, . . .

for given overshoot constant C > 0 and decay rate σ ∈ (0, 1)

VN(x) ≤ γN`?(x) for γN =

N−1∑k=0

Cσk

This allows to compute the minimal stabilizing horizon

minN ∈ N |αN > 0depending on C and σ

Lars Grune, Nonlinear Model Predictive Control, p. 82

Page 353: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Controllability conditionA refined analysis can be performed if we compute γN from acontrollability condition, e.g., exponential controllability:

Assume that for each x0 ∈ X there exists an admissible controlu such that

`(xu(k),u(k)) ≤ Cσk`?(x0), k = 0, 1, 2, . . .

for given overshoot constant C > 0 and decay rate σ ∈ (0, 1)

VN(x) ≤ γN`?(x) for γN =

N−1∑k=0

Cσk

This allows to compute the minimal stabilizing horizon

minN ∈ N |αN > 0depending on C and σ

Lars Grune, Nonlinear Model Predictive Control, p. 82

Page 354: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Controllability conditionA refined analysis can be performed if we compute γN from acontrollability condition, e.g., exponential controllability:

Assume that for each x0 ∈ X there exists an admissible controlu such that

`(xu(k),u(k)) ≤ Cσk`?(x0), k = 0, 1, 2, . . .

for given overshoot constant C > 0 and decay rate σ ∈ (0, 1)

VN(x) ≤ γN`?(x) for γN =

N−1∑k=0

Cσk

This allows to compute the minimal stabilizing horizon

minN ∈ N |αN > 0depending on C and σ

Lars Grune, Nonlinear Model Predictive Control, p. 82

Page 355: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability chart for C and σ

(Figure: Harald Voit)

Conclusion: for short optimization horizon N it ismore important: small C (“small overshoot”)less important: small σ (“fast decay”)

(we will see in the next section how to use this information)

Lars Grune, Nonlinear Model Predictive Control, p. 83

Page 356: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability chart for C and σ

(Figure: Harald Voit)

Conclusion: for short optimization horizon N it ismore important: small C (“small overshoot”)less important: small σ (“fast decay”)

(we will see in the next section how to use this information)

Lars Grune, Nonlinear Model Predictive Control, p. 83

Page 357: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Stability chart for C and σ

(Figure: Harald Voit)

Conclusion: for short optimization horizon N it ismore important: small C (“small overshoot”)less important: small σ (“fast decay”)

(we will see in the next section how to use this information)Lars Grune, Nonlinear Model Predictive Control, p. 83

Page 358: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensions

for unconstrained linear quadratic problems:

existence of γ ⇔ (A,B) stabilizable

additional weights on the last term can be incorporatedinto the analysis [Gr./Pannek/Seehafer/Worthmann ’10]

instead of using γ, α can be estimated numerically onlinealong the closed loop [Pannek et al. ’10ff]

positive definiteness of ` can be replaced by adetectability condition [Grimm/Messina/Tuna/Teel ’05]

Lars Grune, Nonlinear Model Predictive Control, p. 84

Page 359: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensions

for unconstrained linear quadratic problems:existence of γ ⇔ (A,B) stabilizable

additional weights on the last term can be incorporatedinto the analysis [Gr./Pannek/Seehafer/Worthmann ’10]

instead of using γ, α can be estimated numerically onlinealong the closed loop [Pannek et al. ’10ff]

positive definiteness of ` can be replaced by adetectability condition [Grimm/Messina/Tuna/Teel ’05]

Lars Grune, Nonlinear Model Predictive Control, p. 84

Page 360: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensions

for unconstrained linear quadratic problems:existence of γ ⇔ (A,B) stabilizable

additional weights on the last term can be incorporatedinto the analysis [Gr./Pannek/Seehafer/Worthmann ’10]

instead of using γ, α can be estimated numerically onlinealong the closed loop [Pannek et al. ’10ff]

positive definiteness of ` can be replaced by adetectability condition [Grimm/Messina/Tuna/Teel ’05]

Lars Grune, Nonlinear Model Predictive Control, p. 84

Page 361: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensions

for unconstrained linear quadratic problems:existence of γ ⇔ (A,B) stabilizable

additional weights on the last term can be incorporatedinto the analysis [Gr./Pannek/Seehafer/Worthmann ’10]

instead of using γ, α can be estimated numerically onlinealong the closed loop [Pannek et al. ’10ff]

positive definiteness of ` can be replaced by adetectability condition [Grimm/Messina/Tuna/Teel ’05]

Lars Grune, Nonlinear Model Predictive Control, p. 84

Page 362: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensions

for unconstrained linear quadratic problems:existence of γ ⇔ (A,B) stabilizable

additional weights on the last term can be incorporatedinto the analysis [Gr./Pannek/Seehafer/Worthmann ’10]

instead of using γ, α can be estimated numerically onlinealong the closed loop [Pannek et al. ’10ff]

positive definiteness of ` can be replaced by adetectability condition [Grimm/Messina/Tuna/Teel ’05]

Lars Grune, Nonlinear Model Predictive Control, p. 84

Page 363: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensionsThe “linear” inequality VN(x) ≤ γ`?(x) may be toodemanding for nonlinear systems under constraints

Generalization: VN(x) ≤ ρ(`?(x)), ρ ∈ K∞

• there is γ > 0 with ρ(r) ≤ γr for all r ∈ [0,∞]⇒ global asymptotic stability

• for each R > 0there is γR > 0 with ρ(r) ≤ γRr for all r ∈ [0, R]

⇒ semiglobal asymptotic stability

• ρ ∈ K∞ arbitrary⇒ semiglobal practical asymptotic stability

[Grimm/Messina/Tuna/Teel ’05, Gr./Pannek ’11]

Lars Grune, Nonlinear Model Predictive Control, p. 85

Page 364: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensionsThe “linear” inequality VN(x) ≤ γ`?(x) may be toodemanding for nonlinear systems under constraints

Generalization: VN(x) ≤ ρ(`?(x)), ρ ∈ K∞

• there is γ > 0 with ρ(r) ≤ γr for all r ∈ [0,∞]⇒ global asymptotic stability

• for each R > 0there is γR > 0 with ρ(r) ≤ γRr for all r ∈ [0, R]

⇒ semiglobal asymptotic stability

• ρ ∈ K∞ arbitrary⇒ semiglobal practical asymptotic stability

[Grimm/Messina/Tuna/Teel ’05, Gr./Pannek ’11]

Lars Grune, Nonlinear Model Predictive Control, p. 85

Page 365: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensionsThe “linear” inequality VN(x) ≤ γ`?(x) may be toodemanding for nonlinear systems under constraints

Generalization: VN(x) ≤ ρ(`?(x)), ρ ∈ K∞

• there is γ > 0 with ρ(r) ≤ γr for all r ∈ [0,∞]

⇒ global asymptotic stability

• for each R > 0there is γR > 0 with ρ(r) ≤ γRr for all r ∈ [0, R]

⇒ semiglobal asymptotic stability

• ρ ∈ K∞ arbitrary⇒ semiglobal practical asymptotic stability

[Grimm/Messina/Tuna/Teel ’05, Gr./Pannek ’11]

Lars Grune, Nonlinear Model Predictive Control, p. 85

Page 366: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensionsThe “linear” inequality VN(x) ≤ γ`?(x) may be toodemanding for nonlinear systems under constraints

Generalization: VN(x) ≤ ρ(`?(x)), ρ ∈ K∞

• there is γ > 0 with ρ(r) ≤ γr for all r ∈ [0,∞]⇒ global asymptotic stability

• for each R > 0there is γR > 0 with ρ(r) ≤ γRr for all r ∈ [0, R]

⇒ semiglobal asymptotic stability

• ρ ∈ K∞ arbitrary⇒ semiglobal practical asymptotic stability

[Grimm/Messina/Tuna/Teel ’05, Gr./Pannek ’11]

Lars Grune, Nonlinear Model Predictive Control, p. 85

Page 367: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensionsThe “linear” inequality VN(x) ≤ γ`?(x) may be toodemanding for nonlinear systems under constraints

Generalization: VN(x) ≤ ρ(`?(x)), ρ ∈ K∞

• there is γ > 0 with ρ(r) ≤ γr for all r ∈ [0,∞]⇒ global asymptotic stability

• for each R > 0there is γR > 0 with ρ(r) ≤ γRr for all r ∈ [0, R]

⇒ semiglobal asymptotic stability

• ρ ∈ K∞ arbitrary⇒ semiglobal practical asymptotic stability

[Grimm/Messina/Tuna/Teel ’05, Gr./Pannek ’11]

Lars Grune, Nonlinear Model Predictive Control, p. 85

Page 368: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensionsThe “linear” inequality VN(x) ≤ γ`?(x) may be toodemanding for nonlinear systems under constraints

Generalization: VN(x) ≤ ρ(`?(x)), ρ ∈ K∞

• there is γ > 0 with ρ(r) ≤ γr for all r ∈ [0,∞]⇒ global asymptotic stability

• for each R > 0there is γR > 0 with ρ(r) ≤ γRr for all r ∈ [0, R]

⇒ semiglobal asymptotic stability

• ρ ∈ K∞ arbitrary⇒ semiglobal practical asymptotic stability

[Grimm/Messina/Tuna/Teel ’05, Gr./Pannek ’11]

Lars Grune, Nonlinear Model Predictive Control, p. 85

Page 369: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensionsThe “linear” inequality VN(x) ≤ γ`?(x) may be toodemanding for nonlinear systems under constraints

Generalization: VN(x) ≤ ρ(`?(x)), ρ ∈ K∞

• there is γ > 0 with ρ(r) ≤ γr for all r ∈ [0,∞]⇒ global asymptotic stability

• for each R > 0there is γR > 0 with ρ(r) ≤ γRr for all r ∈ [0, R]

⇒ semiglobal asymptotic stability

• ρ ∈ K∞ arbitrary

⇒ semiglobal practical asymptotic stability

[Grimm/Messina/Tuna/Teel ’05, Gr./Pannek ’11]

Lars Grune, Nonlinear Model Predictive Control, p. 85

Page 370: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Comments and extensionsThe “linear” inequality VN(x) ≤ γ`?(x) may be toodemanding for nonlinear systems under constraints

Generalization: VN(x) ≤ ρ(`?(x)), ρ ∈ K∞

• there is γ > 0 with ρ(r) ≤ γr for all r ∈ [0,∞]⇒ global asymptotic stability

• for each R > 0there is γR > 0 with ρ(r) ≤ γRr for all r ∈ [0, R]

⇒ semiglobal asymptotic stability

• ρ ∈ K∞ arbitrary⇒ semiglobal practical asymptotic stability

[Grimm/Messina/Tuna/Teel ’05, Gr./Pannek ’11]Lars Grune, Nonlinear Model Predictive Control, p. 85

Page 371: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (5)

Stability and performance of MPC without terminalconstraints can be ensured by suitable bounds on VN

An optimization approach allows to compute the bestpossible αN in the relaxed dynamic programming theorem

The γ or γN can be computed from controllabilityproperties, e.g., exponential controllability

The overshoot bound C > 0 plays a crucial role orobtaining small stabilizing horizons

Lars Grune, Nonlinear Model Predictive Control, p. 86

Page 372: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (5)

Stability and performance of MPC without terminalconstraints can be ensured by suitable bounds on VN

An optimization approach allows to compute the bestpossible αN in the relaxed dynamic programming theorem

The γ or γN can be computed from controllabilityproperties, e.g., exponential controllability

The overshoot bound C > 0 plays a crucial role orobtaining small stabilizing horizons

Lars Grune, Nonlinear Model Predictive Control, p. 86

Page 373: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (5)

Stability and performance of MPC without terminalconstraints can be ensured by suitable bounds on VN

An optimization approach allows to compute the bestpossible αN in the relaxed dynamic programming theorem

The γ or γN can be computed from controllabilityproperties, e.g., exponential controllability

The overshoot bound C > 0 plays a crucial role orobtaining small stabilizing horizons

Lars Grune, Nonlinear Model Predictive Control, p. 86

Page 374: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (5)

Stability and performance of MPC without terminalconstraints can be ensured by suitable bounds on VN

An optimization approach allows to compute the bestpossible αN in the relaxed dynamic programming theorem

The γ or γN can be computed from controllabilityproperties, e.g., exponential controllability

The overshoot bound C > 0 plays a crucial role orobtaining small stabilizing horizons

Lars Grune, Nonlinear Model Predictive Control, p. 86

Page 375: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(6) Examples for the design of MPC schemes

Page 376: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Design of “good” MPC running costs `

We want small overshoot C in the estimate

`(xu(n),u(n)) ≤ Cσn`?(x0)

The trajectories xu(n) are given, but we can use the runningcost ` as design parameter

Lars Grune, Nonlinear Model Predictive Control, p. 88

Page 377: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Design of “good” MPC running costs `

We want small overshoot C in the estimate

`(xu(n),u(n)) ≤ Cσn`?(x0)

The trajectories xu(n) are given

, but we can use the runningcost ` as design parameter

Lars Grune, Nonlinear Model Predictive Control, p. 88

Page 378: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Design of “good” MPC running costs `

We want small overshoot C in the estimate

`(xu(n),u(n)) ≤ Cσn`?(x0)

The trajectories xu(n) are given, but we can use the runningcost ` as design parameter

Lars Grune, Nonlinear Model Predictive Control, p. 88

Page 379: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The car-and-mountains example reloaded

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 asymptotic stability for N = 11 but not for N ≤ 10

Reason: detour around mountains causes large overshoot C

Remedy: put larger weight on x2:

`(x, u) = (x1 − x∗1)2 + 5(x2 − x∗2)2 + |u|2 as. stab. for N = 2

Lars Grune, Nonlinear Model Predictive Control, p. 89

Page 380: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The car-and-mountains example reloaded

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 asymptotic stability for N = 11 but not for N ≤ 10

Reason: detour around mountains causes large overshoot C

Remedy: put larger weight on x2:

`(x, u) = (x1 − x∗1)2 + 5(x2 − x∗2)2 + |u|2 as. stab. for N = 2

Lars Grune, Nonlinear Model Predictive Control, p. 89

Page 381: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The car-and-mountains example reloaded

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 asymptotic stability for N = 11 but not for N ≤ 10

Reason: detour around mountains causes large overshoot C

Remedy: put larger weight on x2:

`(x, u) = (x1 − x∗1)2 + 5(x2 − x∗2)2 + |u|2 as. stab. for N = 2

Lars Grune, Nonlinear Model Predictive Control, p. 89

Page 382: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The car-and-mountains example reloaded

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 asymptotic stability for N = 11 but not for N ≤ 10

Reason: detour around mountains causes large overshoot C

Remedy: put larger weight on x2:

`(x, u) = (x1 − x∗1)2 + 5(x2 − x∗2)2 + |u|2

as. stab. for N = 2

Lars Grune, Nonlinear Model Predictive Control, p. 89

Page 383: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The car-and-mountains example reloaded

−0.5 0 0.5 1 1.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

MPC with `(x, u) = ‖x− x∗‖2 + |u|2 and umax = 0.2 asymptotic stability for N = 11 but not for N ≤ 10

Reason: detour around mountains causes large overshoot C

Remedy: put larger weight on x2:

`(x, u) = (x1 − x∗1)2 + 5(x2 − x∗2)2 + |u|2 as. stab. for N = 2

Lars Grune, Nonlinear Model Predictive Control, p. 89

Page 384: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Example: pendulum on a cart

θ

θ

m=l=1

u

−ucos( )

−u

x1 = θ = anglex2 = angular velocityx3 = cart positionx4 = cart velocityu = cart acceleration

control system

x1 = x2(t)

x2 = −g sin(x1)− kx2

−u cos(x1)

x3 = x4

x4 = u

Lars Grune, Nonlinear Model Predictive Control, p. 90

Page 385: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Example: Inverted PendulumReducing overshoot for swingup of the pendulum on a cart:

x1 = x2, x2 = g sin(x1)− kx2 + u cos(x1)x3 = x4, x4 = u

Let `(x) =√`1(x1, x2) + x2

3 + x24 with

Typical swingup trajectoryx1 and x2 component

`1(x1, x2) = x21 + x2

2 4(1− cosx1) +x2

2 N = 15

N = 10

Lars Grune, Nonlinear Model Predictive Control, p. 91

Page 386: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Example: Inverted PendulumReducing overshoot for swingup of the pendulum on a cart:

x1 = x2, x2 = g sin(x1)− kx2 + u cos(x1)x3 = x4, x4 = u

Let `(x) =√`1(x1, x2) + x2

3 + x24

with

Typical swingup trajectoryx1 and x2 component

`1(x1, x2) = x21 + x2

2 4(1− cosx1) +x2

2 N = 15

N = 10

Lars Grune, Nonlinear Model Predictive Control, p. 91

Page 387: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Example: Inverted PendulumReducing overshoot for swingup of the pendulum on a cart:

x1 = x2, x2 = g sin(x1)− kx2 + u cos(x1)x3 = x4, x4 = u

Let `(x) =√`1(x1, x2) + x2

3 + x24 with

`1(x1, x2) = x21 +x2

2

4(1− cosx1)+x22

(sin x1, x2)P (sin x1, x2)T

+2((1− cos x1)(1− cos x2)2)2

N = 15

N = 10 N = 4 (swingup only)

sampling time T = 0.15

Lars Grune, Nonlinear Model Predictive Control, p. 91

Page 388: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Example: Inverted PendulumReducing overshoot for swingup of the pendulum on a cart:

x1 = x2, x2 = g sin(x1)− kx2 + u cos(x1)x3 = x4, x4 = u

Let `(x) =√`1(x1, x2) + x2

3 + x24 with

`1(x1, x2) = x21 +x2

2 4(1− cosx1)+x22

(sin x1, x2)P (sin x1, x2)T

+2((1− cos x1)(1− cos x2)2)2

N = 15 N = 10

N = 4 (swingup only)

sampling time T = 0.15

Lars Grune, Nonlinear Model Predictive Control, p. 91

Page 389: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Example: Inverted PendulumReducing overshoot for swingup of the pendulum on a cart:

x1 = x2, x2 = g sin(x1)− kx2 + u cos(x1)x3 = x4, x4 = u

Let `(x) =√`1(x1, x2) + x2

3 + x24 with

`1(x1, x2) = x21 +x2

2 4(1− cosx1)+x22 (sin x1, x2)P (sin x1, x2)T

+2((1− cos x1)(1− cos x2)2)2

N = 15 N = 10 N = 4 (swingup only)

sampling time T = 0.15

Lars Grune, Nonlinear Model Predictive Control, p. 91

Page 390: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

A PDE example

We illustrate this with the 1d controlled PDE

yt = yx + νyxx + µy(y + 1)(1− y) + u

with

domain Ω = [0, 1]

solution y = y(t, x)

boundary conditions y(t, 0) = y(t, 1) = 0

parameters ν = 0.1 and µ = 10

and distributed control u : R× Ω→ R

Discrete time system: y(n) = y(nT, ·), sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 92

Page 391: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

A PDE example

We illustrate this with the 1d controlled PDE

yt = yx + νyxx + µy(y + 1)(1− y) + u

with

domain Ω = [0, 1]

solution y = y(t, x)

boundary conditions y(t, 0) = y(t, 1) = 0

parameters ν = 0.1 and µ = 10

and distributed control u : R× Ω→ R

Discrete time system: y(n) = y(nT, ·), sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 92

Page 392: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 393: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.025

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 394: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.05

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 395: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.075

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 396: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.1

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 397: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.125

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 398: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.15

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 399: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.175

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 400: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.2

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 401: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.225

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 402: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.25

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 403: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.275

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 404: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.3

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 405: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.325

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 406: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.35

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 407: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.375

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 408: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.4

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 409: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.425

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 410: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.45

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 411: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.475

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 412: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.5

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 413: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.525

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 414: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.55

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 415: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.575

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 416: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.6

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 417: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.625

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 418: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.65

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 419: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.675

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 420: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.7

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 421: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.725

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 422: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.75

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 423: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.775

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 424: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.8

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 425: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.825

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 426: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.85

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 427: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.875

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 428: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.9

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 429: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.925

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 430: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.95

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 431: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.975

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 432: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=1

uncontrolled (u ≡ 0)

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 433: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The uncontrolled PDE

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

all equilibrium solutions

Lars Grune, Nonlinear Model Predictive Control, p. 93

Page 434: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE example

yt = yx + νyxx + µy(y + 1)(1− y) + u

Goal: stabilize the sampled data system y(n) at y ≡ 0

Usual approach: quadratic L2 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + λ‖u(n)‖2L2

For y ≈ 0 the control u must compensate for yx u ≈ −yx controllability condition

`(y(n), u(n)) ≤ Cσn`∗(y(0))

⇔ ‖y(n)‖2L2 + λ‖u(n)‖2L2 ≤ Cσn‖y(0)‖2L2

≈ ‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

for ‖yx‖L2 >> ‖y‖L2 this can only hold if C >> 0

Lars Grune, Nonlinear Model Predictive Control, p. 94

Page 435: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE example

yt = yx + νyxx + µy(y + 1)(1− y) + u

Goal: stabilize the sampled data system y(n) at y ≡ 0

Usual approach: quadratic L2 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + λ‖u(n)‖2L2

For y ≈ 0 the control u must compensate for yx u ≈ −yx controllability condition

`(y(n), u(n)) ≤ Cσn`∗(y(0))

⇔ ‖y(n)‖2L2 + λ‖u(n)‖2L2 ≤ Cσn‖y(0)‖2L2

≈ ‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

for ‖yx‖L2 >> ‖y‖L2 this can only hold if C >> 0

Lars Grune, Nonlinear Model Predictive Control, p. 94

Page 436: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE example

yt = yx + νyxx + µy(y + 1)(1− y) + u

Goal: stabilize the sampled data system y(n) at y ≡ 0

Usual approach: quadratic L2 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + λ‖u(n)‖2L2

For y ≈ 0 the control u must compensate for yx u ≈ −yx controllability condition

`(y(n), u(n)) ≤ Cσn`∗(y(0))

⇔ ‖y(n)‖2L2 + λ‖u(n)‖2L2 ≤ Cσn‖y(0)‖2L2

≈ ‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

for ‖yx‖L2 >> ‖y‖L2 this can only hold if C >> 0

Lars Grune, Nonlinear Model Predictive Control, p. 94

Page 437: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE example

yt = yx + νyxx + µy(y + 1)(1− y) + u

Goal: stabilize the sampled data system y(n) at y ≡ 0

Usual approach: quadratic L2 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + λ‖u(n)‖2L2

For y ≈ 0 the control u must compensate for yx u ≈ −yx

controllability condition

`(y(n), u(n)) ≤ Cσn`∗(y(0))

⇔ ‖y(n)‖2L2 + λ‖u(n)‖2L2 ≤ Cσn‖y(0)‖2L2

≈ ‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

for ‖yx‖L2 >> ‖y‖L2 this can only hold if C >> 0

Lars Grune, Nonlinear Model Predictive Control, p. 94

Page 438: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE example

yt = yx + νyxx + µy(y + 1)(1− y) + u

Goal: stabilize the sampled data system y(n) at y ≡ 0

Usual approach: quadratic L2 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + λ‖u(n)‖2L2

For y ≈ 0 the control u must compensate for yx u ≈ −yx controllability condition

`(y(n), u(n)) ≤ Cσn`∗(y(0))

⇔ ‖y(n)‖2L2 + λ‖u(n)‖2L2 ≤ Cσn‖y(0)‖2L2

≈ ‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

for ‖yx‖L2 >> ‖y‖L2 this can only hold if C >> 0

Lars Grune, Nonlinear Model Predictive Control, p. 94

Page 439: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE example

yt = yx + νyxx + µy(y + 1)(1− y) + u

Goal: stabilize the sampled data system y(n) at y ≡ 0

Usual approach: quadratic L2 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + λ‖u(n)‖2L2

For y ≈ 0 the control u must compensate for yx u ≈ −yx controllability condition

`(y(n), u(n)) ≤ Cσn`∗(y(0))

⇔ ‖y(n)‖2L2 + λ‖u(n)‖2L2 ≤ Cσn‖y(0)‖2L2

≈ ‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

for ‖yx‖L2 >> ‖y‖L2 this can only hold if C >> 0

Lars Grune, Nonlinear Model Predictive Control, p. 94

Page 440: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE example

yt = yx + νyxx + µy(y + 1)(1− y) + u

Goal: stabilize the sampled data system y(n) at y ≡ 0

Usual approach: quadratic L2 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + λ‖u(n)‖2L2

For y ≈ 0 the control u must compensate for yx u ≈ −yx controllability condition

`(y(n), u(n)) ≤ Cσn`∗(y(0))

⇔ ‖y(n)‖2L2 + λ‖u(n)‖2L2 ≤ Cσn‖y(0)‖2L2

≈ ‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

for ‖yx‖L2 >> ‖y‖L2 this can only hold if C >> 0

Lars Grune, Nonlinear Model Predictive Control, p. 94

Page 441: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE example

yt = yx + νyxx + µy(y + 1)(1− y) + u

Goal: stabilize the sampled data system y(n) at y ≡ 0

Usual approach: quadratic L2 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + λ‖u(n)‖2L2

For y ≈ 0 the control u must compensate for yx u ≈ −yx controllability condition

`(y(n), u(n)) ≤ Cσn`∗(y(0))

⇔ ‖y(n)‖2L2 + λ‖u(n)‖2L2 ≤ Cσn‖y(0)‖2L2

≈ ‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

for ‖yx‖L2 >> ‖y‖L2 this can only hold if C >> 0

Lars Grune, Nonlinear Model Predictive Control, p. 94

Page 442: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE exampleConclusion: because of

‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

the controllability condition may only hold for very large C

Remedy: use H1 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + ‖yx(n)‖2L2︸ ︷︷ ︸=‖y(n)‖2

H1

+λ‖u(n)‖2L2 .

Then an analogous computation yields

‖y(n)‖2L2 + (1 + λ)‖yx(n)‖2L2 ≤ Cσn(‖y(0)‖2L2 + ‖yx(0)‖2L2

)

Lars Grune, Nonlinear Model Predictive Control, p. 95

Page 443: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE exampleConclusion: because of

‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

the controllability condition may only hold for very large C

Remedy: use H1 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + ‖yx(n)‖2L2︸ ︷︷ ︸=‖y(n)‖2

H1

+λ‖u(n)‖2L2 .

Then an analogous computation yields

‖y(n)‖2L2 + (1 + λ)‖yx(n)‖2L2 ≤ Cσn(‖y(0)‖2L2 + ‖yx(0)‖2L2

)

Lars Grune, Nonlinear Model Predictive Control, p. 95

Page 444: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC for the PDE exampleConclusion: because of

‖y(n)‖2L2 + λ‖yx(n)‖2L2 ≤ Cσn‖y(0)‖2L2

the controllability condition may only hold for very large C

Remedy: use H1 cost

`(y(n), u(n)) = ‖y(n)‖2L2 + ‖yx(n)‖2L2︸ ︷︷ ︸=‖y(n)‖2

H1

+λ‖u(n)‖2L2 .

Then an analogous computation yields

‖y(n)‖2L2 + (1 + λ)‖yx(n)‖2L2 ≤ Cσn(‖y(0)‖2L2 + ‖yx(0)‖2L2

)

Lars Grune, Nonlinear Model Predictive Control, p. 95

Page 445: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 446: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.025

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 447: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.05

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 448: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.075

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 449: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.1

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 450: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.125

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 451: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.15

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 452: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.175

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 453: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.2

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 454: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.225

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 455: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.25

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 456: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.275

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 457: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

MPC with L2 vs. H1 cost

0 0.2 0.4 0.6 0.8 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1t=0.3

N= 3, L2N=11, L2N= 3, H1

MPC with L2 and H1 cost, λ = 0.1, sampling time T = 0.025

Lars Grune, Nonlinear Model Predictive Control, p. 96

Page 458: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary ControlNow we change our PDE from distributed to (Dirichlet-)boundary control, i.e.

yt = yx + νyxx + µy(y + 1)(1− y)

with

domain Ω = [0, 1]

solution y = y(t, x)

boundary conditions y(t, 0) = u0(t), y(t, 1) = u1(t)

parameters ν = 0.1 and µ = 10

with boundary control, stability can only be achieved via largegradients in the transient phase L2 should perform better that H1

Lars Grune, Nonlinear Model Predictive Control, p. 97

Page 459: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary ControlNow we change our PDE from distributed to (Dirichlet-)boundary control, i.e.

yt = yx + νyxx + µy(y + 1)(1− y)

with

domain Ω = [0, 1]

solution y = y(t, x)

boundary conditions y(t, 0) = u0(t), y(t, 1) = u1(t)

parameters ν = 0.1 and µ = 10

with boundary control, stability can only be achieved via largegradients in the transient phase

L2 should perform better that H1

Lars Grune, Nonlinear Model Predictive Control, p. 97

Page 460: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary ControlNow we change our PDE from distributed to (Dirichlet-)boundary control, i.e.

yt = yx + νyxx + µy(y + 1)(1− y)

with

domain Ω = [0, 1]

solution y = y(t, x)

boundary conditions y(t, 0) = u0(t), y(t, 1) = u1(t)

parameters ν = 0.1 and µ = 10

with boundary control, stability can only be achieved via largegradients in the transient phase L2 should perform better that H1

Lars Grune, Nonlinear Model Predictive Control, p. 97

Page 461: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 462: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.025

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 463: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.05

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 464: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.075

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 465: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.1

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 466: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.125

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 467: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.15

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 468: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.175

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 469: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.2

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 470: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.225

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 471: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.25

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 472: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.275

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 473: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.3

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 474: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.325

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 475: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.35

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 476: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.375

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 477: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.4

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 478: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.425

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 479: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.45

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 480: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.475

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 481: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.5

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 482: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.525

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 483: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.55

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 484: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.575

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 485: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.6

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 486: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.625

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 487: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.65

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 488: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.675

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 489: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.7

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 490: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.725

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 491: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.75

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 492: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.775

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 493: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.8

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 494: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.825

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 495: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.85

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025

Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 496: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Boundary control, L2 vs. H1, N = 20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t=0.85

Horizont 20 (L2)Horizont 20 (H1)

Boundary control, λ = 0.001, sampling time T = 0.025Can be made rigorous for many PDEs [Altmuller et al. ’10ff]

Lars Grune, Nonlinear Model Predictive Control, p. 98

Page 497: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (6)

Reducing the overshoot constant C by choosing `appropriately can significantly reduce the horizon Nneeded to obtain stability

Computing tight estimates for C is in general a difficult ifnot impossible task

But structural knowledge of the system behavior can besufficient for choosing a “good” `

Lars Grune, Nonlinear Model Predictive Control, p. 99

Page 498: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (6)

Reducing the overshoot constant C by choosing `appropriately can significantly reduce the horizon Nneeded to obtain stability

Computing tight estimates for C is in general a difficult ifnot impossible task

But structural knowledge of the system behavior can besufficient for choosing a “good” `

Lars Grune, Nonlinear Model Predictive Control, p. 99

Page 499: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Summary of Section (6)

Reducing the overshoot constant C by choosing `appropriately can significantly reduce the horizon Nneeded to obtain stability

Computing tight estimates for C is in general a difficult ifnot impossible task

But structural knowledge of the system behavior can besufficient for choosing a “good” `

Lars Grune, Nonlinear Model Predictive Control, p. 99

Page 500: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

(7) Feasibility

Page 501: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasibility

Consider the feasible sets

FN := x ∈ X | there exists an admissible u of length N

So far we have assumed

VN(x) ≤ γ`?(x) for all x ∈ X

which implicitly includes the assumption

FN = X

because VN(x) =∞ for x ∈ X \ FN

What happens if FN 6= X for some N ∈ N?

Lars Grune, Nonlinear Model Predictive Control, p. 101

Page 502: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasibility

Consider the feasible sets

FN := x ∈ X | there exists an admissible u of length N

So far we have assumed

VN(x) ≤ γ`?(x) for all x ∈ X

which implicitly includes the assumption

FN = X

because VN(x) =∞ for x ∈ X \ FN

What happens if FN 6= X for some N ∈ N?

Lars Grune, Nonlinear Model Predictive Control, p. 101

Page 503: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasibility

Consider the feasible sets

FN := x ∈ X | there exists an admissible u of length N

So far we have assumed

VN(x) ≤ γ`?(x) for all x ∈ X

which implicitly includes the assumption

FN = X

because VN(x) =∞ for x ∈ X \ FN

What happens if FN 6= X for some N ∈ N?

Lars Grune, Nonlinear Model Predictive Control, p. 101

Page 504: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem

Even though the open-loop optimal trajectories are forced tosatisfy x?(k) ∈ X, the closed loop solutions xµN

(n) mayviolate the state constraints, i.e., xµN

(n) 6∈ X for some n

We illustrate this phenomenon by the simple example(x+

1

x+2

)=

(x1 + x2 + u/2x2 + u

)with X = [−1, 1]2 and U = [−1/4, 1/4]. For initial valuex0 = (−1, 1)T , the system can be controlled to 0 withoutleaving X

We use MPC with N = 2 and `(x, u) = ‖x‖2 + 5u2

Lars Grune, Nonlinear Model Predictive Control, p. 102

Page 505: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem

Even though the open-loop optimal trajectories are forced tosatisfy x?(k) ∈ X, the closed loop solutions xµN

(n) mayviolate the state constraints, i.e., xµN

(n) 6∈ X for some n

We illustrate this phenomenon by the simple example(x+

1

x+2

)=

(x1 + x2 + u/2x2 + u

)with X = [−1, 1]2 and U = [−1/4, 1/4]. For initial valuex0 = (−1, 1)T , the system can be controlled to 0 withoutleaving X

We use MPC with N = 2 and `(x, u) = ‖x‖2 + 5u2

Lars Grune, Nonlinear Model Predictive Control, p. 102

Page 506: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 507: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 508: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 509: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 510: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 511: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 512: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 513: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 514: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 515: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 516: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 103

Page 517: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem

How can this happen?

Explanation: In this example FN X

at time n, the finite horizon state constraints guaranteex?(1) ∈ X but in general not x?(1) ∈ FN

the optimal control problem at time n+ 1 with initial valuexµN

(n+ 1) = x?(1) may be infeasible

xµN(n+ k) is inevitable for some k ≥ 2

Lars Grune, Nonlinear Model Predictive Control, p. 104

Page 518: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem

How can this happen?

Explanation: In this example FN X

at time n, the finite horizon state constraints guaranteex?(1) ∈ X but in general not x?(1) ∈ FN

the optimal control problem at time n+ 1 with initial valuexµN

(n+ 1) = x?(1) may be infeasible

xµN(n+ k) is inevitable for some k ≥ 2

Lars Grune, Nonlinear Model Predictive Control, p. 104

Page 519: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem

How can this happen?

Explanation: In this example FN X

at time n, the finite horizon state constraints guaranteex?(1) ∈ X but in general not x?(1) ∈ FN

the optimal control problem at time n+ 1 with initial valuexµN

(n+ 1) = x?(1) may be infeasible

xµN(n+ k) is inevitable for some k ≥ 2

Lars Grune, Nonlinear Model Predictive Control, p. 104

Page 520: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem

How can this happen?

Explanation: In this example FN X

at time n, the finite horizon state constraints guaranteex?(1) ∈ X but in general not x?(1) ∈ FN

the optimal control problem at time n+ 1 with initial valuexµN

(n+ 1) = x?(1) may be infeasible

xµN(n+ k) is inevitable for some k ≥ 2

Lars Grune, Nonlinear Model Predictive Control, p. 104

Page 521: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem

How can this happen?

Explanation: In this example FN X

at time n, the finite horizon state constraints guaranteex?(1) ∈ X but in general not x?(1) ∈ FN

the optimal control problem at time n+ 1 with initial valuexµN

(n+ 1) = x?(1) may be infeasible

xµN(n+ k) is inevitable for some k ≥ 2

Lars Grune, Nonlinear Model Predictive Control, p. 104

Page 522: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 523: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

F2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 524: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

F2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 525: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

F2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 526: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

F2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 527: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

F2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 528: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

F2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 529: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

F2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 530: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

The MPC feasibility problem: example again

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

x1/x

2 closed loop trajectory

x1

x2

F2

Lars Grune, Nonlinear Model Predictive Control, p. 105

Page 531: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibilityThe MPC scheme with horizon N is well defined on a setA ⊆ FN if the following recursive feasibility condition holds:

x ∈ A ⇒ f(x, µN(x)) ∈ A

In terminal constrained MPC, forward invariance of theterminal constraint set X0 implies recursive feasibility of thefeasible set

XN := x ∈ X | there is an admissible u with xu(N, x) ∈ X0

(this was part of the stability theorem in Section 3)

Can we find recursively feasible sets for NMPC withoutterminal constraints?

Lars Grune, Nonlinear Model Predictive Control, p. 106

Page 532: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibilityThe MPC scheme with horizon N is well defined on a setA ⊆ FN if the following recursive feasibility condition holds:

x ∈ A ⇒ f(x, µN(x)) ∈ A

In terminal constrained MPC, forward invariance of theterminal constraint set X0 implies recursive feasibility of thefeasible set

XN := x ∈ X | there is an admissible u with xu(N, x) ∈ X0

(this was part of the stability theorem in Section 3)

Can we find recursively feasible sets for NMPC withoutterminal constraints?

Lars Grune, Nonlinear Model Predictive Control, p. 106

Page 533: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibilityThe MPC scheme with horizon N is well defined on a setA ⊆ FN if the following recursive feasibility condition holds:

x ∈ A ⇒ f(x, µN(x)) ∈ A

In terminal constrained MPC, forward invariance of theterminal constraint set X0 implies recursive feasibility of thefeasible set

XN := x ∈ X | there is an admissible u with xu(N, x) ∈ X0

(this was part of the stability theorem in Section 3)

Can we find recursively feasible sets for NMPC withoutterminal constraints?

Lars Grune, Nonlinear Model Predictive Control, p. 106

Page 534: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibility

Theorem: [Kerrigan ’00, Gr./Pannek 11] Assume that

FN0 = FN0−1

holds for some N0 ∈ N. Then the set FN is recursively feasiblefor all N ≥ N0.

Idea of proof:

(1) FN0 = FN0−1 implies FN = FN0−1 for all N ≥ N0 − 1

(2) x?(0) = x ∈ FN implies

f(x, µN(x)) = x?(1) ∈ FN−1 = FN0−1 = FN

⇒ recursive feasibility of FN

Lars Grune, Nonlinear Model Predictive Control, p. 107

Page 535: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibility

Theorem: [Kerrigan ’00, Gr./Pannek 11] Assume that

FN0 = FN0−1

holds for some N0 ∈ N. Then the set FN is recursively feasiblefor all N ≥ N0.

Idea of proof:

(1) FN0 = FN0−1 implies FN = FN0−1 for all N ≥ N0 − 1

(2) x?(0) = x ∈ FN implies

f(x, µN(x)) = x?(1) ∈ FN−1 = FN0−1 = FN

⇒ recursive feasibility of FN

Lars Grune, Nonlinear Model Predictive Control, p. 107

Page 536: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibility

Theorem: [Kerrigan ’00, Gr./Pannek 11] Assume that

FN0 = FN0−1

holds for some N0 ∈ N. Then the set FN is recursively feasiblefor all N ≥ N0.

Idea of proof:

(1) FN0 = FN0−1 implies FN = FN0−1 for all N ≥ N0 − 1

(2) x?(0) = x ∈ FN implies

f(x, µN(x)) = x?(1) ∈ FN−1 = FN0−1 = FN

⇒ recursive feasibility of FN

Lars Grune, Nonlinear Model Predictive Control, p. 107

Page 537: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibility

Theorem: [Kerrigan ’00, Gr./Pannek 11] Assume that

FN0 = FN0−1

holds for some N0 ∈ N. Then the set FN is recursively feasiblefor all N ≥ N0.

Idea of proof:

(1) FN0 = FN0−1 implies FN = FN0−1 for all N ≥ N0 − 1

(2) x?(0) = x ∈ FN implies

f(x, µN(x)) = x?(1) ∈ FN−1 = FN0−1 = FN

⇒ recursive feasibility of FN

Lars Grune, Nonlinear Model Predictive Control, p. 107

Page 538: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible sets for our example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Exit set

x1

x2

X \ F1

Lars Grune, Nonlinear Model Predictive Control, p. 108

Page 539: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible sets for our example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Exit set

x1

x2

X \ F2

Lars Grune, Nonlinear Model Predictive Control, p. 108

Page 540: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible sets for our example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Exit set

x1

x2

X \ F3

Lars Grune, Nonlinear Model Predictive Control, p. 108

Page 541: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible sets for our example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Exit set

x1

x2

X \ F4

Lars Grune, Nonlinear Model Predictive Control, p. 108

Page 542: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Feasible sets for our example

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Exit set

x1

x2

X \ F5

Lars Grune, Nonlinear Model Predictive Control, p. 108

Page 543: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibilityProblem: What if this condition does not hold / cannot bechecked?

Theorem: [Gr./Pannek ’11, extending Primbs/Nevistic ’00]

Assume VN(x) ≤ γ`?(x) for all x ∈ FN , N ∈ NAssume there exists a forward invariant neighborhood N of x∗

Then for each c > 0 there exists Nc > 0 such that for allN ≥ Nc the level set

Ac := x ∈ FN |VN(x) ≤ c

is recursively feasible and the MPC closed loop isasymptotically stable with basin of attraction containing Ac

If X is compact, then Ac = F∞ for all sufficiently large N

Lars Grune, Nonlinear Model Predictive Control, p. 109

Page 544: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibilityProblem: What if this condition does not hold / cannot bechecked?

Theorem: [Gr./Pannek ’11, extending Primbs/Nevistic ’00]

Assume VN(x) ≤ γ`?(x) for all x ∈ FN , N ∈ NAssume there exists a forward invariant neighborhood N of x∗

Then for each c > 0 there exists Nc > 0 such that for allN ≥ Nc the level set

Ac := x ∈ FN |VN(x) ≤ c

is recursively feasible and the MPC closed loop isasymptotically stable with basin of attraction containing Ac

If X is compact, then Ac = F∞ for all sufficiently large N

Lars Grune, Nonlinear Model Predictive Control, p. 109

Page 545: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibilityProblem: What if this condition does not hold / cannot bechecked?

Theorem: [Gr./Pannek ’11, extending Primbs/Nevistic ’00]

Assume VN(x) ≤ γ`?(x) for all x ∈ FN , N ∈ NAssume there exists a forward invariant neighborhood N of x∗

Then for each c > 0 there exists Nc > 0 such that for allN ≥ Nc the level set

Ac := x ∈ FN |VN(x) ≤ c

is recursively feasible and the MPC closed loop isasymptotically stable with basin of attraction containing Ac

If X is compact, then Ac = F∞ for all sufficiently large N

Lars Grune, Nonlinear Model Predictive Control, p. 109

Page 546: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Recursive feasibilityProblem: What if this condition does not hold / cannot bechecked?

Theorem: [Gr./Pannek ’11, extending Primbs/Nevistic ’00]

Assume VN(x) ≤ γ`?(x) for all x ∈ FN , N ∈ NAssume there exists a forward invariant neighborhood N of x∗

Then for each c > 0 there exists Nc > 0 such that for allN ≥ Nc the level set

Ac := x ∈ FN |VN(x) ≤ c

is recursively feasible and the MPC closed loop isasymptotically stable with basin of attraction containing Ac

If X is compact, then Ac = F∞ for all sufficiently large N

Lars Grune, Nonlinear Model Predictive Control, p. 109

Page 547: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Idea of proof

VN(x) ≤ γ`?(x) implies exponential decay of `?(x?(k))(as in Variant 2 of the stability proof in Section 5)

⇒ x?(N − 1) ∈ N for x ∈ Ac and N ≥ Nc

⇒ forward invariance of N implies that solution can beextended

⇒ recursive feasibility

Lars Grune, Nonlinear Model Predictive Control, p. 110

Page 548: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Idea of proof

VN(x) ≤ γ`?(x) implies exponential decay of `?(x?(k))(as in Variant 2 of the stability proof in Section 5)

⇒ x?(N − 1) ∈ N for x ∈ Ac and N ≥ Nc

⇒ forward invariance of N implies that solution can beextended

⇒ recursive feasibility

Lars Grune, Nonlinear Model Predictive Control, p. 110

Page 549: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Idea of proof

VN(x) ≤ γ`?(x) implies exponential decay of `?(x?(k))(as in Variant 2 of the stability proof in Section 5)

⇒ x?(N − 1) ∈ N for x ∈ Ac and N ≥ Nc

⇒ forward invariance of N implies that solution can beextended

⇒ recursive feasibility

Lars Grune, Nonlinear Model Predictive Control, p. 110

Page 550: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Idea of proof

VN(x) ≤ γ`?(x) implies exponential decay of `?(x?(k))(as in Variant 2 of the stability proof in Section 5)

⇒ x?(N − 1) ∈ N for x ∈ Ac and N ≥ Nc

⇒ forward invariance of N implies that solution can beextended

⇒ recursive feasibility

Lars Grune, Nonlinear Model Predictive Control, p. 110

Page 551: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Discussion

Feasibility properties of MPC without terminal constraints

Advantage: In contrast to X0 in the terminal constrainedsetting, N does not need to be known, mere existence issufficient

Drawback: In terminal constrained MPC, feasibility attime n = 0 implies recursive feasibility. This property islost without terminal constraints

If this is desired, a forward invariant terminal constraintX0 can be used without terminal cost — the stabilityproof without terminal constraints also works for thissetting

Lars Grune, Nonlinear Model Predictive Control, p. 111

Page 552: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Discussion

Feasibility properties of MPC without terminal constraints

Advantage: In contrast to X0 in the terminal constrainedsetting, N does not need to be known, mere existence issufficient

Drawback: In terminal constrained MPC, feasibility attime n = 0 implies recursive feasibility. This property islost without terminal constraints

If this is desired, a forward invariant terminal constraintX0 can be used without terminal cost — the stabilityproof without terminal constraints also works for thissetting

Lars Grune, Nonlinear Model Predictive Control, p. 111

Page 553: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Discussion

Feasibility properties of MPC without terminal constraints

Advantage: In contrast to X0 in the terminal constrainedsetting, N does not need to be known, mere existence issufficient

Drawback: In terminal constrained MPC, feasibility attime n = 0 implies recursive feasibility. This property islost without terminal constraints

If this is desired, a forward invariant terminal constraintX0 can be used without terminal cost

— the stabilityproof without terminal constraints also works for thissetting

Lars Grune, Nonlinear Model Predictive Control, p. 111

Page 554: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Discussion

Feasibility properties of MPC without terminal constraints

Advantage: In contrast to X0 in the terminal constrainedsetting, N does not need to be known, mere existence issufficient

Drawback: In terminal constrained MPC, feasibility attime n = 0 implies recursive feasibility. This property islost without terminal constraints

If this is desired, a forward invariant terminal constraintX0 can be used without terminal cost — the stabilityproof without terminal constraints also works for thissetting

Lars Grune, Nonlinear Model Predictive Control, p. 111

Page 555: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Final discussion: comparison of MPC with and

without terminal constraints

Properties of MPC without terminal constraints compared toterminal constrained MPC

⊕ needs fewer a priori information to set up the scheme

results are typically less constructive

⊕ may exhibit larger operating regions

may need larger N for obtaining stability near x∗

Lars Grune, Nonlinear Model Predictive Control, p. 112

Page 556: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Final discussion: comparison of MPC with and

without terminal constraints

Properties of MPC without terminal constraints compared toterminal constrained MPC

⊕ needs fewer a priori information to set up the scheme

results are typically less constructive

⊕ may exhibit larger operating regions

may need larger N for obtaining stability near x∗

Lars Grune, Nonlinear Model Predictive Control, p. 112

Page 557: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Final discussion: comparison of MPC with and

without terminal constraints

Properties of MPC without terminal constraints compared toterminal constrained MPC

⊕ needs fewer a priori information to set up the scheme

results are typically less constructive

⊕ may exhibit larger operating regions

may need larger N for obtaining stability near x∗

Lars Grune, Nonlinear Model Predictive Control, p. 112

Page 558: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Final discussion: comparison of MPC with and

without terminal constraints

Properties of MPC without terminal constraints compared toterminal constrained MPC

⊕ needs fewer a priori information to set up the scheme

results are typically less constructive

⊕ may exhibit larger operating regions

may need larger N for obtaining stability near x∗

Lars Grune, Nonlinear Model Predictive Control, p. 112

Page 559: Nonlinear Model Predictive Control - uni-bayreuth.denum.math.uni-bayreuth.de/.../trondheim12_slides.pdf · 2019-09-21 · Nonlinear Model Predictive Control Lars Grune Mathematical

Final discussion: comparison of MPC with and

without terminal constraints

Properties of MPC without terminal constraints compared toterminal constrained MPC

⊕ needs fewer a priori information to set up the scheme

results are typically less constructive

⊕ may exhibit larger operating regions

may need larger N for obtaining stability near x∗

Lars Grune, Nonlinear Model Predictive Control, p. 112