Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

10.11.2013Kapitel 11 Methoden des Algorithmenentwurfs Kapitel 1.6: Randomisierte Approximationsalgorithmen Christian Scheideler SS 2009.

Ähnliche Präsentationen


Präsentation zum Thema: "10.11.2013Kapitel 11 Methoden des Algorithmenentwurfs Kapitel 1.6: Randomisierte Approximationsalgorithmen Christian Scheideler SS 2009."—  Präsentation transkript:

1 Kapitel 11 Methoden des Algorithmenentwurfs Kapitel 1.6: Randomisierte Approximationsalgorithmen Christian Scheideler SS 2009

2 Übersicht Notation Die probabilistische Methode Randomisiertes Runden Der hybride Ansatz Semidefinite Optimierung Derandomisierung Kapitel 12

3 Notation 6.1 Definition: Betrachte ein beliebiges Zufallsexperiment mit abzählbaren Elementarereignissen ={w 1,w 2,w 3,…}. Ereignis: beliebige Teilmenge von Ereignis A ist wahr für den Ausgang w gilt w A Sei Pr: [0,1] die Wahrscheinlichkeits- verteilung über den Elementarereignissen des Zufallsexperiments. Dann gilt für jedes Ereignis A, dass Pr[A]= w A Pr[w] Kapitel 13

4 Notation Statt als Mengen werden Ereignisse auch oft als Prädikate verwendet. D.h. Pr[A B] ist identisch zu Pr[A B] und Pr[A B] ist identisch zu Pr[A B]. Die Wahrscheinlichkeit, dass B wahr ist unter der Voraussetzung, dass A wahr ist, ist definiert als Pr[B | A] = Pr[A B] / Pr[A] Daraus folgt, dass Pr[A B] = Pr[A] Pr[B | A] = Pr[B] Pr[A | B] und damit die Bayesche Regel Pr[ A | B] = Pr[A] Pr[B | A] / Pr[B] Kapitel 14

5 Notation Zwei Ereignisse A und B sind (stoch.) unabhängig, falls Pr[B | A] = Pr[B], negativ korreliert, falls Pr[B | A] < Pr[B] und positiv korreliert, falls Pr[B | A] > Pr[B]. Diese Eigenschaften sind nach der Bayeschen Regel symmetrisch. Für unabhängige Ereignisse gilt also Pr[A B] = Pr[A] Pr[B] Kapitel 15

6 Notation 6.2 Definition: Eine Funktion X: IR heißt Zufallsvariable. Für den Fall X: {0,1} nennen wir X auch binäre Zufallsvariable oder Indikatorvariable. Zur Vereinfachung schreiben wir Pr[X=x] statt Pr[ {w : X(w)=x} ] Pr[X x] statt Pr[ {w : X(w) x} ] Kapitel 16

7 Notation 6.3 Definition: Der Erwartungswert einer Zufallsvariablen X: IR ist definiert als E[X] = w X(w) Pr[w]. Damit ist auch E[X] = x X( ) x Pr[X=x]. Für den Spezialfall X: IN ist E[X] = x IN Pr[X x] und für eine Indikatorvariable X ist E[X] = Pr[X=1] Kapitel 17

8 Notation Eigenschaften des Erwartungswerts: X ist nichtnegativ: E[X] 0 |E[X]| E[|X|] E[c X] = c E[X] für alle Konstanten c E[X+Y] = E[X] + E[Y] für alle ZVen X und Y, auch bekannt als Linearität des Erwartungs- werts Sind die Zufallsvariablen X und Y unabhängig (d.h. Pr[X=x | Y=y] = Pr[X=x] für alle x,y), dann gilt auch E[X Y] = E[X] E[Y] Kapitel 18

9 Notation 6.4 Satz (Markov Ungleichung): Für jede Zufallsvariable X: IR + und jedes k>1 gilt Pr[X k E[X]] 1/k Beweis: Es gilt: E[X] = x X( ) x Pr[X=x] k E[X] Pr[X k E[X]] Kapitel 19

