Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

10.11.2013Kapitel 11 Methoden des Algorithmenentwurfs Kapitel 1.3: Approximation mit relativer Güte Christian Scheideler SS 2009.

Ähnliche Präsentationen


Präsentation zum Thema: "10.11.2013Kapitel 11 Methoden des Algorithmenentwurfs Kapitel 1.3: Approximation mit relativer Güte Christian Scheideler SS 2009."—  Präsentation transkript:

1 Kapitel 11 Methoden des Algorithmenentwurfs Kapitel 1.3: Approximation mit relativer Güte Christian Scheideler SS 2009

2 Übersicht Notation Das metrische TSP Problem Unabhängige Mengen Bin Packing Nichtapproximierbarkeit Kapitel 12

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

4 Notation 3.1 Definition (Forsetzung): (d) A macht bei Eingabe I einen relativen Fehler von A (I) = |A(I)-OPT(I)| / OPT(I) A garantiert einen relativen Fehler von A (n) falls für alle I D mit |I| n gilt: A (I) A (n). (e) Sei ´ A :IN IN eine Funktion. A hat eine relative Abweichung von ´ A (n), falls für unendlich viele n gilt ´ A (n) A wc (n). Eine unendlich große Menge D´, D´ D, heißt ´ A (n)-Zeugenmenge gegen A, wenn für alle I D´ gilt: A (I) ´ A (|I|). Eine solche Eingabe nennen wir dann einen ´ A (n)-Zeugen Kapitel 14

5 Notation 3.2 Bemerkung: Sei ein Optimierungspro- blem und A ein Approximationsalgorith- mus für. (a)Bei einem Minimierungsproblem ist 1+ A (n) = A (n). (b)Bei einem Maximierungsproblem ist 1- A (n) = 1/ A (n). (c)Für beide Problemtypen ist A (n) A (n) Kapitel 15

6 Notation Ziele: Finde Approximationsalgorithmen mit möglichst kleiner relativer Güte. Zeige (asymptotisch) übereinstimmende Werte für die relative Güte und relative Abweichung Kapitel 16

7 Kapitel 127 Das Metrische TSP Problem Allgemeines TSP Problem: Gegeben der vollstän- dige Graph K n mit Kostenfunktion c:E IN, finde einen Hamilton-Kreis mit minimalen Kosten. Bemerkung: TSP ist ein NP-hartes Problem.

8 Kapitel 128 Das Metrische TSP Problem Eine natürliche Einschränkung des TSPs ist das folgende Problem: TSP: Gegeben der Graph K n mit Metrik c:E IN, bestimme einen Hamilton-Kreis mit minimalen Kosten. Eine Metrik muss die Dreiecksungleichung erfüllen, d.h. u,v,w V: c(u,v) c(u,w)+c(w,v) Bemerkung: Dieses Problem ist immer noch NP-hart, kann aber mit konstanter Güte approximiert werden.

9 Das Metrische TSP Problem Einfüge-Heuristik: Idee: erweitere Tour nach und nach durch Hinzufügung eines neuen Knotens. Einfügeoperation für Tour C=(u 1,...,u k,u 1 ): Algorithmus Einfüge(C,v) (1) bestimme i, so dass c(u i,v)+c(v,u i+1 )-c(u i,u i+1 ) minimal ist (2) gib (u 1,..., u i,v,u i+1,...,u k,u 1 ) aus Kapitel 19 uiui u i+1 v Erhöhung von c(C) durch v: c(u i,v)+c(v,u i+1 )-c(u i,u i+1 )

10 Das Metrische TSP Problem Klasse der Einfüge-Heuristiken: Algorithmus EH C 1 :=(v 1,v 1 ) für einen beliebigen Knoten v 1 for j:=2 to n do (*) wähle einen Knoten v j, der nicht in C j-1 ist C j :=Einfüge(C j-1,v j ) Beachte, dass in (*) offen geblieben ist, wie v j ausgewählt wird. (v 1,...,v n ) heißt die Einfüge- Abfolge und beschreibt die Wirkung des Algo- rithmus vollständig (sofern die Einfügestellen in Einfüge() eindeutig sind) Kapitel 110

