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

Ähnliche Dokumente
Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

Kap. 7 Optimierung. Überblick. Optimierung: Einführung. Motivation. Beispiele für Optimierungsprobleme. Rundreiseprobleme (TSP)

Literatur für diese VO. Überblick. Kap. 5: Approximationsalgorithmen für kombinatorische Optimierungsprobleme

Kap. 5: Approximationsalgorithmen für kombinatorische Optimierungsprobleme

Theoretische Informatik 1

Theoretische Informatik 1

Betriebswirtschaftliche Optimierung

Betriebliche Optimierung

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Rundreiseproblem und Stabilität von Approximationsalg.

Datenstrukturen, Algorithmen und Programmierung II

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016

Übung 2 Algorithmen II

Approximation im Sinne der Analysis:

Approximationsalgorithmen. 19. Dezember / 28

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem

3 Klassifikation wichtiger Optimierungsprobleme

Algorithmische Graphentheorie

Algorithmische Graphentheorie

Effiziente Algorithmen (SS2015)

Approximationsalgorithmen

Übungsblatt 5. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18

Theoretische Grundlagen der Informatik

Kombinatorische Optimierung

Das Problem des minimalen Steiner-Baumes

Approximationsklassen für Optimierungsprobleme

Kap. 6.5: Minimale Spannbäume ff

Einführung in Berechenbarkeit, Komplexität und Formale Sprachen

Polynomialzeit- Approximationsschema

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Approximationsalgorithmen. Approximation im Sinne der Analysis:

Näherungsalgorithmen (Approximationsalgorithmen) WiSe 2008/09 in Trier. Henning Fernau Universität Trier

Approximationsalgorithmen

Vorlesung Theoretische Informatik (Info III)

Approximation mit relativer Gütegarantie Überblick und einführende Beispiele

Einführung in das Seminar Algorithmentechnik

Überblick. Kap. 1.4: Minimum Weight Perfect Matching. 1.3 Blüten-Schrumpf Algorithmus für Maximum Matching

Effiziente Algorithmen II

Das Problem des Handlungsreisenden

Der Branching-Operator B

Algorithmen und Datenstrukturen 2 VU 3.0 Übungstest SS Juni 2013

Kombinatorische Optimierung

Heuristische Verfahren

Kap. 7.3 Enumerationsverfahren Kap. 7.4 Branch-and-Bound Kap. 7.5 Dynamische Programmierung

Informatik III. 4.3 Weitere NP-Vollständige Probleme und Approximation. Christian Schindelhauer

6. Übung zur Linearen Optimierung SS08

9 Minimum Spanning Trees

Minimale Spannbäume. Evangelia Tsiouprou. LMU Proseminar Computer Unplugged WS 2004/05

Schnittebenenverfahren für das symmetrische

Grundlagen Theoretischer Informatik 3 SoSe 2012 in Trier. Henning Fernau Universität Trier

Das Traveling Salesman Problem und das Assignment Problem zweiter Ordnung. Gerold Jäger

2. Optimierungsprobleme 6

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

Hamiltonsche Graphen

Algorithmische Graphentheorie

Kapitel 9: Lineare Programmierung Gliederung

Heuristiken und exakte Algorithmen für das verallgemeinerte Traveling Salesman Problem. Gerold Jäger

Algorithmische Methoden für schwere Optimierungsprobleme

Betriebswirtschaftliche Optimierung

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1

Minimal spannende Bäume

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

Die Theorie der Toleranzen und deren Anwendung auf das Traveling Salesman Problem

Das Rundreiseproblem und Stabilität von Approximationsalgorithmen

Informatik III - WS07/08

Rechenzeit für A. Sei t B die Rechenzeit eines Algo für B. Seien p,q,r monotone Polynome ( +).

Theoretische Grundlagen der Informatik

Betriebliche Optimierung

Grundlagen: Algorithmen und Datenstrukturen

Übungsblatt 2 - Lösung

