Structured adaptive control, or how to solve LMIs with Simulink Dimitri PEAUCELLE

Structured adaptive control,
or how to solve LMIs with Simulink
Alexandru - Razvan LUZI
Dimitri PEAUCELLE
IEIIT-CNR Torino, october 2012
1/21
Introduction
Introduction
n Direct adaptive control:
Adaptation of control gains done directly based on measurements.
s 6= Indirect adaptive control:
Estimator of model parameters + scheduled control gain
n Feedback-loop stabilizing gains, MRAC not considered
n Lyapunov based stability proofs, not gradient approximation ‘MIT rule’
n Framework initiated by V.A. Yakubovich in the late 1960’s
l Contributions: new adaptive control law with asymptotic structure
+ may solve LMIs
2/21
Plan
Plan
1
Passivity-based adaptive control
2
LMIs are strict-passifiable systems
3
Structured adaptive control
4
Numerical Example
3/21
Passivity-based adaptive control
Passivity-based adaptive control of LTI systems
Theorem
The following two conditions are equivalent:
Ê There exists a static control u(t) = F y (t) + w (t) for the system
x(t)
˙
= Ax(t) + Bu(t) , y (t) = Cx(t) , z(t) = y (t)
that makes the closed-loop strictly passive (with respect to w /z).
Ë For all Γ 0 the following adaptive control
u(t) = K (t)y (t) + w (t) , K˙ (t) = −y (t)y T (t)Γ
makes the closed-loop globally strictly-passive.
4/21
Passivity-based adaptive control
l Strict-passivity includes asymptotic stability of x = 0
l Adaptive control converges to K (∞): strictly-passifying static gain
s Theorem for square systems - extensions exist for non-square systems
s Not all stabilizable systems are strictly-passifiable
- modified adaptive laws exist for stabilizable systems
l Condition Ê also reads in terms of matrix inequalities as
∃Q 0 : (A + BF C)T Q + Q(A + BF C) ≺ 0 , QB = CT
It happens to be an LMI constraint!
∃Q 0 : AT Q + QA + CT (F T + F )C ≺ 0 , QB = CT
n Finding F solution to the LMI is equivalent to simulating the system
with the adaptive control law and taking F = K (∞).
5/21
LMIs are strict-passifiable systems
All LMIs define strict-passifiable systems
l Let us consider an example: LMIs for an upper bound on the H∞ norm
T
A P + PA + C T C PB + C T D
≺ 0 , P = P T 0.
BT P + DT C
−γ 2 1 + D T D
6/21
LMIs are strict-passifiable systems
All LMIs define strict-passifiable systems
l Let us consider an example: LMIs for an upper bound on the H∞ norm
T
A P + PA + C T C PB + C T D
≺ 0 , P = P T 0.
BT P + DT C
−γ 2 1 + D T D
s All LMI constraints can be gathered in one
 T

A P + PA + C T C PB + C T D
0

BT P + DT C
−γ 2 1 + D T D 0  ≺ 0 , P = P T
0
0
−P
6/21
LMIs are strict-passifiable systems
s All LMI constraints can be gathered in one

 T
A P + PA + C T C PB + C T D
0

BT P + DT C
−γ 2 1 + D T D 0  ≺ 0 , P = P T
0
0
−P
7/21
LMIs are strict-passifiable systems
s All LMI constraints can be gathered in one

 T
A P + PA + C T C PB + C T D
0

BT P + DT C
−γ 2 1 + D T D 0  ≺ 0 , P = P T
0
0
−P
s Can be decomposed in a sum with elementary matrix variables


0 P 0
2
T
 P 0 0  BP + BT
A + BT
γ (−γ 1)Bγ ≺ 0 , P = P
P
0 0 −P
CTC
A =  DT C
0




CTD 0
A B 0
D T D 0  , BP =  1 0 0  , Bγ = 0 1 0
0 0 1
0
0
7/21
LMIs are strict-passifiable systems
s Can be decomposed in a sum with elementary matrix variables


0 P 0
2
T
 P 0 0  BP + BT
A + BT
γ (−γ 1)Bγ ≺ 0 , P = P
P
0 0 −P
8/21
LMIs are strict-passifiable systems
s Can be decomposed in a sum with elementary matrix variables


0 P 0
2
T
 P 0 0  BP + BT
A + BT
γ (−γ 1)Bγ ≺ 0 , P = P
P
0 0 −P
s Or equivalently when gathering all variables in a block-diagonal matrix
A + BT F B ≺ 0 , B = BP Bγ
F =
FP
0
with the structural equality constraints


0 P 0
0
, FP =  P 0 0  , P = P T , Fγ = −γ 2 1
Fγ
0 0 −P
8/21
LMIs are strict-passifiable systems
s Can be decomposed in a sum with elementary matrix variables


0 P 0
2
T
 P 0 0  BP + BT
A + BT
γ (−γ 1)Bγ ≺ 0 , P = P
P
0 0 −P
s Or equivalently when gathering all variables in a block-diagonal matrix
A + BT F B ≺ 0 , B = BP Bγ
F =
FP
0
with the structural equality constraints


