4F3 - Predictive Control
4F3 - Predictive Control
Assumptions:
(A, B) is stabilizable and (C, A) detectable
C = I ⇒ state feedback
H = C ⇒ all outputs/states are controlled variables
Goal is to regulate the states around the origin
No delays, disturbances, model errors, noise etc.
Final two assumptions will be relaxed in final section of
course.
4F3 Predictive Control - Lecture 2 – p. 3/23
Linear Quadratic Regulator (LQR) Problem
Problem: Given an initial state x(0) at time k = 0, compute and
implement an input sequence
{u(0), u(1), . . . , }
{u(0), u(1), . . . , }.
set point
output
time
input
k k+1 time
set point
output
time
input
k k+1 time
set point
output
time
input
k k+1 time
set point
output
time
input
k k+1 time
where
x0 = x
xi+1 = Axi + Bui , i = 0, 1, . . . , N − 1
X = Φx + ΓU
x1 = Ax0 + Bu0
x2 = Ax1 + Bu1
x3 = Ax2 + Bu2
..
.
x1 = Ax0 + Bu0
x2 = Ax1 + Bu1
x3 = Ax2 + Bu2
..
.
x1 = Ax0 + Bu0
x2 = A(Ax0 + Bu0 ) + Bu1 = A2 x0 + ABu0 + Bu1
x3 = A3 x0 + A2 Bu0 + ABu1 + Bu2
..
.
xN = AN x0 + AN −1 Bu0 + · · · + ABuN −2 + BuN −1
4F3 Predictive Control - Lecture 2 – p. 12/23
Constructing the Prediction Matrices
Collect terms to get:
x1 A B 0 ··· 0 u0
2
x2 A AB B · · · 0 u1
. := . x0 + . . . .
. . . . . . . . .
. . . . . .
xN AN AN −1 B AN −2 B · · · B uN −1
= xT Qx + xT ΦT ΩΦx + U T ΓT ΩΓU + U T ΨU
+ xT ΦT ΩΓU + U T ΓT ΩΦx
U ∗ (x) = −G−1 F x.
Define:
Krhc = − Im 0 . . . 0 G−1 F
so that u = Krhc x.
• This is a time invariant linear control law.
• It approximates the optimal infinite horizon control law.
Example:
• Fix Q = P = I
• Compute ρ(A + BKrhc ) for
various R and N :
• Vary N = 1, 2, . . . , 50
• Vary R = 0, 0.02, . . . , 10
• Plot:
• Black — stable
• White — unstable
where
Klqr = −(B T P B + R)−1 B T P A
and P is the solution to the Algebraic Riccati Equation (ARE):
P = AT P A − AT P B(B T P B + R)−1 B T P A + Q
Krhc = Klqr
u(k) DT x(k)
Krhc
System
u(k) DT
Krhc System
y(k)
Observer
x̂(k|k)
Controller
If C 6= I ⇒ output feedback.
Use an observer to provide estimates x̂(k|k).
RHC law is the same with x(k) replaced by x̂(k|k).