Euler und Hamiltonkreise

Betriebliche Optimierung

Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2014

Informatik II, SS 2014

21. Dynamic Programming III

Algorithmen II. Peter Sanders, Christian Schulz, Simon Gog. Übungen: Michael Axtmann. Institut für Theoretische Informatik, Algorithmik II.

Das Steinerbaumproblem

EDM, Algorithmen und Graphenspeicherung

Grundlagen Theoretischer Informatik 3 SoSe 2012 in Trier. Henning Fernau Universität Trier

20. Dynamic Programming II

Algorithmische Graphentheorie

20. Dynamic Programming II

Vorlesung Datenstrukturen

3.2 Generischer minimaler Spannbaum-Algorithmus

Datenstrukturen und Algorithmen (SS 2013)

Effiziente Algorithmen I

Kap. 3: Exakte Lösungsverfahren für NPschwierige. Optimierungsprobleme VO Algorithm Engineering

Polynomial Time Approximation Schemes for Euclidean Traveling Salesman Problems. Benjamin Thome

ADS: Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2. Stefan Florian Palkovits, BSc Juni 2016

Optimale Lösungen mit Greedy-Strategie erfordern Optimalität der Greedy-Wahl. Beispiele für optimale Greedy-Lösungen

Vorlesung Datenstrukturen

Graphentheorie. Kardinalitätsmatchings. Kardinalitätsmatchings. Kardinalitätsmatchings. Rainer Schrader. 11. Dezember 2007

Layout-Synthese - Globale Verdrahtung Peter Marwedel

Grundlagen Theoretischer Informatik 3 SoSe 2010 in Trier. Henning Fernau Universität Trier

Transkript:

Kap..1 Heuristiken Kap.. Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 3. VO DAP SS 008 14. Juli 009 Überblick Hausaufgabenbesprechung: schlechte Instanzen finden für Greedy-Heuristiken für TSP, Bin Packing, Rucksackproblem Kap..: Approximative Algorithmen Gütegarantien für NN-Heuristik (TSP), FF-Heuristik (Bin Packing), Greedy-Heuristik (Rucksackproblem) Approximative Algorithmen mit Gütegarantie für TSP: ST-Heuristik, CH-Heuristik 1 Das Travelling Salesman Problem Auch: Handlungsreisendenproblem, Rundreiseproblem, TSP Gegeben: Vollständiger ungerichteter Graph G=(V,E) mit Kantenkosten c e Gesucht: Tour T (Kreis, der jeden Knoten genau einmal enthält) mit minimalen Kosten c(t)= c e Nearest-Neighbor Heuristik für TSP Beginne mit leerer Tour T:= Beginne an einem Knoten v=v 0 : Ende der Tour Solange noch freie Knoten existieren: Suche den nächsten freien (noch nicht besuchten) Knoten zu v (d.h. die billigste Kante (v,w)) und addiere Kante (v,w) zu T. Addiere die Kante (v,v 0 ) 4 5 TSP Vergleich der Lösungen Wie gut ist die Nearest-Neighbor Heuristik (NN)? IHRE ERGEBNISSE Greedy optimal 6 1