0 P 0
0
, FP =  P 0 0  , P = P T , Fγ = −γ 2 1
Fγ
0 0 −P
l The constraint A + BT F B ≺ 0 holds iff
(A, B, C = BT ) is strictly-passifiable by F .
8/21
LMIs are strict-passifiable systems
s Can be decomposed in a sum with elementary matrix variables


0 P 0
2
T
 P 0 0  BP + BT
A + BT
γ (−γ 1)Bγ ≺ 0 , P = P
P
0 0 −P
s Or equivalently when gathering all variables in a block-diagonal matrix
A + BT F B ≺ 0 , B = BP Bγ
F =
FP
0
with the structural equality constraints


0 P 0
0
, FP =  P 0 0  , P = P T , Fγ = −γ 2 1
Fγ
0 0 −P
l The constraint A + BT F B ≺ 0 holds iff
(A, B, C = BT ) is strictly-passifiable by F .
n LMI converted to strict-passification problem, with equality constraints.
8/21
LMIs are strict-passifiable systems
n Procedure applies to any LMI: concludes with search of passifying


F1
0


..
F =

.
0
FN
for a (symmetric) system (A, B, C = BT )
with additional structural equality constraints that can be compacted in
vec(Fi ) = Si xi
⇔
Ui vec(Fi ) = 0
where vec(Fi ) is the vector composed of stacked columns of Fi ,
xi are vectors of independent scalar decision variables and Ui = Si⊥ .
9/21
LMIs are strict-passifiable systems
n Procedure applies to any LMI: concludes with search of passifying


F1
0


..
F =

.
0
FN
for a (symmetric) system (A, B, C = BT )
with additional structural equality constraints that can be compacted in
vec(Fi ) = Si xi
⇔
Ui vec(Fi ) = 0
where vec(Fi ) is the vector composed of stacked columns of Fi ,
xi are vectors of independent scalar decision variables and Ui = Si⊥ .
l When starting from the canonical representation L0 +
then the structural constraints are all of the type
xˆj 1rj1
0
Fj =
0
−ˆ
xj 1rj2
P
j
xˆj Lj ≺ 0,
and rj1 + rj2 can be very large and Uj is huge.
l F and Ui s expected to be smaller when matrix representation.
9/21
Structured adaptive control
Block-diagonal adaptive control with asymptotic structure
Theorem
The following two conditions are equivalent:
Ê There exists a decentralized static control ui (t) = Fi yi (t) + wi (t)
satisfying the structural constraints Ui vec(Fi ) = 0 for the system
X
x(t)
˙
= Ax(t) +
Bi ui (t) , yi (t) = Ci x(t) , z(t) = y (t)
that makes the closed-loop strictly passive (with respect to w /z).
Ë For all Γi 0, αi > 0 the following adaptive control
ui (t) = Ki (t)yi (t) + wi (t) ,
K˙ i (t) = −yi (t)yiT (t)Γi − αi · mat UiT Ui · vec(Ki (t)) Γi
makes the closed-loop globally strictly-passive.
‘mat’ is the function such that mat(vec(F )) = F .
10/21
Structured adaptive control
Proof of Ê ⇒ Ë
l Ê reads as
∃F , ∃Q 0 :
T
(A + BF C)T Q + Q(A + BF
C) < 0, QB = C ,
F = diag · · · Fi · · ·
, Ui · vec(Fi ) = 0
(1)
11/21
Structured adaptive control
Proof of Ê ⇒ Ë
l Ê reads as
∃F , ∃Q 0 :
T
(A + BF C)T Q + Q(A + BF
C) < 0, QB = C ,
F = diag · · · Fi · · ·
, Ui · vec(Fi ) = 0
(1)
l Let the Lyapunov function for the non-linear system (with adaptive law)
!
X 1
V (x, K ) =
x T Qx +
Tr (Ki − Fi )Γ−1 (Ki − Fi )T
2
i
11/21
Structured adaptive control
Proof of Ê ⇒ Ë
l Ê reads as
∃F , ∃Q 0 :
T
(A + BF C)T Q + Q(A + BF
C) < 0, QB = C ,
F = diag · · · Fi · · ·
, Ui · vec(Fi ) = 0
(1)
l Let the Lyapunov function for the non-linear system (with adaptive law)
!
X 1
V (x, K ) =
x T Qx +
Tr (Ki − Fi )Γ−1 (Ki − Fi )T
2
i
l After manipulations and using QB = CT , Ui · vec(Fi ) = 0, we get:
X
V˙ (x, K ) = x T (A + BF C)T Qx + w T z −
αi (Ui · vec(Ki ))T (Ui · vec(Ki )).
i
11/21
Structured adaptive control
Proof of Ê ⇒ Ë (continued)
V˙ (x, K ) = x T (A + BF C)T Qx + w T z −
X
αi (Ui · vec(Ki ))T (Ui · vec(Ki )).
i
12/21
Structured adaptive control
Proof of Ê ⇒ Ë (continued)
V˙ (x, K ) = x T (A + BF C)T Qx + w T z −
X
αi (Ui · vec(Ki ))T (Ui · vec(Ki )).
i
s First term is strictly negative due to (1), until x = 0,
s Last term is strictly negative, until Ui · vec(Ki ) = 0
n If no perturbations (w = 0) the system converges to the attractor
A = {(x, K ) : x = 0 , Ui · vec(Ki ) = 0}
n On the attractor K˙ i = 0: the gains Ki (∞) are constant.
12/21
Structured adaptive control
Proof of Ê ⇒ Ë (continued)
V˙ (x, K ) = x T (A + BF C)T Qx + w T z −
X
αi (Ui · vec(Ki ))T (Ui · vec(Ki )).
i
13/21
Structured adaptive control
Proof of Ê ⇒ Ë (continued)
V˙ (x, K ) = x T (A + BF C)T Qx + w T z −
X
αi (Ui · vec(Ki ))T (Ui · vec(Ki )).
i
n For initial conditions at equilibrium and nonzero perturbations
Z t
Z t
V˙ (x, K )dτ <
w T z dτ
0 ≤ V (x(t), K (t)) =
0
0
⇒ the system is strictly passive.
13/21
Structured adaptive control
Proof of Ë ⇒ Ê
l The system with adaptive control is globally asymptotically stable,
it converges to a asymptotically stable equilibrium:
F i = Ki (∞) are stabilizing gains.
l Same reasoning holds for passivity.
14/21
Structured adaptive control
Summary
n All LMI problems are equivalent to static output-feedback
strict-passification problems with structure constraints:
- gain F is block-diagonal
- sub-blocks should satisfy Ui vec(Fi ) = 0.
n If a structured strict-passification problem admits solutions,
the block-diagonal adaptive law with asymptotic structure will converge to
one of these.
l The LMIs can be solved by simulating the adaptive controlled systems.
s If the system converges Ki (∞) contain solutions of the LMIs.
s If does not converges the LMIs are infeasible.
15/21
Numerical Example
Numerical example
l Consider the transfer function:
s2 + s + 1
s2 + s + 2
norm (or at least an upper bound).
G (s) =
l Problem: compute the H∞
s In Matlab:
norm(G, Inf, 1e-4) = 1.3251
16/21
Numerical Example
Numerical example
l Consider the transfer function:
s2 + s + 1
s2 + s + 2
norm (or at least an upper bound).
G (s) =
l Problem: compute the H∞
s In Matlab:
norm(G, Inf, 1e-4) = 1.3251
s LMI problem converted to adaptive passification
K˙ i = −yi yiT Γi − αi · mat UiT Ui · vec(Ki ) Γi , y1 ∈ R6 , y2 ∈ R
with structural asymptotic constraints :


