20.07.2013 Views

Linear Matrix Inequalities (LMI) Positive Cone on Sn Positiveness on ...

Linear Matrix Inequalities (LMI) Positive Cone on Sn Positiveness on ...

Linear Matrix Inequalities (LMI) Positive Cone on Sn Positiveness on ...

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.

<str<strong>on</strong>g>Positive</str<strong>on</strong>g> <str<strong>on</strong>g>C<strong>on</strong>e</str<strong>on</strong>g> <strong>on</strong> S n<br />

<str<strong>on</strong>g>Linear</str<strong>on</strong>g> <str<strong>on</strong>g>Matrix</str<strong>on</strong>g> <str<strong>on</strong>g>Inequalities</str<strong>on</strong>g> (<str<strong>on</strong>g>LMI</str<strong>on</strong>g>)<br />

Γ := {X : X ∈ S n , x T Xx ≥ 0, ∀x ∈ R n },<br />

int Γ = {X : X ∈ S n , x T Xx > 0, ∀x ∈ R n , x = Θ}.<br />

<str<strong>on</strong>g>Positive</str<strong>on</strong>g>ness <strong>on</strong> S n Given X ∈ S n the following statements are equivalent:<br />

a) X is positive semidefinite.<br />

b) X ∈ Γ (X Θ).<br />

c) λmin(X) ≥ 0 (λmax(−X) ≤ 0).<br />

a) X is positive definite.<br />

b) X ∈ int Γ (X ≻ Θ).<br />

c) λmin(X) > 0 (λmax(−X) < 0).<br />

Negativeness <strong>on</strong> S n A matrix X ∈ S n is negative (semi)definite if (−X Θ) −X ≻ Θ.<br />

Notati<strong>on</strong>: X ≺ Θ (X Θ).<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 1


<str<strong>on</strong>g>Linear</str<strong>on</strong>g> <str<strong>on</strong>g>Matrix</str<strong>on</strong>g> <str<strong>on</strong>g>Inequalities</str<strong>on</strong>g> (<str<strong>on</strong>g>LMI</str<strong>on</strong>g>)<br />

Affine functi<strong>on</strong>al The functi<strong>on</strong>al f : X → S n is affine if<br />

f(αx + (1 − α)y) = αf(x) + (1 − α)f(y), ∀x, y ∈ X, α ∈ R,<br />

Propositi<strong>on</strong> The set {x : f(x) Θ} (or {x : f(x) ≺ Θ}), where f : X → S n is an<br />

affine functi<strong>on</strong>al, is a c<strong>on</strong>vex set.<br />

Propositi<strong>on</strong> The set {x : f(x) Θ} (or {x : f(x) ≻ Θ}), where f : X → S n is an<br />

affine functi<strong>on</strong>al, is a c<strong>on</strong>vex set.<br />

Proof An affine functi<strong>on</strong>al is simultaneously c<strong>on</strong>vex and c<strong>on</strong>cave.<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 2


<str<strong>on</strong>g>Linear</str<strong>on</strong>g> <str<strong>on</strong>g>Matrix</str<strong>on</strong>g> <str<strong>on</strong>g>Inequalities</str<strong>on</strong>g> (<str<strong>on</strong>g>LMI</str<strong>on</strong>g>)<br />

Definiti<strong>on</strong> Let f : X → S n be an affine functi<strong>on</strong>al. The functi<strong>on</strong>al inequalities<br />

f(x) Θ or f(x) Θ<br />

are known as <str<strong>on</strong>g>Linear</str<strong>on</strong>g> <str<strong>on</strong>g>Matrix</str<strong>on</strong>g> <str<strong>on</strong>g>Inequalities</str<strong>on</strong>g> (<str<strong>on</strong>g>LMI</str<strong>on</strong>g>). The functi<strong>on</strong>al inequalities<br />

are strict <str<strong>on</strong>g>LMI</str<strong>on</strong>g>.<br />

Examples<br />

f(x) ≺ Θ or f(x) ≻ Θ<br />

1. f : S n → S n , f(X) := A T X + XA + Q Θ.<br />

2. f : S n → S n , f(X) := A T X + XA ≺ Θ.<br />

3. f : <strong>Sn</strong> → <strong>Sn</strong> , f(X) := AT XA − X + Q Θ.<br />

4. f : <strong>Sn</strong> → S2n ⎡<br />

, f(X) := ⎣ X AT ⎤<br />

XA<br />

X<br />

⎦ ≻ Θ.<br />

X<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 3


Semidefinite programming (SDP)<br />