10 Notation Ein randomisierter Algorithmus ist ein Algorithmus, der abhängig von Zufallsexperimenten arbeitet. Monte-Carlo-Algorithmus (MC=meistens korrekt): kann abhängig vom Zufallsexperiment auch fehlerhafte Ausgaben liefern. Las-Vegas-Algorithmus (LV=Laufzeit variabel): ist immer korrekt, aber Laufzeit hängt vom Zufallsexperiment ab Randomisierter Approximationsalgorithmus A: Wert A(I) der Ausgabe I ist eine Zufallsvariable Kapitel 110

11 Notation 6.5 Definition: Sei ein Optimierungsproblem und A ein randomisierter Approximationsalgorithmus für. (a)A hat bei Eingabe I eine erwartete relative Güte von A (I) = max{ E[A(I)]/OPT(I), OPT(I)/E[A(I)] } Für ein Minimierungsproblem ist der erste Term dominant und für ein Maximierungsproblem der zweite. (b) Die erwartete relative worst-case Güte von A ist A wc (n) = max { A (I) | I D, |I| n} (c)Sei A :IN IN eine Funktion. A hat eine erwartete relative Güte von A (n) falls für alle n gilt: A wc (n) A (n) Kapitel 111

12 Übersicht Notation Die probabilistische Methode Randomisiertes Runden Der hybride Ansatz Semidefinite Optimierung Derandomisierung Kapitel 112

13 Die Probabilistische Methode Max-SAT Problem: Für eine gegebene Formel in KNF, finde eine Belegung für ihre Booleschen Variablen, die die Anzahl der erfüllten Klauseln maximiert. Für eine Formel über der Variablenmenge V ist jede Belegung b:V {false, true} eine zulässige Lösung Der Boolesche Wahrheitswert für Literale, Klauseln und Formeln ergibt sich kanonisch. Die Bewertungsfunktion für =C 1 C 2 … C m ist wahr(b, ) = |{j {1,…,m}: b(C j ) = true}| Kapitel 113

14 Die Probabilistische Methode Die folgende Tatsache ist einfach zu zeigen: 6.6 Fakt: Sei eine Boolesche Formel in KNF mit m Klauseln. Dann ist max{wahr((false,…,false), ),wahr((true,…,true), )} m/2 D.h. es gilt immer OPT( ) m/2. Weiterhin gibt es damit einen einfachen Algorithmus (überprüfe zwei Belegungen), der eine relative Güte von höchstens 2 hat. Einen besseren Approximationsalgorithmus erhalten wir über die probabilistische Methode Kapitel 114

15 Die Probabilistische Methode Sei eine beliebige Formel über Variablen- menge V={x 1,…,x n }. Algorithmus A for i:=1 to n do mit Wahrscheinlichkeit ½: x i :=true mit Wahrscheinlichkeit ½: x i :=false gib b A =(x 1,…,x n ) aus Wir nehmen hier an, dass die x i -Werte unabhängig voneinander erwürfelt werden Kapitel 115

16 Die Probabilistische Methode 6.7 Lemma: Sei k j die Anzahl der Literale in C j. Es gilt: Pr[C j wird durch Algo A erfüllt] = 1-1/2 k j Beweis: Pr[Literal l in C j ist false] = ½ Pr[alle k j Literale in C j sind false] = 1/2 k j (da Variablen unabhängig gewählt werden) Also ist die Wahrscheinlichkeit, dass minde- stens ein Literal in C j wahr ist, 1-1/2 k j Kapitel 116

17 Die Probabilistische Methode 6.8 Satz: Für jede KNF-Formel mit m Klauseln, in der jede Klausel mindestens k Literale enthält, gilt E[A( )] (1-1/2 k ) m. Beweis: Für j {1,…,m} sei Z j die Indikatorvariable mit Z j =1 b A (C j )=true. Lemma 6.7: E[Z j ] = Pr[b A (C j )=true] = 1-1/2 k j Aufgrund der Linearität des Erwartungswerts folgt: E[A( )] = E[wahr(b A, )] = E[ j=1 m Z j ] = j=1 m E[Z j ] = j=1 m (1-1/2 k j ) (1-1/2 k ) m Kapitel 117