11 Das Metrische TSP Problem 3.4 Satz: Jede Einfüge-Heuristik EH garantiert EH(K n,c) ( log n +1) OPT(K n,c). Beweis: Sei (v 1,...,v n ) eine beliebige Einfüge-Abfolge. Sei cost(v j ) die Verlängerung der Tour durch v j, d.h. cost(v j ) = c(C j )-c(C j-1 ). Mit cost(v 1 )=0 haben wir folgende Teleskop- summe: cost({v 1,...,v n }) = j=1 n cost(v j ) = j=1 n (c(C j )-c(C j-1 )) = c(C n ) = EH(I) Um fortzufahren, benötigen wir folgendes Lemma Kapitel 111

12 Das Metrische TSP Problem 3.5 Lemma: Für alle v i v j gilt: min{cost(v i ),cost(v j )} 2 c(v i,v j ) Beweis: O.B.d.A. sei i

13 Das Metrische TSP Problem Sei R*=(w 1,...,w n,w 1 ) eine optimale Tour für I und R=(w i 1,w i 2,...,w i k,w i 1 ) ein Kreis aus k Knoten auf I mit i j

14 Das Metrische TSP Problem 3.6 Lemma: Seien R* und R wie oben. Dann gibt es eine Menge Z {w i 1,w i 2,...,w i k,w i 1 } mit |Z|= k/2 und cost(Z) OPT(I). Beweis: R wird in zwei Mengen aufgeteilt (wenn k ungerade ist, fehlt die letzte Kante des Kreises): M 1 ={{w i 1,w i 2 },{w i 3,w i 4 },…} und M 2 ={{w i 2,w i 3 },{w i 4,w i 5 },…} Es ist |M 1 |=|M 2 |= k/2 Sei M dasjenige M i, für das c(M i ) c(R)/2 c(R*)/2 ist Sei Z die Menge der Knoten, die pro Kante in M den kleineren cost-Wert haben Die Wahl von Z hängt von EH-Heuristik ab Kapitel 114

15 Das Metrische TSP Problem 3.6 Lemma: Seien R* und R wie oben. Dann gibt es eine Menge Z {w i 1,w i 2,...,w i k,w i 1 } mit |Z|= k/2 und cost(Z) OPT(I). Beweis (Fortsetzung): Es ist |Z|= k/2 und wegen Lemma 3.5, cost(Z) = {w i j,w i j+1 } M min{cost(w i j ),cost(w i j+1 )} {w i j,w i j+1 } M 2 c(w i j,w i j+1 ) = 2 c(M) 2 c(R)/2 OPT(I) Kapitel 115

16 Das Metrische TSP Problem Anfangs setzen wir R 1 =R*. Dann bestimmen wir Z 1 gemäß Lemma 3.6 und berechnen R 2 =R 1 -Z 1. Allgemein bestimmen wir sukzessive Z i gemäß Lemma 3.6 und berechnen R i+1 =R i -Z i, bis R i nur noch aus einer Kante (mit Kosten max. OPT(I) ) besteht. Wie man leicht sieht, ist |R i | n/2 i-1 +1 für alle i, so dass der Prozess oben nach höchstens log n +1 Runden terminiert. Die Gesamtkosten sind also cost({v 1,…,v n }) = cost( i Z i ) = i cost(Z i ) ( log n +1) OPT(I) Kapitel 116

17 Das Metrische TSP Problem Bis heute ist nicht bekannt, ob Satz 3.4 scharf ist. Man kennt allerdings Auswahl-strategien mit relativer Abweichung (log n / log log n) Es gibt aber auch Auswahlstrategien mit relativer Güte 2. Dazu wird als Knoten v immer derjenige Knoten gewählt, der am nächsten zu einem Knoten in C j-1 ist. Der resultierende Algo heißt dann NearestInsertion. 3.7 Satz: NearestInsertion garantiert bei Eingaben über n Knoten eine relative Güte von 2-2/n Kapitel 117

18 Das Metrische TSP Problem Die NearestInsertion Heuristik ist identisch mit einem Algorithmus von Christofides. Dieser Algorithmus basiert auf der Berechnung eines minimalen Spannbaums und einer Euler-Tour durch diesen. Dazu zunächst einige Definitionen Kapitel 118

19 Kapitel 119 Exkurs: Minimaler Spannbaum Zentrale Frage: Welche Kanten muss ich nehmen, um mit minimalen Kosten alle Knoten zu verbinden?