Wie gut ist die Nearest-Neighbor Heuristik (NN)? Kann beliebig schlechte Ergebnisse liefern, z.b. für c(i,i+1)=1 für i=1,..,n-1 und c(n,1)=m (für eine sehr große Zahl M) und c(i,j)= sonst NN-Lösung: 1 3 n- n-1 n Optimale Tour: M 1 3 n- n-1 n Bin-Packing / Packen von Kisten Geg.: Gegenstände 1,,N der Größe w i und beliebig viele Kisten der Größe K. Gesucht: Finde die kleinste Anzahl von Kisten, die alle Gegenstände aufnehmen. First-Fit Heuristik: Jeder Gegenstand wird in die erstmögliche Kiste gelegt, in die er paßt. Lösungswert NN: (n-1)+m Optimalwert: (n-)+4=n+ 9 Wie gut ist die First-Fit Heuristik? IHRE ERGEBNISSE 10 First-Fit Heuristik für Bin-Packing Gegeben sind beliebig viele Kisten der Größe 101 und 3 Gegenstände der Größen: x Größe 6, x Größe 10, 3x Größe 16, 10x Größe 34, 10x Größe 51 Kiste 1: x Größe 6 5x Größe 10 Summe=9 Kiste : x Größe 10 3x Größe 16 Kisten 3-: x Größe 34 Kisten 8-1: 1x Größe 51 Optimale Lösung: Insgesamt: 10 Kisten Kisten 1-3: 1x Größe 51 1x Größe 34 Kisten 4-10: 1x Größe 51 1x Größe 34 Summe=68 Summe=68 FF-Lösung: Summe=51 1 Kisten 1x Größe 16 1x Größe 10 1x Gr. 6 Das 0/1-Rucksackproblem Geg.: N Gegenstände mit Gewicht (Größe) w i und Wert c i, und ein Rucksack der Größe K. Gesucht: Menge der in den Rucksack gepackten Gegenstände mit maximalem Gesamtwert; dabei darf das Gesamtgewicht den Wert K nicht überschreiten. Greedy-Heuristik für das 0/1-Rucksackproblem Sortiere die N Gegenstände nach ihrem Nutzen:= Wert c i, / Gewicht w i Für alle Gegenstände i in der sortierten Reihenfolge: Falls i noch in den Rucksack paßt: füge es hinzu. 13 14

Greedy-Heuristik an Beispiel für das 0/1-Rucksackproblem K=1 Gegenstand a b c d e f g h Gewicht 3 4 4 6 6 8 8 9 Wert 3 5 5 10 10 11 11 13 Nutzen 1 1,5 1,5 1,66 1,66 1,3 1,3 1,44 Wie gut ist die Greedy-Heuristik für das 0/1-Rucksackproblem? IHRE VORSCHLÄGE Sortierung nach Nutzen:= Wert c i / Gewicht w i ergibt: d,e,h,f,g,b,c,a Wir packen also in den Rucksack: d (6) e (6) b(4) Wert=5 16 1 Beispielinstanz für 0/1-Rucksackproblem N Gegenstände mit Gewichten und Werten w i = c i = 1 für i=1,,n-1, c N = K-1 und w n =K=MN, wobei M eine sehr große Zahl ist; der Rucksack hat Größe K (also sehr groß). Greedy packt die ersten N-1 Gegenstände in den Rucksack; kein Platz mehr für N-tes Element. Greedy-Lösungswert: N-1 Zusammenfassung TSP: NN-Heuristik: der berechnete Lösungswert kann beliebig weit vom optimalen Lösungswert entfernt sein. Bin-Packing: die von uns berechnete FF-Heuristik berechnete einen Lösungswert von 1, während der Optimalwert 10 war. Rucksackproblem: der von der Greedy-Heuristik berechnete Wert kann beliebig weit von der Optimallösung entfernt sein Optimale Lösung packt nur N-tes Element ein; Lösungswert: K-1=MN-1 18 Frage: Haben wir für Bin-Packing einfach keine besonders schlechte Instanz gefunden? Oder ist Greedy hierfür immer relativ nah am Optimum? Vertrauen in die Lösung Professor: Bei meiner Lösung entstehen Produktionskosten von 1.000.000 EUR. Praktiker: Gibt es keine bessere Lösung? Professor: Wir haben tagelang gerechnet und keine bessere gefunden. Praktiker:... (Skepsis) Professor: Aber ich kann garantieren, dass es keine für weniger als 950.000 EUR geben kann. Praktiker:... (höchstens 5% daneben!) Motivation für Approximative Algorithmen Kap..: Approximative Algorithmen und Gütegarantien Approximative Algorithmen sind Heuristiken, die (im vorhinein) eine Gütegarantie für die gefundene Lösung geben können. Z.B. der Art: Die gefundene Lösung ist um höchstens x% schlechter als der Wert der optimalen Lösung. 0 1 3