Propositi<strong>on</strong> All affine functi<strong>on</strong>al F : X → S n where X is a finite dimensi<strong>on</strong>al space with<br />

F = R can be put in the can<strong>on</strong>ical form<br />

Example<br />

F (x) Θ, F (x) := F0 +<br />

m<br />

i=1<br />

Fixi, Fi ∈ S n , x ∈ R m .<br />

1. G(X) := AT X + XA + Q Θ, X ∈ S2 .<br />

⎡<br />

X = ⎣ x1<br />

⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤<br />

x2 1<br />

⎦ = ⎣<br />

0<br />

0 0<br />

⎦ x1 + ⎣<br />

0 1<br />

1 0<br />

⎦ x2 + ⎣<br />

0 0<br />

0<br />

⎦ x3 =<br />

1<br />

x2 x3<br />

=⇒ −G(X) = −Q<br />

<br />

F0<br />

+<br />

3<br />

i=1<br />

−(A T Xi + XiA)<br />

<br />

2. G(µ, X) := µ − tr CXC T Θ, µ ∈ R, X ∈ S 2 .<br />

G(µ, X) = µ − tr CXC T = 1<br />

<br />

Fi<br />

µ +<br />

3<br />

i=1<br />

Fi<br />

3<br />

Xixi, x ∈ R 3 .<br />

i=1<br />

− tr T<br />

CXiC<br />

<br />

Fi<br />

xi = F (x)<br />

xi = F (µ, x)<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 4


Can<strong>on</strong>ical Semidefinite Program<br />

Remarks<br />

Semidefinite programming (SDP)<br />

min<br />

x∈R m<br />

cT x<br />

s.t. F (x) Θ<br />

• Several <str<strong>on</strong>g>LMI</str<strong>on</strong>g> Fj(x) Θ, j = 1, . . . , N can be handled by stacking Fj(x) as a block<br />

diag<strong>on</strong>al c<strong>on</strong>straint<br />

F (x) = block diag [F1(x), . . . , Fj(x), . . . , FN ] Θ.<br />

• Most solvers require the user to generate Fis (SeDuMi, SDP, SDPHA).<br />

• Some solvers automatically generate Fis from the original high level matrix descripti<strong>on</strong><br />

(<str<strong>on</strong>g>LMI</str<strong>on</strong>g>Tool, <str<strong>on</strong>g>LMI</str<strong>on</strong>g>Solve).<br />

• <str<strong>on</strong>g>LMI</str<strong>on</strong>g>Lab (Matlab) requires the user to input data in “intermediate level” matrix form<br />

(F (X) = <br />

i AiXBi).<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 5


<str<strong>on</strong>g>LMI</str<strong>on</strong>g> with equality c<strong>on</strong>straints (LME)<br />

Semidefinite programming (SDP)<br />

1. f : R n×n → S n , f(X) := A T X + XA + Q Θ, X = X T .<br />

2. f : R n×n → S n , f(X) := A T X + XA ≺ Θ, CX = B T .<br />

Can<strong>on</strong>ical SDP with equality c<strong>on</strong>straints<br />

min<br />

x∈R m<br />

cT x<br />

s.t. F (x) Θ<br />

Ax = b<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 6


Eliminati<strong>on</strong> of equality c<strong>on</strong>straints<br />

Solve<br />

Ax = b ⇒<br />

Semidefinite programming (SDP)<br />

¯x(y) = A † b + A ⊥ y, y ∈ R p<br />

(p = dim A ⊥ ),<br />

c T ¯x(y) = ˜c0 + ˜c T y, ˜c0 := c T A † b, ˜c := A ⊥T c,<br />

˜F (y) := F (¯x(y)),<br />

and substitute back into the original problem! Notice that<br />

min<br />

x∈Rn ,Ax=b cT x = min<br />

y∈Rp cT ¯x(y) = min<br />

y∈Rp This provides the standard SDP<br />

min<br />

y∈R p<br />

˜cT y<br />

s.t. ˜F (y) Θ.<br />

˜c0 + ˜c T y = ˜c0 + min<br />

y∈R p ˜cT y<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 7


<str<strong>on</strong>g>Linear</str<strong>on</strong>g> Programming<br />

Equivalent SDP<br />

Scope of Semidefinite Programming<br />

min<br />

x∈R m<br />

min<br />

x∈R m<br />

cT x<br />

s.t. Ax b<br />

cT x<br />

s.t. F (x) Θ,<br />

where F (x) := block diag [Aix − bi], Ai is the ith row of A.<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 8


