Structured adaptive control, or how to solve LMIs with Simulink - - PowerPoint PPT Presentation

structured adaptive control or how to solve lmis with
SMART_READER_LITE
LIVE PREVIEW

Structured adaptive control, or how to solve LMIs with Simulink - - PowerPoint PPT Presentation

Structured adaptive control, or how to solve LMIs with Simulink Alexandru - Razvan LUZI Dimitri PEAUCELLE IEIIT-CNR Torino, october 2012 1/21 Introduction Introduction Direct adaptive control: Adaptation of control gains done directly


slide-1
SLIDE 1

Structured adaptive control,

  • r how to solve LMIs with Simulink

Alexandru - Razvan LUZI Dimitri PEAUCELLE IEIIT-CNR Torino, october 2012

1/21

slide-2
SLIDE 2

Introduction

Introduction

■ Direct adaptive control: Adaptation of control gains done directly based on measurements. ▲ = Indirect adaptive control: Estimator of model parameters + scheduled control gain ■ Feedback-loop stabilizing gains, MRAC not considered ■ Lyapunov based stability proofs, not gradient approximation ‘MIT rule’ ■ Framework initiated by V.A. Yakubovich in the late 1960’s

  • Contributions: new adaptive control law with asymptotic structure

+ may solve LMIs

2/21

slide-3
SLIDE 3

Plan

Plan

1

Passivity-based adaptive control

2

LMIs are strict-passifiable systems

3

Structured adaptive control

4

Numerical Example

3/21

slide-4
SLIDE 4

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) = Fy(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)yT(t)Γ makes the closed-loop globally strictly-passive.

4/21

slide-5
SLIDE 5

Passivity-based adaptive control

  • Strict-passivity includes asymptotic stability of x = 0
  • Adaptive control converges to K(∞): strictly-passifying static gain

▲ Theorem for square systems - extensions exist for non-square systems ▲ Not all stabilizable systems are strictly-passifiable

  • modified adaptive laws exist for stabilizable systems
  • Condition ➊ also reads in terms of matrix inequalities as

∃Q ≻ 0 : (A + BFC)TQ + Q(A + BFC) ≺ 0 , QB = CT It happens to be an LMI constraint! ∃Q ≻ 0 : ATQ + QA + CT(F T + F)C ≺ 0 , QB = CT ■ Finding F solution to the LMI is equivalent to simulating the system with the adaptive control law and taking F = K(∞).

5/21

slide-6
SLIDE 6

LMIs are strict-passifiable systems

All LMIs define strict-passifiable systems

  • Let us consider an example: LMIs for an upper bound on the H∞ norm

ATP + PA + C TC PB + C TD BTP + DTC −γ21 + DTD

  • ≺ 0 ,

P = PT ≻ 0.

6/21

slide-7
SLIDE 7

LMIs are strict-passifiable systems

All LMIs define strict-passifiable systems

  • Let us consider an example: LMIs for an upper bound on the H∞ norm

ATP + PA + C TC PB + C TD BTP + DTC −γ21 + DTD

  • ≺ 0 ,

P = PT ≻ 0. ▲ All LMI constraints can be gathered in one   ATP + PA + C TC PB + C TD BTP + DTC −γ21 + DTD −P   ≺ 0 , P = PT

6/21

slide-8
SLIDE 8

LMIs are strict-passifiable systems

▲ All LMI constraints can be gathered in one   ATP + PA + C TC PB + C TD BTP + DTC −γ21 + DTD −P   ≺ 0 , P = PT

7/21

slide-9
SLIDE 9

LMIs are strict-passifiable systems

▲ All LMI constraints can be gathered in one   ATP + PA + C TC PB + C TD BTP + DTC −γ21 + DTD −P   ≺ 0 , P = PT ▲ Can be decomposed in a sum with elementary matrix variables A + BT

P

  P P −P   BP + BT

γ (−γ21)Bγ ≺ 0 ,

P = PT A =   C TC C TD DTC DTD   , BP =   A B 1 1   , Bγ =

  • 1
  • 7/21
slide-10
SLIDE 10

LMIs are strict-passifiable systems

▲ Can be decomposed in a sum with elementary matrix variables A + BT

P

  P P −P   BP + BT

γ (−γ21)Bγ ≺ 0 ,

P = PT

8/21

slide-11
SLIDE 11

LMIs are strict-passifiable systems

▲ Can be decomposed in a sum with elementary matrix variables A + BT

P

  P P −P   BP + BT

γ (−γ21)Bγ ≺ 0 ,

P = PT ▲ Or equivalently when gathering all variables in a block-diagonal matrix A + BTFB ≺ 0 , B =

  • BP

  • with the structural equality constraints

F = FP Fγ

  • ,

FP =   P P −P   , P = PT , Fγ = −γ21

8/21

slide-12
SLIDE 12

LMIs are strict-passifiable systems

▲ Can be decomposed in a sum with elementary matrix variables A + BT

P

  P P −P   BP + BT

γ (−γ21)Bγ ≺ 0 ,

