Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 Institutund für Theoretische Informatik KIT –Henning Universität desMeyerhenke, Landes Baden-Württemberg nationales Forschungszentrum in der Helmholtz-Gemeinschaft Algorithmische Methoden für schwere Optimierungsprobleme www.kit.edu Modellierungsaufgabe Szenario: Sie arbeiten in einer Firma, die Software für mobile Pflegedienste entwickelt. Ihre Aufgabe ist die Entwicklung eines Algorithmus für die Tourenplanung. Aufgabe(n): Modellieren Sie das Problem! Fragen Sie den Kunden (mich) nach Details! 2 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme Vorlesung 3 Programm des Tages: TSP: Motivation und Definition TSP: Approximation Literatur: Rolf Wanka: Approximationsalgorithmen. Eine Einführung. Teubner, 2006. 3 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme Vorlesung 3 Programm des Tages: TSP: Motivation und Definition TSP: Approximation Literatur: Rolf Wanka: Approximationsalgorithmen. Eine Einführung. Teubner, 2006. Nächstes Mal: TSP: Heuristiken TSP: Metaheuristik Simulated Annealing 3 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme Inhalt TSP Motivation und Definition Approximationsergebnisse 4 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Motivation und Definition Modellierungsaufgabe Szenario: Sie arbeiten in einer Firma, die Software für mobile Pflegedienste entwickelt. Ihre Aufgabe ist die Entwicklung eines Algorithmus für die Tourenplanung. Aufgabe(n): Modellieren Sie das Problem! Fragen Sie den Kunden (mich) nach Details! 5 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Motivation und Definition Definition Das Problem des Handlungsreisenden (TSP): Finde für endlich viele Punkte, deren paarweise Abstände bekannt sind, den kürzesten die Punkte verbindenden Zyklus! Graphentheoretisch: Finde einen Hamiltonkreis im (gewichteten) Graphen G = (V , E , ω ) mit minimaler Länge! 6 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Motivation und Definition Komplexität Theorem TSP ist als Entscheidungsproblem N P -vollständig. Beweis. Reduktion auf Hamiltonkreis. Häufiges Vorgehen: Wenn das allgemeine Problem zu schwierig ist, kann man eingeschränkte Problemstellungen effizient lösen? 7 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Motivation und Definition Inhalt TSP Motivation und Definition Approximationsergebnisse 8 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Metrisches TSP Definition (Metrisches TSP) Ein TSP-Problem I heißt metrisch, wenn die Gewichtsfunktion ω von I die Dreiecksungleichung erfüllt. Theorem (Christofides) Das metrische TSP für einen Graphen mit n Knoten kann mit Christofides’ Algorithmus mit einer garantierten relativen Güte von 32 − n1 bei einer Laufzeit von O(n2.5 log4 n) gelöst werden. 9 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Der Algorithmus von Christofides Begriffe Matching: Teilgraph, in dem jeder Knoten höchstens Grad 1 hat Perfektes Matching: Teilgraph, in dem jeder Knoten genau Grad 1 hat Eulerkreis: Kreis, der jede Kante genau einmal besucht 10 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Der Algorithmus von Christofides Eingabe: Instanz < Kn , ω > Ausgabe: Hamiltonkreis auf G mit rel. Güte (3/2 − 1/n) 1. Berechne einen minimalen Spannbaum T von < Kn , ω > 11 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Der Algorithmus von Christofides Eingabe: Instanz < Kn , ω > Ausgabe: Hamiltonkreis auf G mit rel. Güte (3/2 − 1/n) 1. Berechne einen minimalen Spannbaum T von < Kn , ω > 2. Bilde die Menge U der Knoten, die in T einen ungeraden Grad haben 3. Finde auf dem durch U induzierten Teilgraphen ein perfektes Matching minimalen Gewichts M b auf T ∪˙ M (mglw. Multigraph) 4. Berechne einen Eulerkreis E b 5. Entferne in E Wiederholungen von Knoten, so dass man einen Hamiltonkreis C erhält 6. Gib C aus 11 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Beispiel Eingabe: 12 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Beispiel Minimaler Spannbaum T : 12 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Beispiel Menge U von Knoten mit ungeradem Grad (rot): 12 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Beispiel Perfektes Matching M minimalen Gewichts auf durch U induziertem Teilgraphen (rote Kanten): 12 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Beispiel b auf T ∪˙ M (blaue Linie folgt E) b Eulerkreis E 12 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Beispiel Hamiltonkreis C nach der Entfernung von mehrfachen Knoten (orangefarbene Kanten): 12 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Analyse Korrektheit Lemma Der Algorithmus von Christofides arbeitet korrekt. Beweis. Es gibt immer ein perfektes Matching wie gesucht: Die Summe der Knotengrade in einem Graphen ist 2|E | und damit gerade ⇒ Die Anzahl der Knoten mit ungeradem Knotengrad ist gerade ⇒ Die Menge U beinhaltet eine gerade Anzahl von Knoten Da der induzierte Teilgraph vollständig ist, existiert ein perfektes Matching 13 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Analyse Korrektheit Lemma Der Algorithmus von Christofides arbeitet korrekt. Beweis. Es gibt immer ein perfektes Matching wie gesucht: Die Summe der Knotengrade in einem Graphen ist 2|E | und damit gerade ⇒ Die Anzahl der Knoten mit ungeradem Knotengrad ist gerade ⇒ Die Menge U beinhaltet eine gerade Anzahl von Knoten Da der induzierte Teilgraph vollständig ist, existiert ein perfektes Matching Es gibt immer einen Eulerkreis wie gesucht: Alle Knoten in dem betrachteten Graphen haben geraden Knotengrad Ein Eulerkreis, aus dem Wdh. entfernt wurden, ist ein Hamiltonkreis 13 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Analyse Laufzeit Vollständiger Graph mit O(n2 ) Kanten! Laufzeit der Schritte 1. MST: O(n2 · α(n2 )) 2. Menge U bilden: O(n) 3. Perfektes Matching minimalen Gewichts: O(n2.5 log4 n) 4. Eulerkreis: O(n2 ) 5. Wdh. entfernen: O(n2 ) 14 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Analyse Qualität Theorem Der Algorithmus von Christofides garantiert eine relative Güte von 3 2 − n1 . Beweis. Sei Copt ein Hamiltonkreis minimaler Länge in Kn Es reicht zu zeigen, dass gilt: 3 1 ω (C ) ≤ ω (T ) + ω (M ) ≤ − ω (Copt ) 2 n 15 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Analyse Qualität Theorem Der Algorithmus von Christofides garantiert eine relative Güte von 3 2 − n1 . Beweis. Sei Copt ein Hamiltonkreis minimaler Länge in Kn Es reicht zu zeigen, dass gilt: 3 1 ω (C ) ≤ ω (T ) + ω (M ) ≤ − ω (Copt ) 2 n Wenn man eine Kante mit Mindestgewicht ω (Copt )/n (existiert!) aus Copt entfernt, dann erhält man einen Spannbaum (nicht notwendigerweise den MST) ⇒ ω (T ) ≤ (1 − n1 )ω (Copt ) 15 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme (MST ist minimal) TSP Approximationsergebnisse Fortsetzung des Gütebeweises (1) Beweis Bleibt zu zeigen: ω (M ) ≤ 12 ω (Copt ) Betrachten neuen Kreis H, der entsteht, wenn die Knoten aus U in der Reihenfolge, in der sie in Copt vorkommen, abgelaufen werden 16 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Fortsetzung des Gütebeweises (2) Forts. H kann in zwei perfekte Matchings M1 und M2 zerlegt werden Œ sei ω (M1 ) ≤ ω (M2 ). Es folgt: ω (M ) ≤ ω (M1 ) (Min. von M) 1 ≤ (ω (M1 ) + ω (M2 )) (Œ) 2 1 = ω (H ) 2 1 ≤ ω (Copt ) (∆-Ungl.) 2 17 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Zeugenmenge Definition (Zeugenmenge) Sei A ein α-Approximationsalgorithmus. Eine unendlich große Menge zulässiger Lösungen D 0 heißt α0A (n)-Zeugenmenge gegen A, wenn ∀I ∈ D 0 gilt: αA (|I |) ≥ α0A (|I |) 18 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Zeugenmenge Definition (Zeugenmenge) Sei A ein α-Approximationsalgorithmus. Eine unendlich große Menge zulässiger Lösungen D 0 heißt α0A (n)-Zeugenmenge gegen A, wenn ∀I ∈ D 0 gilt: αA (|I |) ≥ α0A (|I |) ( 32 − n1 )-Zeuge für Christofides’ Algorithmus Siehe Tafel! 18 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Zeugenmenge Definition (Zeugenmenge) Sei A ein α-Approximationsalgorithmus. Eine unendlich große Menge zulässiger Lösungen D 0 heißt α0A (n)-Zeugenmenge gegen A, wenn ∀I ∈ D 0 gilt: αA (|I |) ≥ α0A (|I |) ( 32 − n1 )-Zeuge für Christofides’ Algorithmus Siehe Tafel! Fazit: Algorithmus fertig beschrieben, Güte bewiesen, Schranke scharf! Historie: Güte erst kürzlich verbessert für bestimmte Szenarien. 18 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse PTAS und FPTAS Definition ((F)PTAS) Sei Π ein Optimierungsproblem. Sei A ein Approximationsalgorithmus für Π, der als Eingabe eine Probleminstanz I von Π und ein e mit 0 < e < 1 bekommt. A ist ein polynomielles Approximationsschema (PTAS, engl. für polynomial time approximation scheme) für Π, falls A zu jeder Probleminstanz I in Polynomialzeit eine zulässige Lösung mit relativem Fehler e berechnet. 19 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse PTAS und FPTAS Definition ((F)PTAS) Sei Π ein Optimierungsproblem. Sei A ein Approximationsalgorithmus für Π, der als Eingabe eine Probleminstanz I von Π und ein e mit 0 < e < 1 bekommt. A ist ein polynomielles Approximationsschema (PTAS, engl. für polynomial time approximation scheme) für Π, falls A zu jeder Probleminstanz I in Polynomialzeit eine zulässige Lösung mit relativem Fehler e berechnet. A ist ein streng polynomielles Approximationsschema (FPTAS, engl. für fully PTAS), wenn A ein PTAS ist mit Laufzeit O(poly (|I |, 1/e)). 19 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse PTAS und FPTAS Definition ((F)PTAS) Sei Π ein Optimierungsproblem. Sei A ein Approximationsalgorithmus für Π, der als Eingabe eine Probleminstanz I von Π und ein e mit 0 < e < 1 bekommt. A ist ein polynomielles Approximationsschema (PTAS, engl. für polynomial time approximation scheme) für Π, falls A zu jeder Probleminstanz I in Polynomialzeit eine zulässige Lösung mit relativem Fehler e berechnet. A ist ein streng polynomielles Approximationsschema (FPTAS, engl. für fully PTAS), wenn A ein PTAS ist mit Laufzeit O(poly (|I |, 1/e)). Theorem (Arora, 1996; ähnlich: Mitchell, 1996) Für das euklidische TSP gibt es ein PTAS mit der Laufzeit O(n3 logO(1/e) n). 19 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Nichtapproximierbarkeit von TSP Theorem Wenn es einen Polynomialzeit-Approximationsalgorithmus A mit konstanter relativer Güte r für das volle TSP gibt, dann ist P = N P . Beweis. Annahme: Es gibt ein solches A mit relativer Gütegarantie r ∈ N. Ziel: Algorithmus angeben, der mit Hilfe von A das N P -vollständige Hamiltonkreisproblem in Polynomialzeit löst. Genauer: H AMILTON ≤p TSP [r ] für alle r . 20 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Fortsetzung des Beweises Transformation der Eingabe Beweis. Eingabe: G = (V , E ) mit n Knoten, Frage: Hat G einen Hamiltonkreis? Transformation von G in Probleminstanz IG für TSP: IG = hKn , c i mit ( 1 , falls {u , v } ∈ E (kurze Kanten) c (u , v ) = r 0 := (r − 1) · n + 2 , falls {u , v } ∈ /E (lange Kanten) 21 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Fortsetzung des Beweises Gültigkeit der Transformation Beweis. IG kann in Polynomialzeit aus G berechnet werden. Es gilt: Hat G Hamiltonkreis, dann hat kürzeste Rundreise Länge n. Es gilt: Hat G keinen Hamiltonkreis, dann enthält jede Rundreise mindestens eine lange Kante. ⇒ Länge der kürzesten Rundreise ≥ (r − 1) · n + 2 + n − 1 = r · n + 1 > r · n Folglich existiert Lücke: Zulässige Lösung für IG hat entweder Länge = n oder > r · n. 22 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Fortsetzung des Beweises Algorithmus Beweis. 1: function E NTSCHEIDE H AMILTON(Graph G) 2: berechne IG und approximiere mit A eine kürzeste Rundreise in IG 3: if A(IG ) > r · n then 4: return “kein Hamilton-Kreis" 5: else 6: return “Hamilton-Kreis vorhanden" 7: end if 8: end function Wenn Hamilton-Kreis vorhanden, muss A(IG ) ≤ r · n sein. Es gibt aber nur optimale Rundreisen (= HK in G) mit dieser Länge. ⇒ Approximation mit konstanter relativer Güte nur, wenn P = N P . 23 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Allgemeine Nichtapproximierbarkeit Theorem Sei L ⊆ Σ∗ ein N P -vollständiges Entscheidungsproblem und sei Π ein Minimierungsproblem. Gibt es zwei in Polynomialzeit berechenbare Funktionen f : Σ∗ → D und c : Σ∗ → N und eine Konstante γ > 0, so dass für alle Eingaben x ∈ Σ∗ gilt: ( ≤ c (x ) x ∈L OPT (f (x )) ≥ c (x ) · (1 + γ ) x ∈ / L, dann gibt es keinen Polynomialzeit-Approximationsalgorithmus mit relativer Güte r mit r < 1 + γ, es sei denn, P = N P . 24 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Zusammenfassung und Ausblick Zusammenfassung TSP: Finde gewichteten Hamiltonkreis minimaler Länge! Entscheidungsproblem ist N P -vollständig 25 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Zusammenfassung und Ausblick Zusammenfassung TSP: Finde gewichteten Hamiltonkreis minimaler Länge! Entscheidungsproblem ist N P -vollständig Alg. von Christofides hat relative Güte von 32 − n1 PTAS für euklidisches TSP (ohne Beweis) Konstante relative Güte für allgemeines TSP ⇒ P = N P 25 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse Zusammenfassung und Ausblick Zusammenfassung TSP: Finde gewichteten Hamiltonkreis minimaler Länge! Entscheidungsproblem ist N P -vollständig Alg. von Christofides hat relative Güte von 32 − n1 PTAS für euklidisches TSP (ohne Beweis) Konstante relative Güte für allgemeines TSP ⇒ P = N P Ausblick Tauschheuristiken für TSP Metaheuristik Simulated Annealing für TSP 25 Henning Meyerhenke, Institut für Theoretische Informatik Algorithmische Methoden für schwere Optimierungsprobleme TSP Approximationsergebnisse