Zusammenfassung Approx algorithmen

Ähnliche Dokumente
NP-vollständig - Was nun?

Einführung in Algorithmen und Komplexität

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

3 Klassifikation wichtiger Optimierungsprobleme

Approximation im Sinne der Analysis:

WS 2009/10. Diskrete Strukturen

Einführung in Approximative Algorithmen und Parametrisierte Komplexität

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling

Approximationsalgorithmen

Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke

Reduktionen. Algorithmen und Datenstrukturen Kapitel 6.2 Komplexitätstheorie. Exkurs: Reduktionen allgemein. Reduktionen: Erläuterungen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Algorithmische Graphentheorie

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

Das Briefträgerproblem

ADS: Algorithmen und Datenstrukturen 2

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

1 Einführung Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT) Notationen und Definitionen Übungsaufgaben...

Approximations-Algorithmen

Algorithmen für schwierige Probleme

2. Optimierungsprobleme 6

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am

William Rowan Hamilton,

Randomisierte Algorithmen

Approximationsalgorithmen am Beispiel des Traveling Salesman Problem

Probabilistische Analyse von Algorithmen

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2014/2015

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.

Optimierungsprobleme. B. Langfeld, M. Ritter, B. Wilhelm Diskrete Optimierung: Fallstudien aus der Praxis

Kombinatorische Optimierung

Parameterisierte Algorithmen WS 2007/08 in Trier. Henning Fernau

abgeschlossen unter,,,, R,

Toleranzbasierte Algorithmen für das Travelling Salesman Problem. Gerold Jäger

6. Übung zur Linearen Optimierung SS08

Rechnerische Komplexität

Randomisierte Algorithmen 2. Erste Beispiele

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 3: Minimal aufspannende Bäume und Matroide

Effiziente Algorithmen I

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

5.4 Das Rucksackproblem

Die Verbindung von Linearer Programmierung und Graphentheorie

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).

Die Komplexitätsklassen P und NP

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Graph Paar (V,E) V: nichtleere Menge von Knoten (vertex) E: Menge von Kanten (edges): Relation (Verbindung) zwischen den Knoten

Durchschnitt von Matroiden

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Komplexitätstheorie Einführung und Überblick (Wiederholung)

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.

8 Diskrete Optimierung

Diskrete Mathematik. Sebastian Iwanowski FH Wedel. Kap. 6: Graphentheorie

Resolutionsalgorithmus

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

Lineares Programmieren

9. Übung Algorithmen I

Übung zur Vorlesung Berechenbarkeit und Komplexität

Approximationsalgorithmen

Algorithmische Methoden zur Netzwerkanalyse

Vier-Farben-Vermutung (1)

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Verbesserungsheuristiken

Algorithmen und Datenstrukturen 2

Einführung in die Informatik

Logik für Informatiker

Klausuraufgaben. 1. Wir betrachten die folgende Sprache über dem Alphabet {a, b}

Das Linear Ordering Problem Exakte Lösungsverfahren. für NP-schwierige. VO Algorithm Engineering

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering

8 Komplexitätstheorie und Kryptologie

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

Das disjunktive Graphenmodell für Shop-Probleme

ADS: Algorithmen und Datenstrukturen 2

Kapitel 4. Optimierungsalgorithmen. Technische Universität Wien. Gunnar Klau Technische Universität Wien. Institut für Computergraphik und Algorithmen

Wiederholung zu Flüssen

4 Greedy-Algorithmen (gierige Algorithmen)

8. Übung zu Algorithmen I 15. Juni 2016

Diskrete Optimierung (Einführung zur Vorlesung)

3. Musterlösung. Problem 1: Boruvka MST

Algorithmentheorie Randomisierung. Robert Elsässer

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Parametrisierte Algorithmen

Algorithmik Funke/Bahrdt/Krumpe/Mendel/Seybold SS Übungsblatt 4

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Vorlesung 4 BETWEENNESS CENTRALITY

Kapitel 4: Minimale spannende Bäume Gliederung der Vorlesung

Algorithmen und Datenstrukturen Kapitel 6 Komplexitätstheorie

Fakultät für Informatik Universität Magdeburg Jürgen Dassow. Vorbemerkungen

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