Approximative Algorithmen und Gütegarantien Sei A ein Algorithmus, der für jede Probleminstanz P eines Optimierungsproblems Π eine zulässige Lösung mit positivem Wert liefert. Dann def. wir: c A (P) als den Wert der Lösung des Algorithmus A für Probleminstanz P Π c opt (P) sei der optimale Wert für P. Für Minimierungsprobleme gilt: Falls c A (P) / c opt (P) ε für alle Probleminstanzen P und ein ε>0, dann heißt A ein ε-approximativer Algorithmus und die Zahl ε heißt Gütegarantie von Algorithmus A. Approximative Algorithmen und Gütegarantien Sei A ein Algorithmus, der für jede Probleminstanz P eines Optimierungsproblems Π eine zulässige Lösung mit positivem Wert liefert. Dann def. wir: c A (P) als den Wert der Lösung des Algorithmus A für Probleminstanz P Π c opt (P) sei der optimale Wert für P. Für Min Max imierungsprobleme gilt: Falls c A (P) / c opt (P) ε für alle Probleminstanzen P und ein ε>0, dann heißt A ein ε-approximativer Algorithmus und die Zahl ε heißt Gütegarantie von Algorithmus A. Approximative Algorithmen Für Minimierungsprobleme gilt: ε 1 Für Maximierungsprobleme gilt: ε 1 ε = 1 A ist exakter Algorithmus (berechnet immer den optimalen Wert) Für Minimierungsprobleme gilt: Falls c A (P) / c opt (P) ε für alle Probleminstanzen P und ein ε>0, dann heißt A ein ε-approximativer Algorithmus und die Zahl ε heißt Gütegarantie von Algorithmus A. Gütegarantie-Überlegungen der FF-Heuristik für Bin-Packing Unsere Bin-Packing Beispielinstanz P: Lösung der FF-Heuristik: c A (P)=1 Kisten Optimale Lösung: c A (P) / c opt (P) = 1 / 10 =1, c opt (P)=10 Kisten FF-Heuristik ist vielleicht ein 1,-approximativer Algorithmus (nur wenn 1, für alle Instanzen gilt) ε kann auf keinen Fall kleiner als 1, sein 4 5 Gütegarantie der FF-Heuristik Theorem: Die First-Fit Heuristik für Bin-Packing besitzt asymptotisch eine Gütegarantie von. Es gilt: c FF (P) / c opt (P) +1/c opt (P) für alle P Π Gütegarantie der FF-Heuristik Theorem: Die First-Fit Heuristik für Bin-Packing besitzt asymptotisch eine Gütegarantie von. Es gilt: c FF (P) / c opt (P) +1/c opt (P) für alle P Π Beweis: Offensichtlich gilt: Jede FF-Lösung füllt alle bis auf eine der belegten Kisten mindestens bis zur Hälfte (sonst hätten wir diese zusammenlegen können). Daraus folgt für alle P Π: K/ (c FF (P) - 1) w j c opt (P) K j=1..n Größe der verteilten Gegenstände Beweis: Offensichtlich gilt: Jede FF-Lösung füllt alle bis auf eine der belegten Kisten mindestens bis zur Hälfte (sonst hätten wir diese zusammenlegen können). Daraus folgt für alle P Π: K/ (c FF (P) - 1) w j c opt (P) K j=1..n c FF (P) c opt (P) +1 Gesamtvolumen: in c opt Kisten paßt alles rein 4