0 P 0
F1 =  P T 0 0  , P = P T ∈ R2×2 , F2 = −γ 2 1 = −γ 2 .
0 0 −P
16/21
Numerical Example
l Parameters for simulating the adaptive law (simulation in Simulink)
s Initial conditions x = (1 . . . 1)T and Ki = 0
s Γ1 = 1000 · 1, Γ2 = 10, α1 = α2 = 1
17/21
Numerical Example
l Parameters for simulating the adaptive law (simulation in Simulink)
s Initial conditions x = (1 . . . 1)T and Ki = 0
s Γ1 = 1000 · 1, Γ2 = 10, α1 = α2 = 1
l Convergence to zero of the ‘outputs’ yi
17/21
Numerical Example
s Convergence to structured values of the adapted gains Ki
2
0
6
0
6
6 4.6330
K1 (∞) = 6
6 1.0671
6
4
0
0
K2 (∞) = −7.1307
0
0
1.0671
10.7960
0
0
4.6330
1.0671
0
0
0
0
1.0671
10.7960
0
0
0
0
0
0
0
0
−4.6330
−1.0671
0
0
0
0
−1.0671
−10.7960
3
7
7
7
7
7
7
5
18/21
Numerical Example
s Evolution of the (1 : 2, 3 : 4) elements of K1 that converge to P
s Solution of the LMIs
4.6330 1.0671
P=
, γ = 2.6703 ≥ 1.3251 = γopt
1.0671 10.7960
19/21
Numerical Example
l Test for feasible / unfeasible cases
s Only K1 is adapated, γ is slowly linearly modified
s Unstable behavior when γ < 1.3251 = γopt .
20/21
Conclusions
Conclusions et perspectives
n LMI feasibility problems can be solved by simulating systems
s Need for a parser to convert LMIs to adaptive control problem
s Simulation time is large - what is the best implementation ?
s Is simulation time polynomial w.r.t. size of problem ?
n What about LMI optimization problems ?
s Decreasing parameters until system becomes unstable ?
s Minimizing gap with dual LMI problem (it works).
s Other ?
n Solving time-varying LMI problems ?
21/21