Heuristiken im Kontext von Scheduling

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Transkript:

Zusammenfassung pprox algorithmen. Einleitung Notation: N := {, 2,... }, N 0 := {0,, 2,... } [n] := {, 2,..., n} [n] 0 := {0,, 2,..., n}.3. Grundbegriffe Kanten}, S(G) = {c V c V Knotenfärbung}, f(c V ) = c V (V ), ziel = Definition: χ(g) ist chromatische Zahl von G, χ (G) ist chromatischer Index lgorithmus GreedyCol: : for i =... n do c v (u i ) := 2: for i =... n do 3: c v (u i ) := min N\c v (Γ(u i )) 4: gib c v aus Satz: GreedyCol(G) (G) +. Ferner κ GreedyCol (G) = GreedyCol(G) OPT(G) (G). Definition: kombinatorisches Optimierunsproblem Π charakterisiert durch Menge von Probleminstanzen D, für alle I D: Menge der zu zulässigen Lösungen S(I), Bewertungsfunktion f : S(I) N, ziel {min, max}. Zu I D gesucht: σ opt I S(I) : f(σ opt I ) = ziel{f(σ) σ S(I)}. Definition: t(n)-pprox alg. : Zu Eingabe I D Berechnung in Zeit t( I ) eine usgabe σi S(I). Schreibeweisen: OPT(I) := f(σ opt I ), (I) := f(σi ). 2. pproximation mit absoluter Güte Definition: absolute Güte: κ (I) := (I) OPT(I) absolute worst-case Güte: κ wc (n) := max{κ (I) I D, I n} Garantie einer absoluten Güte: Funktion in N, die obere Schranke für κ wc ist bsolute bweichung: Funktion in N, die für unendlich viele n N untere Schranke für κ wc ist. Weitere Begriffe: Zeugenmenge gegen, Zeuge. 2.. Graphfärbbarkeit Sei G = (V, E) ungerichteter Graph. Menge der Nachbarn von u ist Γ G (u) = {v {u, v} E}. Smbol für Grad von G: (G) := max u V {deg G (u)} Definition: Knotenfärbung, Kantenfärbung: Nachbarn haben jeweils unterschiedliche Farben Beispiel: Knotenfärbung als Opt problem: D = {G G = (V, E) ungerichteter Graph mit Bemerkungen: Knotenfärbung planarer Graphen: i) Mit 6 Farben immer in Polynomzeit mäglich. ii) 4 Farben wären jedoch immer ausreichend. iii) Entscheidungsproblem Mit 3 Farben möglich? NP-vollständig. iv) Entscheidungsproblem Mit 2 Farben möglich? liegt in P. lgorithmus ColPlan: für planaren Graphen G: Teste ob G 2-färbar, wenn nicht: Färbe mit 6 Farben Satz: ColPlan garantiert eine absolute Güte von 3. n einem Knoten eines kantengefärbten Graphen fehlt eine Farbe, wenn alle inzidenten Kanten dort anders gefärbt sind. Lemma: G kantengefärbt mit [ (G) + ], u, v V mit {u, v} E und deg(u), deg(v) < (G). Dann kann G umgefärbt werden, so dass an u und v dieselbe Farbe fehlt. lgorithmus Kantenfärbung: Eingabe: Graph G = (V, E) : E :=, G := (V, E ) 2: while E E do 3: Wähle eine beliebige Kante {u, v} E \ E 4: altergrad := (G ) 5: E := E {{u, v}} 6: if (G ) > altergrad then 7: Färbe die Kante {u, v} mit der kleinstmöglichen an u und v fehlenden Farbe aus {,..., (G) + } 8: else 9: Färbe G um, so daß an u und v dieselbe Farbe c fehlt 0: färbe {u, v} mit c