P = PT ▲ Or equivalently when gathering all variables in a block-diagonal matrix A + BTFB ≺ 0 , B =

  • BP

  • with the structural equality constraints

F = FP Fγ

  • ,

FP =   P P −P   , P = PT , Fγ = −γ21

  • The constraint A + BTFB ≺ 0 holds iff

(A, B, C = BT) is strictly-passifiable by F.

8/21

slide-13
SLIDE 13

LMIs are strict-passifiable systems

▲ Can be decomposed in a sum with elementary matrix variables A + BT

P

  P P −P   BP + BT

γ (−γ21)Bγ ≺ 0 ,

P = PT ▲ Or equivalently when gathering all variables in a block-diagonal matrix A + BTFB ≺ 0 , B =

  • BP

  • with the structural equality constraints

F = FP Fγ

  • ,

FP =   P P −P   , P = PT , Fγ = −γ21

  • The constraint A + BTFB ≺ 0 holds iff

(A, B, C = BT) is strictly-passifiable by F. ■ LMI converted to strict-passification problem, with equality constraints.

8/21

slide-14
SLIDE 14

LMIs are strict-passifiable systems

■ Procedure applies to any LMI: concludes with search of passifying F =    F1 ... FN    for a (symmetric) system (A, B, C = BT) with additional structural equality constraints that can be compacted in vec(Fi) = Sixi ⇔ Uivec(Fi) = 0 where vec(Fi) is the vector composed of stacked columns of Fi, xi are vectors of independent scalar decision variables and Ui = S⊥

i .

9/21

slide-15
SLIDE 15

LMIs are strict-passifiable systems

■ Procedure applies to any LMI: concludes with search of passifying F =    F1 ... FN    for a (symmetric) system (A, B, C = BT) with additional structural equality constraints that can be compacted in vec(Fi) = Sixi ⇔ Uivec(Fi) = 0 where vec(Fi) is the vector composed of stacked columns of Fi, xi are vectors of independent scalar decision variables and Ui = S⊥

i .

  • When starting from the canonical representation L0 +

j ˆ

xjLj ≺ 0, then the structural constraints are all of the type Fj = ˆ xj1rj1 −ˆ xj1rj2

  • and rj1 + rj2 can be very large and Uj is huge.
  • F and Uis expected to be smaller when matrix representation.

9/21

slide-16
SLIDE 16

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) = Fiyi(t) + wi(t) satisfying the structural constraints Uivec(Fi) = 0 for the system ˙ x(t) = Ax(t) +

  • Biui(t) ,

yi(t) = Cix(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) , ˙ Ki(t) = −yi(t)yT

i (t)Γi − αi · mat

  • UT

i Ui · vec(Ki(t))

  • Γi

makes the closed-loop globally strictly-passive.

‘mat’ is the function such that mat(vec(F)) = F.

10/21

slide-17
SLIDE 17

Structured adaptive control

Proof of ➊ ⇒ ➋

  • ➊ reads as

∃F, ∃Q ≻ 0 : (A + BFC)TQ + Q(A + BFC) < 0, QB = CT, F = diag

  • · · ·

Fi · · ·

  • ,

Ui · vec(Fi) = 0 (1)

11/21

slide-18
SLIDE 18

Structured adaptive control

Proof of ➊ ⇒ ➋

  • ➊ reads as

∃F, ∃Q ≻ 0 : (A + BFC)TQ + Q(A + BFC) < 0, QB = CT, F = diag

  • · · ·

Fi · · ·

  • ,

Ui · vec(Fi) = 0 (1)

  • Let the Lyapunov function for the non-linear system (with adaptive law)

V (x, K) = 1 2

  • xTQx +
  • i

Tr

  • (Ki − Fi)Γ−1(Ki − Fi)T

11/21

slide-19
SLIDE 19

Structured adaptive control

Proof of ➊ ⇒ ➋

  • ➊ reads as

∃F, ∃Q ≻ 0 : (A + BFC)TQ + Q(A + BFC) < 0, QB = CT, F = diag

  • · · ·

Fi · · ·

  • ,

Ui · vec(Fi) = 0 (1)

  • Let the Lyapunov function for the non-linear system (with adaptive law)

V (x, K) = 1 2

  • xTQx +
  • i

Tr

  • (Ki − Fi)Γ−1(Ki − Fi)T
  • After manipulations and using QB = CT, Ui · vec(Fi) = 0, we get:

˙ V (x, K) = xT(A+BFC)TQx +wTz −

  • i

αi(Ui ·vec(Ki))T(Ui ·vec(Ki)).

11/21

slide-20
SLIDE 20

Structured adaptive control

Proof of ➊ ⇒ ➋ (continued)

˙ V (x, K) = xT(A+BFC)TQx +wTz −

  • i

αi(Ui ·vec(Ki))T(Ui ·vec(Ki)).

12/21

slide-21
SLIDE 21

Structured adaptive control

Proof of ➊ ⇒ ➋ (continued)

˙ V (x, K) = xT(A+BFC)TQx +wTz −

  • i