20 Kapitel 120 Exkurs: Minimaler Spannbaum Eingabe: ungerichteter Graph G=(V,E) Kantenkosten c:E IR + Ausgabe: Teilmenge T E, so dass Graph (V,T) verbunden und c(T)= e T c(e) minimal ist T formt immer einen Baum (wenn c positiv). Baum über Knoten in V mit minimalen Kosten: minimaler Spannbaum (MSB)

21 Kapitel 121 Exkurs: Minimaler Spannbaum 3.8 Lemma: Sei (U,W) eine Partition von V (d.h. U W = V und U W = ) und e={s,t} eine Kante mit minimalen Kosten mit s U und t W. Dann gibt es einen minimalen Spannbaum (MSB) T, der e enthält. st UW e

22 Kapitel 122 Exkurs: Minimaler Spannbaum Beweis: Betrachte beliebigen MSB T´ e={s,t}: (U,W)-Kante minimaler Kosten Ersetzung von e´ durch e führt zu Baum T´´, der höchstens Kosten von MSB T´ hat, also MSB ist st UW e in T´ e´

23 Kapitel 923 Exkurs: Minimaler Spannbaum Problem: Wie wandelt man Lemma 3.8 in einen effizienten Algorithmus um? Strategie von Jarnik/Prim: Starte bei beliebigem Knoten s, MSB T besteht anfangs nur aus s Ergänze T sukzessive durch eine günstigste Kante von T zu einem Knoten w, der noch nicht in T ist, bis T alle Knoten im Graphen umfasst Laufzeit bei geeigneter Implementierung: O(|V| log |V| + |E|)

24 Kapitel 924 Exkurs: Minimaler Spannbaum Beispiel: s

25 Kapitel 1225 Exkurs: Euler-Tour Ein (Multi-)Graph G heißt Eulersch, wenn es in G einen Kreis gibt, der jede Kante von G genau einmal durchläuft (eine sogenannte Euler-Tour oder Euler-Kreis). 3.9 Lemma: G ist Eulersch genau dann, wenn G zusam- menhängend ist und jeder seiner Knoten geraden Grad hat. Beweis: : klar : durch Induktion über die Kantenzahl Da alle Knoten Grad 2 haben, gibt es einen Kreis C in G. (Fange bei beliebigem Knoten an und wandere ent- lang beliebiger Kanten, bis ein Knoten zum zweitenmal besucht wird.)

26 Kapitel 1226 Exkurs: Euler-Tour Beweis (Fortsetzung): Seien G 1,…,G k die ZHKs von G nach Entfernung der Kanten in C. Da C ein Kreis ist, sind die Knotengrade in jedem G i gerade. Nach der Induktion gibt es also einen Euler-Kreis C i in jedem G i. Diese Euler-Kreise und Kreis C können leicht an Schnitt- stellen zu einem Euler-Kreis von G zusammengesetzt werden. C1C1 C2C2 C3C3 C

27 Exkurs: Euler-Tour Der Beweis zum Lemma kann in einen Algorithmus umgewandelt werden, der eine Euler-Tour in Zeit O(|V|+|E|) berechnet. Jetzt sind wir soweit, Christofides´ ersten Algorithmus zum TSP Problem vorzustellen Kapitel 127

28 Kapitel 1228 Das Metrische TSP Problem Betrachte den folgenden Algorithmus für das TSP-Problem mit Metrik c: CH1-Algorithmus: 1.Berechne einen minimalen Spannbaum T von (V,c). 2.Verdopple alle Kanten in T zum Multigraph T*. 3.Konstruiere einen Euler-Kreis K von T*. 4.Entferne in K Wiederholungen von Knoten, so dass sich ein Hamilton-Kreis C ergibt. 5.Gib C aus.

29 Kapitel 1229 Das Metrische TSP Problem T K C

30 Kapitel 1230 Das Metrische TSP Problem 3.10 Satz: Der CH1-Algorithmus ist eine 2(1-1/n)-Approxi- mation des TSPs. Beweis: Der CH1-Algorithmus ist in poly. Zeit implementierbar. Für eine Kantenmenge E sei c(E) = e E c(e). Da c eine Metrik ist, gilt c(C) c(K) (C entsteht ja aus K über Abkürzungen.) Nach der Konstruktion von T* gilt c(K) = c(T*) = 2 c(T) Sei C* die optimale Lösung des -TSPs. Löschen wir eine beliebige Kante {v,w} in C*, so ist C* ein Spann- baum in G. Also gilt c(T) c(C*\{v,w}) (1-1/n) c(C*), falls {v,w} die teuerste der Kanten in C* ist. Damit folgt c(C) 2(1-1/n) c(C*)