Scope of Semidefinite Programming<br />

C<strong>on</strong>gruence Transformati<strong>on</strong> Two matrices X, Y ∈ S n are said to be c<strong>on</strong>gruent if there<br />

exists a n<strong>on</strong>singular matrix T ∈ R n×n such that Y = T T XT .<br />

Propositi<strong>on</strong> If X and Y are c<strong>on</strong>gruent then Y ≻ Θ if, and <strong>on</strong>ly if, X ≻ Θ.<br />

Proof If X ≻ Θ then x T Xx > 0, ∀x ∈ R n , x = Θ. Since X and Y are c<strong>on</strong>gruent there<br />

exists T n<strong>on</strong>singular such that Y = T T XT . Hence, using the fact that T is n<strong>on</strong>singular, for all<br />

x = Θ, the vector y := T −1 x = Θ and<br />

X ≻ Θ ⇔ x T Xx = y T T T XT y = y T Y y > 0 ⇔ Y ≻ Θ<br />

Generalizati<strong>on</strong> For any T ∈ R m×n , the matrix Y = T T XT Θ if X Θ. The<br />

c<strong>on</strong>verse is false when T does not have full row rank; example: t = 0, x = −1, y = t 2 x ≥ 0.<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 9


Scope of Semidefinite Programming<br />

Schur Complement For all X ∈ S n , Y ∈ R m×n , Z ∈ S m , the following statements are<br />

equivalent:<br />

a) Z ≻ Θ, X − Y T Z−1 ⎡<br />

Y ≻ Θ.<br />

⎤<br />

b)<br />

X<br />

⎣<br />

Y<br />

T Y<br />

⎦ ≻ Θ.<br />

Z<br />

Proof Assume Z ≻ Θ. The n<strong>on</strong>singular matrix<br />

⎡<br />

I<br />

T = ⎣<br />

−Z<br />

Θ<br />

−1 ⎤<br />

Y<br />

⎦<br />

I<br />

a) Z ≻ Θ, X − Y T Z−1Y Θ.<br />

⎡ ⎤<br />

b) Z ≻ Θ,<br />

X<br />

⎣<br />

Y<br />

T Y<br />

⎦ Θ.<br />

Z<br />

establishes the c<strong>on</strong>gruence transformati<strong>on</strong><br />

T T<br />

⎡ ⎤ ⎡<br />

X<br />

⎣<br />

Y<br />

T Y<br />

⎦ T = ⎣<br />

Z<br />

X − Y T Z−1 ⎤<br />

Y<br />

Θ<br />

Θ<br />

⎦ ≻ Θ( Θ).<br />

Z<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 10


Quadratic Programming (c<strong>on</strong>vex)<br />

Using Schur complement<br />

Equivalent SDP<br />

Scope of Semidefinite Programming<br />

min<br />

x∈R m<br />

xT Q T Qx + c T x<br />

s.t. Ax b<br />

γ ≥ x T Q T Qx + c T x ⇔ FQ(γ, x) :=<br />

min<br />

γ∈R,x∈R m<br />

γ<br />

⎡<br />

s.t. F (x) Θ,<br />

⎣ γ − cT x x T Q T<br />

Qx I<br />

where F (γ, x) = block diag [FQ(γ, x), Aix − bi], Ai is the ith row of A.<br />

⎤<br />

⎦ Θ<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 11


Minimum <str<strong>on</strong>g>Matrix</str<strong>on</strong>g> Norm<br />

min<br />

X∈R m×n<br />

Scope of Semidefinite Programming<br />

A − BXC 2 , where M := λ 1/2<br />

max [M T M]<br />

Notice that<br />

T<br />

γ ≥ λmax (A − BXC) (A − BXC) ⇔<br />

T<br />

γI (A − BXC) (A − BXC)<br />

Using Schur complement<br />

γI (A − BXC) T (A − BXC) ⇔ F (γ, X) :=<br />

Equivalent SDP<br />

min<br />

γ∈R,X∈R m×n<br />

γ<br />

s.t. F (γ, X) Θ,<br />

⎡<br />

γI (A − BXC)<br />

⎣<br />

T<br />

⎤<br />

⎦ Θ.<br />

(A − BXC) I<br />

280B - <str<strong>on</strong>g>Linear</str<strong>on</strong>g> C<strong>on</strong>trol Design Maurício de Oliveira Introducti<strong>on</strong> to <str<strong>on</strong>g>LMI</str<strong>on</strong>g> – p. 12

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

Saved successfully!

Ooh no, something went wrong!