stability and stabilization of polynomial dynamical
play

Stability and Stabilization of polynomial dynamical systems Hadi - PowerPoint PPT Presentation

Stability and Stabilization of polynomial dynamical systems Hadi Ravanbakhsh Sriram Sankaranarayanan University of Colorado, Boulder Proving Asymptotic Stability: Lyapunov Functions Lyapunov Function: V ( x ) Positive Definite Function


  1. Stability and Stabilization of polynomial dynamical systems Hadi Ravanbakhsh Sriram Sankaranarayanan University of Colorado, Boulder

  2. Proving Asymptotic Stability: Lyapunov Functions • Lyapunov Function: V ( x ) • Positive Definite Function of the State: ( 8 x ) ( x 6 = x ∗ ) ) V ( x ) > 0 V ( x ∗ ) = 0 • Negative Definite Derivative: ( 8 x ) ( x 6 = x ⇤ ) ) V 0 ( x ) < 0

  3. Verifying Stability • Find (Guess) a Lyapunov function: V(x) • Check the conditions for the function: ( 8 x ) ( x 6 = x ∗ ) ) V ( x ) > 0 V ( x ∗ ) = 0 ( 8 x ) ( x 6 = x ⇤ ) ) V 0 ( x ) < 0

  4. Finding a Lyapunov Function • Guess a parametric form of the function: V ( x 1 , x 2 ) : c 0 + c 1 x 1 + c 2 x 2 + c 3 x 1 x 2 + c 4 x 2 1 + c 5 x 2 2 • Encode Lyapunov conditions: – Derive constraints on the unknown coefficients. – Solve constraints.

  5. Encoding constraints for Lyapunov • QE for reals: [Tarski; Collins; … ] – Nonlinear constraints over template parameters. • Sum-of-Squares Relaxations : [Shor; Lasserre; Tibken; Parrillo; …] – Polynomial positivity strengthened to sum of squares (SOS). – Reduced to solving a semi-definite optimization problem. • LP relaxations: – Positive Semi-definiteness to diagonal dominance [Ali Ahmadi+Parrillo’2014] – Use properties of Bernstein polynomials. [Ben Sassi + Girard’12, Ben Sassi+S+Chen+Abraham’2015]

  6. Lyapunov Function Synthesis: State-of-the-art • Linear Systems: Solve LMI constraints. • Polynomial Systems : up to 10 variables, low degree. • Beyond polynomials: limited progress. • Systems involving switching (Hybrid Systems). – Lyapunov conditions extended [Branicky et al. 96] • Stability proofs that do not involve Lyapunov functions [Prabhakar et al.’13]

  7. Synthesis for Stabilization

  8. Problem Setup Plant Model x x 0 = f ( x, u ) , u ∈ U u Controller u = g(x) Find a suitable g(x)

  9. Problem Setup Plant Model x x 0 = f ( x, u ) , u ∈ U u Controller u = g(x) Find g ( x ) s.t. closed loop x 0 = f ( x, g ( x )) is asymp. stable

  10. Option #1 : Static Feedback Plant Model x x 0 = f ( x, u ) , u ∈ U u Controller u = g(x) i θ i x i g ( x ) : P [Tan & Packard, El Ghaoui & Balakrishnan, Ben Sassi & S]

  11. Option #2 : Switched Stabilization Plant Model x 0 = f ( x, u ) , u ∈ U Control Mode #1 u = g 1 ( x ) No single mode Choose stabilizes Control Mode #2 Appropriate u = g 2 ( x ) Control Goal: Control Mode #k Synthesize this u = g k ( x ) logic.

  12. CONTROL LYAPUNOV FUNCTIONS

  13. Control Lyapunov Function • Lyapunov function: V(x) [Artstein; Sontag; …] • V(x) is positive definite. • A control input chosen s.t. derivative is negative definite. ( 8 x 6 = x ⇤ ) ( 9 u 2 U ) V 0 ( x ) = r x V ( x ) · f ( x, u ) < 0

  14. Control Lyapunov Function: Interpretation V(x) Lyapunov Function. x Control u 2 Control u 1

  15. Switched Stabilization Problem Plant Model x 0 = f ( x, u ) , u ∈ U Control Mode #1 u = g 1 ( x ) No single mode Choose stabilizes Control Mode #2 Appropriate u = g 2 ( x ) Control Goal: Control Mode #k Synthesize this u = g k ( x ) logic.

  16. Choosing Control Modes • Idea #1: Sample control values. Space of Control Inputs: U u 1 u m − 1 u 2 u m • Idea #2: Combine feedback laws that may stabilize for a subset of the states.

  17. Control Lyapunov Function CLF V(x) x 0 = f ( x, u ) , u ∈ U 1. Positive Definite. u = g 1 ( x ) ? u = g 2 ( x ) 2. For all x ≠ x * u = g k ( x ) – Exists mode g i • Choosing mode g i causes V to decrease. V 0 i : ( r x V ) f ( x, g i ( x )) is negative

  18. From CLF to controller x 0 = f ( x, u ) , u ∈ U u = g 1 ( x ) ? u = g 2 ( x ) u = g k ( x ) From g 1,…, g n choose a mode that causes V(x) to decrease

  19. Issue #1 : Zenoness x 0 = f ( x, u ) , u ∈ U u = g 1 ( x ) ? u = g 2 ( x ) u = g k ( x ) From g 1,…, g n choose a mode that causes V(x) to decrease Potentially Switch Infinitely Often in a finite time interval

  20. Minimum Dwell Time Switching x 0 = f ( x, u ) , u ∈ U u = g 1 ( x ) ? u = g 2 ( x ) u = g k ( x ) ≥ T min ≥ T min ≥ T min g 5 g 4 g 7 g 10

  21. Contribution #1 • Define restrictions on CLF V s.t. – V(x) allows a switching strategy with a minimal dwell time. – Provide a lower bound for the minimal dwell time. V ( x ) ≥ ✏ || x || 2 2 ✏ || x || 2 V 0 ( x ) ≤ − ˆ 2 Extra conditions on V 00 [Ravanbaksh+S’15]

  22. CLF-based Synthesis • If we can find a CLF V(x) with additional restrictions, x 0 = f ( x, u ) , u ∈ U From g 1,…, g n choose u = g 1 ( x ) ? a mode that causes V(x) to decrease u = g 2 ( x ) u = g k ( x ) Minimum dwell time guaranteed.

  23. Discovering CLFs Counter-Example Guided Inductive Synthesis.

  24. CLF Conditions for the Switched Case x 0 = f ( x, u ) , u ∈ U u = g 1 ( x ) ? u = g 2 ( x ) u = g k ( x ) ( 8 x 6 = x ∗ ) V ( x ) � ✏ || x || 2 2 ( 8 x 6 = x ∗ )( 9 i 2 { 1 , . . . , k } )( r V ) f ( x, g i ( x ))  � ✏ || x || 2 2 V can be made to decrease by some choice of g i

  25. Synthesizing CLFs • Fix a template (ansatz) for the CLF with unknown coefficients. V ( x 1 , x 2 ) : c 0 + c 1 x 1 + c 2 x 2 + c 3 x 1 x 2 + c 4 x 2 1 + c 5 x 2 2 • Enforce CLF constraints on the unknown form. ( ∃ ~ c ) ( ∀ ~ x ) ( ∃ i ∈ [1 , k ]) · · · More Complex SOS relaxations Constraints. cannot be used.

  26. Counterexample Guided Inductive Synthesis. Program Sketching [Solar-Lezama + Others] int search(int [] a,int n, int s){ //@pre:… if (n <= ??){ return 0; } for i = 0 to ?? if (a[i] == ??){ return 1; } end Find appropriate program expressions. return ??; } //@post:…

  27. CEGIS Approach Constraints to be solved: ( ∃ c ) ( ∀ y ) ϕ ( c, y ) Template Program Parameters Behaviors Iterative Procedure: • Finite set Y i : {y 1,…, y k } • Instatiate the Quantifier ∀

  28. Basic CEGIS Loop ( ∃ c ) ( ∀ y ) ϕ ( c, y ) 1. Check SATisfiability of the formula: ψ ( c, y 1 ) ∧ ψ ( c, y 2 ) ∧ · · · ∧ ψ ( c, y k ) SAT, c k SAT, y k+1 2. Check UNSATisfiability of UNSAT, ¬ ψ ( c k , y ) Failure UNSAT, Success

  29. Applying CEGIS to synthesis CLFs V ( x ) � ✏ || x || 2  � 2 ( 9 c ) ( 8 x 6 = x ∗ ) W k i =1 ( r V ) f ( x, g i ( x ))  � ✏ || x || 2 2 1. When x is instantiated: Linear Arithmetic over c. 2. When c is instantiated, non-linear arithmetic over x.

  30. Integrating SMT solvers CEGIS-based CLF synthesis procedure. instantiate x Instantiate c New Value value for c for x Nonlinear solver SMT-solver Z3 dReal.

  31. CEGIS: novelties • CEGIS procedure is out-of-the-shelf. But – Prove eventual termination of the CEGIS procedure for our problem. – Provide heuristics to speedup termination by choosing the right instantiations.

  32. Controller Synthesis • Support synthesis of MATLAB function (time triggered). Plant Model Control Mode (Predictive) Control Logic Reside Time

  33. RESULTS

  34. Inverted Pendulum: Bang-Bang Control Synthesis ˙ ω = g h 1 θ = ω , ˙ l sin ( θ ) − ml 2 ω + ml cos ( θ ) u , g = 9 . 8, h = 2, l = 2 and m = 0 . 5 Control Mode #1: u = +30 Control Mode #2: u = - 30 http://ctms.engin.umich.edu/CTMS/ V ([ θ ω ] T ) = 10 θ 2 + 1 . 5312 θω + 2 . 5859 ω 2

  35. Inverted Pendulum θ ω time time V ω time time (a) Inverted Pendulum

  36. 2-5 System Variables Overall Results 2-6 control modes 17 out of 20 Problem Results benchmarks up to 3 ID n q itr z3 T dReal T Tot. Time Status 1 2 2 1 0.0 0.2 0.2 3 variables 3 2 2 2 4 0.0 5.5 5.6 3 2 2 3 0.0 40.1 40.2 3 4 2 2 15 0.0 10.8 11.6 3 5 2 5 10 0.0 3.8 4.0 3 6 2 2 1 0.0 0.5 0.5 3 7 2 3 4 0.0 15.5 15.6 3 8 2 2 1 0.0 0.4 0.5 3 9 2 2 1 0.0 3.0 3.0 3 10 3 4 1 0.0 5.4 5.4 3 11 4 5 1 0.0 84.8 84.8 3 12 5 6 1 0.0 1652 1652 3 13 2 3 1 0.0 0.7 0.7 3 14 3 3 2 0.2 18.9 19.2 3 15 3 5 2 0.8 44.0 44.9 3 16 3 2 7 0.7 36.1 37.2 3 17 3 2 11 0.8 165.5 167.0 3 18 4 2 11 – > 1hr – 6 19 4 2 13 – > 1hr – 6 20 5 2 1 – > 1hr – 6

  37. IMPROVING NONLINEAR SOLVING

  38. Use Relaxations • Use LMI/SDP relaxations. – Replace dReal with a mixed cone optimization problem. • Polynomial time but numerical procedures. – Tricky to formulate. • Solve all but one benchmark. – Results need post-verification due to possible numerical errors.

  39. FUTURE WORK

  40. More Work • Safety + Stability Synthesis. – Reach While Avoid Properties. – Handling state spaces with obstacles. • Handle more general temporal objectives • Future: Stochastic system stabilization. – “Control” super-martingales.

  41. Thank You Supported in part by US NSF CAREER Award # 0953941.

Recommend


More recommend