18 Die Probabilistische Methode Aus Satz 6.8 folgt, dass die erwartete relative Güte von Algo A für k 2 höchstens 1/(1-1/2 2 ) = 4/3 ist, also deutlich besser als 2. Mit Satz 6.7 kann auch die Existenz erfüllbarer Belegungen nachgewiesen werden: 6.9 Korollar: Sei 2 k >m. Dann ist jede KNF- Formel mit m Klauseln, in der jede Klausel mindestens k Literale enthält, erfüllbar Kapitel 118

19 Übersicht Notation Die probabilistische Methode Randomisiertes Runden Der hybride Ansatz Semidefinite Optimierung Derandomisierung Kapitel 119

20 Randomisiertes Runden Approximationsalgo A arbeitet umso besser, je größer die Klauseln sind. Jetzt werden wir einen Approximationsalgo B vorstellen, der umso besser arbeitet, je kürzer die Klauseln sind. Wir verwenden dazu das ILP zu MaxSAT, das wir zunächst zum LP relaxieren und optimal lösen und dann durch randomisiertes Runden wieder in eine zulässige Lösung für das ILP umwandeln Kapitel 120

21 Randomisiertes Runden Sei =C 1 C 2 … C m S - j : Menge der negierten Variablen in C j S + j : Menge der nichtnegierten Variablen in C j ILP zu MaxSAT: maximiere j=1 m z j gemäß x i S + j x i + x i S - j (1-x i ) z j für alle j x i, z j {0,1} Kapitel 121

22 Randomisiertes Runden Relaxierung zum LP: ersetze x i,z j {0,1} durch x i,z j [0,1] Seien x´ i, z´ j die Werte der optimalen Lösung zum LP. Wir verwenden dann die folgende randomisierte Rundung für (x)=x: RandomizedRounding( ): for i:=1 to n do mit Wahrscheinlichkeit (x´ i ): x i :=true mit Wahrscheinlichkeit 1- (x´ i ): x i :=false gib b B =(x 1,…,x n ) aus Kapitel 122

23 Randomisiertes Runden 6.10 Lemma: Sei k j die Anzahl der Literale in C j. Es gilt: Pr[C j wird durch Algo B erfüllt] (1-(1-1/k j ) k j ) z´ j Beweis: Die Wahrscheinlichkeit, dass x i S + j x i + x i S - j (1-x i ) = 0 ist, ist gleich x i S + j (1-x´ i ) x i S - j x´ i, da die x i s unabhängig voneinander gerundet werden. Also gilt Pr[b B (C j )=true] = 1 - x i S + j (1-x´ i ) x i S - j x´ i Um weiterrechnen zu können, brauchen wir zwei Aussagen aus der Analysis Kapitel 123

24 Randomisiertes Runden 6.11 Fakt: (a)Für a 1,…,a k 0 gilt i=1 k a i ((1/k) i=1 k a i ) k (b)Wenn die Funktion f(x) in [a,b] konkav ist und f(a) c a+d und f(b) c b+d, dann ist für alle x [a,b] auch f(x) c x+d. Daraus folgt: Pr[b B (C j )=true] = 1 - x i S + j (1-x´ i ) x i S - j x´ i x i S + j (1-x´ i ) x i S - j x´ i k j |S + j | - x i S + j x´ i + |S - j | - x i S - j (1-x´ i ) k j k j – ( x i S + j x´ i + x i S - j (1-x´ i )) k j 1-(1-z´ j /k j ) k j (1-(1-1/k j ) k j ) z´ j Kapitel kjkj = 1 - kjkj kjkj (a) (b)

25 Randomisiertes Runden 6.12 Satz: Für jede Boolesche Formel in KNF, in der jede Klausel höchstens k Literale hat, ist E[B( )] (1-(1-1/k) k ) OPT( ) Beweis: Sei =C 1 C 2 … C m. Es gilt: E[B( )] = j=1 m Pr[b B (C j )=true] j=1 m (1-(1-1/k j ) k j ) z´ j (1-(1-1/k) k ) j=1 m z´ j (1-(1-1/k) k ) OPT( ) wegen der Superoptimalität der optimalen Lösung zum LP von MaxSAT Kapitel 125

