Die Theorie der Toleranzen und deren Anwendung auf das Traveling Salesman Problem Gerold Jäger 4. Februar 2010 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 1 / 35
Überblick 1 Theorie der Toleranzen Motivation Wesentliche Begriffe Theoretische Resultate 2 Anwendungen auf das Traveling Salesman Problem Traveling Salesman Problem Toleranzbasierte Greedy-Heuristik Pseudo-Backbone-Kontraktions-Heuristik 3 Fazit und offene Fragen Gerold Jäger Theorie der Toleranzen 4. Februar 2010 2 / 35
Motivation Analyse optimaler Lösungen kombinatorischer Optimierungsprobleme Beschränkung auf Minimierungsprobleme Fragestellungen: Wie hängt die Optimalität einer gegebenen Lösung von den Eingabedaten ab? Wie stabil liegen Elemente innerhalb einer optimalen Lösung? Wie stabil liegen Elemente außerhalb einer optimalen Lösung? Theorie der Toleranzen Zweig der Sensitivitätsanalyse Gerold Jäger Theorie der Toleranzen 4. Februar 2010 3 / 35
Anwendungen Eingabedaten nicht exakt Zuverlässigkeit der optimalen Lösung und Folgerungen daraus? Bestimmte Betrachtungen nicht in das kombinatorische Minimierungsproblem integriert (z.b. zu komplex) Optimale Lösung des vereinfachten Problems auch hilfreich für zusätzliche Betrachtungen? Gerold Jäger Theorie der Toleranzen 4. Februar 2010 4 / 35
Relaxed Assignment Problem Definition Geg.: Gerichteter vollständiger Graph G = (V, E), V = n, Kostenfunktion c : E R. Relaxed Assignment Problem: Finde eine Menge von n Kanten, so dass jeder Knoten genau eine Ausgangskante hat die Gesamtlänge aller Kanten minimal ist Beispiel 1: 1 2 3 4 5 6 1 6 7 7 7 7 2 35 12 13 13 13 3 35 13 18 19 19 4 35 13 19 24 25 5 35 13 19 25 30 6 216 13 19 25 31 Lösungskanten: (1, 2), (2, 3), (3, 2), (4, 2), (5, 2), (6, 2) Gerold Jäger Theorie der Toleranzen 4. Februar 2010 5 / 35
Kombinatorisches Minimierungsproblem Betrachtung kombinatorischer Minimierungsprobleme (KMP) mit folgenden Parametern: endliche Grundmenge E = {e 1, e 2,..., e k } Kostenfunktion c : E R Menge der zulässigen Lösungen D mit D 2 E. Minimierungsfunktion f c : D R. Sei S D. Betrachtung folgender 4 Klassen: Klasse : f c (S) = e S c(e) Klasse : f c (S) = e S c(e) Klasse + : f c (S) = e S c(e), wobei e E : c(e) R+ Klasse MAX: f c (S) = max e S {c(e)} Gerold Jäger Theorie der Toleranzen 4. Februar 2010 6 / 35
Kombinatorisches Minimierungsproblem Problem: Finde eine zulässige Lösung S D mit minimalen Kosten. Zusatzbedingungen: Die Menge der zulässigen Lösungen ist unabhängig von der Kostenfunktion. Es gibt mindestens eine optimale Lösung. Beispiele von kombinatorischen Minimierungsproblemen: Klasse : Traveling Salesman Problem (TSP), Minimum Spanning Tree Problem (MST), Assignment Problem (AP), Relaxed Assignment Problem (RAP) Klasse MAX: Bottleneck-TSP, Bottleneck-AP. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 7 / 35
Additive obere Einzel-Toleranz Geg.: KMP, Optimale Lösung S D und e E. Halte die Kosten c(ē) aller Elemente ē E \ {e} fest. Variiere die Kosten c(e) des Elements e E. Fall 1: e S Additive obere Einzel-Toleranz von e S : Maximaler Wert, mit dem die Kosten von e additiv vergrößert werden können, so dass S optimal bleibt. Beispiel 1: RAP 1 2 3 4 5 6 1 6 7 7 7 7 2 35 12 13 13 13 3 35 13 18 19 19 4 35 13 19 24 25 5 35 13 19 25 30 6 216 13 19 25 31 Lösungskanten: (1, 2), (2, 3), (3, 2), (4, 2), (5, 2), (6, 2) Gerold Jäger Theorie der Toleranzen 4. Februar 2010 8 / 35
Multiplikative obere Einzel-Toleranz Fall 1: e S Multiplikative obere Einzel-Toleranz von e S : Maximaler Wert, mit dem die Kosten von e multiplikativ vergrößert werden können, so dass S optimal bleibt. Beispiel 2: E = {v, w, x, y, z} mit c(v) = 1 c(w) = 2 c(x) = 3 c(y) = 5 c(z) = 9 D = { {v, w, x}, {v, y}, {v, x, z} } Kostenfunktion der Klasse Zwei optimale Lösungen haben Kosten 6. Eine weitere zulässige Lösung hat Kosten 13. Dann gilt: u (v) = + u (w) = 1 u (x) = 1 u (y) = 1 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 9 / 35
Additive untere Einzel-Toleranz Fall 2: e E \ S Additive untere Einzel-Toleranz von e: Maximaler Wert, mit dem die Kosten von e additiv verkleinert werden können, so dass S optimal bleibt. Beispiel 2: E = {v, w, x, y, z} mit c(v) = 1 c(w) = 2 c(x) = 3 c(y) = 5 c(z) = 9 D = { {v, w, x}, {v, y}, {v, x, z} } Kostenfunktion der Klasse Zwei optimale Lösungen haben Kosten 6. Eine weitere zulässige Lösung hat Kosten 13. Dann gilt: l (w) = 0 l (x) = 0 l (y) = 0 l (z) = 7 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 10 / 35
Multiplikative untere Einzel-Toleranz Fall 2: e E \ S Multiplikative untere Einzel-Toleranz von e: Minimaler Wert, mit dem die Kosten von e multiplikativ verkleinert werden können, so dass S optimal bleibt. Beispiel 1: RAP 1 2 3 4 5 6 1 6 7 7 7 7 2 35 12 13 13 13 3 35 13 18 19 19 4 35 13 19 24 25 5 35 13 19 25 30 6 216 13 19 25 31 Lösungskanten: (1, 2), (2, 3), (3, 2), (4, 2), (5, 2), (6, 2) Dann gilt: l ((1, 4)) = 6 l ((4, 5)) = 13 7 24 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 / 35
Additive obere Mengen-Toleranz Geg.: KMP, Optimale Lösung S D und E E mit 2 E E = k. Halte die Kosten c(ē) aller Elemente ē E \ E fest. Variiere gleichzeitig die Kosten c(e) der Elemente e E. Fall 1: E S Additive obere Mengen-Toleranz von E: Kosten von Elementen aus E werden additiv vergrößert, so dass S optimal bleibt. p := Summe dieser Kostenveränderungen Maximum über alle möglichen p. Beispiel 3: E = {w, x, y, z} mit c(w) = 1 c(x) = 10 c(y) = 2 c(z) = 20 D = { {w, x}, {y, z} } Kostenfunktion der Klasse + Die Lösungen haben Kosten 10 und 40. Dann gilt: u (w, x) = 30 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 12 / 35
Additive untere Mengen-Toleranz Fall 2: E E \ S Additive untere Mengen-Toleranz von E: Kosten von Elementen aus E werden additiv verkleinert, so dass S optimal bleibt. p := Summe dieser Kostenveränderungen Maximum über alle möglichen p. Beispiel 4: E = {w, x, y, z} mit c(w) = 1 c(x) = 10 c(y) = 2 c(z) = 20 D = { {w, x}, {y, z} } Kostenfunktion der Klasse MAX Die Lösungen haben Kosten 10 und 20. Dann gilt: l (y, z) = + Analoge Definition: Multiplikative Mengen-Toleranzen. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 13 / 35
Backbone Geg.: KMP Backbone: Element, das in jeder optimalen Lösung enthalten ist. Elementarer Begriff: Charakterisierung von kombinatorischen Minimierungsproblemen Wesentlicher Bestandteil vieler Heuristiken und exakter Algorithmen siehe Pseudo-Backbone-Kontraktions-Heuristik Zusammenhang zu Toleranzen? Gerold Jäger Theorie der Toleranzen 4. Februar 2010 14 / 35
Wohldefiniertheit und Backbones Alle definierten Toleranzen hängen nicht von der gewählten optimalen Lösung ab. Kostenfunktion der Klassen, +, : Backbones sind genau die Elemente mit positiver additiver oberer Einzel-Toleranz und (äquivalent) die Elemente mit multiplikativer oberer Einzel-Toleranz ungleich 1. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 15 / 35
Unendliche und minimale Einzel-Toleranzen Elemente, die in allen zulässigen Lösungen enthalten sind, sind genau die Elemente mit additiver oberer Einzel-Toleranz +. Kostenfunktion der Klasse : Elemente, die in keiner zulässigen Lösungen enthalten sind, sind genau die Elemente mit additiver unterer Einzel-Toleranz +. Kostenfunktion der Klasse : Sei keine zulässige Lösung Teilmenge einer anderen zulässigen Lösung. Dann ist die minimale additive obere Einzel-Toleranz gleich der minimalen additiven unteren Einzel-Toleranz. Kostenfunktion der Klasse + : Ähnliches Resultat gilt für die multiplikative Einzel-Toleranz. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 16 / 35
Berechnung der oberen additiven Einzel-Toleranz Sei e E. q := Kosten einer optimalen Lösung. q e := Kosten einer optimalen Lösung mit der zusätzlichen Bedingung, dass e nicht darin enthalten ist. Kostenfunktion der Klasse : q e q Kostenfunktion der Klasse + : q e q q Kostenfunktion der Klasse MAX: c(e) q e c(e) Gerold Jäger Theorie der Toleranzen 4. Februar 2010 17 / 35
Beziehung zwischen additiver und multiplikativer Einzel-Toleranz u (e) := Additive obere Einzel-Toleranz von e E u (e) := Multiplikative obere Einzel-Toleranz von e E Kostenfunktion der Klasse, +, MAX: u (e) = 1 + u (e) c(e) Gerold Jäger Theorie der Toleranzen 4. Februar 2010 18 / 35
Schranken für additive obere Mengen-Toleranz u (E) := Additive obere Mengen-Toleranz von E = {e 1, e 2,..., e t } E u (e l ) := Additive obere Einzel-Toleranz von e l E Kostenfunktion der Klassen, + : k max l=1 {u (e l)} u (E) k u (e l ) l=1 Kostenfunktion der Klasse MAX: k u (e l ) u (E) l=1 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 19 / 35
Definition Geg.: Gerichteter vollständiger Graph G = (V, E), V = n, Kostenfunktion c : E R. Traveling Salesman Problem (TSP): Finde eine Tour (v 1, v 2,..., v n, v 1 ) mit minimalen Kosten Vorstellung n 1 c(v n, v 1 ) + c(v i, v i+1 ) i=1 Verbesserung einer Konstruktionsheuristik für das asymmetrische TSP ([Glover et al., 21]) durch Toleranzen. Auf Backbones basierende Pseudo-Backbone-Konstruktionsheuristik für das symmetrische TSP. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 20 / 35
Originale Greedy-ATSP-Heuristik Starte mit der kleinsten Kante im Graphen. 1 2 3 4 5 6 1 6 7 7 7 7 2 35 12 13 13 13 3 35 13 18 19 19 4 35 13 19 24 25 5 35 13 19 25 30 6 216 13 19 25 31 Kontrahiere beide Knoten dieser Kante zu einem neuen Knoten. (1,2) 3 4 5 6 (1,2) 12 13 13 13 3 35 18 19 19 4 35 19 24 25 5 35 19 25 30 6 216 19 25 31 Wiederhole 1. und 2., bis nur zwei Knoten übrigbleiben. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 21 / 35
Originale Greedy-ATSP-Heuristik (1,2,3) 4 5 6 (1,2,3) 18 19 19 4 35 24 25 5 35 25 30 6 216 25 31 (1,2,3,4) 5 6 (1,2,3,4) 24 25 5 35 30 6 216 31 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 22 / 35
Originale Greedy-ATSP-Heuristik (1,2,3,4,5) 6 (1,2,3,4,5) 30 6 216 Verbinde diese zwei Knoten zu einem Kreis. Ersetze alle Knoten durch ihre kontrahierten Wege. Erhalte die Ausgabe-Tour. Tour (1, 2, 3, 4, 5, 6, 1) mit Länge 306 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 23 / 35
Toleranzbasierte Greedy-ATSP-Heuristik Wähle statt einer kostenminimalen Kante eine Kante mit größter additiver oberer Einzel-Toleranz zum Relaxed Assignment Problem. 1 2 3 4 5 6 1 6 7 7 7 7 2 35 12 13 13 13 3 35 13 18 19 19 4 35 13 19 24 25 5 35 13 19 25 30 6 216 13 19 25 31 1 3 (4,2) 5 6 1 7 7 7 7 3 35 18 19 19 (4,2) 35 12 13 13 5 35 19 25 30 6 216 19 25 31 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 24 / 35
Toleranzbasierte Greedy-ATSP-Heuristik 1 (4,2) (5,3) 6 1 7 7 7 (4,2) 35 13 13 (5,3) 35 18 19 6 216 25 31 1 (5,3) (6,4,2) 1 7 7 (5,3) 35 19 (6,4,2) 35 13 1 (6,4,2,5,3) 1 7 (6,4,2,5,3) 35 Tour (1, 6, 4, 2, 5, 3, 1) mit Länge 2 Gerold Jäger Theorie der Toleranzen 4. Februar 2010 25 / 35
Experimentelle Resultate Experimentelle Untersuchungen: Originale Greedy-ATSP-Heuristik ORIG-GR Toleranzbasierte Greedy-ATSP-Heuristik TOL-GR für 9 verschiedene Instanzklassen symmetrische und asymmetrische Instanzen zufällige und reale Instanzen Instanzen, deren Distanzwerte stark oder schwach variieren hinsichtlich Zeit Qualität (Tourlänge) Ergebnisse: TOL-GR nur minimal größere Laufzeit TOL-GR deutlich bessere Qualität Fazit: TOL-GR bessere Konstruktionsheuristik als ORIG-GR Gerold Jäger Theorie der Toleranzen 4. Februar 2010 26 / 35
Pseudo-Backbone-Kontraktions-Heuristik 1 Lege Basis-Heuristik für das symmetrische TSP zugrunde. Derzeit beste TSP-Heuristik: [Helsgaun, 1998] 2 Finde gute Starttouren mit Hilfe der Basis-Heuristik. a b c Gerold Jäger Theorie der Toleranzen 4. Februar 2010 27 / 35
Pseudo-Backbone-Kontraktions-Heuristik 3 Finde alle gemeinsamen Kanten in diesen Starttouren. a b c d Diese Kanten heißen Pseudo-Backbone-Kanten. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 28 / 35
Pseudo-Backbone-Kontraktions-Heuristik 4 Kontrahiere alle Kanten, die auf Wegen von Pseudo-Backbone-Kanten liegen, zu einer einzelnen Kante. d e 0 1 0 1 01 0 1 0 1 0 1 0 1 0 1 0 1 01 01 01 0 1 0 1 0 1 0 1 0 01 10 1 5 Konstruiere eine neue Instanz durch Weglassen aller Knoten, die auf einem Weg von Pseudo-Backbone-Kanten liegen. Fixiere diese Kanten, d.h. diese Kanten werden in die finale Tour hineingezwungen. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 29 / 35
Pseudo-Backbone-Kontraktions-Heuristik 6 Wende die Basis-Heuristik auf die neue Instanz an. e 0 0 0 1 1 1 0 0 0 1 1 1 0 1 0 0 1 1 0 0 1 1 01 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 e e 0 0 0 1 1 1 0 0 1 1 0 0 1 1 01 0 0 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 f Gerold Jäger Theorie der Toleranzen 4. Februar 2010 30 / 35
Pseudo-Backbone-Kontraktions-Heuristik 7 Transformiere die Tour der neuen Instanz zu einer Tour der originalen Instanz zurück. e f 0 1 01 0 1 01 0 1 0 1 0 1 0 1 0 1 0 1 01 01 01 0 1 0 1 0 1 0 101 g Hier ist die letzte Tour eine optimale Tour. Gerold Jäger Theorie der Toleranzen 4. Februar 2010 31 / 35
Allgemeine Bemerkungen Zwei Vorteile: 1 Reduktion der Knotenmenge 2 Fixierung eines Teils der Kanten Die Basis-Heuristik kann viel effektiver angewandt werden als für die originale Instanz. Die Pseudo-Backbone-Kontraktions-Heuristik funktioniert gut, falls die Starttouren 1 gute Qualität haben 2 nicht zu ähnlich sind sonst wird der Suchraum zu stark eingeschränkt Gerold Jäger Theorie der Toleranzen 4. Februar 2010 32 / 35
Wettbewerb: TSP-Homepage Siehe http://www.tsp.gatech.edu/ Viele praxisrelevante Instanzen für den Vergleich exakter Algorithmen und Heuristiken 64 ungelöste Beispiel-Instanzen: VLSI und nationale Instanzen Für 18 von 64 Instanzen neue Rekordtour gefunden 7 von 18 Rekordtouren mit Hilfe der Pseudo-Backbone-Kontraktions- Heuristik 10 von 18 Rekordtouren noch aktuell Gerold Jäger Theorie der Toleranzen 4. Februar 2010 33 / 35
Fazit und offene Fragen Entwurf einer Toleranztheorie: Klassen von Minimerungsfunktionen, +,, MAX obere Toleranz untere Toleranz additive Toleranz multiplikative Toleranz Einzel-Toleranz Mengen-Toleranz Frage: Können exakte Formeln für Mengen-Toleranzen angegeben oder Schranken verbessert werden? Anwendungen: Verbesserung exakter Algorithmen und Heuristiken mit Hilfe von Toleranzen Insbesondere: Toleranzbasierte Algorithmen sind kostenbasierten Algorithmen überlegen. Bisher: Nur Anwendungen von additiven Einzel-Toleranzen auf Kostenfunktionen der Klasse Zukünftig: Anwendung der übrigen Toleranzen und Kostenfunktionen Insbesondere: Mengen-Toleranzen Gerold Jäger Theorie der Toleranzen 4. Februar 2010 34 / 35
Vielen Dank für Ihre Aufmerksamkeit! Gerold Jäger Theorie der Toleranzen 4. Februar 2010 35 / 35