Diszkrét Matematika MSc hallgatók számára 14. Előadás Előadó: Hajnal Péter Jegyzetelő: Hajnal Péter 2012. Nem maradt rá idő 1. Feltétel nélküli optimalizálás 1.1. Az eljárások alapjai A feltétel nélküli optimalizálásnál a feladatunkat a következőképp lehet megfogalmazni: egy c(x) célfüggvényt kell minimalizálni az egész dom(c) értelmezési tartományon. Korábbi jelöléseinkkel tehát D = L = dom(c). A módszerünk a következő lesz: iterációval szeretnénk közelíteni x -ot: a (0) a (1) a (2)..., ahol mindegyik a (i) L. Az iterációt valamilyen leállási feltételig folytatjuk. Az a pontokat aktuális pontoknak nevezzük. Azt szeretnénk, ha ez a sorozat x -hoz konvergálna (feltéve, hogy c(x) felveszi p - ot, ez speciálisan azt is jelenti, hogy p véges). A megállási feltételt úgy szeretnénk választani, hogy jelezze, hogy x közelében vagyunk. A közelség lehet valamilyen metrikában való közelség, vagy lehet az, hogy c(a (i) ) > p ǫ (egy ǫ-szuboptimális pontban vagyunk). A továbbiakban c(x)-re a következő feltételeket tesszük: c(x) konvex (az egész L-en), c(x) kétszer folytonosan differenciálható (az egész L-en), speciálisan L nyilt, c(x) szigorúan konvex egy az alábbiakban leírt S L halmazon, amely x -ot tartalmazza: azaz alkalmas m > 0 teljesíti, hogy 2 c(x) mi minden x S esetén, ahol 2 c(x) a c(x) Hesse-mátrixa, és azt jelenti, hogy a bal és jobb oldal különbsége pozitív szemidefinit. Most az iteráció szabályait vizsgáljuk: ezeket úgy nevezetett update szabályoknak nevezzük, amelyek segítségével a (k) -ból megkaphatjuk a (k+1) -et. Mi csak olyan, úgy nevezetett uniform szabályokkal foglalkozunk, ahol ez a lépés nem függ k értékétől. Tehát egy a értékből szeretnénk meghatározni a következő iteráció a + értékét. Ez az eljárás két lépésből fog állni: irányválasztás: (a) R n, lépésválasztás: t(a) R 0. 14-1
Ezután a következő iteráció értéke a + = a + t(a) (a) Vizsgáljuk most külön ezt a két lépést. Az irányválasztásnak mindig olyannak kell lennie, hogy I. ( c(a)) (a) < 0, vagyis a függvény a (a) irányba csökken (legalábbis a egy kis környezetében). II. A lépésválasztás az irányválasztás után következik. Itt is olyan választással élünk, hogy a c célfüggvény értéke csökken. Speciálisan az értelmezési tartománynak az algoritmusaink során fellépő értékei mind az S := {x dom c : c(x) c(a (0) )} halmazból kerülnek ki. c konvex, speciálisan folytonos, így S zárt. 1.2. Lépésválasztás A lépésválasztásnál is több lehetőség közül csak kettőt ismertetünk. Ezek leírásához vezessük be a c(t) := c a (t) = c(a + t (a)), t 0 jelölést. 1. lehetőség. Mohó lépésválasztás: t = t(a) legyen a c(t) minimumhelye. 2. lehetőség. Visszakozó lépésválasztás: A konvexitás miatt tudjuk, hogy c(x) c(a) + ( c(a)) (a) x. A jobb oldal egy határt szab arra, hogy a választott irányba haladva milyen gyorsan eshet a célfüggvény értéke. Egy kicsit relaxáljuk a függvény érték csökkenését. Válasszunk most α ( 0, 1 2) és β (0, 1) paramétereket alkalmas módon (ez a probléma jellegétől, az alkalmazási területtől függően más és más lehet). Ekkor az c(a) + α ( c(a)) (a) x > c(x). egyenlőtlenség valamely ǫ > 0 esetén teljesül [0, ǫ) intervallumban. Olyan x = t értékét szeretnénk választani, hogy a relaxált egyenlőtlenség teljesüljön. Először kipróbáljuk a t = 1 értéket; ha ez nem jó, akkor t-t a β-szorosára csökkentjük, és ezt addig folytatjuk, amígy nem teljesül a kívánt egyenlőtlenség (a fentiek miatt ez garantáltan teljesül). A továbbiakban már csak az irányválasztás témakörével foglalkozunk. Ebben az esetben is a sokféle lehetőség közül csupán kettővel foglalkozunk érdemben. Mindegyik esetben a teljes optimalizálási algoritmus úgy alakul ki, hogy az irányválasztási eljárás mellé választjuk az egyik lépésválasztó sémát és leírjuk a leállási szabályt. 14-2
1.3. Irányválasztás: A gradiensmódszer A lépés irányát (a) := c(a) írja le. Ezt az irányválasztást nevezhetjük mohó irányválasztásnak mert lokálisan a lenagyobb növekedést igéri a célfüggvény követésénél. Ezután t = t(a)-t a korábban ismertetett két módszer egyikével határozhatjuk meg. Ennél a módszernél a leállási feltétel, hogy c(a) δ teljesüljön az aktuális helyen egy előre adott δ > 0 konstansra. 1. Lemma. Legyen f egy kétszer differenciálható függvény, amely S-en szigorúan konvex valamely m > 0 paraméterrel. Ekkor minden x, y S esetén (i) (ii) (iii) f(y) f(x) + f(x) (y x) + m 2 y x 2 2, inf f(s) = s S p f(x) 1 2m f(x) 2 2, x x 2 2 m f(x) 2. Bizonyítás. Az (i) pont bizonyítása: legyen x, y S tetszőleges. Ekkor az elsőrendű Taylor-sorfejtés szerint van olyan z [x, y] úgy, hogy f(y) = f(x) + f(x) (y x) + 1 2 (y x) 2 f(z)(y x) f(x) + f(x) (y x) + 1 2 (y x) mi(y x) f(x) + f(x) (y x) + 1 2 m y x 2 2, ahol I az n-dimenziós egységmátrix, és az első egyenlőtlenségben használtuk, hogy f szigorúan konvex. A (ii) pont bizonyítása: Legyen y S tetszőleges. Az (i) pont bizonyítása szerint ahol y 0 az az y érték, amelyre az f(y) f(x) + f(x) (y x) + m 2 y x 2 2 f(x) + f(x) (y 0 x) + m 2 y 0 x 2 2, (1) f(x) + f(x) (y x) + m 2 y x 2 2 kifejezés felveszi a minimumát. Keressük meg egy adott x ponthoz ezt az y 0 -t! A harmadik tag csak y x 2 -tól függ. Ha pedig y x = α adott, akkor a második tag 14-3
csak (y x)-nek a f(x)-hez viszonyított irányától függ. Ez a skalárszorzat pedig akkor lesz minimális, ha y x = α f(x). Ekkor a kifejezésünk α függvényében f(x) α f(x) 2 2 + mα2 2 f(x) 2 2. Ezt a másodfokú függvényt α-ban minimalizálva az optimális α érték 1 -nek adódik, m vagyis a kifejezés minimumát (1)-be beírva f(y) f(x) 1 m f(x) 2 2 + 1 2m f(x) 2 2 = f(x) 1 2m f(x) 2 2. Mivel pedig ez minden y S-re igaz, azért az f függvény S-en felvett infimuma is teljesíti az egyenlőtlenséget. A (iii) pont bizonyítása: az (i) pontba y helyére x -ot írva a következőt kapjuk: Ezt átrendezve pedig p f(x) + f(x) (x x) + m 2 x x 2 2 f(x) f(x) 2 x x 2 + m 2 x x 2 2 p f(x) 2 x x 2 + m 2 x x 2 2. f(x) 2 x x 2 m 2 x x 2 2, ami éppen a bizonyítandó. Mielőtt továbbhaladunk megemlítjük a szigorúan konvexitás feltételének egy következményét. A Lemma (i) pontjából könnyen kiolvasható, hogy f függvény szubszinthalmazai (S τ = {x dom c : f(x) τ} halmazok) korlátosak. Így speciálisan S is korlátos, mellesleg zárt. Azaz S kompakt. Ebből következik, hogy 2 c maximális sajátértéke felveszi maximumát S-en. Azaz alkalmas M konstanssal minden x S esetén 2 c(x) MI. Ahogy az előző Lemma (i) pontját bizonyítottuk most kapjuk, hogy x, y S esetén f(y) f(x) + f(x) (y x) + M 2 y x 2 2. Ezek után nézzük a gradiens módszer (mohó lépés választással) analízisét szigorúan konvex célfüggvény esetén (használva a fogalom mögött rejlő gyakran nehezen becsülhető m és M konstansokat). 2. Tétel. Legyen a c(x) függvény szigorúan konvex S-en, speciálisan létezzenek olyan 0 < m M < konstansok, hogy bármely x S esetén mi 2 c(x) MI teljesüljön. Ekkor a mohó lépésválasztással futtatott gradiensmódszer k-adik lépése teljesíti a 0 c ( a (k)) ( p 1 m ) k (c(a0 ) p ) M egyenlőtlenséget. 14-4
Bizonyítás. Az előző lemma (i) pontját alkalmazzuk. A választott lépéshosszat t m - mel (index a mohó szóból) jelölve, az a aktuális pont után szeretnénk meghatározni az iteráció következő, a + -szal jelölt helyét: c(a + ) = c(a + t m ) = c(a t m c(a)) c(a) t m c(a) 2 2 + Mt2 m 2 c(a) 2 2. Mivel t m -et a mohó lépésválasztás szerint választottuk, ezért ha t m helyébe például - et írunk, a c függvény értéke nem csökkenhet: 1 M c(a + ) c (a + 1M ) c(a) 1 2M c(a) 2 2, azaz c(a + ) p c(a) p 1 2M c(a) 2 2. A lemma (ii) pontját 2m-mel átszorozva (x = a esetben), rendezve kapjuk hogy c(a) 2 2 2m(c(a) p ), azaz c(a + ) p c(a) p 2m 2M (c(a) p ), ( c(a + ) p 1 m ) (c(a) p ). M amiből teljes indukcióval adódik a bizonyítandó. Példa. Tekintsük a c(x) = (x 2 1 + Mx2 2 )/2 célfüggvényt. Ez középiskolai háttérrel is nyilvánvaló optimalizálási probléma. c(x) nemnegatív és egyetlen helyen veszi fel a 0 értéket. Azaz p = 0 és x = (0, 0). Nézzük meg mi lesz, ha a gradiens módszert futtatjuk a mohó lépésválasztással: A célfüggvény az egész R 2 -en szigorúan konvex. m = 1, míg az M paraméter a fent használt M szám. Ha most M 1, akkor m = 1 0. A fenti tétel alapján M M csak lassú konvergenciat látunk. Ez nem elméleti hátterünk gyengeségéből adódik, ez valójában így lesz. Vegyük az a (0) = (M, 1) kezdőértékkel az a (i) = (a (i) 1, a (i) 2 ) aktuális értékek a következő formulával írhatók le: a (i) 1 = M továbbá a célfüggvény értéke c(a (i) ) = M(M + 1) 2 ( M 1 M + 1 ( ) 2i M 1 = M + 1 ) i (, a (i) 2 = M 1 ) i, M + 1 A képletek ellenőrzését az érdeklődő hallgatóra bízzuk. ( ) 2i ( M 1 c(a (0) ) = 1 2 ) 2i c(a (0) ). M + 1 M + 1 14-5
1.4. Irányválasztás: A Newton-módszer A Newton-módszerben először felírjuk a céfüggvény másodrendű Taylor-közelítését a körül: c(a + v) c(a) + c(a) v + 1 2 v 2 c(a)v. Úgy szeretnénk megválasztani a v értékét, hogy az a + = a + v-ben a jobb oldali közelítő kifejezés a minimumát vegye fel. Ehhez a jobb oldal gradiensét (v szerint) kell 0-val egyenlővé tenni: v J.O. = c(a) + 2 c(a)v. A jobb oldalt 0-val egyenlővé téve kapjuk, hogy (a) = v opt = ( 2 f(a) ) 1 f(a). A lépésválasztásra a korábbi két lehetőség fennáll, de megemlítünk egy harmadikat is: Egyszerűen legyen t = 1. 2. Lineáris egyenlőség feltételek melletti minimalizálás Newton algoritmusából Eddig nem szerepeltek feltételek a minimalizálási problémánkban. Most továbblépünk. Először megmutatjuk, hogy a Newton-módszer hogyan terjeszthető ki lineáris egyenlőségekkel leírt feltételrendszer esetére. Azaz a vizsgált probléma: Minimalizáljuk c(x)-t Feltéve, hogy Ax = b, ahol A R l n, b R l. Feltesszük, hogy c kétszer differenciálható konvex függvény. Ismét F = L = D = dom c. A múlt heti módszerek sorát folytatjuk, azaz sémánk: Kiinduló lépés: x (0) L választása Irány és lépés választása:, t választása Update: x (i+1) = x (i) + t és i i + 1 (alternatív módon: a + = a + t(a) (a), ahol a az aktuális hely). Leállási feltétel: Ha a leállási feltétel teljesül, akkor STOP, különben vissza az irány és lépés választáshoz. Ügyelünk arra, hogy a módszerünk végig a feltételeket kielégítő x (i) elemeket számol ki. Ez ekvivalens azzal, hogy a x (0) L kezdőérték választása után ügyelünk arra, hogy A = 0 teljesüljön. A Newton-módszert terjesztjük ki: a = x (i) az aktuális pontunk. A = (a) irányt a c(a + v) c(a) + c T (a) v + 1 2 vt 2 c(a) v másodrendű közelítésre alapozzuk. Ez alapján az irányt úgy választjuk, hogy Av = 0 feltétel mellett a jobb oldali közelítés minimum helye felé mozogjunk. A következő optimalizálásai feladattal állunk szemben: 14-6
Minimalizáljuk Feltéve, hogy Ax = 0. c(a) + c(a) x + 1 2 xt 2 c(a) x-t A Karush Kuhn Tucker-feltételek egy primál és egy w duál megoldásra (szükséges és elegendő feltételek a primál és w duál optimum hely mivoltához): ( ) ( ) ( ) 2 c(a) A T c(a) =. A 0 w 0 A bal oldalon lévő mátrixot optimalizálási feladatunk KKT-mátrixának nevezik. A feltételrendszer lineáris algebrából jól ismert (szerencsés) feltételek mellett egyértelműen megoldható. Ekkor az optimalizálási probléma kezelhető. NEWTON-MÓDSZER KONVEX FÜGGVÉNY MINIMALIZÁLÁSÁRA LINEÁRIS EGYENLŐSÉG FELTÉTELEK MELLETT: // Feltételek: // c kétszer differenciálható konvex függvény. // A KKT-mátrix nem elfajuló L-en. 0. lépés: x (0) választása, i = 0. // A továbbiakban a az aktuális x (i) pont. Irány választás: Írjuk fel a KKT-feltételeket az a helyen. Ez egy lineáris egyenletrendszer (feltételünk szerint nem elfajuló mátirxszal). Az egyértelmű megoldás komponense adja az irányt. Lépés választás: l választása visszakozó lépésválasztással. Udate lépés: a + = a + l (i i + 1). amíg c(a) T 2 c(a) 1 c(a)/2 > ǫ vissza az irány választáshoz. Az egyenlőtlenség feltételek kezelése jóval problémásabb. 3. Belsőpontos módszerek Newton algoritmusából Az eddig ismertetett módszerek a célfüggvény teljes értelmezési tartományán optimalizáltunk. A módszerek alkalmazása feltételek melletti optimalizálásra nem nyilvánvaló. Egy ötlet: definiáljunk egy (paraméteres) segédfüggvényt, amely a feltételnek megfelelő tartomány határozott belsejében közel egyenlő a célfüggvénnyel, a tartomány határához közel nagyon nagy értékeket vesz fel, és továbbra is konvex, többszörösen differenciálható (a tartomány belsején kívül nem is lesz értelmezett vagy végtelenként értelmezzük). A paraméter értékét növelve az a tartomány, ahol a közelítő segédfüggvény jól approximálja a célfüggvényt egyre jobban a feltételek által leírt tartományhoz simul. Azaz dom c p approximálja dom c F-et. c p optimalizálása feltétel nélküli, de egy feltételes minimalizálást modellál. A segédfüggvényre alkalmazva a most leírt módszereket egy a aktuális értéket kapunk. A paraméter növelésével kapott jobb segédfüggvényt véve a-ból megkapjuk az update-lt a + pontot. Ezen módszereket nevezik belső pontos módszernek Nézzük, hogy a fenti ötletek alapján a Newton-módszeren alapuló algoritmusok hogyan vihetők át általános konvex optimalizálási feladatokra. Legyen O az alábbi 14-7
optimalizálási feladat: O : Minimalizáljuk c(x)-et Feltéve, hogy Ax = b, f i (x) 0, i = 1, 2,..., k, ahol A R l n, b R l, x R n. A problémát egy kis csalással kezdjük. Az eddigiektől új, nehezítő egyenlőtlenség feltételeket a célfüggvénybe olvasztjuk. Definíció. Legyen I(x) : R R { }, ami nem pozitív értékeken 0-t, pozitív értékeken értéket vesz fel. Az alábbi ábrán a grafikon vázlatos képe látható. Az eredeti O problémát ekvivalens módon megfogalmazhatjuk az I függvény segítségével: Minimalizáljuk c(x) + k i=1 I(f i(x))-t Feltéve, hogy Ax = b. Természetesen a csalás problémája, hogy általában szép c, f i függvényekkel találkozunk. A korábbi módszereink differenciálhatósági feltételek mellett működnek. A bevezetett függvény nem differenciálható. A kiút, hogy az I függvényt differenciálható függvénnyel közelítjük. Az I függvény olyan x-eket enged a c-t minimalizáló versenybe, amelyeknél az f i -k előjele nem pozitív. Az I függvény gátat szab a versenyzőknek. Az ilyen függvényeket barrier/gátfüggvényeknek nevezzük. I közelítése differenciálható függvénnyel, ami a gátfüggvénység tulajdoságot szimulálja sokféleképpen megoldható. Mi egy lehetőségét emelünk ki: a logaritmikus gátfüggvényt (logaritmic barrier). Definíció (Logaritmikus gátfüggvény). Legyen Ĩt(x) = 1 log( x), ahol t > 0. t Minél nagyobb a t értéke, annál jobban közelíti a szükséges egyenlőtlenség feltételt szimuláló függvényt. 14-8
1. ábra. Ĩt(x) logaritmikus gátfüggvények grafikonjai különböző t értékek esetén. A sötétebb grafikon nagyobb t értékhez tartozik, jobban közelíti a szükséges egyenlőtlenség feltételt szimuláló függvényt. Fixáljunk egy t értéket és az egyenlőtlenség feltételeket hagyjuk el a célfüggvény c t (c) = c(x) + k i=1 Ĩt(f ( x)) módosításával együtt. Az optimum helye nem változik, ha a célfüggvényt a fix t-vel megszorozzuk: c t (x) = tc(x) + k tĩt(f(x)). i=1 Jelölés. Φ F (x) = Φ(x) = k log( f i (x)). A φ függvény a feltételrendszerünktől függ, igazából csak az egyenlőtlenségek rendszerétől. Példa. Legyen F : Ax b (A R k n, b R k ). Ekkor Φ(x) = i=1 k log(b i a T i x), i=1 ahol b = (b 1, b 2,...,b k ) T és a T i az A mátrix i-edik sora. φ(x) szép függvény, könnyű vele számolni: k 1 Φ(x) = b i a T i x a i, 2 Φ(x) = i=1 k i=1 1 (b i a T i x)2a ia T i. 14-9
Legyen Õt a következő optimalizálási feladat, ahol t > 0 fix szám: Õ t : Minimalizáljuk Feltéve, hogy Ax = b. t c(x) + Φ(x)-et Definíció. Legyen x (t) az Õt optimalizálási feladat optimális helye. Az x (t) pontok az optimalizálási feladat centrális pontjai. Ha t végig fut a R >0 halmazon, akkor az x (t) helyek a centrális utat írják le. KKT-tétel alapján könnyű karakterizálni x (t) helyeket: 3. Lemma. x (t)-t karakterizálják az alábbi feltételek: (i) Ax (t) = b, (ii) f i (x (t)) < 0 minden i = 1, 2,..., k esetén, (iii) alkalmas µ R l esetén t c(x (t)) + Φ(x (t)) + A T µ = 0. A lemma bizonyítása egyből adódik a KKT-tételből. Példa. Ismét legyen F : Ax b, azaz a feltételrendszert kielégítő x-ek halmaza egy P politóp. Továbbá legyen c(x) = c T x egy lineáris célfüggvény. Vegyük a Φ(x) (lásd előző példa) logaritmikus gátfüggvény S α = {x : Φ(x) α} szub-szinthalmazait. Ezek egy növekvő halmazrendszer (α < β esetén S α S β ), uniójuk kiadja P politóp belsejét. Ahogy α nő S α hozzásímul a P politóphoz. Másképpen S =α = {x : Φ(x) = α} szinthalmazok P határához símulnak. Az (ii) feltétel azt monjda x (t)-ről, hogy Φ értelmezési tartományába esik. Azaz Φ(x (t)) = α esetén (azaz alkalmas α esetén) x (t) a S =α szinthalmaz egy eleme. Az (iii) feltétel egyszerűsödik, hiszen c(x) = c R n, µ hiányzik, hiszen nincs egyenlőség feltételünk, míg Φ-t az előző példában kiszámoltuk: ( ) tc + Φ(x (t)) = tc + A T 1 diag b 1 a T 1 x (t), 1 b 2 a T 2 x (t),..., 1 = 0. b k a T k x (t) Azaz Φ(x (t)) párhuzamos c-vel. Azaz a c T x = c T x (t) hipersík az S =α szinhalmaz egy érintője a centrális út összes pontjára. 4. Tétel. x (t) legyen egy centrális pont, azaz az Õt feladat egy optimális megoldása (optimalizálás csak lineáris egyenlőség feltételekkel). A megoldáshoz vezető úton egy w (t) duális optimumhelyet is megkapunk. Legyen λ i (t) = 1 tf i (x (t)), µ (t) = w (t). t Ekkor (i) λ i (t) és µ (t) duális megengedett megoldása az eredeti O feladatnak. 14-10
x* x* ( t) 2. ábra. A zöld görbék a szinthalmazok, a kék görbe a centrális görbe, a fekete görbe a P politóp határa. A piros egyenesek c normálvektorú hipersíkok. (ii) Továbbá a duális hézag x (t) primál megengedett megoldás és λ i (t) és µ (t) duál megengedett megoldás között A tétel bizonyítása egyszerű számolás, az érdeklődő hallgatóra bízzuk. A tétel egyik következménye a belső pontos módszerek következő alapváltozata: LOGARITMIKUS GÁTFÜGGVÉNY MÓDSZER: Kiinduló lépés: Legyen x (0) egy erősen megengedett megoldás // minden egyenlőtlenség szigorúan teljesül. Legyen t = t (0) = 1. // a kiinduló gátfüggvény paramétere. µ(> 1). // egy fix paraméter, a gátfüggvény paraméter növelési tényezője. Centralizáló lépés: Számoljuk ki az Õt optimalizálási feladat x (t) optimális értékét. // A centrális út egy pontját számoljuk ki. x + = x (t) Kilépési kritérium: Ha k t < ǫ akkor leállunk. Különben t+ = µ t és visszatérünk a centralizáló lépésre. // A centrális út egy későbbi (pontosabb) helyével próbálkozunk. A részletek kidolgozása, az analízis messze meghaladja az előadás kereteit. A fentiek lényege csak az ötletek felvillantása volt. A részletek kidolgozása, a numerikus problémák analízise nagyon sok optimalizálási feladat hatékony kezeléséhez vezet. Egy ízelítő: 5. Tétel. Az LP feladat polinomiális időben megoldható. l t. 14-11
Megjegyzés. Ezt a tételt már láttuk az ellipszoid módszer tárgyalásakor. Ott megemlítettük, hogy a bizonyításként használt ellipszoid módszer a gyakorlatban nem versenyképes a szimplex módszerrel (amely elméleti szempontból nem kielégítő). Most azt sugalljuk, hogy a bizonyítás a gátfüggvény módszerrel is bizonyítható. Megemlítjük, hogy a fenti módszer kifinomult megvalósítása bizonyos paraméter értékek esetén versenyképes a szimplex módszerrel. Az SDP feladat jóval bonyolultabban néz ki mint az LP feladat általános alakja. Eddig legtöbbször véges sok lineáris egyenlőtlenség írta le a feltételrendszert. Most egy pozitív szemidefinitást előíró feltétel is megjelenik: Minimalizáljuk Feltéve, hogy c T x-t Ax = b x 1 C 1 + x 2 C 2 +... + x n C n D, ahol c R n, A R k n, a C i, D mátrixok szimmetrikus (l l méretű) mátrixok. Ennek ellenére a feladat kezelhető. 6. Tétel. Tegyük fel, hogy adott egy SDP feladat,a mely I inputjában racionális számok állnak. Legyen I az input leírásához szükséges bitek száma. Adott továbbá egy tetszőleges ǫ > 0 paraméter. Ekkor létezik olyan algoritmus, amely egy ǫ-szuboptimális megoldást talál és polinomiális I -ben és log(1/ǫ)-ban. A tétel bizonyítható a belsőpontos módszerekkel. A technikai részletek kidolgozása meghaladja előadásunk kereteit. Csak egy lehetséges gátfüggvényt írunk le: 1 ( ) K log det xi A i B. 14-12