Satz: Für jeden Graph G: (G) χ (G) (G)+. Folgerung: Kantenfärbung garantiert absolute Güte, hat aber auch absolute bweichung von. 2.2. Ein Nicht-pproximationsergebnis Definition: Rucksackproblem Π: D = { n, vol, p, B n, B N und vol, p : [n] N und w [n] : vol(w) B} S( n, vol, p, B ) = { [n] w vol(w) B} f() = w p(w) ziel = Wir schreiben p j := p(j). Satz: Falls P NP, gibt es kein k N, so dass I D : (I) OPT(I) k. 3. pproximation mit relativer Gütegarantie Π Optimierungsproblem, pprox algorithmus. Definition: relative Güte: ρ (I) := max{ (I) OPT(I), OPT(I) (I) } relative worst-case Güte: ρ wc (n) := max{ρ (I) I D, I n} Garantie einer relativen Güte: Funktion in N, die obere Schranke für ρ wc ist relativer Fehler: ɛ (I) := (I) OPT(I) OPT(I) Relative bweichung: Funktion in N, die für unendlich viele n N untere Schranke für ρ wc ist. Weitere Begriffe: Zeugenmenge gegen, Zeuge. Bemerkungen: Bei Max problem: ɛ (I) = ρ (I). Bei Min problemen: ɛ (I) = ρ (I) ρ (I). 3. Das metrische TSP Definition: ls Optimierungsproblem Π: D = { K n, c K n vollständiger Graph auf n > Knoten, c : E N, u, v, w V : c(u, v) c(u, w) + c(w, v)} S( K n, c ) = {C C = (u,..., u n, u ) ist Hamiltonkreis} f(c) = n i= c(u i, u i+ ), wobei u n+ := u. ziel = min. 2 lgorithmus Einfügen: Eingabe: C = (u,..., u n, u ) wie oben, v E : Bestimme i, so dass c(u i, v) + c(v, u i+ ) c(u i, u i+ ) minimal ist 2: Gib (u,..., u i, v, u i+,..., u n, u ) zurück lgorithmus EinfügeHeuristik: (Für TSP) : C := (v, v) für einen beliebigen Knoten v E 2: for j := 2,..., n do 3: v := Knoten, der nicht in C j ist (*) 4: C j := Einfügen(C j, v) Satz: Für jede Einfüge-Heuristik (beachte Wahlmöglichkeit bei (*)) gilt ρ ( K n, c ) log n +. Satz: Wird bei (*) stets der Knoten gewählt, der am nächsten zu einem Knoten in C j liegt, NearIns (nearest insertion) genannt, so gilt ρ NearIns ( K n, c ) 2 2 n. ( Spannbaum- rgument) Definition: Matching M ist Teilgraph mit Grad. Gewicht eines Matching ist Summe der vorkommenden Kanten. Ein perfektes Matching enthält alle Knoten. Ein leichtestes Matching ist ein perfektes Matching mit minimalem Gewicht. Definition: Ein Multigraph erlaubt mehrere Kanten pro Knotenpaar. Eine Euler-Tour ist ein Kreis (u,... u E, u ), in dem jede Kante genau einmal vorkommt. lgorithmus Ch: (Christofides) Eingabe: I = K n, c : T Ch := minimaler Spannbaum 2: S := {v T Ch deg TCh (v) ist ungerade } S ist gerade 3: M Ch := leichtestes Matching auf dem durch S induzierten Teilgraphen von K n 4: E := (u, u 2,... ) Euler-Tour auf T Ch M Ch 5: E := E ohne Wiederholungen von Knoten Satz: ρ Ch ( K n, c ) 3 2 n. Definition: Vertex-Cover: Finde zu einem ungerichteten Graphen G = (V, E) eine minimale Knotenüberdeckung: C V, so dass {u, v} E : {u, v} C. lgorithmus GreedyVC: : C :=, E := E 2: while E = do 3: C := C {u, v}, wobei {u, v} E beliebig 4: E := E \ {e E u e oder v e} 5: Gebe C aus Satz: ρ GreedyVC (G) 2.

