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