26 Randomisiertes Runden Da (1-1/k) k (1-1/e) OPT( ) 1/1,582 OPT( ) ist. Für andere Rundungswahrscheinlichkeiten wie (x)=x/2 + 1/4 kann man sogar zeigen, dass eine erwartete Approximationsgüte von 4/3 erreicht wird Kapitel 126

27 Randomisiertes Runden MinCUT Problem: Gegeben: ungerichteter Graph G=(V,E) mit ausgezeichneten Knoten s,t V und Kantenkosten c:E IR +. Eine Partition (U,V\U) von V heißt (s,t)-Schnitt, falls s U und t V\U. Die Kosten eines Schnitts (U,V\U) sind definiert als c(U,V\U) = {v,w} E:v U,w V\U c(v,w) S: Menge aller (s,t)-Schnitte in G Zielfunktion: f((U,V\U)) = c(U,V\U) Ziel: minimiere f Kapitel 127

28 Randomisiertes Runden ILP zu MinCUT: x i {0,1}: x i =0 Knoten i in Menge U z i,j {0,1}: Indikator, ob Kante {i,j} über Schnitt minimiere {i,j} E c i,j z i,j gemäß x i -x j z i,j und x j -x i z i,j für alle {i,j} E x s =0 und x t =1 x i, z i,j {0,1} für alle i,j Kapitel 128

29 Randomisiertes Runden Ersetzen wir x i,z i,j {0,1} durch x i,z i,j [0,1], so erhalten wir ein LP. Für jede optimale Lösung des ILPs und des LPs muss gelten, dass z i,j =|x i -x j | ist, denn sonst könnte Zielfunktionswert verringert werden. Seien x´ i und z´ i,j die Variablenwerte einer optimalen Lösung des LPs, und sei y´ der Wert dieser Lösung. Aufgrund der Superoptimalität gilt y´ OPT Kapitel 129

30 Randomisiertes Runden Randomisiertes Runden: Wähle ein zufälliges u [0,1). Für jedes i V setzen wir x i :=0 falls x´ i u und sonst x i := Satz: Für jedes u [0,1) ist die gerundete Lösung eine optimale Lösung des ILPs. Beweis: Betrachte eine feste Kante {i,j} E. Kante {i,j} führt über den Schnitt genau dann, wenn u [min{x´ i, x´ j }, max{x´ i, x´ j }]. Das ist mit Wahrscheinlichkeit |x´ i - x´ j | = z´ i,j der Fall. Also ist E[z i,j ] = z´ i,j und damit E[ {i,j} E c i,j z i,j ] = {i,j} E c i,j E[z i,j ] = {i,j} E c i,j z´ i,j = y´ Da {i,j} E c i,j z i,j

31 Randomisiertes Runden Satz 6.13 ist also ein probabilistischer Beweis dafür, dass wir eigentlich kein randomisiertes Runden benötigen, da jedes u [0,1) eine optimale Lösung ergibt. Es reicht also, das LP zu lösen und dann die erhaltene Lösung für u=0 zu runden Kapitel 131

32 Randomisiertes Runden Allgemeines Set Cover Problem: Gegeben: Folge S 1,…,S m von Teilmengen von {1,…,n} mit Kosten c 1,…,c m IR + Gültige Lösung: Jede Teilmenge C {1,…,m}, so dass für jedes j {1,…,n} ein i C existiert mit j S i. Zielfunktion: f(C) = i C c i Ziel: minimiere Zielfunktion Kapitel 132

33 Randomisiertes Runden ILP zu Set Cover: x i {0,1}: x i =0 i C minimiere i=1 m c i x i gemäß i:j S i x i 1 für alle j x i {0,1} für alle i Ersetzen wir x i {0,1} durch x i [0,1], so erhalten wir ein LP. Sei (x´ 1,…,x´ m ) die optimale Lösung des LPs Kapitel 133

