20.01.2015 Views

Lecture 22 - Illinois Institute of Technology

Lecture 22 - Illinois Institute of Technology

Lecture 22 - Illinois Institute of Technology

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Stabilization via LMIs<br />

Matthew M. Peet<br />

<strong>Illinois</strong> <strong>Institute</strong> <strong>of</strong> <strong>Technology</strong><br />

<strong>Lecture</strong> <strong>22</strong>: Stabilization via LMIs


Linear Matrix Inequalities<br />

Review<br />

Linear Matrix Inequalities are <strong>of</strong>ten a Simpler way to solve control problems.<br />

Semidefinite Programming<br />

min c T x :<br />

Y 0 + ∑ i<br />

x i Y i > 0<br />

Here the Y i are symmetric matrices.<br />

Linear Matrix Inequalities<br />

Findx :<br />

Y 0 + ∑ i<br />

x i Y i > 0<br />

Commonly Takes the Form<br />

FindX :<br />

∑<br />

A i XB i + Q > 0<br />

i<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 2 / 19


Lyapunov Theory<br />

LMIs unite time-domain and frequency-domain analysis<br />

Theorem 1 (Lyapunov).<br />

Suppose there exists a continuously differentiable function V for which V (0) = 0<br />

and V (x) > 0 for x ≠ 0. Furthermore, suppose lim ‖x‖→∞ V (x) = ∞ and<br />

V (x(t + h)) − V (x(t))<br />

lim<br />

= d<br />

h→0 + h<br />

dt V (x(t)) < 0<br />

for any x such that ẋ(t) = f(x(t)). Then for any x(0) ∈ R the system <strong>of</strong><br />

equations<br />

ẋ(t) = f(x(t))<br />

has a unique solution which is stable in the sense <strong>of</strong> Lyapunov.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 3 / 19


The Lyapunov Inequality<br />

Lemma 2.<br />

A is Hurwitz if and only if there exists a P > 0 such that<br />

A T P + P A < 0<br />

Pro<strong>of</strong>.<br />

Suppose there exists a P > 0 such that A T P + P A < 0.<br />

• Define the Lyapunov function V (x) = x T P x.<br />

• Then V (x) > 0 for x ≠ 0 and V (0) = 0.<br />

• Furthermore,<br />

˙V (x(t)) = ẋ(t) T P x(t) + x(t) T P ẋ(t)<br />

= x(t) T A T P x(t) + x(t) T P Ax(t)<br />

= x(t) T ( A T P + P A ) x(t)<br />

• Hence ˙V (x(t)) < 0 for all x ≠ 0. Thus the system is globally stable.<br />

• Global stability implies A is Hurwitz.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 4 / 19


The Lyapunov Inequality<br />

Pro<strong>of</strong>.<br />

For the other direction, if A is Hurwitz, let<br />

P =<br />

∫ ∞<br />

• Converges because A is Hurwitz.<br />

∫<br />

• Furthermore ∞<br />

P A = e AT s e As Ads<br />

=<br />

=<br />

0<br />

∫ ∞<br />

0<br />

0<br />

e AT s Ae As ds =<br />

[<br />

e AT s e As ] ∞<br />

0<br />

= −I −<br />

∫ ∞<br />

• Thus P A + A T P = −I < 0.<br />

0<br />

e AT s e As ds<br />

∫ ∞<br />

e AT s d (<br />

e<br />

As ) ds<br />

0 ds<br />

∫ ∞<br />

d<br />

−<br />

s 0 ds eAT e −As<br />

A T e AT s e −As = −I − A T P<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 5 / 19


The Lyapunov Inequality<br />

Other Versions:<br />

Lemma 3.<br />

(A, B) is controllable if and only if there exists a X > 0 such that<br />

A T X + XA + BB T ≤ 0<br />

Lemma 4.<br />

(C, A) is stabilizable if and only if there exists a X > 0 such that<br />

AX + XA T + C T C ≤ 0<br />

These also yield Lyapunov functions for the system.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 6 / 19


The Static State-Feedback Problem<br />

Lets start with the problem <strong>of</strong> stabilization.<br />

Definition 5.<br />

The Static State-Feedback Problem is to find a feedback matrix K such that<br />

ẋ(t) = Ax(t) + Bu(t)<br />

u(t) = Kx(t)<br />

is stable<br />

We have already solved the problem earlier using the Controllability Grammian.<br />

• Find K such that A + BK is Hurwitz.<br />

Can also be put in LMI format:<br />

Find X > 0, K :<br />

X(A + BK) + (A + BK) T X < 0<br />

Problem: Bilinear in K and X.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 7 / 19


The Static State-Feedback Problem<br />

• The bilinear problem in K and X is a common paradigm.<br />

• Bilinear optimization is not convex.<br />

• To convexify the problem, we use a change <strong>of</strong> variables.<br />

Problem 1:<br />

Problem 2:<br />

Definition 6.<br />

Find X > 0, K :<br />

X(A + BK) + (A + BK) T X < 0<br />

Find P > 0, Z :<br />

AP + BZ + P A T + ZB T < 0<br />

