Szemidenit optimalizálás és az S-lemma Pólik Imre SAS Institute, USA BME Optimalizálás szeminárium 2011. október 6.
Outline 1 Egyenl tlenségrendszerek megoldhatósága 2 Az S-lemma 3 Szemidenit kapcsolatok 4 Szemidenit optimalizálás 5 Alkalmazások 6 Kutatási irányok
Egyenl tlenségrendszerek megoldhatósága Feladat Honnan tudjuk, hogy az f(x) < 0 g i (x) 0, i = 1,..., m rendszernek nincs megoldása? (f, g i : R n R) Példa x 2 1 x 2 2 + 4x 1 x 2 < 0 x 2 2 x 1 x 2 0
Egyenl tlenségrendszerek megoldhatósága Feladat Honnan tudjuk, hogy az f(x) < 0 g i (x) 0, i = 1,..., m rendszernek nincs megoldása? (f, g i : R n R) Példa x 2 1 x 2 2 + 4x 1 x 2 < 0 x 2 2 x 1 x 2 0 Elégséges feltétel ( x 2 1 x 2 2 + 4x 1 x 2 ) +2 ( x 2 2 x 1 x 2 ) = x 2 1 +2x 1 x 2 +x 2 2 = (x 1 +x 2 ) 2 0
Egyenl tlenségrendszerek megoldhatósága Elégséges feltétel Tetsz leges f, g i esetén y R m, y 0 m f(x) + y i g i (x) i=1 0, x R n x R n f(x) < 0 g i (x) 0, i = 1,..., m
Egyenl tlenségrendszerek megoldhatósága Elégséges feltétel Tetsz leges f, g i esetén y R m, y 0 m f(x) + y i g i (x) i=1 0, x R n? x R n f(x) < 0 g i (x) 0, i = 1,..., m
Egyenl tlenségrendszerek megoldhatósága Ekvivalens feltétel Ha f és g i konvex függvények és x R n : g i (x) < 0, akkor y R m, y 0 m f(x) + y i g i (x) i=1 0, x R n x R n f(x) < 0 g i (x) 0, i = 1,..., m
Az S-lemma Yakubovich (1971) Ha f, g : R n R kvadratikus függvények és x R n : g(x) < 0, akkor y 0 f(x) + y g(x) 0, x R n x R n f(x) < 0 g(x) 0 Konvexitás nélkül!
Kitér Kvadratikus függvény (homogén) f(x) = x T Ax, A R n n szimmetrikus Konvex kvadratikus függvény Ha A 0 (pozitív szemidenit), vagyis x T Ax 0, x R n. Mátrixok skalárszorzata U V = Tr (UV ) = n i,j=1 U ijv ij x T Ax = Tr ( x T Ax ) = Tr ( Axx T ) = Tr ( A(xx T ) ) = A xx T
Az S-lemma, homogén alak Yakubovich (1971) A, B R n n és x R n : x T Bx < 0, akkor y 0 x T Ax + y x T Bx 0, x R n x R n x T Ax < 0 x T Bx 0
Az S-lemma, homogén alak Yakubovich (1971) A, B R n n és x R n : x T Bx < 0, akkor y 0 A + yb 0 (PSD) x R n x T Ax < 0 x T Bx 0
Az S-lemma Miért? Konvexitás nélkül! Rejtett konvexitás Alkalmazások Ljapunov-féle stabilitásvizsgálat Ellipszoidtartalmazás Számítógépes graka
Klasszikus bizonyítás A primál feladat nem megoldható x : x T Ax < 0, x T Bx 0 R R { (x T Ax, x T Bx) : x R n} = }{{} konvex! (Dines, 1941)
Klasszikus bizonyítás A primál feladat nem megoldható x : x T Ax < 0, x T Bx 0 R R { (x T Ax, x T Bx) : x R n} = }{{} konvex! (Dines, 1941) Kicsit általánosabb eredmény (Poljak, 1998) n 3, az A, B 1, B 2 mátrixoknak van PD lineáris kombinációjuk { (x T Ax, x T B 1 x, x T B 2 x) : x R n} konvex
Klasszikus bizonyítás A primál feladat nem megoldható x : x T Ax < 0, x T Bx 0 R R { (x T Ax, x T Bx) : x R n} = }{{} konvex! (Dines, 1941) Kicsit általánosabb eredmény (Poljak, 1998) n 3, az A, B 1, B 2 mátrixoknak van PD lineáris kombinációjuk { (x T Ax, x T B 1 x, x T B 2 x) : x R n} konvex Szeparációs bizonyítás Norma-feltétel
{ Figure: (x T Ax, x T Bx) : x R n} ( 2 0 A = 0 1 ) ( 3 1, B = 1 0 ) Vissza a konvexitáshoz!
Modern bizonyítás Szemidenit relaxáció x T Ax < 0 x T Bx 0 x R n
Modern bizonyítás Szemidenit relaxáció x T Ax < 0 A xx T < 0 x T Bx 0 B xx T 0 x R n
Modern bizonyítás Szemidenit relaxáció x T Ax < 0 A xx T < 0 A X < 0 x T Bx 0 B xx T 0 B X 0 x R n rank (X) = 1 X 0
Modern bizonyítás Szemidenit relaxáció x T Ax < 0 A xx T < 0 A X < 0 x T Bx 0 B xx T 0 B X 0 x R n rank (X) = 1 X 0
Modern bizonyítás Szemidenit relaxáció x T Ax < 0 A xx T < 0 A X < 0 x T Bx 0 B xx T 0 B X 0 x R n rank (X) = 1 X 0 Pataki, 1998 A S n an altér, dim A ( ) ( n 2 r+2 ) 2 + 1, PS n A X PS n A, amelyre rank (X) r.
Modern bizonyítás Szemidenit relaxáció x T Ax < 0 A xx T < 0 A X < 0 x T Bx 0 B xx T 0 B X 0 x R n rank (X) = 1 X 0 Pataki, 1998 A S n an altér, dim A ( ) ( n 2 r+2 ) 2 + 1, PS n A X PS n A, amelyre rank (X) r. Barvinok, 2001 A S n an altér, dim A = ( ) ( n 2 r+2 ) 2, PS n A és korlátos X PS n A, amelyre rank (X) r.
A rangfeltétel és a konvexitás ekvivalenciája Az { (x T Ax, x T Bx) : x R n} halmaz konvexitása y, z R n, λ [0, 1] Kell: x R n x T Ax = λy T Ay + (1 λ)z T Az x T Bx = λy T By + (1 λ)z T Bz
A rangfeltétel és a konvexitás ekvivalenciája Az { (x T Ax, x T Bx) : x R n} halmaz konvexitása y, z R n, λ [0, 1] Kell: x R n x T Ax = λy T Ay + (1 λ)z T Az x T Bx = λy T By + (1 λ)z T Bz X = xx T a következ rendszer 1-rangú megoldása A X = λy T Ay + (1 λ)z T Az B X = λy T By + (1 λ)z T Bz Pataki: létezik 1-rangú megoldás
Bizonyítás Helly-tétellel H x = { y 0 : x T Ax + y x T Bx 0 } R H x tulajdonságai konvex zárt bármelyik kett metszete nemüres = x H x, vagyis y 0 : x T Ax + y x T Bx 0, x R n
Bizonyítás Helly-tétellel H x = { y 0 : x T Ax + y x T Bx 0 } R H x tulajdonságai konvex zárt bármelyik kett metszete nemüres van köztük korlátos! (Slater-feltétel) = x H x, vagyis y 0 : x T Ax + y x T Bx 0, x R n
Elemi bizonyítás Yuan, 1990 A, B R n n szimmetrikus mátrixok, F, G R n zárt halmazok, F G = R n. Ha x T Ax 0, x F x T Bx 0, x G, akkor λ [0, 1], amelyre λx T Ax + (1 λ)x T Bx 0, x, vagyis λa + (1 λ)b 0.
Kutatási irányok Általánosítás több egyenlet speciális mátrixok speciális egyenl tlenségek Alkalmazások
Szemidenit optimalizálás Mátrixváltozó min Tr (CX) max b T y m Tr (A i X) = b i, i = 1,..., m A i y i + S = C X 0 S 0 C, X, S, A i n n-es szimmetrikus mátrixok, b, y R m Speciális struktúra: A i, C lehet ritka, vagy alacsony rangú i=1
Algoritmusok Általában bels pontos módszerek Iterációk: O( n), valójában 50 100 Egy iteráció költsége: O(mn 3 + m 2 n 2 + m 3 ) Megoldható feladatok: m 10000, n 10000 (ritka mátrixokkal több) Nagy pontosság
Implementáció Kezd pont beágyazás nem-megengedett módszerek M veletek ritka mátrixokkal tárolás, szimmetria UV + V U, U + uu T Ux = r megoldása Cholesky-faktorizáció: U = LDL T Iteratív módszerek Speciális struktúrák általános decompozíció (Kojima et al.) egyedi módszerek adott feladatra
Bináris változók relaxációja Bináris változók: x i {0, 1} Lineáris relaxáció: x i [0, 1] Bináris feltétel ekvivalens alakja: z i = 2x i 1 zi 2 = 1 ( z i = ±1) Matrixokkal: Z 0 diag (Z) = 1 rank (Z) = 1( Z = zz T )
Gráfpartícionálás Egy 2m csúcsú élsúlyozott gráf csúcsait osszuk fel két egyenl részre úgy, hogy a két partíció között futó élek összsúlya minimális legyen. A: incidencia mátrix, A kl : a kl él súlya y ij = 1: az i csúcs a j partícióban van (j = 1, 2) y j : a j partíció indikátorvektora y T j Ay j: 2 a j partícióban lév élek összsúlya Tr ( Y T AY ) : 2 az elvágatlan élek összsúlya e T Ae: 2 az élek összsúlya min e T Ae Tr ( Y T AY ) Y partíciómátrix SDP relaxáció (X = Y Y T ) min e T Ae Tr (AX) diag (X) = 1 Xe = m X 0 X 0 rank (X) = 2
Gráfpartícionálás Egy 2m csúcsú élsúlyozott gráf csúcsait osszuk fel két egyenl részre úgy, hogy a két partíció között futó élek összsúlya minimális legyen. A: incidencia mátrix, A kl : a kl él súlya y ij = 1: az i csúcs a j partícióban van (j = 1, 2) y j : a j partíció indikátorvektora y T j Ay j: 2 a j partícióban lév élek összsúlya Tr ( Y T AY ) : 2 az elvágatlan élek összsúlya e T Ae: 2 az élek összsúlya min e T Ae Tr ( Y T AY ) Y partíciómátrix SDP relaxáció (X = Y Y T ) Komplexitás: O(m 6.5 )! min e T Ae Tr (AX) diag (X) = 1 Xe = m X 0 X 0 rank (X) = 2
Polinomoptimalizálás I Tétel Ha p(x) : R R egyváltozós polinom, akkor p(x) 0, x p(x) négyzetösszeg (SOS) Példa p(x) = x 6 5x 4 +6x 3 +8x 2 14x+5
Polinomoptimalizálás I Tétel Ha p(x) : R R egyváltozós polinom, akkor p(x) 0, x p(x) négyzetösszeg (SOS) Példa p(x) = x 6 5x 4 +6x 3 +8x 2 14x+5 = (x 2 +x 1) 2 +(x 3 3x+2) 2
Polinomoptimalizálás I Tétel Ha p(x) : R R egyváltozós polinom, akkor p(x) 0, x p(x) négyzetösszeg (SOS) Példa p(x) = x 6 5x 4 +6x 3 +8x 2 14x+5 = (x 2 +x 1) 2 +(x 3 3x+2) 2 Általában nem igaz: z 6 + x 4 y 2 + x 2 y 4 3x 2 y 2 z 2 0, de nem SOS
Polinomoptimalizálás I Tétel Ha p(x) : R R egyváltozós polinom, akkor p(x) 0, x p(x) négyzetösszeg (SOS) Példa p(x) = x 6 5x 4 +6x 3 +8x 2 14x+5 = (x 2 +x 1) 2 +(x 3 3x+2) 2 Általában nem igaz: z 6 + x 4 y 2 + x 2 y 4 3x 2 y 2 z 2 0, de nem SOS min p(x) max t max t p(x) t 0, x p(x) t is SOS
Polinomoptimalizálás II q = (1, x, x 2,..., x n ) Négyzet: ( n ) 2 ( n ) 2 p(x) = u i x i = u i q i = (u T q) 2 = q T (uu T )q i=0 i=0 SOS: q T Uq, ahol U 0 u 44 = 1 u 34 + u 43 = 0 u 24 + u 33 + u 42 = 5 u 14 + u 23 + u 32 + u 41 = 6 u 13 + u 22 + u 31 = 8 u 21 + u 12 = 14 u 11 = 5 U 0 U = 5 7 1 2 7 10 1 3 1 1 1 0 2 3 0 1 u (1) = ( 1 1 1 0 ) u (2) = ( 2 3 0 1 ) Software: (Gloptipoly, SOSTools), Yalmip
Kutatási irányok 1994 óta nincs lényeges eredmény Speciális struktúrák Új algoritmusok szimplex, perceptron, gravity, megengedett irányok, row-by-row,... Kapcsolódó kutatások SOCP Kopozitív optimalizálás (x T Ux 0, x 0) Egészérték és bináris változók