34 Randomisiertes Runden Rundungsstrategie: (y 1,…,y m ):=(0,…,0) for r:=1 to t do (x 1,…,x m ):=RandomizedRounding( (x)=x) (y 1,…,y m ):=(y 1 x 1,…,y m x m ) gib (y 1,…,y m ) aus 6.14 Lemma: Die Wahrscheinlichkeit, dass ein festest Element j {1,…,n} nach t Runden nicht überdeckt ist, ist höchstens (1/e) t Kapitel 134

35 Randomisiertes Runden Beweis: Betrachte ein festes Element j. Sei C die Teilmenge, die in Runde r generiert wird. Dann ist Pr[j i C S i ] = i:j S i (1-x´ i ) Sei k j die Anzahl der Teilmengen, zu denen j gehört. Da i:j S i x´ i 1 gelten muss, wird die Wahrscheinlichkeit maximiert für den Fall, dass x´ i =1/k j für all diese i ist. Daraus folgt Pr[j i C S i ] = i:j S i (1-/k j ) k j Da (1-1/k) k 1/e für alle k IN ist, ist Pr[j C] 1/e. Bei t zufälligen und unabhängigen Rundungen ist die Wkeit, dass j nicht überdeckt ist, höchstens (1/e) t Kapitel 135

36 Randomisiertes Runden Sei C r die in Runde r gewählte Teilmenge und C= r=1 t C r. Für t=ln(4n) gilt: Pr[C ist keine Überdeckung] j=1 n Pr[C überdeckt nicht j] j=1 n (1/e) t = n/e ln(4n) = n/4n = 1/4 Die erwarteten Kosten für jedes C r sind gleich i=1 m c i x´ i, den optimalen Kosten des LPs, die wir mit y´ bezeichnen. Die erwarteten Kosten von C sind also y´ln(4n). Nach der Markov Ungleichung gilt Pr[cost(C) 4y´ln(4n)] 1/4 Die Wahrscheinlichkeit, dass unser Algo eine gültige Lösung mit Approximationsgüte 4ln(4n) produziert, ist also minde- stens 1-1/4-1/4 = 1/2. Erwartungsgemäß sind also höchstens 2 Versuche notwendig, um so eine Lösung zu finden Kapitel 136

37 Übersicht Notation Die probabilistische Methode Randomisiertes Runden Der hybride Ansatz Semidefinite Optimierung Derandomisierung Kapitel 137

38 Der hybride Ansatz Grundlegende Idee: Entwickle durch Kombination mehrerer Approximationsverfahren für ein Problem ein hybrides Verfahren, das minde- stens so gut wie jedes einzelne ist Kapitel 138 Güte k Algo A Algo B Algo C

39 Der hybride Ansatz Max-kSAT Problem: alle Klauseln haben Länge k Algo A: über probabilistische Methode (setze jedes x i zu 0 oder 1 mit Wkeit ½) Algo B: über randomisiertes Runden (löse LP, runde x i mit (x)=x) Tabelle der erwarteten Güten von A und B: Kapitel 139 k 1/E[ A ]1/E[ B ] 10,51,0 20,75 30,8750,704 40,9380,684

40 Der hybride Ansatz Algo B kann also gut mit Klauseln umgehen, die kurz sind, während Algo A gut mit Klauseln umgehen kann, die lang sind. Der größere der beiden Werte in der Tabelle ist mindestens 3/4. Wir könnten also als hybride Lösung A und B laufen lassen und uns dann für die bessere Lösung entscheiden. Dadurch würde sich jedoch die Laufzeit erhöhen. Wir stellen eine alternative Methode vor Kapitel 140

41 Der hybride Ansatz Algorithmus C p : mit Wahrscheinlichkeit p: starte A mit Wahrscheinlichkeit 1-p: starte B 6.15 Satz: Algorithmus C 1/2 hat eine erwartete relative Güte von 4/3. Beweis: Wir wissen: E[A( )] = k=1 n j:C j hat k Literale (1-1/2 k ) z´ j E[B( )] = k=1 n j:C j hat k Literale (1-(1-1/k) k ) z´ j Kapitel 141