αi(Ui ·vec(Ki))T(Ui ·vec(Ki)). ▲ First term is strictly negative due to (1), until x = 0, ▲ Last term is strictly negative, until Ui · vec(Ki) = 0 ■ If no perturbations (w = 0) the system converges to the attractor A = {(x, K) : x = 0 , Ui · vec(Ki) = 0} ■ On the attractor ˙ Ki = 0: the gains Ki(∞) are constant.

12/21

slide-22
SLIDE 22

Structured adaptive control

Proof of ➊ ⇒ ➋ (continued)

˙ V (x, K) = xT(A+BFC)TQx +wTz −

  • i

αi(Ui ·vec(Ki))T(Ui ·vec(Ki)).

13/21

slide-23
SLIDE 23

Structured adaptive control

Proof of ➊ ⇒ ➋ (continued)

˙ V (x, K) = xT(A+BFC)TQx +wTz −

  • i

αi(Ui ·vec(Ki))T(Ui ·vec(Ki)). ■ For initial conditions at equilibrium and nonzero perturbations 0 ≤ V (x(t), K(t)) = t ˙ V (x, K)dτ < t wTz dτ ⇒ the system is strictly passive.

13/21

slide-24
SLIDE 24

Structured adaptive control

Proof of ➋ ⇒ ➊

  • The system with adaptive control is globally asymptotically stable,

it converges to a asymptotically stable equilibrium: F i = Ki(∞) are stabilizing gains.

  • Same reasoning holds for passivity.

14/21

slide-25
SLIDE 25

Structured adaptive control

Summary

■ All LMI problems are equivalent to static output-feedback strict-passification problems with structure constraints:

  • gain F is block-diagonal
  • sub-blocks should satisfy Uivec(Fi) = 0.

■ If a structured strict-passification problem admits solutions, the block-diagonal adaptive law with asymptotic structure will converge to

  • ne of these.
  • The LMIs can be solved by simulating the adaptive controlled systems.

▲ If the system converges Ki(∞) contain solutions of the LMIs. ▲ If does not converges the LMIs are infeasible.

15/21

slide-26
SLIDE 26

Numerical Example

Numerical example

  • Consider the transfer function:

G(s) = s2 + s + 1 s2 + s + 2

  • Problem: compute the H∞ norm (or at least an upper bound).

▲ In Matlab: norm(G, Inf, 1e-4) = 1.3251

16/21

slide-27
SLIDE 27

Numerical Example

Numerical example

  • Consider the transfer function:

G(s) = s2 + s + 1 s2 + s + 2

  • Problem: compute the H∞ norm (or at least an upper bound).

▲ In Matlab: norm(G, Inf, 1e-4) = 1.3251 ▲ LMI problem converted to adaptive passification ˙ Ki = −yiyT

i Γi − αi · mat

  • UT

i Ui · vec(Ki)

  • Γi ,

y1 ∈ R6 , y2 ∈ R with structural asymptotic constraints : F1 =   P PT −P   , P = PT ∈ R2×2 , F2 = −γ21 = −γ2.

16/21

slide-28
SLIDE 28

Numerical Example

  • Parameters for simulating the adaptive law (simulation in Simulink)

▲ Initial conditions x = (1 . . . 1)T and Ki = 0 ▲ Γ1 = 1000 · 1, Γ2 = 10, α1 = α2 = 1

17/21

slide-29
SLIDE 29

Numerical Example

  • Parameters for simulating the adaptive law (simulation in Simulink)

▲ Initial conditions x = (1 . . . 1)T and Ki = 0 ▲ Γ1 = 1000 · 1, Γ2 = 10, α1 = α2 = 1

  • Convergence to zero of the ‘outputs’ yi

17/21

slide-30
SLIDE 30

Numerical Example

▲ Convergence to structured values of the adapted gains Ki

K1(∞) = 2 6 6 6 6 6 6 4 4.6330 1.0671 1.0671 10.7960 4.6330 1.0671 1.0671 10.7960 −4.6330 −1.0671 −1.0671 −10.7960 3 7 7 7 7 7 7 5 K2(∞) = −7.1307

18/21

slide-31
SLIDE 31

Numerical Example

▲ Evolution of the (1 : 2, 3 : 4) elements of K1 that converge to P ▲ Solution of the LMIs P = 4.6330 1.0671 1.0671 10.7960

  • ,

γ = 2.6703 ≥ 1.3251 = γopt

19/21

slide-32
SLIDE 32

Numerical Example

  • Test for feasible / unfeasible cases

▲ Only K1 is adapated, γ is slowly linearly modified ▲ Unstable behavior when γ < 1.3251 = γopt.

20/21

slide-33
SLIDE 33

Conclusions

Conclusions et perspectives

■ LMI feasibility problems can be solved by simulating systems ▲ Need for a parser to convert LMIs to adaptive control problem ▲ Simulation time is large - what is the best implementation ? ▲ Is simulation time polynomial w.r.t. size of problem ? ■ What about LMI optimization problems ? ▲ Decreasing parameters until system becomes unstable ? ▲ Minimizing gap with dual LMI problem (it works). ▲ Other ? ■ Solving time-varying LMI problems ?

21/21