31 Kapitel 1231 Das Metrische TSP Problem Ist der CH1-Algorithmus bestmöglich? Nein. Christofides hat auch einen verbesserten Algorithmus vorgestellt, bekannt als Christofides´ Algorithmus. Dazu brauchen wir weitere Definitionen. Ein Matching M eines Graphen G=(V,E) ist eine Menge von Kanten, in jeder Knoten höchstens einmal vorkommt. Ein perfektes Matching M ist eine Menge von Kanten, in der jeder Knoten genau einmal vorkommt. Ein perfektes Mathing M mit minimalem Kantengewicht nennen wir ein leichtestes Matching.

32 Das Metrische TSP Problem Beispiele: Matching perfektes Matching Kapitel 132

33 Das Metrische TSP Problem 3.11 Lemma: (a)In jedem Graphen G ist die Anzahl der Knoten ungeraden Grades gerade. (b)Für jedes (V,c) mit geradem |V| kann ein leichtestes Matching in O(n 2,5 (log n) 4 ) Zeit gefunden werden (zeigen wir hier nicht). Beweis von (a): Für alle Graphen G=(V,E) gilt v deg(v) = 2|E|. v deg(v) ist also gerade. Sei U die Menge der Knoten in G mit unge- radem Grad. Dann ist auch v U deg(v) gerade und damit |U| gerade Kapitel 133

34 Kapitel 134 Das Metrische TSP Problem Christofides´ Algorithmus: 1.Berechne einen MSB T zu (V,c). 2.Bestimme die Menge U der Knoten ungeraden Grades in T. (|U| ist nach Lemma 3.11 gerade, besitzt also ein perfektes Matching.) 3.Berechne ein leichtestes Matching M für (U,c). 4.Sei G=(V, T M). (Alle Knoten haben damit geraden Grad.) Konstruiere in G einen Euler- Kreis K. 5.Entferne in K Wiederholungen, so dass Hamilton-Kreis C verbleibt. 6.Gib C aus.

35 Kapitel 135 Das Metrische TSP Problem 3.12 Satz: Christofides´ Algorithmus ist eine (3/2-1/n)-Approximation des TSP. Beweis: Wie für den Beweis des CH1-Algorithmus gilt c(C) c(K) = c(G) = c(T)+c(M) Zu zeigen: c(M) c(C*)/2 für einen optimalen Hamilton-Kreis C*. Sei C*=(v 1,v 2,…,v n ) und U=(v i 1,…,v i m ). Betrachte die Matchings M 1 = { {v i 1,v i 2 }, {v i 3,v i 4 },…,{v i m-1,v i m } } M 2 = { {v i 2,v i 3 }, {v i 4,v i 5 },…,{v i m,v i1 } } Wegen der Dreiecksungleichung gilt c(M 1 )+c(M 2 ) c(C*) Aus der Minimalität von M folgt: 2 c(M) c(M 1 )+c(M 2 ) c(C*) Also ist c(C) c(T)+c(M) (1-1/n)c(C*) + c(C*)/2 = (3/2-1/n) c(C*) C* M1M1 M2M2

36 Kapitel 136 Das Metrische TSP Problem Die Analyse von Christofides´ Algorithmus ist scharf, wie der folgende Satz zeigt. Es wird jedoch vermutet, dass eine 4/3-Approximation für das TSP existiert Satz: Sei n gerade. G bad (n) ist ein (3/2-1/n)-Zeuge gegen Christofides´ Algorithmus. 456n/2+2 n1 2 3 G bad (n). Die eingezeichneten Kanten haben Länge 1.

37 Das Metrische TSP Problem Beweis: Da alle nicht eingezeichneten Kanten Länge >1 haben, ist R*=(1,2,…,n,1) eine optimale Rundreise, d.h. OPT(G bad )=n. Minimaler Spannbaum T: Kosten: c(T)=n Kapitel n/2+2 n1 2 3