Definition: Scheduling: n Jobs mit Lasten w,..., w n, m Maschinen. Gesucht: Zuordnung (s,..., s n ) [m] n, so dass max k [m] i [n] s i =k w i minimal wird. Satz: Die Graham-Heuristik, die Jobs greedy sequentiell auf die jeweils am wenigsten ausgelastete Maschine zu verteilen, hat für jede Eingabe relative Güte 2 m. Satz: LPT (least processing time first), der vor der Graham-Heuristik die Jobs nach aufsteigendem Gewicht sortiert, hat relative Güte 4 3 3m. Definition: Set-Cover-Problem: Gegeben endliche Menge X und F P(X) mit S F S = X. Finde kleinstes C F, das X überdeckt. lgorithmus GreedySetCover: : U := X, C := 2: while U do 3: wähle S F, so dass S U maximal 4: U := U \ S 5: C := C {S} Satz: ρ GreedySetCover ( X, F ) H(max S F S ) Definition: Maximum Set-Cover-Problem: Gegeben endliche Menge X, Gewichtsfunktion w : X R, F P(X), k N. Gesucht: C F mit C = k, so dass w(c) := w( S C S) maximiert wird. (w sei dazu kanonisch auf P(X) fortgesetzt.) lgorithmus MSC: : U := X, C := 2: for i :=,..., k do 3: wähle S F, so dass w(s U) maximal 4: U := U \ S 5: C := C {S} Satz: ρ MSC ( X, w, F, k ) ( e ),59. Definition: G = (V, E) Graph, Knotenmenge U V heißt unabhängig, wenn u, v U : {u, v} E. Beim Independent-Set-Problem ist größtmögliche unabhängige Menge zu finden. lgorithmus GreedyIS: : U :=, t := 0, V (0) := V 2: while V (t) do 3: G (t) := der durch V (t) induzierte Graph 4: u t := Knoten mit minimalem Grad in G (t) 5: V (t+) := V (t) \ ({u t } Γ G (t)(u t )) 6: U := U {u t } 7: t := t + 8: return U Satz: ρ GreedyIS (G) E V +. Die relative bweichung ist mindestens 4 ( V ). Satz: Sei G = (V, E) mit k Farben knotenfärbbar. Dann: GreedyIS(G) log k ( V 3 ). Ein verbesserter Greedy-Knotenfärbungsalgorithmus: lgorithmus GreedyCol2: : t :=, V () := V 2: while V (t) do 3: G (t) := der durch V (t) induzierte Graph 4: U (t) := GreedyIS(G (t) ) 5: Färbe alle Knoten in U (t) mit der Farbe t 6: V (t+) := V (t) U (t) 7: t := t + 8: Gib Färbung aus Satz: Sei G = (V, E) mit k Farben knotenfärbbar, n := V. Dann GreedyCol2(G) 3n. Ferner ρ GreedyCol2 (G) = O(n/ log n). log k Satz: Graphen G mit χ(g) 3 können in polynomieller Zeit mit O( V ) Farben gefärbt werden: lgorithmus Spezialfärbung: : while (G) n do 2: Finde v G mit deg G (v) n 3: Färbe durch {v} Γ G (v) induzierten Teilgraph mit 3 Farben 4: G := G ohne {v} Γ G (v) 5: Färbe G mit GreedyCol-lgorithmus mit (G) + Farben 3.3. Ein Nicht-pproximierbarkeitsergebnis für relative Gütegarantie Satz: Wenn TSP mit konstanter relativer Güte approximiert werden kann, gilt P = NP. Satz: Sei L Σ sei NP-vollständig, Π ein Minimierungsproblem. Gibt es zwei in Polynomzeit berechenbare Funktionen f : Σ D und c : Σ N und eine Konstante γ > { 0, so dass x Σ c(x) x L : OPT(f(x)) = c(x) ( + γ) x L, dann gibt es keinen polynomiellen pproximationsalgorithmus der relativen Güte r < +γ, es sei denn P = NP. n 6 3

4. pproximationsschemata Definition: Π Opt problem,, pprox algorithmus für Π mit Eingabe bestehend aus Instanz I und ɛ (0, ). PTS: ist polynomielles pprox schema, wenn für alle I D, ɛ (0, ) in Zeit O(poly( I )) eine zulässige Lösung zu I berechnet wird mit ɛ (I, ɛ) ɛ. FPTS: ist streng polynomielles pprox - schema, wenn ein PTS mit Laufzeit O(poly( I, ɛ )) ist. Satz: (F)PTS. Bei Eingabe I sei z(i) obere Schranke für OPT(I). ɛ := z(i)+. Dann ist (I, ɛ ) = OPT(I). Ist ein FPTS, so ist die Laufzeit O(poly( I, z(i))). 4.. Ein pseudopolynomieller exakter lgorithmus für das 0- Rucksackverfahren Sei I = n, vol, p, B Instanz des Rucksackproblems. p max := max i [n] p j. Prädikat F j (α) := inf{vol(r) R [j] and p(r) α}. lgorithmus DynRucksack: : α := 0 2: repeat 3: α := α + 4: for j:=,..., n do 5: F j (α) := min{f j (α), F j (α p j ) + vol(p j )} 6: until B < F n (α) 7: Gib α aus Satz: DynRucksack berechnet zu Eingabe I den Wert OPT(I) in Zeit O(n OPT(I)) = O(n 2 p max ). Definition: Π Optimierungsproblem mit Instanzen aus ausschließlich natürlichen Zahlen. maxnr(i) sei größte in I vorkommende Zahl. lgorithmus heißt pseudopolynomiell, wenn für alle I D seine Laufzeit poly( I, maxnr(i)) ist. 4.2. Ein streng polynomielles pproximationsschema für das 0- Rucksackproblem lgorithmus R k : Eingabe: Instanz I = n, vol, p, B : Ersetze p j durch p j k 4 2: Berechne mittels DynRucksack eine optimale Rucksackfüllung R k auf der Eingabe I red 3: Gib R k aus Satz: ɛ Rk ( n, vol, p, B ) O(n 2 pmax k ). k n p max. Die Laufzeit ist lgorithmus FPTSRucksack: Eingabe: Instanz I = n, vol, p, B, Fehler ɛ : k := ɛ pmax n 2: Rufe R k (I) auf Satz: FPTSRucksack ist ein FPTS für das Rucksackproblem mit Laufzeit O(n 3 ɛ ). 4.3. Negativergebnisse für pproximationsschemata Satz: Π Optimierungsproblem, k N fest. Falls Π Minimierungsproblem, sei die Frage Ist zur Eingabe I von Π der Wert OPT(I) k? bzw., falls Π Maximierungsproblem ist, die Frage Ist zur Eingabe I von Π der Wert OPT(I) k? NP-vollständig. Gibt es ein FPTS(PTS) für I, dann ist P = NP. Definition: L NP-vollständig. Dann heißt L stark NP-vollständig, wenn es ein Polynom q gibt, so dass L q := {x Σ x L und maxnr(x) q( x )} NPvollständig ist. Gibt es kein solches q, so heißt L schwach NP-vollständig. D. h., für eine NP-vollständige Sprache L gilt, falls P NP: L stark NP-vollständig es gibt keinen pseudopolynomiellen lgorithmus für L Satz: Π Optimierungsproblem. Gibt es ein Polynom q(x, x 2 ) mit OPT(I) q( I, maxnr(i)) für alle I D, dann folgt aus der Existenz eines FPTS für Π die Existenz eines pseudopolynomiellen exakten lgorithmus. Folgerung: Gibt es für eine Optimierungsvariante eines stark NP-vollständigen Problems ein FPTS, so folgt P = NP. 5. Klassen und Hierarchien Definition: Optimierungsproblem Π liegt in NPO, wenn: i) Gültige Instanzen I werden in poly( I ) Zeit erkannt. ii) Es gibt ein Polynom p, so dass σ S(I) : σ p( I ). Ferner y Σ, y p( I ) : y kann in Polynomialzeit in I als Lösung verifiziert werden.