Two optimization problems are equivalent if a solution to one will provide a<br />

solution to the other.<br />

Theorem 7.<br />

Problem 1 is equivalent to Problem 2.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 8 / 19


The Dual Lyapunov Equation<br />

Problem 1:<br />

Find X > 0, :<br />

Lemma 8.<br />

XA + A T X < 0<br />

Problem 1 is equivalent to problem 2.<br />

Problem 2:<br />

Find Y > 0, :<br />

Y A T + AY < 0<br />

Pro<strong>of</strong>.<br />

First we show 1) solves 2). Suppose X > 0 is a solution to Problem 1. Let<br />

Y = X −1 > 0.<br />

• If XA + A T X < 0, then<br />

• Hence<br />

X −1 (XA + A T X)X −1 < 0<br />

X −1 (XA + A T X)X −1 = AX −1 + X −1 A T = AY + Y A T < 0<br />

• Therefore, Problem 2 is feasible with solution Y = X −1 .<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 9 / 19


The Dual Lyapunov Equation<br />

Problem 1:<br />

Find X > 0, :<br />

XA + A T X < 0<br />

Problem 2:<br />

Find Y > 0, :<br />

Y A T + AY < 0<br />

Pro<strong>of</strong>.<br />

Now we show 2) solves 1) in a similar manner. Suppose Y > 0 is a solution to<br />

Problem 1. Let X = Y −1 > 0.<br />

• Then<br />

XA + A T X = X(AX −1 + X −1 A T )X<br />

= X(AY + Y A T )X < 0<br />

Conclusion: If V (x) = x T P x proves stability <strong>of</strong> ẋ = Ax,<br />

• Then V (x) = x T P −1 x proves stability <strong>of</strong> ẋ = A T x.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 10 / 19


The Stabilization Problem<br />

Thus we rephrase Problem 1<br />

Problem 1:<br />

Find P > 0, K :<br />

(A + BK)P + P (A + BK) T < 0<br />

Theorem 9.<br />

Problem 1 is equivalent to Problem 2.<br />

Problem 2:<br />

Find X > 0, Z :<br />

AX + BZ + XA T + ZB T < 0<br />

Pro<strong>of</strong>.<br />

We will show that 2) Solves 1). Suppose X > 0, Z solves 2). Let P = X > 0<br />

and K = ZP −1 . Then Z = KP and<br />

(A + BK)P + P (A + BK) T = AP + P A T + BKP + P K T B T<br />

= AP + P A T + BZ + Z T B T < 0<br />

Now suppose that P > 0 and K solve 1). Let X = P > 0 and Z = KP . Then<br />

AP + P A T + BZ + Z T B T = (A + BK)P + P (A + BK) T < 0<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 11 / 19


The Stabilization Problem<br />

The result can be summarized more succinctly<br />

Theorem 10.<br />

(A, B) is static-state-feedback stabilizable if and only if there exists some P > 0<br />

and Z such that<br />

AP + P A T + BZ + Z T B T < 0<br />

with u(t) = ZP −1 x(t).<br />

Standard Format:<br />

[ ] [ ]<br />

P A B + [ P Z ] [ ]<br />

Z<br />

T A T<br />

B T < 0<br />

There are a number <strong>of</strong> general-purpose LMI solvers available. e.g.<br />

• SeDuMi - Free<br />

• LMI Lab - in Matlab Robust Control Toolbox (in Computer lab)<br />

• YALMIP - A nice front end for several solvers (Free)<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 12 / 19


The Schur complement<br />

Before we get to the main result, recall the Schur complement.<br />

Theorem 11 (Schur Complement).<br />

For any S ∈ S n , Q ∈ S m and R ∈ R n×m , the following are equivalent.<br />

[ ] M R<br />

1.<br />

R T > 0<br />

Q<br />

2. Q > 0 and M − RQ −1 R T > 0<br />

A commonly used property <strong>of</strong> positive matrices.<br />

Also Recall: If X > 0,<br />

• then X − ɛI > 0 for ɛ sufficiently small.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 13 / 19


The KYP Lemma (AKA: The Bounded Real Lemma)<br />

The most important theorem in this class.<br />

Lemma 12.<br />

Suppose<br />

Then the following are equivalent.<br />

• ‖G‖ H∞ ≤ γ.<br />

[ A B<br />

Ĝ(s) =<br />

C D<br />

• There exists a X > 0 such that<br />

[ ]<br />

A T X + XA XB<br />

B T + 1 [ ] C<br />

T [C ] D < 0<br />

X −γI γ D T<br />

]<br />

.<br />

Can be used to calculate the H ∞ -norm <strong>of</strong> a system<br />

• Originally used to solve LMI’s using graphs. (Before Computers)<br />

• Now used directly instead <strong>of</strong> graphical methods like Bode.<br />

The feasibility constraints are linear<br />

• Can be combined with other methods.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 14 / 19


The KYP Lemma<br />

Pro<strong>of</strong>.<br />

We will only show that ii) implies i). The other direction requires the<br />

Hamiltonian, which we have not discussed.<br />

• We will show that if y = Gu, then ‖y‖ L2 ≤ γ‖u‖ L2 .<br />