38 Das Metrische TSP Problem Beweis (Fortsetzung): Alle Knoten in T haben ungeraden Grad. Leichtestes Matching: Kosten: c(M)=n/ Kapitel n/2+2 n1 2 3

39 Das Metrische TSP Problem Beweis (Fortsetzung): Ein Eulerkreis ist (1,4,5,1,2,3,1,n,6,n- 1,…,n/2,n/2+5,n/2+1,n/2+4,n/2+2,n/2+3,n/2+4,n/2+5, …,n-1,n,1). Daraus ergibt sich folgende Rundreise: Die Kosten sind gleich denen des Euler-Kreises, also (3/2)n Kapitel n/2+2 n1 2 3

40 Übersicht Notation Das metrische TSP Problem Unabhängige Mengen Bin Packing Nichtapproximierbarkeit Kapitel 140

41 Unabhängige Mengen Es gibt Probleme, bei denen die relative Güte nicht konstant ist sondern von der Eingabegröße abhängen kann. Ein Beispiel dafür ist das Independent Set Problem (IS) Definition: Sei G=(V,E) ein Graph und sei U V eine Knotenmenge. U wird unabhängig genannt, wenn für alle Knotenpaare u,v U gilt: {u,v} E. Das IS Problem ist das Problem, zum Eingabe- graphen eine möglichst große unabhängige Menge zu finden Kapitel 141

42 Unabhängige Mengen Das IS Problem ist NP-hart und benötigt daher einen Approximationsalgorithmus. Wir untersuchen den folgenden Algorithmus: Algorithmus GreedyIS: U:= ;t:=0; V(0):=V while V(t) do // Runde t G(t):= der von V(t) induzierte Graph u t := ein Knoten mit minimalem Grad in G(t) (*) V(t+1):=V(t)-({u t } G(t) (u t )) U:=U {u t } t:=t+1 gib U aus Kapitel 142 =:lösch(t)

43 Unabhängige Mengen Offensichtlich berechnet GreedyIS eine nichterweiterbare unabhängige Menge, und das in Zeit O(|V|+|E|). Wie nah ist diese Menge an einer maximalen unabhängigen Menge? 3.15 Satz: Sei G=(V,E) eine Eingabe für GreedyIS. Dann ist GreedyIS (G) |E|/|V|+1. Für planare Graphen ist die relative Güte also konstant (denn |E| 3|V|-6 ) Kapitel 143

44 Unabhängige Mengen Beweis: t =|lösch(t)|: Anzahl der in Runde t aus G(t) entfernten Knoten U*: maximale unabhängige Menge, d.h. OPT(G)=|U*| t =|U* lösch(t)|: Anzahl der in dieser Runde betroffenen Knoten aus U* Es gilt: t=0 |U|-1 t = |V| und t=0 |U|-1 t = OPT(G) Wir wollen nun bestimmen, wieviele Kanten durch (*) aus G(t) mindestens entfernt werden. Betrachte dazu zunächst Extremfälle für Knoten u t Kapitel 144

45 Unabhängige Mengen Beweis (Fortsetzung): Extremfälle für u t für Anzahl entfernter Kanten: In (a) werden mindestens ( t -1)( t -2) Kanten und in (b) noch t ( t -1)/2 Kanten entfernt, was minimal ist. Allerdings sind t Knoten in lösch(t) U* unabhängig, d.h. sie dürfen nicht durch Kanten verbunden sein. Da diese Kanten außerhalb von lösch(t) enden müssen, ist die Mindestzahl der gelöschten Kanten also ( t ( t -1)+ t ( t -1))/ Kapitel 145 Grad t -1 utut t -2 Grad t -1 utut (a)(b)

46 Unabhängige Mengen Beweis (Fortsetzung): Insgesamt gilt also: t=0 |U|-1 ( t ( t -1)+ t ( t -1))/2 |E| Ausklammern, Umformen und Einsetzen ergibt: t=0 |U|-1 ( t 2 + t 2 ) 2|E|+|V|+OPT(G) Diese Ungleichung gilt für beliebige zulässige Werte für t und t und daher insbesondere für t =|V|/|U| und t =OPT(G)/|U| Damit und mit GreedyIS(G)=|U| bekommt man |V| 2 +OPT(G) 2 GreedyIS(G) und schließlich OPT(G)/GreedyIS(G) |E|/|V| Kapitel 146 2|E|+|V|+OPT(G)

