Das Probabilistic Traveling Salesman Problem

Transcription

Das Probabilistic Traveling Salesman Problem
Das Probabilistic Traveling
Salesman Problem
Präsentation von Thomas Seidl
Anmerkung
Folgende Begriffe werden synonym verwendet:

Kunden = Städte = Knoten

Kanten = Wege

Kosten = Gewicht = Länge
Einführung: Das TSP

Gegeben: ein (meist vollständiger,
ungerichteter) gewichteter Graph

Gesucht: der günstigste Hamilton-Kreis

Untersucht seit 1930

Viele Varianten

Eines der bekanntesten Optimierungsprobleme

Viele Algorithmen sind bekannt

NP-schwer!
Einführung: Das TSP
Mathematische Formulierung
(Für die häufigste Problemstellung)

Knoten vi

Distanzen/Gewichte/Kosten der Kanten dij
Abbildung 1: TSP mit eingezeichneter (nicht optimaler) Lösung.
Einführung: Das PTSP




Wahrscheinlichkeiten pi für jeden Knoten
Knoten vi muss nur mit Wahrscheinlichkeit pi
besucht werden
Gesucht: A-priori-Lösung mit optimaler
erwarteter Länge
Keine ad-hoc-Optimierung
Vergleich guter Touren
Abbildung 2: Vergleich guter TSP Tour und guter PTSP Tour (für pi=p).
Varianten des PTSP

Symmetrisch oder asymmetrisch

Vollständig?

Gerichtet?

Homogene oder heterogene
Wahrscheinlichkeitsverteilung
Berechnung der erwarteten Länge



Ein PTSP mit N Knoten hat 2N mögliche
Realisierungen Ri (i = 1, ..., 2N)
Realisierung: Teilung der Knotenmenge in eine
inkludierte und eine nicht inkludierte Teilmenge
Realisierung Ri hat Wahrscheinlichkeit p(Ri)
basierend auf Knoten-Wahrscheinlichkeiten pi
2

N
p  Ri =1
∑
i=1
Berechnung der erwarteten Länge

Sei l R die Länge des Pfads bei Realis. Ri
Dann ergibt sich die erwartete Tour-Länge zu:
i

2
N
f =∑ p  Ri ⋅l R  .
i =1

i
Exponentielle Laufzeit!
Berechnung der erwarteten Länge




Erste Optimierung: Berechnung als gewichtete
Summe über die Kosten aller Kanten
Gewicht: Wahrscheinlichkeit, dass die Kante in
der Tour enthalten sein wird
Kante dij in Tour, wenn Knoten zwischen i und j
nicht in Realisierung
Resultierende Formel komplizierter, aber
benötigt nur O(n2) Schritte
Berechnung der erwarteten Länge

Illustration:
Abbildung 3: Zur Inklusionswahrscheinlichkeit der Kanten.
Berechnung der erwarteten Länge




Weitere Optimierung: Approximative
Auswertung
In Algorithmen oft nur relative Güte der Lösung
entscheidend
Daher großer absoluter Fehler unwichtig
Beispiel: Nur Knoten berücksichtigen, zwischen
denen nicht mehr als k Knoten liegen
Hilbert Sorting


Schnelle Heuristik, um eine grobe Lösung zu
erzeugen
Guter Ausgangspunkt für verbessernde
Heuristiken
Abbildung 4: Hilbert-Kurve (n = 3).
Hilbert Sorting



Idee: jedem Knoten wird sein Index auf der
raumfüllenden Hilbert-Kurve zugewiesen
Durch Lokalität entsteht gute Lösung
(vergleichbar mit Nearest-Neighbour-Strategie)
Minimale Laufzeit-Komplexität
k-opt


Verbessernde, deterministische Heuristik
Ein Schritt: Entfernen von k Kanten aus der
Lösung und Testen aller ZusammensetzMöglichkeiten

Teils sehr gute Ergebnisse

Schnelle Bewertung von Lösungen wichtig
1-Shift




Verbessernde, deterministische Heuristik
Ein Schritt: Bestmögliche Versetzung eines
Knotens in der Pfadreihenfolge
Kombiniert mit Hilbert Sorting einer der derzeit
besten Algorithmen
Nachteil: Laufzeit = O(n⁴)! [O(n²) mögliche
Operationen, O(n²) zum Auswerten des Pfads]
1-Shift Verbesserung

Für homogene Wahrscheinlichkeiten
Einsparung möglich

Kosten einer Versetzung in O(1) berechnen

Daher Gesamtlaufzeit pro Schritt: O(n²)


Macht Hillbert Sorting/1-Shift zum besten
Algorithmus für pi = p
Entwickelt von Bertsimas et. al. (1993-2004)
Ant Colony Optimization

Iterative, stochastiche Heuristik

Entwickelt von Dorigo et. al. (1992-1999)

Inspiriert von Verhalten von Ameisen

Statt guter Analyse: viele zufällige Ergebnisse

Gute belohnen, aber Platz für Veränderungen
lassen (vermeidet lokale Maxima)
Ant Colony Optimization


Iterationsschritt: M Ameisen konstruieren
jeweils eine Tour
Informationen für jede Kante: Heuristischer
Wert, Pheromon-Wert

Auswahl der Kante zufällig, kein Trackback

Schrittende: Update der Pheromon-Information
Ant Colony Optimization




Heuristischer Wert wichtig um Suche in richtige
Richtung zu leiten
Für TSP meist einfach inverse Kosten,
berücksichtigt aber nicht die Wahrscheinlichkeit
Wert, der den Einfluss auf die erwartete
Tourlänge misst ergibt korrekteres Ergebnis
Benötigt O(n³), muss aber nur einmal pro
Instanz berechnet werden
Ant Colony Optimization


Ebenfalls interessant für heuristischen Wert:
Winkelbasierte Heuristik
Berücksichtigt, dass durch einen Knoten
getrennte Knoten ebenfalls nahe liegen sollten

Siehe Abbildung 2

Allerdings meist schlechtere Ergebnisse
Zusammenfassung




Hilbert Sorting/1-Shift beste bekannte Heuristik
für homogene Wahrscheinlichkeiten
Ant Colony Optimization sehr gut geeignet für
heterogene Probleme
Kaum exakte Algorithmen, viele
vorgeschlagene Heuristiken
Gute TSP-Lösungen oft schlechte PTSPLösungen (je nach pi)
Bild-Quellen


Abbildung 1: http://en.wikipedia.org/wiki/File:Kortad-rundtur.GIF
Abbildung 2: Branke, J. und Guntsch, M.: Solving the Probabilistic
TSP with Ant Colony Optimization.

Abbildung 3: selbsterstellt.

Abbildung 4: http://en.wikipedia.org/wiki/File:Hilbert_curve_3.svg
Ende
Vielen Dank für die Aufmerksamkeit!
Fragen?