Gütegarantie der FF-Heuristik Theorem (ohne Beweis): Die First-Fit Heuristik besitzt asymptotisch eine Gütegarantie von 1/10. Es gilt: c FF (P) / c opt (P) < 1/10+/c opt (P) für alle P Π Unsere Beispielinstanz zeigt auch, dass die FF-Heuristik keinen besseren Approximationsfaktor als 1/10 besitzen kann. Gütegarantie der Greedy-Heuristik für Rucksackproblem Optimalwert: MN-1 Lösungswert Greedy: N-1 Unsere Beispielinstanz zeigt, dass die Greedy- Heuristik keinen besseren Approximationsfaktor als (N-1) / (MN-1) besitzen kann. Da M beliebig groß sein kann, existiert kein festes ε>0 für die eine Güte festgelegt werden kann. Greedy-Heuristik für das Rucksackproblem kann also beliebig schlecht werden. Eine kleine Änderung führt zu -approximativem Algorithmus 8 9 Gütegarantie der Nearest-Neighbor Heuristik für TSP Lösungswert NN: (n-1)+m Optimalwert: (n-)+4=n+ Unsere Beispielinstanz zeigt, dass die NN-Heuristik keinen besseren Approximationsfaktor als (n-1+m) / (n+) besitzen kann. Da M beliebig groß sein kann, existiert kein festes ε>0 für die eine Güte festgelegt werden kann. NN-Heuristik für das TSP kann also beliebig schlecht werden. Spanning-Tree Heuristik für TSP Idee: Bestimme einen MST von G Kanten- generiere daraus eine Eulertour Verdopplung generiere daraus eine zulässige Tour Abkürzungen Definition: Eine Eulertour ist ein geschlossener Kantenzug, der jede Kante des Graphen genau einmal enthält. Es gilt: Ein Graph enthält eine Eulertour genau dann wenn jeder Knoten geraden Knotengrad hat (ohne Beweis). 30 31 Beispiel für Spanning-Tree Heuristik Beispiel für Spanning-Tree Heuristik D W D W A K B A K B F F 34 5

Beispiel für Spanning-Tree Heuristik 3 D W 1 5 4 i A K 6 10 9 B 8 F Beispiel für Spanning-Tree Heuristik i A 1 10 3 D W K B Abkürzung: direkter Weg 8 F 35 36 Spanning-Tree Heuristik für TSP 1. Bestimme einen MST B von G. Verdopple alle Kanten aus B Graph G :=(V,B ) 3. Bestimme eine Eulertour C in G (Tour, die jede Kante genau einmal enthält) 4. Gib der Eulertour C eine Orientierung 5. Wähle einen Knoten s V, markiere s, setze p:=s und T:= 6. Solange noch unmarkierte Knoten existieren do {. Laufe von p entlang der Orientierung von C bis ein 8. unmarkierter Knoten q erreicht ist. 9. Setze T:=T {(p,q)}, markiere q, p:=q 10. } 11. Setze T:=T {(p,s)} STOP; T ist Tour. Diskussion der Gütegarantie Auch für die Spanning-Tree Heuristik gibt es eine schlechte Instanz, bei der Lösungen produziert werden, die beliebig weit vom optimalen Lösungswert entfernt sind. Man kann zeigen: Das Problem, das TSP-Problem für beliebiges ε>1 zu approximieren ist NP-schwierig. Aber: wenn man nur spezielle TSP-Instanzen betrachtet, dann kann man eine Gütegarantie finden. 3 38 Das Metrische TSP-Problem Ein TSP heißt metrisch, wenn für die gegebene Distanzmatrix alle c ii =0 sind und die Dreiecksungleichung erfüllt ist, d.h. für alle Knoten i,j,k gilt: c ik c ij + c jk Der direkte Weg von i nach k kann nicht länger sein als der Weg von i nach k über j. TSP-Probleme aus der Praxis sind sehr oft metrisch (z.b. Wegeprobleme) sogar euklidisch: d.h. die Städte besitzen Koordinaten im -dim. Raum und die Distanzmatrix ist durch die euklidischen Distanzen gegeben. Gütegarantie für ST-Heuristik Für metrische TSP und für die Spanning-Tree Heuristik gilt: c ST (P) / c opt (P) für alle P Π Beweis: c ST (P) c B (P) = MST(P) c opt (P) wegen Dreiecksungleichung: ST-Lösung läuft direkt denn: in TSP-Lösung müssen u.a. alle Knoten miteinander verbunden sein; der billigste Weg hierfür ist MST 41 6