47 Unabhängige Mengen Nebenrechnungen: Kapitel 147

48 Unabhängige Mengen Bei hohem Grad kann GreedyIS sehr schlechte Ausgaben liefern: 3.16 Satz: GreedyIS hat eine relative Abweichung von mindestens (|V|-1)/4. Beweis: Betrachte den folgenden Graphen G bad : Kapitel 148 ……… (n-1)/2 GreedyIS(G bad ) = 2 OPT(G bad ) = (n-1)/2

49 Unabhängige Mengen 3.17 Satz: Sei G=(V,E) ein knoten-k-färbbarer Graph mit k 2. Dann ist GreedyIS(G) log k (|V|/3). Beweis: Wir benötigen dazu das folgende Lemma, das eine Beziehung zwischen der Anzahl der Farben und dem minimalen Grad eines Graphen herstellt Lemma: Sei G=(V,E) ein knoten-k-färbbarer Graph. Dann gibt es ein u V mit deg G (u) (1-1/k)|V| Kapitel 149

50 Unabhängige Mengen Beweis (Lemma 3.18): Sei G mit k Farben gefärbt und bezeichne U i die Menge der Knoten mit Farbe i. U i ist eine unabhängige Menge für alle i. Es muss eine Menge U unter den U i ´s geben, die mindestens |V|/k Knoten enthält. Jeder Knoten in U kann nur mit höchstens |V|-|U| <|V|- |V|/k = (1-1/k)|V| Knoten außerhalb von U verbunden sein Kapitel 150

51 Unabhängige Mengen Beweis (Satz 3.17): Sei |V|=n und |V(t)|=n t. Es gilt k 2. Wegen Lemma 3.14 hat u t höchstens (1-1/k)n t Nachbarn. Wenn diese zusammen mit u t aus V(t) herausgenommen werden, ergibt sich: n 0 = n und n t+1 n t – (1-1/k)n t -1 n t /k – 1 und damit n k 1 n k t k-1 k t k t In jeder Runde t mit n t 1 wird ein neuer Knoten nach U gelegt. Das geht auf jeden Fall solange, bis t log k (n/3) ist. Damit ist |U| log k (n/3) Kapitel 151 n t

52 Unabhängige Mengen Wie wir oben bemerkt haben, kann man allen Knoten einer unabhängigen Menge dieselbe Farbe zuweisen. Das nutzen wir jetzt für einen neuen Algorithmus für das Knotenfärbungsproblem. Idee: bestimme mit GreedyIS eine unabhängige Menge, weise diesen Knoten eine Farbe zu, lösche die Knoten aus dem Graphen, und wiederhole das, bis alle Knoten gefärbt sind Kapitel 152

53 Unabhängige Mengen Algorithmus GreedyCol2: t:=1; V(1):=V while V(t) do G(t) := der durch V(t) induzierte Graph U t := GreedyIS(G(t)) färbe alle Knoten in U t mit Farbe t V(t+1):=V(t)-U t t:=t+1 gib die Färbung aus Kapitel 153

54 Unabhängige Mengen 3.19 Satz: Sei G=(V,E) ein knoten-k-färbbarer Graph, n=|V|. GreedyCol2 gibt eine Färbung mit höchstens 3n/log k (n/16) Farben aus und hat eine relative Gütegarantie von O(n/log n). Beweis: Sei n t =|V(t)|. Wegen Satz 3.17 ist |U t | log k (n t /3). Das führt zu folgender rekursiver Beziehung: n 1 = n und n t+1 n t – log k (n t /3) Der Algorithmus bricht ab, wenn n t <1 ist. Wir bestimmen nun, für welches t das eintritt Kapitel 154

55 Unabhängige Mengen Beweis (Fortsetzung): Sei n t n/log k (n/16). Mit der Beziehung n/log k n (3/4)n 1/2 ergibt sich: log k (n t /3) log k (n/3log k n) log k ((n/16) 1/2 ) = log k (n/16)/2 D.h. solange noch n/log k (n/16) Knoten ungefärbt sind, werden mindestens log k (n/16)/2 Knoten je Runde gefärbt. Da spätestens nach t=2n/log k (n/16) Runden und damit verteilten Farben die Anzahl der verbliebenen Knoten

