Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische Informatik nationales Algorithmische Forschungszentrum Methoden in der Helmholtz-Gemeinschaft 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
Vorlesung 3 Programm des Tages: : Motivation und Definition : Approximation Literatur: Rolf Wanka: Approximationsalgorithmen. Eine Einführung. Teubner, 2006. 3 Henning Meyerhenke, Institut für Theoretische Informatik
Vorlesung 3 Programm des Tages: : Motivation und Definition : Approximation Literatur: Rolf Wanka: Approximationsalgorithmen. Eine Einführung. Teubner, 2006. Nächstes Mal: : Heuristiken : Metaheuristik Simulated Annealing 3 Henning Meyerhenke, Institut für Theoretische Informatik
Inhalt Motivation und Definition 4 Henning Meyerhenke, Institut für Theoretische Informatik 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 Motivation und Definition
Definition Das Problem des Handlungsreisenden (): 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 Motivation und Definition
Komplexität Theorem 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 Motivation und Definition
Inhalt Motivation und Definition 8 Henning Meyerhenke, Institut für Theoretische Informatik
Metrisches Definition (Metrisches ) Ein -Problem I heißt metrisch, wenn die Gewichtsfunktion ω von I die Dreiecksungleichung erfüllt. Theorem (Christofides) Das metrische für einen Graphen mit n Knoten kann mit Christofides Algorithmus mit einer garantierten relativen Güte von 3 2 1 n bei einer Laufzeit von O(n 2.5 log 4 n) gelöst werden. 9 Henning Meyerhenke, Institut für Theoretische Informatik
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
Der Algorithmus von Christofides Eingabe: Instanz < K n, ω > Ausgabe: Hamiltonkreis auf G mit rel. Güte (3/2 1/n) 1. Berechne einen minimalen Spannbaum T von < K n, ω > 11 Henning Meyerhenke, Institut für Theoretische Informatik
Der Algorithmus von Christofides Eingabe: Instanz < K n, ω > Ausgabe: Hamiltonkreis auf G mit rel. Güte (3/2 1/n) 1. Berechne einen minimalen Spannbaum T von < K n, ω > 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 4. Berechne einen Eulerkreis Ê auf T M (mglw. Multigraph) 5. Entferne in Ê Wiederholungen von Knoten, so dass man einen Hamiltonkreis C erhält 6. Gib C aus 11 Henning Meyerhenke, Institut für Theoretische Informatik
Beispiel Eingabe: 12 Henning Meyerhenke, Institut für Theoretische Informatik
Beispiel Minimaler Spannbaum T : 12 Henning Meyerhenke, Institut für Theoretische Informatik
Beispiel Menge U von Knoten mit ungeradem Grad (rot): 12 Henning Meyerhenke, Institut für Theoretische Informatik
Beispiel Perfektes Matching M minimalen Gewichts auf durch U induziertem Teilgraphen (rote Kanten): 12 Henning Meyerhenke, Institut für Theoretische Informatik
Beispiel Eulerkreis Ê auf T M (blaue Linie folgt Ê) 12 Henning Meyerhenke, Institut für Theoretische Informatik
Beispiel Hamiltonkreis C nach der Entfernung von mehrfachen Knoten (orangefarbene Kanten): 12 Henning Meyerhenke, Institut für Theoretische Informatik
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
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
Analyse Laufzeit Vollständiger Graph mit O(n 2 ) Kanten! Laufzeit der Schritte 1. MST: O(n 2 α(n 2 )) 2. Menge U bilden: O(n) 3. Perfektes Matching minimalen Gewichts: O(n 2.5 log 4 n) 4. Eulerkreis: O(n 2 ) 5. Wdh. entfernen: O(n 2 ) 14 Henning Meyerhenke, Institut für Theoretische Informatik
Analyse Qualität Theorem Der Algorithmus von Christofides garantiert eine relative Güte von 3 2 1 n. Beweis. Sei C opt ein Hamiltonkreis minimaler Länge in K n Es reicht zu zeigen, dass gilt: ( 3 ω(c) ω(t ) + ω(m) 2 1 ) ω(c opt ) n 15 Henning Meyerhenke, Institut für Theoretische Informatik
Analyse Qualität Theorem Der Algorithmus von Christofides garantiert eine relative Güte von 3 2 1 n. Beweis. Sei C opt ein Hamiltonkreis minimaler Länge in K n Es reicht zu zeigen, dass gilt: ( 3 ω(c) ω(t ) + ω(m) 2 1 ) ω(c opt ) n Wenn man eine Kante mit Mindestgewicht ω(c opt )/n (existiert!) aus C opt entfernt, dann erhält man einen Spannbaum (nicht notwendigerweise den MST) ω(t ) (1 1 n )ω(c opt) (MST ist minimal) 15 Henning Meyerhenke, Institut für Theoretische Informatik
Fortsetzung des Gütebeweises (1) Beweis Bleibt zu zeigen: ω(m) 1 2 ω(c opt) Betrachten neuen Kreis H, der entsteht, wenn die Knoten aus U in der Reihenfolge, in der sie in C opt vorkommen, abgelaufen werden 16 Henning Meyerhenke, Institut für Theoretische Informatik
Fortsetzung des Gütebeweises (2) Forts. H kann in zwei perfekte Matchings M 1 und M 2 zerlegt werden Œ sei ω(m 1 ) ω(m 2 ). Es folgt: ω(m) ω(m 1 ) (Min. von M) 1 2 (ω(m 1) + ω(m 2 )) (Œ) = 1 2 ω(h) 1 2 ω(c opt) ( -Ungl.) 17 Henning Meyerhenke, Institut für Theoretische Informatik
Zeugenmenge Definition (Zeugenmenge) Sei A ein α-approximationsalgorithmus. Eine unendlich große Menge zulässiger Lösungen D heißt α A (n)-zeugenmenge gegen A, wenn I D gilt: α A ( I ) α A ( I ) 18 Henning Meyerhenke, Institut für Theoretische Informatik
Zeugenmenge Definition (Zeugenmenge) Sei A ein α-approximationsalgorithmus. Eine unendlich große Menge zulässiger Lösungen D heißt α A (n)-zeugenmenge gegen A, wenn I D gilt: α A ( I ) α A ( I ) ( 3 2 n 1 )-Zeuge für Christofides Algorithmus Siehe Tafel! 18 Henning Meyerhenke, Institut für Theoretische Informatik
Zeugenmenge Definition (Zeugenmenge) Sei A ein α-approximationsalgorithmus. Eine unendlich große Menge zulässiger Lösungen D heißt α A (n)-zeugenmenge gegen A, wenn I D gilt: α A ( I ) α A ( I ) ( 3 2 n 1 )-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
PTAS und FPTAS Definition ((F)PTAS) Sei Π ein Optimierungsproblem. Sei A ein Approximationsalgorithmus für Π, der als Eingabe eine Probleminstanz I von Π und ein ɛ mit 0 < ɛ < 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 ɛ berechnet. 19 Henning Meyerhenke, Institut für Theoretische Informatik
PTAS und FPTAS Definition ((F)PTAS) Sei Π ein Optimierungsproblem. Sei A ein Approximationsalgorithmus für Π, der als Eingabe eine Probleminstanz I von Π und ein ɛ mit 0 < ɛ < 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 ɛ berechnet. A ist ein streng polynomielles Approximationsschema (FPTAS, engl. für fully PTAS), wenn A ein PTAS ist mit Laufzeit O(poly( I, 1/ɛ)). 19 Henning Meyerhenke, Institut für Theoretische Informatik
PTAS und FPTAS Definition ((F)PTAS) Sei Π ein Optimierungsproblem. Sei A ein Approximationsalgorithmus für Π, der als Eingabe eine Probleminstanz I von Π und ein ɛ mit 0 < ɛ < 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 ɛ berechnet. A ist ein streng polynomielles Approximationsschema (FPTAS, engl. für fully PTAS), wenn A ein PTAS ist mit Laufzeit O(poly( I, 1/ɛ)). Theorem (Arora, 1996; ähnlich: Mitchell, 1996) Für das euklidische gibt es ein PTAS mit der Laufzeit O(n 3 log O(1/ɛ) n). 19 Henning Meyerhenke, Institut für Theoretische Informatik
Nichtapproximierbarkeit von Theorem Wenn es einen Polynomialzeit-Approximationsalgorithmus A mit konstanter relativer Güte r für das volle 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: HAMILTON p [r] für alle r. 20 Henning Meyerhenke, Institut für Theoretische Informatik
Fortsetzung des Beweises Transformation der Eingabe Beweis. Eingabe: G = (V, E) mit n Knoten, Frage: Hat G einen Hamiltonkreis? Transformation von G in Probleminstanz I G für : I G = K n, c mit c(u, v) = { 1, falls {u, v} E (kurze Kanten) r := (r 1) n + 2, falls {u, v} / E (lange Kanten) 21 Henning Meyerhenke, Institut für Theoretische Informatik
Fortsetzung des Beweises Gültigkeit der Transformation Beweis. I G 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 I G hat entweder Länge = n oder > r n. 22 Henning Meyerhenke, Institut für Theoretische Informatik
Fortsetzung des Beweises Algorithmus Beweis. 1: function ENTSCHEIDEHAMILTON(Graph G) 2: berechne I G und approximiere mit A eine kürzeste Rundreise in I G 3: if A(I G ) > 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(I G ) 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
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
Zusammenfassung und Ausblick Zusammenfassung : Finde gewichteten Hamiltonkreis minimaler Länge! Entscheidungsproblem ist N P-vollständig 25 Henning Meyerhenke, Institut für Theoretische Informatik
Zusammenfassung und Ausblick Zusammenfassung : Finde gewichteten Hamiltonkreis minimaler Länge! Entscheidungsproblem ist N P-vollständig Alg. von Christofides hat relative Güte von 3 2 1 n PTAS für euklidisches (ohne Beweis) Konstante relative Güte für allgemeines P = N P 25 Henning Meyerhenke, Institut für Theoretische Informatik
Zusammenfassung und Ausblick Zusammenfassung : Finde gewichteten Hamiltonkreis minimaler Länge! Entscheidungsproblem ist N P-vollständig Alg. von Christofides hat relative Güte von 3 2 1 n PTAS für euklidisches (ohne Beweis) Konstante relative Güte für allgemeines P = N P Ausblick Tauschheuristiken für Metaheuristik Simulated Annealing für 25 Henning Meyerhenke, Institut für Theoretische Informatik