Christophides-Heuristik (CH) Idee: Ähnlich wie die Spanning-Tree Heuristik, verzichte jedoch auf die Verdopplung der Kanten Problem: Es existiert keine Eulertour in T. Lösung: Füge Kanten hinzu, so dass eine Eulertour existiert. Definition: Ein perfektes Matching M ist eine Kantenmenge, die jeden Knoten genau einmal enthält. Sie ordnet also jedem Knoten einen eindeutigen Partnerknoten zu. Christophides-Heuristik (CH) Lösungsidee: Füge die Kanten eines perfekten Matchings zwischen den ungeraden Knoten zum MST hinzu. Nun haben alle Knoten geraden Grad und eine Eulertour existiert. Um eine gute Lösungsgarantie zu erhalten, bestimmen wir ein perfektes Matching M mit kleinstem Gewicht, d.h. die Summe aller Kantengewichte c e über die Kanten in M ist minimal unter allen perfekten Matchings. Ein minimales perfektes Matching M kann in polynomieller Zeit berechnet werden (o.bw.) 4 43 Christophides-Heuristik (CH) Beispiel für CH-Heuristik Ersetze in der Spanning-Tree Heuristik die Kantenverdopplung (Schritt ()) durch folgende Schritte: Sei W die Menge der Knoten in (V,B) mit ungeradem Grad und n= W. 1. Bestimme im von W induzierten Untergraphen von K n (vollständiger Graph auf n Knoten) ein perfektes Matching M kleinsten Gewichts.. Setze B :=B M. i A 1 D 3 K 6 B W 5 4 F Das Matching geht auf, denn: W ist gerade. 44 46 Gütegarantie für CH-Heuristik Für das metrische TSP und die CH-Heuristik gilt: c CH (P) / c opt (P) 3/ für alle P Π Beweis: Seien i 1,i,,i M die Knoten von B mit ungeradem Grad so nummeriert, wie sie in einer optimalen Tour T opt vorkommen. Sei M 1 :={(i 1,i ),(i 3,i 4 ), } und M :={(i,i 3 ),(i 4,i 5 ),, (i M,i 1 )}. Es gilt: c opt (P) c M1 (P) + c M (P) c M (P)+c M (P) wg. Dreiecksungleichung: M nimmt Abkürzung denn: M ist Matching kleinsten Gewichts Gütegarantie für CH-Heuristik Für das metrische TSP und die CH-Heuristik gilt: c CH (P) / c opt (P) 3/ für alle P Π Beweis: Seien i 1,i,,i M die Knoten von B mit ungeradem Grad so nummeriert, wie sie in einer optimalen Tour T opt vorkommen. Sei M 1 :={(i 1,i ),(i 3,i 4 ), } und M :={(i,i 3 ),(i 4,i 5 ),, (i M,i 1 )}. Es gilt: c opt (P) c M1 (P) + c M (P) c M (P)+c M (P) Weiterhin gilt: c CH (P) c B (P) = c B (P) + c M (P) c opt (P)+1/ c opt (P) = 3/ c opt (P)

CH-Heuristik: Bemerkungen Die Christophides-Heuristik (196) war lange Zeit die Heuristik mit der besten Gütegarantie. Vor kurzem zeigte Arora (1996): das euklidische TSP kann beliebig nah approximiert werden: die Gütegarantie ε>1 kann mit Laufzeit O(N 1/(ε-1) ) approximiert werden (PTAS: polynomial time approximation scheme) Konstruktionsheuristiken für das symmetrische TSP erreichen in der Praxis meist eine Güte von ca. 10-15% Abweichung von der optimalen Lösung. Die CH-Heuristik liegt bei ca. 14%. 49 8