56 Übersicht Notation Das metrische TSP Problem Unabhängige Mengen Bin Packing Nichtapproximierbarkeit Kapitel 156

57 Bin Packing Bin Packing Problem: Gegeben: Liste L von Zahlen s 1,…,s n IN und die Bin Größe S IN Gesucht: Eine Partitionierung von {1,…,n} in Mengen B 1,…,B k mit j B i s j S für alle i, so dass k minimal. Bemerkung: Die Entscheidungsvariante von Bin Packing ist NP-hart. Der Einfachheit halber nehmen wir im Folgenden an: s 1,…,s n [0,1] und S=1 (d.h. der Parameter S ist nicht mehr notwendig) Kapitel 157

58 Bin Packing Mögliche Strategien: Algorithmus FF(L) (First Fit) for j:=1 to n do packe s j in Bin B i mit kleinstem i, in den s j noch passt Algorithmus BF(L) (Best Fit) for j:=1 to n do packe s j in Bin B i mit kleinster ungenutzter Kapazität, in den s j noch passt Algorithmus FFD(L) (First Fit Decreasing) sortiere die Liste L so, dass s 1 … s n wende FF(L) an Kapitel 158

59 Bin Packing 3.20 Satz: FF und BF haben eine relative Abweichung von mindestens 5/3. Beweis: Sei n ein Vielfaches von 18 und 0< <1/84. Definiere L=(s 1,…,s n ) durch 1/6 – 2 falls 1 i n/3 s i =1/3 + falls n/3 < i 2n/3 1/2 + falls 2n/3 < i n Dann gilt OPT(L)=n/ Kapitel 159

60 Bin Packing Beweis (Fortsetzung): OPT FF & BF Kapitel 160 1/2+ 1/3+ 1/6-2 1/3+ 1/2+ n/3 maln/18 maln/6 maln/3 mal n/18+n/6+n/3 = 5n/9 = (5/3) (n/3)

61 Bin Packing Bemerkung: Es ist bekannt, dass die relative Güte von FF und BF im worst case exakt 17/10 ist. Geht es besser? 3.21 Satz: FFD hat eine Approximationsgüte von 3/2. Beweis: Sei L=(s 1,…,s n ) mit s 1 … s n und m=OPT(L). Sei r die Anzahl der von FFD erzeugten Bins. r=m: fertig r>m: Wir zeigen zunächst folgendes Lemma: 3.22 Lemma: Sei s k das erste Element, das in B m+1 gepackt wurde. Dann gilt s k 1/ Kapitel 161

62 Bin Packing Beweis (Lemma 3.22): Angenommen, s k >1/3. Dann gibt es ein h m, so dass jeder Bin B j mit j h genau ein Element und jeder Bin B j mit h1 für alle j h und j

63 Bin Packing Beweis (Lemma 3.22): Seien B´ 1,…,B´ m die Bins einer optimalen Packung. Enthält Bin B´ i ein Element s j mit j h, so ist kein weiteres s q mit 11/3 für alle j k. Die Elemente s h+1,…,s k benötigen also nach (*) mindestens (k-h)/2 = m-h+1 weitere Bins. Insgesamt werden somit h+(m-h+1)=m+1>m Bins benötigt, ein Widerspruch zur Definition von m! Kapitel 163

64 Bin Packing Beweis (Satz 3.21): Sei s t ein Element in Bin B r (zur Erinnerung: FFD(L)=r ). Da s t 1/3 (wegen Lemma ), sind die Bins B 1,…, B r-1 zu mindestens 2/3 gefüllt, andernfalls wäre s t in eines dieser Bins gepackt worden. Dasselbe Argument zeigt auch, dass h(B r-1 )+s t > 1 (h(B i ): Last von Bin B i ). Insgesamt erhalten wir i=1 n s i i=1 r-1 h(B i )+s t = i=1 r-2 h(B i )+(h(B r-1 )+s t ) > (2/3)(r-2)+1 Da m=OPT(L) i=1 n s i, folgt OPT(L) (2/3)(r-2)+1 = (2/3)r-1/3 und damit r (3/2)OPT(L) Kapitel 164

65 Übersicht Notation Das metrische TSP Problem Unabhängige Mengen Bin Packing Nichtapproximierbarkeit Kapitel 165