iii) Für alle σ S(I), I D kann f(σ) in Polynomialzeit in I berechnet werden. lternativ: Π NPO : Π p Π. Definition: Zugehöriges Entscheidungsproblem Π ent. Satz: Π NPO Π NP Definition: Sprachklasse PO NPO, wobei zu jeder Instanz I in Polynomialzeit in I eine optimale Lösung berechnet werden kann. Definition: Sei F Menge von Funktionen N R 0. Dann liegt Π NPO in der Sprachklasse F -PX, wenn es einen polynomiellen pprox algorithmus gibt mit ρ F. Ist F die Menge der konstanten Funktionen, so heißt diese Klasse nur PX. Definition: Π NPO liegt in der Sprachklasse PS bzw. FPS, wenn es für Π ein (F)PTS gibt. Satz: PO FPS PS PX NPO Definition: BS ist Klasse der mit konstant absoluter Güte approximierbaren Optimierungsprobleme. Bemerkungen: PO BS PX 6. Techniken für randomisierte pproximationsalgorithmen 6.. Die probabilistische Methode Definition: V := {x,..., x n } Menge von Variablen. Literal ist Variable x i V oder Negation x i. Klausel C = l l k ist oder-verknüpfung von Literalen. Boole sche (n, m)-formel in konjunktiver Normalform ist Φ = C C m. Definition: Probleminstanz von MaxST ist solches Φ. Bewertungsfunktion: wahr(b, Φ) = {C j Φ b(c j ) = wahr}, wobei b : V {true,false} Belegung ist. lgorithmus : : for i :=, {..., n do true mit Wkt. 2: x i := 2 false mit Wkt. 2 3: Gib b = (x,..., x n ) aus Satz: Für jede Boole sche (n, m) Formel Φ in KNF mit mindestens k Literalen pro Klausel gilt: E[(Φ)] ( 2 k ) m. Definition: Erwartete relative Güte Satz: E[ρ (Φ)] 2k 2 k. 6.2. Randomized Rounding Ganzzahliges lineares Programm B für MaxST: gem. m i= x k S i Ĉ j x i {0, } Ĉ i {0, } x k + x k S j ( x k ) Ĉi i [m] i [n] i [m] Relaxierung B rel durch Ersetzung der Nebenbedingungen. lgorithmus B: : Löse relaxiertes Problem B rel zu Φ 2: Ermittle Belegung b B mittels randomized rounding für eine Funktion π : [0, ] [0, ] (z. B.: π(x) = x) Satz: Für alle Φ gilt E[B(Φ)] ( ( /k) k ) OPT(Φ). Satz: E[ρ B (Φ)] /e,582. 6.3. Hybrider nsatz: Eine Kombination mehrerer Verfahren Satz: Für einen lgorithmus C, der jeweils mit W keit 2 oder B startet, gilt E[ρ C] 4 3. 6.4 Semidefinite Optimierung Definition: Eine Matrix R n n heißt positiv semidefinit, wenn gilt: x R n : x T x 0. Ein semidefinites Programm ist ein lineares Programm, bei dem die Lösungen für die Variablen jeweils als symmetrisch und positiv semidefinite Matrix geschrieben werden können. Definition: Max-Cut-Problem: Gegeben ungerichteter Graph G = (V, E). Gesucht: U V, so dass die Schnittgröße {{u, v} E u U und v V \ U} maximal. Satz: Durch einen zusammenhängenden Graphen gibt es immer einen Schnitt der Größe 2 E. 5

Sei n := V und G = (a ij ) djazenzmatrix von G. Für jeden Knoten v i V Variable x i {, }. Quadratisches Programm für Max-Cut: 2 a ij ( x i x j ) i<j gem. x i {, } i [n] Relaxiertes quadratisches Programm: 2 a ij ( u i, u j ) i<j gem. u i R n, u i 2 = i [n] Umformulierung in semidefinites Optimierungsproblem: Sei Y R n n, Y = (y ij ) mit y ij := u i, u j. Dann ist Y symmetrisch und positiv semidefinit. (Mit B := (u,..., u n ) gilt Y = B T B.) gem. 2 a ij ( y ij ) i<j Y = (y ij ) symm., pos. semidef. y ii = i [n] lgorithmus MaxCut: : ɛ := 0, 0005 2: Löse das semidefinite Programm für Max-Cut mit absoluter Güte ɛ und erhalte Y (ɛ) 3: Führe Cholesky-Zerlegung Y (ɛ) = B T B und damit die Berechnung der u i durch 4: Würfle gleichverteilt einen zufälligen n- dimensionalen Vektor r aus 5: for i :=,..., n do 6: if u i, r 0 then 7: x i := 8: else 9: x i := Satz: E[MaxCut(G)] 0,878 OPT(G) bzw. E[ρ MaxCut (G)] 0,878,39 für alle Graphen G 6