42 Der hybride Ansatz Beweis (Fortsetzung): Daraus folgt: E[C 1/2 ( )] = (1/2)(E[A( )] + E[B( )]) k=1 n j:C j hat k Literale (1/2)(1-1/2 k +1-(1-1/k) k ) z´ j (3/4) j=1 m z´ j (3/4) OPT( ) Bemerkung: Der beste zur Zeit bekannte Approxima- tionsalgorithmus für MaxSAT hat eine relative Güte von 1,2004. Es ist eine Kombination von A und B und einer Reihe von weiteren Algorithmen. Er benutzt u.a. die im nächsten Abschnitt behandelte Technik der semidefiniten Optimierung Kapitel 142

43 Übersicht Notation Die probabilistische Methode Randomisiertes Runden Der hybride Ansatz Semidefinite Optimierung Derandomisierung Kapitel 143

44 Semidefinite Optimierung Eine n n-Matrix A über IR heißt positiv semidefinit, wenn für alle x IR n gilt, dass x T A x 0. Ein semidefinites Programm liegt dann vor, wenn wir ein LP haben und zusätzlich fordern, dass die Lösung für die Variablen als symmetrische und positiv semidefinite Matrix beschrieben werden kann Kapitel 144

45 Semidefinite Optimierung Semidefinites Programm SDP: optimiere i,j c i,j x i,j gemäß i,j a (i,j),k x i,j b k für alle k X=(x i,j ) ist symmetrisch und positiv semidefinit OPT(SDP) bezeichne den optimalen Wert der Zielfunktion Kapitel 145

46 Semidefinite Optimierung 6.16 Fakt: (a) A ist genau dann symmetrisch und positiv semidefinit, wenn es eine m n-Matrix B gibt mit B T B = A. (b) Ist A positiv semidefinit und symmetrisch, dann kann die Matrix B aus (a) in Zeit O(n 3 ) mittels Cholesky-Zerlegung berechnet werden. (c) Sind alle Diagonaleinträge einer symmetrischen und positiv semidefiniten Matrix A gleich 1, dann sind die Spalten der zugehörigen Matrix B Einheitsvektoren in IR n. (d) Semidefinite Optimierung kann in Zeit O(poly(n,m,log(1/ ))) mit absoluter Güte e für beliebiges >0 gelöst werden. D.h. es wird eine symmetrische und positiv semidefinite Matrix X( )=(x( ) i,j ) berechnet, deren Einträge die linearen Neben- bedingungen erfüllen und für die |OPT(SDP)- i,j c i,j x( ) i.j | ist Kapitel 146

47 Semidefinite Optimierung Zwei Beispiele: Die Matrix A 1 = ist nicht positiv semidefinit, da (1,-1) A 1 = -6 Die Matrix A 2 = ist positiv semi- definit, da A 2 = B T B für B = Kapitel

48 Semidefinite Optimierung MaxCUT Problem: Gegeben: ungerichteter, zusammenhän- gender Graph G=(V,E) Zulässige Lösung: Schnitt (U,V\U) Zielfunktion: f((U,V\U)) = c(U,V\U) Ziel: maximiere f Kapitel 148

49 Semidefinite Optimierung Folgendes einfache Verfahren ergibt bereits eine erwartete Güte von 2. In diesem Verfahren sei n=|V| und die Indikatorvariable x i =1 genau dann, wenn Knoten i zu U gehört. Algorithmus A for i:=1 to n do mit Wahrscheinlichkeit ½: x i :=0 // zu V\U mit Wahrscheinlichkeit ½: x i :=1 // zu U gib U A ={ i V | x i =1 } aus Eine erwartete Güte von 2 war lange Zeit das Beste, was für das MaxCUT Problem bekannt war Kapitel 149

50 Semidefinite Optimierung Zunächst formulieren wir MaxCUT als quadratisches Optimierungsproblem: G=(V,E): gegebener Graph, n=|V| A G =(a i,j ): Adjazenzmatrix zu G, d.h. für alle i,j V ist a i,j =1 genau dann, wenn {i,j} E und 0 sonst. x i {-1,1}: x i =1 Knoten i U Wert (1-x i x j )/2: geht Kante {i,j} über den Schnitt, dann ist dieser Wert 1 und sonst Kapitel 150