• From the 1 x 1 block <strong>of</strong> the LMI, we know that A T X + XA < 0, which<br />

means A is Hurwitz.<br />

• Because the inequality is strict, there exists some ɛ > 0 such that<br />

[ ]<br />

A T X + XA XB<br />

B T + 1 [ ]<br />

C<br />

T [C ] D<br />

X −(γ − ɛ)I γ D T<br />

[ ]<br />

A<br />

=<br />

T X + XA XB<br />

B T + 1 [ ] [ ]<br />

C<br />

T [C ] 0 0<br />

D +<br />

X −γI γ D T < 0<br />

0 ɛI<br />

• Let y = Gu. Then the state-space representation is<br />

y(t) = Cx(t) + Du(t)<br />

ẋ(t) = Ax(t) + Bu(t) x(0) = 0<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 15 / 19


The KYP Lemma<br />

Pro<strong>of</strong>.<br />

• Let V (x) = x T Xx. Then the LMI implies<br />

[ ] [ T [A ]<br />

x(t)<br />

T X + XA XB<br />

u(t) B T + 1 X −(γ − ɛ)I γ<br />

[ ] T [ [ ]<br />

x A<br />

=<br />

T X + XA XB x<br />

u B T +<br />

X −(γ − ɛ)I] 1 [<br />

x<br />

u γ u<br />

[ ] T [ [ ]<br />

x A<br />

=<br />

T X + XA XB x<br />

u B T +<br />

X −(γ − ɛ)I] 1 u γ yT y<br />

[<br />

C<br />

T<br />

D T ] [C<br />

] ] [ ]<br />

x(t)<br />

D<br />

u(t)<br />

] T [<br />

C<br />

T<br />

D T ] [C<br />

] [ ]<br />

x D<br />

u<br />

= x T (A T X + XA)x + x T XBu + u T B T Xx − (γ − ɛ)u T u + 1 γ yT y<br />

= (Ax + Bu) T Xx + x T X(Ax + Bu) − (γ − ɛ)u T u + 1 γ yT y<br />

= ẋ(t) T Xx(t) + x(t) T Xẋ(t) − (γ − ɛ)‖u(t)‖ 2 + 1 γ ‖y(t)‖2<br />

= ˙V (x(t)) − (γ − ɛ)‖u(t)‖ 2 + 1 γ ‖y(t)‖2 < 0<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 16 / 19


The KYP Lemma<br />

Pro<strong>of</strong>.<br />

• Now we have ˙V (x(t)) − (γ − ɛ)‖u(t)‖ 2 + 1 γ ‖y(t)‖2 < 0<br />

• Integrating in time, we get<br />

∫ T<br />

(<br />

˙V (x(t)) − (γ − ɛ)‖u(t)‖ 2 + 1 γ ‖y(t)‖2) dt<br />

0<br />

= V (x(T )) − V (x(0)) − (γ − ɛ)<br />

∫ T<br />

0<br />

‖u(t)‖ 2 dt + 1 γ<br />

• Because A is Hurwitz, lim t→∞ x(t) = 0.<br />

• Hence lim t→∞ V (x(t)) = 0.<br />

• Likewise, because x(0) = 0, we have V (x(0)) = 0.<br />

∫ T<br />

0<br />

‖y(t)‖ 2) dt < 0<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 17 / 19


The KYP Lemma<br />

Pro<strong>of</strong>.<br />

• Since V (x(0)) = V (x(∞)) = 0,<br />

[<br />

lim ˙V (x(T )) − ˙V (x(0)) − (γ − ɛ)<br />

T →∞<br />

= 0 − 0 − (γ − ɛ)<br />

∫ ∞<br />

0<br />

‖u(t)‖ 2 dt + 1 γ<br />

= −(γ − ɛ)‖u‖ 2 L 2<br />

+ 1 γ ‖y‖2 L 2<br />

dt < 0<br />

∫ T<br />

0<br />

∫ ∞<br />

0<br />

‖u(t)‖ 2 dt + 1 γ<br />

‖y(t)‖ 2 dt<br />

∫ T<br />

0<br />

‖y(t)‖ 2) ]<br />

dt<br />

• Thus<br />

‖y‖ 2 L 2<br />

dt < (γ 2 − ɛγ)‖u‖ 2 L 2<br />

• By definition, this means ‖G‖ 2 H ∞<br />

≤ (γ 2 − ɛγ) < γ 2 or<br />

‖G‖ H∞ < γ<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 18 / 19


The Positive Real Lemma<br />

A Passivity Condition<br />

A Variation on the KYP lemma is the positive-real lemma<br />

Lemma 13.<br />

Suppose<br />

Then the following are equivalent.<br />

[ A B<br />

Ĝ(s) =<br />

C D<br />

• G is passive. i.e. (〈u, Gu〉 L2 ≥ 0).<br />

• There exists a P > 0 such that<br />

[ ]<br />

A T P + P A P B − C T<br />

B T P − C −D T ≤ 0<br />

− D<br />

]<br />

.<br />

M. Peet <strong>Lecture</strong> <strong>22</strong>: 19 / 19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!