66 Kapitel 1266 Nichtapproximierbarkeit von TSP 3.23 Satz: TSP hat keine -Approximation für alle Konstanten >1, es sei denn, P=NP. Beweis: Betrachte das Hamilton-Kreis (HK) Problem: Gegeben ein ungerichteter Graph G=(V,E), entscheide, ob G einen Hamilton-Kreis besitzt oder nicht. Es ist bekannt, dass es NP-hart ist, das HK- Problem zu entscheiden. Wir wollen mithilfe des HK-Problems zeigen, dass dann auch Satz 3.23 gilt.

67 Kapitel 1267 Nichtapproximierbarkeit von TSP Beweis (Fortsetzung): Betrachte eine beliebige Konstante >1. Für eine Instanz G=(V,E) des HK-Problems definieren wir eine Distanzfunktion d mit Falls G einen Hamilton-Kreis hat, dann gibt es eine Lösung des TSPs (V,d) der Länge n. Hat G keinen Hamilton-Kreis, muss jede Lösung des TSPs (V,d) mindestens eine Kante {v,w} verwenden, die nicht in E ist, kostet damit also mehr als n. d(v,w) = 1falls {v,w} E nsonst

68 Kapitel 1268 Nichtapproximierbarkeit von TSP Beweis (Fortsetzung): Angenommen, es gibt eine -Approximation A zum TSP. Dann verwende den folgenden Algorithmus für das HK- Problem: Gegeben ein Graph G=(V,E), konstruiere (V,d) wie oben und wende A darauf an. Falls A einen Kreis zurückgibt mit Länge n, gib Ja aus und sonst Nein. Dieser Algorithmus könnte dann das HK-Problem in polynomieller Zeit entscheiden, ein Widerspruch zur Tatsache, dass das HK-Problem NP-hart ist! Also kann es keine -Approximation für das TSP geben, es sei denn, P=NP.

69 Nichtapprox. von Bin Packing 3.24 Satz: Bin Packing hat keine -Approximation mit <3/2, es sei denn, P=NP. Beweis: Betrachte das NP-harte Entscheidungsproblem Partition: Gegeben eine Menge S={a 1,…,a n } natürlicher Zahlen, gibt es Partition S=S 1 S 2, so dass a i S 1 a i = a i S 2 a i ? Angenommen, es gibt einen Algo A für Bin Packing mit relativer Güte kleiner als 3/2. Sei S={a 1,…,a n } eine Instanz von Partition und T:= i=1 n a i. Ist T ungerade oder gibt es ein a i mit a i >T/2, so kann es keine Partition geben (da a 1,…,a n IN sind). Sonst sei L=(2a 1 /T,…,2a n /T) eine Instanz von Bin Packing und m die Anzahl der von A benötigten Bins für L. Wir unterscheiden zwei Fälle Kapitel 169

70 Nichtapprox. von Bin Packing Beweis (Fortsetzung): Fall 1: Ist m 3, so gilt wegen m/OPT(L) 2. Die Elemente in L können also nicht in zwei Bins der Größe 1 gepackt werden, d.h. die Antwort für L bzgl. Partition ist Nein. Fall 2: Ist m 2, so folgt wegen i=1 n 2a i /T = 2 sofort, dass m=2. Insbesondere sind dann beide vom Algorithmus gepackten Bins voll, und die Antwort für L bzgl. Partition lautet Ja. Also wäre mittels A das Partition Problem in polynomieller Zeit entscheidbar, was der Tatsache widerspricht, dass Partition NP-hart ist Kapitel 170

71 Nichtapproximierbarkeit Allgemein kann man zeigen: 3.25 Satz: Sei L * ein NP-vollständiges Entscheidungs- problem und sei ein Minimierungsproblem. Gibt es zwei in Polynomzeit berechenbare Funktionen f: * D und c: * IN und eine Konstante >0, so dass für alle Eingaben x * gilt: c(x) x L c(x)(1+ ) x L dann gibt es keinen polynomiellen Approximations- algorithmus der relativen Güte mit es sei denn, P=NP Kapitel 171 OPT(f(x))

72 Kapitel 172 Fragen?


Herunterladen ppt "10.11.2013Kapitel 11 Methoden des Algorithmenentwurfs Kapitel 1.3: Approximation mit relativer Güte Christian Scheideler SS 2009."

Ähnliche Präsentationen


Google-Anzeigen