51 Semidefinite Optimierung Quadratisches Programm für MaxCUT: maximiere i

52 Semidefinite Optimierung Relaxiertes quadratisches Programm für MaxCUT: maximiere i

53 Semidefinite Optimierung Semidefinites Programm SD-CUT für MaxCUT: maximiere i

54 Semidefinite Optimierung Rückwandlung in Lösung für MaxCUT: Gegeben: Lösung Y( )=(y i,j ( )) Mittels Cholesky-Zerlegung (Fakt 6.16(b)) berechnen wir daraus die Matrix B. Aus B extrahieren wir die Einheitsvektoren u i. Wir ziehen eine zufällige Trennebene durch den Ursprung des Einheitskreises. Für alle Vektoren u i, die auf der einen Seite der Trennlinie liegen, wird x i auf -1 gesetzt und für die restlichen wird x i auf +1 gesetzt. Eine zufällige Ebene durch den Ursprung ist vollständig bestimmt, indem wir einen Normalenvektor r für diese Ebene auswählen, d.h. einen Vektor, der zu allen Vektoren der Ebene orthogonal ist. Aus der analytischen Geometrie wissen wir, dass wenn sgn(r T u i ) sgn(r T u j ) ist, dann liegen u i und u j auf verschiedenen Seiten der Ebene Kapitel 154

55 Semidefinite Optimierung Umwandlung anschaulich: Kapitel 155 u1u1 u2u2 u3u3 r Ergebnis: x 1 = x 2 = +1 x 3 = -1

56 Semidefinite Optimierung Algorithmus B: (1) :=0,0005 (2) löse SD-CUT mit absoluter Güte (3) führe die Cholesky-Zerlegung auf Y( ) durch, um Matrix B zu erhalten mit B T B = Y( ) (4) würfle gleichverteilt einen zufälligen Vektor r IR n aus mit r T r=1 (5) for i:=1 to n do if u i T r 0 then x i :=+1 // Knoten i nach U else x i :=-1 // Knoten i nach V\U (6) gib (U,V\U) aus Kapitel 156

57 Semidefinite Optimierung 6.17 Satz: Sei G=(V,E) ein Graph mit mindestens einer Kante. Dann ist E[B(G)] 0,878 OPT(G), d.h. Algorithmus B hat eine erwartete Güte von 1/0,878 1,139. Beweis: Sei die Indikatorvariable X i,j gleich 1 genau dann, wenn die Kante {i,j} über den Schnitt geht. Dann ist E[X i,j ] = a i,j Pr[x i x j ] und damit E[B(G)] = E[ {i,j} E X i,j ] = i

58 Semidefinite Optimierung Pr[sgn(r T u i ) sgn(r T u j )] hängt nur von Winkel zwischen u i und u j ab: Für den Winkel zwischen u i und u j gilt cos = u i T u j /|u i | |u j | = u i T u j. Damit erhalten wir Pr[sgn(r T u i ) sgn(r T u j )] = / = arccos(u i T u j )/ Kapitel 158 u1u1 u2u2

59 Semidefinite Optimierung Daraus folgt: E[B(G)] = i

60 Semidefinite Optimierung Bemerkungen: Die hier gezeigte Güte ist immer noch die bislang beste bekannte. Hastad hat gezeigt, dass P=NP ist, falls es einen Approximationsalgorithmus für MaxCUT mit relativer Güte <17/16 = 1,0625 gibt. Die Anwendung semidefiniter Optimierung auf MaxCUT geht auf Goemans und Williamson zurück. Seitdem wurde dieser Ansatz auch erfolgreich für viele andere harte Graphprobleme angewandt Kapitel 160

61 Kapitel 161 Fragen?


Herunterladen ppt "10.11.2013Kapitel 11 Methoden des Algorithmenentwurfs Kapitel 1.6: Randomisierte Approximationsalgorithmen Christian Scheideler SS 2009."

Ähnliche Präsentationen


Google-Anzeigen