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

Transcription

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