45
Leibniz Universität Hannover Insitut für Theoretische Informatik Traveling Salesman Problem Vergleich von Heuristiken zur Lösung des Problems des Handlungsreisenden Eine Bachelorarbeit von Florian Nöhring 18. August 2007 Prof. Dr. Heribert Vollmer Erstprüfer Prof. Dr. Udo Lipeck Zweitprüfer

Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Embed Size (px)

Citation preview

Page 1: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Leibniz Universität HannoverInsitut für Theoretische Informatik

Traveling Salesman ProblemVergleich von Heuristiken zur Lösung des Problems des

Handlungsreisenden

Eine Bachelorarbeit von

Florian Nöhring

18. August 2007

Prof. Dr. Heribert VollmerErstprüfer

Prof. Dr. Udo LipeckZweitprüfer

Page 2: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist
Page 3: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Erklärung

Hiermit versichere ich, dass ich die vorliegende Arbeit selbstständig verfasst und dabeikeine anderen als die aufgeführten Quellen und Hilfsmittel verwendet habe.

Hannover, den 18. August 2007

Page 4: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist
Page 5: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Inhaltsverzeichnis

1 Einführung 71.1 Traveling Salesman Problem . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 Motivation dieser Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.3 Begriffe, Konventionen und Definitionen . . . . . . . . . . . . . . . . . . . 9

2 Instanzen 112.1 TSPLIB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3 Heuristiken 133.1 Einfache Heuristiken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.1.1 Nearest Neighbor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.1.2 Random Insertion . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.2 Ausgefeiltere Heuristiken . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.2.1 Minimum Spanning Tree-Heuristik . . . . . . . . . . . . . . . . . . 173.2.2 Die Heuristik von Christofides . . . . . . . . . . . . . . . . . . . . . 19

3.3 Sonstige Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.3.1 Brute Force . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.3.2 Genetischer Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . 23

4 Testdurchführung 274.1 Testsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.2 Laufzeitanalyse und Testergebnisse . . . . . . . . . . . . . . . . . . . . . . 27

5 Bewertung der Ergebnisse 43

Literaturverzeichnis 45

5

Page 6: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist
Page 7: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

1 Einführung

1.1 Traveling Salesman Problem

Das Problem des Handlungsreisenden äußert sich in dem Wunsch für eine gegebene

Menge von Städten eine Rundreise zu finden, die nacheinander zu jeder Stadt genau

einmal führt und schließlich zur Ausgangsstadt zurückkehrt und dabei eine möglichst

kurze Strecke zurücklegt.

Das Problem ist dabei nicht auf Städte beschränkt, sondern lässt sich auch auf ähnliche

Situationen übertragen und findet damit Relevanz nicht nur bei einem Paketdienstleister

oder Vertreter, der seine Kunden ohne Umwege besuchen möchte, sondern auch in der

Fertigungsindustrie, etwa bei einem Bestückungs- oder Schweißroboter, für den die Zeit

minimiert werden soll, die er benötigt um zu den Steckplätzen oder Schweißstellen zu

gelangen, damit der Fertigungsprozess nicht unnötig verlangsamt wird.

Am Beispiel der Suche nach der kürzesten Rundreise durch die 16 Landeshauptstädte

Deutschlands wird deutlich wie schwierig es ist die kürzeste Rundreise zu finden. Ein

Mensch kann für solch eine kleine Menge von Städten noch sehr kurze und oft sogar

die kürzeste Rundreise durch scharfes Hinsehen erkennen, weil er bei einem Blick auf

die Karte die Lage der Orte im Ganzen erfassen kann und erkennt, dass die kürzeste

Rundreise beispielsweise nicht von Kiel über München, zurück nach Hamburg und an-

schließend über Stuttgart führt.

Der Mensch zerlegt das Problem intuitiv in kleinere Teile1 und erkennt, dass beispiels-

weise München–Stuttgart–Saarbrücken–Mainz–Wiesbaden–Düsseldorf oder auch

Hannover–Bremen–Hamburg–Kiel derart positioniert sind, dass sie mit größter Wahr-

scheinlichkeit in dieser Reihenfolge auch Teil der gesuchten Lösung sind. Diese Teillö-

sungen können dann zusammengesetzt werden.

1Dies folgt dem divide et impera-Paradigma, dt. teile und herrsche.

7

Page 8: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 1. Einführung

Ein Computerprogramm sieht nicht das Gesamtbild und kann daher nicht dieselben

Schlüsse ziehen wie ein Mensch. Es muss ein anderer Lösungsweg gefunden werden.

Für nur 16 Städte existieren bereits mehr als 650 Mrd. verschiedene Rundreisen; zu viele

um alle auszuprobieren.

Das Problem des Handlungsreisenden (en.: Travelling Salesman Problem, amer.: Trave-

ling ∼; kurz MinTSP) gehört zu einer Klasse von Problemen genannt NPO. Es existiert

eine Variante von MinTSP, genannt TSP, bei der es sich um das zugehörige Entschei-

dungsproblem handelt.

Das Optimierungsproblem MinTSP

MinTSP = (I, Sol,m, goal) mit

• I = {〈(di,j)1≤i,j≤n〉 | n, di,j ∈ N}• Sol(D) ist die Menge aller Rundreisen in D, d. h. Sol(D) = Sn, die Gruppe der

Permutationen von n Elementen.

• m(D,π) ist die Länge Rundreise in π in D, d. h. m(D,π) =n−1∑i=1

dπ(i),π(i+1) +

dπ(n),π(1).

• goal = min.

aus [7], S. 31

Das Entscheidungsproblem TSP

TSP = {〈(di,j)1≤i,j≤n, B〉 | n, di,j , B ∈ N und es gibt π ∈ Sn mitn−1∑i=1

dπ(i),π(i+1) +

dπ(n),π(1) ≤ B}aus [7], S. 29

Beim Entscheidungsproblem wird neben der Menge von Städten noch eine Zahl B über-

geben, und es ist lediglich die Antwort auf die Frage gesucht, ob eine Rundreise durch

alle Städte existiert, die eine Strecke nicht länger als B zurückgelegt.

TSP ist ein klassisches NP-vollständiges Problem. Damit ist MinTSP NP-hart ([7], S. 33),

und es ist kein effizientes Verfahren bekannt um MinTSP zu lösen.

8

Page 9: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

1.2. Motivation dieser Arbeit

1.2 Motivation dieser Arbeit

Weil für NP-harte Probleme keine effizienten Lösungsverfahren bekannt sind, ist es prak-

tisch unmöglich das Problem des Handlungsreisenden für eine große Menge von Städten

zu lösen.

Im Folgenden soll daher nicht mehr versucht werden die optimale Lösung, also die kür-

zeste Rundreise, zu finden, sondern mit Hilfe von verschiedenen Heuristiken eine Rund-

reise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und

dabei so lang wie nötig ist.

Diese Arbeit stellt einen empirischen Vergleich an zwischen einigen Heuristiken, die für

das Problem des Handlungsreisenden effizient Näherungslösungen finden.

1.3 Begriffe, Konventionen und Definitionen

Instanz

Die hier vorgestellten Heuristiken und anderen Verfahren versuchen eine möglichst kur-

ze Rundreise für eine gegebene Menge von Städten zu bestimmen. Eine solche Einga-

bemenge, auf die eine Heuristik angewandt werden kann, wird als Probleminstanz oder

kurz Instanz bezeichnet. Die Dimension einer Instanz ist die Anzahl ihrer Städte.

Die Instanzen werden als Graphen modelliert, mit den Städten als Knoten und den Ent-

fernungen als Kantengewichte. Diese Gewichte werden auch als Kosten bezeichnet. Für

alle Graphen und damit auch für die zugrunde liegenden Instanzen gelten dabei einige

Einschränkungen. Sie sind einfach, vollständig und ungerichtet, also auch symmetrisch,

sowie metrisch, das heißt die Dreiecksungleichung2 ist erfüllt.

Formal ist eine Instanz mit n Städten entweder gegeben als

• eine Menge C = {c1, c2, . . . , cn} von Punkten mit Koordinaten, die die Städte re-

präsentieren und eine Funktion d : (i, j)→ N, die ∀ i, j ∈ {1, . . . , n} die Entfernung

zwischen ci und cj berechnet,

oder als2Die Distanz zwischen den Städten A und C kann niemals länger sein als der Umweg von A über eine

beliebige Stadt B nach C.

9

Page 10: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 1. Einführung

• eine symmetrische (n × n)-Matrix A, bei der an Position Ai,j die Entfernung zwi-

schen den Städten i und j steht.

Rundreise

Eine Rundreise durch eine Instanz mit n Städten wird modelliert als Permutation

π =

(1 2 3 4 . . . n

p1 p2 p3 p4 . . . pn

), p1, . . . , pn ∈ {1, . . . , n}.

π(i) gibt dabei die Stadt an, die nach Stadt i besucht wird.

Als kürzere Darstellung dient die Zyklenschreibweise

π = ( q1 q2 q3 q4 . . . qn ), q1, . . . , qn ∈ {1, . . . , n},

bei der die Städte in der angegebenen Reihenfolge besucht werden.

Eine solche Rundreise, bei der jede Stadt genau einmal besucht wird, wird auch als

Lösung bezeichnet, auch wenn es sich dabei nicht um die gesuchte kürzeste Rundreise

handelt. Eine weitere Bezeichnung für eine Rundreise ist Tour.

Die Maßzahl einer Rundreise oder Lösung π ist ihre Gesamtlänge. Das ist

n∑i=1

d(i, π(i)

)bzw.

n∑i=1

Ai,π(i).

Performanz

Die Performanz einer Lösung, auch Güte genannt, gibt das Verhältnis von ihrer Maßzahl

zu der Maßzahl der optimalen Lösung an. ([5], S. 39)

10

Page 11: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

2 Instanzen

Um Heuristiken effektiv vergleichen zu können, müssen Metriken gefunden werden, mit

deren Hilfe die Qualität eines Verfahrens objektiv beurteilt werden kann.

Hierfür eignen sich besonders die benötigte Zeit und die Performanz einer gefundenen

Tour. Später wird außerdem die Varianz der Güte ermittelter Lösungen eines Verfahrens

bei wiederholter Anwendung auf dieselbe Instanz von einiger Bedeutung sein.

Wegen der NP-Härte des Problems lässt sich für größere Instanzen in vertretbarer Zeit

effektiv keine optimale Lösung bestimmen. Deswegen können nicht eigens für die Mes-

sungen Testinstanzen zufällig erzeugt werden, und es muss auf Instanzen mit bekannten

Lösungen zurückgegriffen werden.

2.1 TSPLIB

Um die Heuristiken vergleichen zu können wird daher auf TSPLIB [1] zurückgegriffen.

Dies ist eine Sammlung von über 100 Probleminstanzen des symmetrischen Problems

des Handlungsreisenden unterschiedlicher Größe. Die kleinste Instanz burma14.tsp ver-

fügt über 14 Städte oder Knoten, die größte über 85.900 (pla85900.tsp).

Die Instanzen haben meist einen realitätsbezogenen Hintergrund. So finden sich in der

TSPLIB u. a. folgende Instanzen:

• 666 Städte rund um die Welt (gr666.tsp)• 16 und 22 Stationen auf der Irrfahrt des Odysseus (ulysses16.tsp undulysses22.tsp)• 127 Biergärten in Augsburg (bier127.tsp)

11

Page 12: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 2. Instanzen

Die Instanzen können dabei im Wesentlichen in drei verschiedenen Formaten vorliegen.1

Punktmenge in der euklidischen Ebene Jede Stadt ist als kartesische Koordinate gege-

ben. Die Distanz zwischen zwei Städten muss nach Pythagoras berechnet werden.

Punktmenge geografischer Koordinaten aus Breiten- und Längengraden Die Distanz

zwischen zwei Punkten muss mittels aufwändiger trigonometrischer Funktionen

berechnet werden. Es gilt stets die direkte Luftlinie unabhängig etwaiger Hinder-

nisse.

Explizite Angabe aller Distanzen Die Distanzen liegen als obere oder untere Dreiecks-

oder als vollständige Adjazenzmatrix vor. Dadurch wird zwar keine Zeit zur Be-

rechnung benötigt, aufgrund der Repräsentation der Distanzen als 32 Bit-Ganz-

zahlen wird zur Speicherung der Dreiecksmatrix jedoch (n2−n)2 · 4 Byte Speicher-

platz benötigt, was bei großen Instanzen wie d18512.tsp (18.512 Städte in

Deutschland) bereits 650 MB und bei pla85900.tsp sogar über 13 GB Speicher-

bedarf bedeutet.

Abbildung 2.1: Schematische Darstellung der 16 Knoten aus ulysses16.tsp. In Wirk-lichkeit liegen die Punkte auf der gekrümmten Erdoberfläche. Die Pro-portionen der paarweisen Distanzen in dieser Abbildung stimmen dahernicht mit der Wirklichkeit überein.

1Es gibt außerdem noch die Möglichkeit Instanzen zu formulieren, bei denen die Distanz zwischen zweiKnoten auf spezielle Art berechnet oder gerundet werden muss, was hier jedoch von nur geringemInteresse ist.

12

Page 13: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

3 Heuristiken

Anders als Algorithmen, die für ein bestehendes Problem garantiert eine Lösung finden,

falls es sie gibt, sind Heuristiken Verfahren, die meist einfacher durchzuführen sind und

eine Näherungslösung finden, die zwar nicht perfekt aber oft zufriedenstellend ist.

3.1 Einfache Heuristiken

Einfache Heuristiken stellen intuitive Lösungsansätze dar. Im Gegenzug bieten sie jedoch

keine Garantien bezüglich der Güte einer ermittelten Lösung.

3.1.1 Nearest Neighbor

Dies stellt die einfachste und intuitivste Heuristik dar. Ausgehend von einem beliebigen

Startknoten wird die Tour stets über denjenigen Knoten fortgesetzt, der dem zuletzt

besuchten am nächsten ist, bis alle Knoten einmal besucht wurden. Schließlich wird

zum Startknoten zurückgekehrt.

Die Schritte des Vorgehens im Einzelnen sind:

1. Setze beliebigen Knoten als Startknoten der Tour.2. Solange noch Knoten existieren, die noch nicht zur Tour hinzugefügt

wurden, wiederhole den folgenden Schritt.2.1 Bestimme den Knoten, der dem zuletzt hinzugefügten am nächsten

ist und noch nicht hinzugefügt wurde, und füge ihn als nächstenzur Tour hinzu.

3. Verbinde den ersten und letzten Knoten um eine Rundreise zu erhalten.

Hierbei ist zu beachten, dass je nach Wahl des Startknotens, das Verfahren stark abwei-

chende Ergebnisse liefern kann und die Güte der Lösung damit vom Zufall abhängt, weil

13

Page 14: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 3. Heuristiken

sich nicht vorhersehen lässt, welcher Knoten als Startknoten gut oder schlecht geeignet

ist.

Bei der Instanz fri26.tsp sorgt dies beispielsweise dafür, dass bei Wahl des optimalen

Startknotens Knoten 12 eine Tour gefunden wird, deren Länge die der optimalen Tour

nur um 3 % übersteigt. Fällt die Wahl des Startknotens dagegen auf Knoten 23, so liefert

das Verfahren eine Lösung, die 37 % länger ist als die optimale.

Beispiel

2

7

4 5

8 9

3

6

1

Abbildung 3.1: Knoten 2 wird als nächstes besucht.

Im Beispiel in Abbildung 3.1 wird als nächstes die 2 und anschließend die 7 zur Tour

hinzugefügt werden. Bei einer optimalen Tour hingegen müssten zunächst die Knoten 3

und 9 besucht werden, da die Knoten 2 und 7 dann auf dem Rückweg zur 1 ohne großen

Umweg berücksichtigt werden könnten.

2

7

4 5

8 9

3

6

1

Abbildung 3.2: Mit Knoten 2 als Startknoten wird im Beispiel die optimale Tour gefun-den, weil diesmal die 2 nach der 5 nicht als Nachfolger in Frage kommt.

14

Page 15: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

3.1. Einfache Heuristiken

Anhand des Beispiels wird deutlich, dass das Verfahren nicht vorausschaut um die Ge-

samtlänge möglichst gering zu halten, sondern in jedem Schritt lediglich die momenta-

nen Schrittkosten minimal hält. Algorithmen und Heuristiken, die nach diesem Muster

vorgehen werden auch als gierig bezeichnet.

Für das Verfahren ergibt sich insgesamt ein Laufzeit von O(n2), denn Schritt 2.1 wird

n-mal ausgeführt, und bei jeder dieser Iteration müssen O(n) Distanzen berechnet wer-

den.

Ausiello et al. haben (in [5]) gezeigt, dass für die Performanz von Nearest Neighbor die

obere Schranke 12(dlog ne+ 1) existiert.

3.1.2 Random Insertion

Auch bei Random Insertion handelt es sich um ein gieriges Verfahren, und es ähnelt auch

dem Vorgehen bei Nearest Neighbor. Hier werden jedoch nicht Knoten nacheinander an

den zuletzt besuchten angehängt, sondern so in eine vorhandene Teiltour eingefügt, dass

die geringstmögliche Verlängerung der Tour bewirkt wird.

Gestartet wird dabei nicht mit einem, sondern mit drei1 Knoten und einer Rundreise

durch eben diese drei.

Im Detail setzt sich das Verfahren aus diesen Schritten zusammen:

1. Wähle 3 Startknoten und bilde eine Rundreise durch diese.1.1 Diese erste Rundreise besteht aus 3 Toursegmenten, nämlich den

Kanten zwischen jeweils 2 der 3 Startknoten.2. Solange noch Knoten existieren, die noch nicht zur Tour hinzugefügt

wurden, wiederhole die folgenden Schritte.2.1 Wähle zufällig einen noch nicht hinzugefügten Knoten Z aus.2.2 Berechne die Distanzen von Z zu allen bisher eingefügten Knoten.2.3 Bestimme die zwei benachbarten Knoten P und Q der

unvollständigen Rundreise, so dass, wenn Z zwischen ihneneingefügt wird, die Rundreise minimal verlängert wird.

2.4 Füge Z zur Rundreise hinzu, indem die Strecke PQ durch PZ und ZQersetzt wird.

1Man könnte auch mit 2 Knoten und einer Rundreise durch diese 2 starten; natürlich nur, wenn die Instanzüberhaupt so viele Knoten enthält.

15

Page 16: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 3. Heuristiken

Für Random Insertion ergibt sich, wie für Nearest Neighbor, ebenfalls eine Laufzeit von

O(n2). Schritte 2.1 bis 2.4 werden n-mal ausgeführt, und in jeder Iteration müssen O(n)

Distanzen berechnet werden.

41

3

6

25

41

3

6

25

Abbildung 3.3: Knoten 6 wird als nächstes ausgewählt und findet seinen Platz zwischen2 und 3.

Bei Nearest Neighbor wird sichergestellt, dass die Distanz von jedem Knoten zu seinem

Nachfolgeknoten möglichst gering ist. Die Distanz zum Vorgänger dagegen bleibt unbe-

rücksichtigt. Für das letzte Toursegment gibt es dann keinerlei Wahlmöglichkeiten mehr;

es muss immer den ersten und letzten Knoten miteinander verbinden, und diese beiden

können unter Umständen sehr ungünstig liegen.

Random Insertion hingegen misst die Distanz zu Vorgänger und Nachfolger und wählt

den jeweils besten Kompromiss. Dadurch ist die Wahl nie so eingeschränkt wie bei Nea-

rest Neighbor, und es werden üblicherweise – nicht jedoch grundsätzlich – auch bessere

Ergebnisse erzielt.

Das Wort Random im Titel impliziert allerdings schon, dass das Verfahren bei wieder-

holter Anwendung verschiedene Ergebnisse liefern kann, also die Performanz der Lö-

sung nicht mehr nur von der Wahl der Startknoten (wie bei Nearest Neighbor) abhängt,

sondern auch bei exakt gleichen Startbedingungen unterschiedliche Ergebnisse liefern

kann. Wie sehr die Ergebnisse von wiederholten Verfahrensanwendungen voneinander

abweichen können wird im Abschnitt 4.2 auf Seite 31 untersucht.

16

Page 17: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

3.2. Ausgefeiltere Heuristiken

3.2 Ausgefeiltere Heuristiken

Die hier vorgestellten Verfahren unterscheiden sich von den einfachen Heuristiken haupt-

sächlich dadurch, dass sie nicht gierig vorgehen, sondern einen minimalen Spannbaum

zu Hilfe nehmen um eine Vorauswahl der Kanten zu treffen.

Speziell handelt es sich hierbei um c-Approximationsalgorithmen. Das bedeutet, dass im

schlechtesten Fall noch immer eine Güte von c garantiert werden kann.

3.2.1 Minimum Spanning Tree-Heuristik

Die Idee bei der Minimum Spanning Tree-Heuristik (kurz MST-Heuristik, auch TreeTSP

bei Vollmer [7]) ist es, zunächst einen minimalen Spannbaum über der Knotenmenge zu

spannen. Die Reihenfolge der ermittelten Lösung ergibt sich dann daraus, den Spann-

baum entlangzulaufen und die Knoten in der Reihenfolge des Besuches zu notieren.

Wird dabei ein Knoten erneut besucht, wird er übersprungen.

Technisch kann das Verfahren auf die folgende Weise durchgeführt werden:

1. Konstruiere einen minimalen Spannbaum über der Knotenmenge.2. Überführe den dabei entstehenden Graphen in einen Multigraphen, indem

jede Kante dupliziert wird.3. Ausgehend von einem beliebigen Startknoten, finde eine Eulertour

durch den Multigraphen und füge die Knoten in der Reihenfolge desBesuches zur Lösung hinzu.

4. Streiche jedes wiederholte Auftreten eines Knotens aus der Lösung.

Der minimale Spannbaum eignet sich, um eine Vorauswahl der zu wählenden Kanten zu

treffen, weil er alle Knoten miteinander verbindet bei kleinstmöglichem Gesamtkanten-

gewicht.

Sofern jedoch Verzweigungen im minimalen Spannbaum vorkommen, kann die Lösung

nicht eindeutig aus der Eulertour bestimmt werden. Abbildung 3.4 zeigt den Multigra-

phen eines einfachen Spannbaumes. Die Eulertour führt 3-mal am Knoten 2 vorbei. Zwei

dieser Besuche müssen durch zusätzliche Kanten zwischen den Nachbarn überbrückt

werden. Welche dies sind schreibt die MST-Heuristik nicht vor.

17

Page 18: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 3. Heuristiken

15

3

4 2

6

15

3

4 2

6

Abbildung 3.4: Multigraph mit Eulertour und eine gültige Lösung. Beim Vorgehen nachder MST-Heuristik können bei Verzweigungen – wie hier – ungünstigeEntscheidungen getroffen werden.

Definition

„Eine Eulertour in einem Graphen [. . . ] ist ein Weg, der jede Kante des Graphen genau

einmal enhält und dessen Anfangs- und Endknoten identisch sind. Enthält ein Graph

eine Eulertour, so nennt man ihn eulersch.“ ([9], S. 72)

Die Laufzeit des Verfahrens ergibt sich anhand der einzelnen Schritte zu O(n2) bei Ver-

wendung des Algorithmus’ von Prim-Jarník zur Bestimmung des minimalen Spannbau-

mes.

Schritt Zeitbedarf1 O(n2)2 O(n)3 O(n)4 O(n)

Tabelle 3.1: Zeitbedarf der Schritte der MST-Heuristik

Satz: Die MST-Heuristik ist ein 2-Approximationsalgorithmus ([2], [7]).

Beweis (nach [7]): Das Gesamtgewicht des minimalen Spannbaumes WMST kann nicht

größer als die Länge der optimalen Rundreise Wopt. sein.

WMST ≤Wopt.

18

Page 19: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

3.2. Ausgefeiltere Heuristiken

Wäre dies doch der Fall, könnte man von der optimalen Rundreise eine Kante entfernen

und erhielte wieder einen Spannbaum, der noch leichter als der minimale Spannbaum

wäre.

Weil in der Eulertour jede Kante des in Schritt 2 erzeugten Multigraphen genau einmal

benutzt wird, hat diese eine Gesamtlänge von 2 ·WMST.

WEuler ≤ 2 ·Wopt.

Aufgrund der Dreiecksungleichung ist die von der MST-Heuristik ermittelte Lösung nicht

länger als die Eulertour durch den Multigraphen. Damit gilt:

WLösung ≤ 2 ·Wopt. �

2

3

4

81

16

5

15

1413

126

7

10 9

11

Abbildung 3.5: Der minimale Spannbaum und eine von der MST-Heuristik ermittelteRundreise zu ulysses16.tsp. Diese Lösung hat eine Performanz von1,13 und liegt damit deutlich unter der oberen Schranke von 2.

3.2.2 Die Heuristik von Christofides

Die Heuristik von Christofides (auch Christofides’ Algorithmus genannt) baut auf der

MST-Heuristik auf. Sie verwendet ebenfalls einen minimalen Spannbaum um eine erste

Auswahl der für die Rundreise zu wählenden Kanten zu treffen.

19

Page 20: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 3. Heuristiken

Letztendlich wird auch hier die Rundreise ermittelt indem eine Eulertour durch einen

Multigraphen gesucht wird. Der Multigraph wird dabei jedoch nicht erzeugt indem jede

Kante des Spannbaumes dupliziert wird, sondern durch Bestimmen eines gewichtsmini-

malen perfekten Matchings auf der Menge der Knoten des Spannbaumes mit ungeradem

Grad und Hinzufügen jeder Kante dieses Matchings zum Spannbaum.

Definition

Ein Matching eines Graphen G = (V,E) ist eine Teilmenge M ⊆ E, so dass dieinzidenten Knoten aller Kanten aus M paarweise disjunkt sind, jeder Knoten aus V alsonur mit höchstens einer Kante aus M inzidiert.

M heißt perfekt, wenn zusätzlich gilt:

|M | = |V |2,

also wenn jeder Knoten aus V mit genau einer Kante aus M inzidiert.

Das Gesamtgewicht eines Matchings ist die Summe seiner Kantengewichte.

Ein gewichtsminimales perfektes Matching M eines Graphen G ist ein Matching, sodass kein anderes Matching M ′ von G existiert mit geringerem Gesamtgewicht als M .

[7], [9]

Durch dieses Vorgehen wird ein Multigraph erzeugt, in dem alle Knoten von geradem

Grad sind. Ein solcher Graph ist stets eulersch ([9], S. 73).

Die weitere Durchführung entspricht wieder der MST-Heuristik.

1. Konstruiere einen minimalen Spannbaum über der Knotenmenge.2. Bestimme ein gewichtsminimales perfektes Matching für die Menge der

Knoten des Spannbaumes, die von ungeradem Grad sind.3. Füge jede Kante des Matchings zum Spannbaum hinzu um einen

Multigraphen zu erhalten.4. Ausgehend von einem beliebigen Startknoten, finde eine Eulertour

durch den Multigraphen und füge die Knoten in der Reihenfolge desBesuches zur Lösung hinzu.

5. Streiche jedes wiederholte Auftreten eines Knotens aus der Lösung.

20

Page 21: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

3.2. Ausgefeiltere Heuristiken

Schritt Zeitbedarf1 O(n2)2 s. u.3 O(n)4 O(n)5 O(n)

Tabelle 3.2: Zeitbedarf der Schritte der Heuristik von Christofides

Schritt 2 stellt den zeitkritischen Schritt dar. Die Berechnung eines gewichtsminimalen

perfekten Matchings ermöglicht der Algorithmus von Edmonds in Zeit O(n4). Außerdem

existieren Verbesserungen des Algorithmus’ u. a. von Gabow, die in Zeit O(n3) auskom-

men ([6], S. 2).

In dieser Arbeit wird zur Bestimmung eines gewichtsminimalen perfekten Matchings auf

eine Implementierung des Algorithmus’ von Edmonds von Michael Maguire und Luis

Goddyn ([3]) zurückgegriffen.

Alternativ dazu wird untersucht, wie eine Heuristik zur Bestimmung einer Näherungslö-

sung eines gewichtsminimalen perfekten Matchings Laufzeit und Performanz der Heu-

ristik von Christofides beeinflusst. Dazu wird ein Verfahren von Wattenhofer & Watten-

hofer ([10]) verwendet, das in Zeit O(n2 log n) ein perfektes Matching findet, das nicht

schwerer als (log n)-mal das gewichtsminimale Matching ist.

Die Laufzeit der Heuristik von Christofides ergibt sich damit zu O(n4) für die exakte und

O(n2 log n) für die approximierte Lösung.

2

3

4

8

1

16

5

15

14

1312

67

10 9

1111 Knoten des Spannbaumes mit ungera-

dem Grad (zu matchender Knoten)

Kante des Spannbaumes

Kante, die beim Matching bestimmt wurde

Abbildung 3.6: Der Multigraph zu ulysses16.tsp, der durch Hinzufügen des perfek-ten Matchings entsteht. Schematische Darstellung: die Proportionen derEntfernungen in der Darstellung stimmen nicht mit den echten überein.Vgl. Abbildungen 2.1 und 3.5.

21

Page 22: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 3. Heuristiken

Genau wie bei der MST-Heuristik ist auch nach Christofides die Auswertung des Mul-

tigraphen, also die Bestimmung der Eulertour nicht genau beschrieben. Gefordert ist

lediglich eine beliebige Eulertour.

1614

13

12 3

……68

52

904

406

913

449

1614 13

12 3

……

52 406

913

1614

1312 3

……

68 904

449

Abbildung 3.7: Zwei mögliche Teillösungen für den Multigraphen aus Abb. 3.6. (Ent-fernungen sind Kilometerangaben.)

Abbildung 3.7 zeigt einen Ausschnitt aus dem Multigraphen zu ulysses16.tsp. Die er-

mittelte Eulertour führt 2-mal an der 13 vorbei. Die rechts dargestellte Lösung der zwei

möglichen Alternativen ist die bessere, weil sie das geringere Gesamtgewicht der be-

troffenen Kanten hat. Mit dem Verfahren nach Christofides wird das jedoch nicht be-

rücksichtigt. Die Performanz hängt damit auch vom Zufall ab, weil bei der Anwendung

zufällig eine der Möglichkeiten gewählt wird.

Dieser Zufallsfaktor sorgt dafür, dass bei Verwendung des approximierten Matchings

nach Wattenhofer & Wattenhofer, bei dem gegenüber dem exakten Matching nach Ed-

monds ein Multigraph mit höherem Gesamtgewicht entsteht, trotzdem eine kürzere

Rundreise gefunden werden könnte. Ob dieser Umstand tatsächlich eintritt, wird in Ab-

schnitt 4.2 auf Seite 34 geklärt.

Unabhängig dieser Problematik und davon wie effizient eine Lösung anhand der Euler-

tour gewählt wird, ist die Performanz der ermittelten Lösung stets nicht größer als 1,5.

Satz: Die Heuristik von Christofides ist ein 32 -Approximationsalgorithmus.

Den Beweis dazu liefert Vollmer ([7], S. 38).

22

Page 23: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

3.3. Sonstige Verfahren

3.3 Sonstige Verfahren

3.3.1 Brute Force

Dem Brute Force-Ansatz nachzugehen stellt die einfachste und naivste Vorgehensweise

dar. Es wird nacheinander jede mögliche Permutation der Knoten ausprobiert, wobei

garantiert die optimale Lösung gefunden wird.

Der Aufwand lässt sich reduzieren, indem ein beliebiger Startknoten festgelegt wird.

Dies ist möglich, da dennoch alle möglichen Touren untersucht werden. Ist beispielswei-

se (5 4 6 1 3 2) eine optimale Tour und wird Knoten 1 als Startknoten festgelegt, so wird

trotzdem die Tour (1 3 2 5 4 6) oder (1 6 4 5 2 3) gefunden. All diese drei Touren besu-

chen die Knoten in der gleichen oder genau umgekehrten Reihenfolge. Die ermittelten

Längen der drei Lösungen sind identisch.

Eine weitere Einsparung lässt sich vornehmen, wenn nicht jedesmal die gesamte Länge

einer Tour, sondern nur der in der Iteration geänderte Teil berechnet wird. Dies ent-

spricht einer Tiefensuche durch den Suchbaum, bei dem die Zwischendistanz an den

Verzweigungen gespeichert und nur die Distanz von jeder Verzweigung zum Blatt be-

rechnet werden muss.

Außerdem braucht nur jeweils eine der zwei möglichen Rundreisen pro Permutation

berechnet werden.

Durch diese Einsparungen müssen noch (n−1)!2 mögliche Touren berechnet werden. Der

Zeitbedarf wächst exponentiell an, und das Verfahren ist schon für kleine Instanzen nicht

praktikabel.

3.3.2 Genetischer Algorithmus

Genetische Algorithmen ([8], S. 157) sind Verfahren, die in der Lage sind eine Vielzahl

unterschiedlicher Probleme zu lösen, nicht nur das des Handlungsreisenden. Dazu ar-

beiten sie mit einer Menge von gültigen aber noch nicht zufriedenstellenden Lösungen.

In mehreren wiederholten Iterationen werden vorhandene Lösungen paarweise mitein-

ander kombiniert um neue, möglicherweise günstigere Lösungen zu erhalten.

Die Bezeichnung genetischer Algorithmus kommt von der Ähnlichkeit dieses Vorgehens

zur natürlichen Auslese nach der Evolutionstheorie von Charles Darwin (1858/1859).

23

Page 24: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 3. Heuristiken

Die Menge der Lösungen heißt daher Population, die einzelnen Lösungen Individuen.

Das Kombinieren zweier Individuen, wodurch ein Nachfolger, das Kind, entsteht, wird

Kreuzung genannt. Dabei können mit geringer Wahrscheinlichkeit Variationen, die Mu-

tationen auftreten. Die sich ändernden Zustände der Population, die durch hinzufügen

neuer Individuen entstehen, werden als Generationen bezeichnet.

Die sogenannte Fitnessfunktion entscheidet dabei wie kräftig ein Individuum ist. Dadurch

können schwache Individuen verworfen werden, die starken Individuen überleben bzw.

geben ihre Gene an die Nachkommen weiter. So wird verhindert, dass die Population

zu groß wird, der Algorithmus kann seine Suche auf die günstig scheinenden Lösungen

konzentrieren.

Als Anfangspopulation werden k Individuen zufällig erzeugt. Während der Durchfüh-

rung befinden sich auch stets nur k Individuen in der Population.

Das Verfahren kann schließlich in einem der drei folgenden Fälle anhalten:

1. Eine zufriedenstellende Lösung wurde ermittelt.

2. Eine festgelegte Anzahl von Generationen wurde erzeugt.

3. In einer festgelegten Anzahl nachfolgender Generationen trat keine Besserung ein.

Der Algorithmus gibt dann die beste Lösung aus der Population zurück.

Um mit dem genetischen Algorithmus nun eine günstige Rundreise für den Handlungs-

reisenden zu ermitteln wird er folgendermaßen angewandt.

Die Individuen stellen Permutationen der n Städte oder Knoten dar. Damit handelt es

sich um beliebig schlechte aber gültige Lösungen, da sie Rundreisen entsprechen, die

nacheinander jede Stadt einmal besuchen.

Als Anfangspopulation dienen k zufällig erzeugte Permutationen. Die Fitnessfunktion

misst einfach die Länge der Rundreise der entsprechenden Lösung, wobei kürzere Lö-

sungen fitter also kräftiger sind.

Die Nachfolgegeneration wird hier stets nach folgendem Muster erzeugt.

Sämtliche Individuen der Population werden paarweise mit jedem anderen Individuum

gekreuzt. Dabei entstehen(k2

)Kinder, die gegebenenfalls mutieren. Von den k alten und

k(k−1)2 neuen Individuen werden die k besten nach der Fitnessfunktion gewählt und in

die neue Generation übernommen; der Rest wird verworfen.

24

Page 25: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

3.3. Sonstige Verfahren

Die Kreuzung zwischen zwei Individuen i1, i2 wird durchgeführt, indem von i1 eine Teil-

tour t1 der Länge⌊n2

⌋zufällig bestimmt wird. Eine zweite Teiltour t2 der Länge

⌈n2

⌉wird

gebildet, indem von i2 alle Knoten entfernt werden, die schon in t1 enthalten sind. Die

restlichen Knoten werden ausgehend von einem beliebigen Startknoten in der gleichen

Reihenfolge wie in i2 aneinander gereiht und bilden t2.

t1 und t2 stellen dabei keine Rundreisen, sondern lediglich Sequenzen oder Ketten von

Knoten dar. Erst durch Aneinanderreihen entsteht eine Rundreise. Dies geschieht da-

bei auf diejenige der zwei Arten, bei denen die kürzere Gesamtlänge entsteht. Mit einer

Wahrscheinlichkeit von 5 % mutiert anschließend die entstandene Rundreise. Dazu wer-

den zwei Knoten zufällig ausgewählt, die einfach ihre Positionen tauschen.

Beispiel

Das Beispiel zeigt eine Kreuzung zweier Lösungen von ulysses16.tsp.

2

3

4

8

1

16

5

15

14

1312

67

10 9

11

2

3

4

8

1

16

5

15

14

1312

67

10 9

11

Abbildung 3.8: Diese zwei Individuen sollen gekreuzt werden. Links ist t1 bereits her-vorgehoben.

2

3

4

8

1612

10 9

Abbildung 3.9: t2 entsteht durch Auftrennen einer zufällig ausgewählten Kante der üb-rig gebliebenen Rundreise aus i2.

25

Page 26: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 3. Heuristiken

2

34

8

16

12

10 9

1

515

14

13

6

7

11

t1 t2

Abbildung 3.10: Die 2 Teiltouren werden zusammengefügt. Falls dadurch die Gesamt-tour kürzer wird, wird t2 zuvor umgedreht.

2

3

4

8

1

16

5

15

14

1312

67

10 9

11

Abbildung 3.11: Hier fand keine Mutation statt. Die gekreuzte Rundreise hat eine Per-formanz von 1,32. Damit trat bei dieser Kreuzung keine Besserunggegenüber den Eltern (1,24 bzw. 1,21) ein.

Das Beispiel macht deutlich, dass nicht bei jeder Kreuzung eine Besserung eintritt.

Es wird sogar immer unwahrscheinlicher, je besser die Performanz der Eltern ist, noch

eine Besserung per Kreuzung zu erzielen. Während anfangs noch bei fast jeder Genera-

tion mit einer besseren Lösung gerechnet werden kann, werden im Laufe des Verfahrens

mit zunehmender Güte im Mittel immer mehr Generationen nötig um überhaupt noch

eine Besserung zu erzielen.

Deswegen skaliert das Verfahren nicht für große Instanzen, auch wenn für kleine Instan-

zen in kurzer Zeit die optimale Tour gefunden werden kann.

Damit bietet der genetische Algorithmus keine Garantie bzgl. der Performanz der ermit-

telten Lösung.

26

Page 27: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

4 Testdurchführung

4.1 Testsystem

Als Testsystem dient ein iMac (Late 2006).

HardwareProzessor: Intel Core 2 Duo 2,16 GHzArbeitsspeicher: 2 GB DDR2 SDRAMSoftwareBetriebssystem: Mac OS X 10.4.10Java: J2SE 1.5.0_07-164

4.2 Laufzeitanalyse und Testergebnisse

Für die Verfahren Nearest Neighbor und Random Insertion wurden zur Ermittlung der

Performanz Testserien durchgeführt mit 50 Wiederholungen pro Instanz für alle Instan-

zen mit Ausnahme von pla33810.tsp und pla85900.tsp; bei ihnen wurden nur 5 Wie-

derholungen durchgeführt. Die Startknoten wurden dabei in jeder Iteration stets zufällig

gewählt. Für die folgenden Ergebnisse wird der arithmetische Mittelwert über alle Itera-

tionen betrachtet. Die Verfahren MST-Heuristik und Heuristik von Christofides hingegen

liefern reproduzierbare Ergebnisse und wurden nur jeweils einmal ausgeführt.

Zur Messung der Laufzeit wurden alle Heuristiken ebenfalls nur jeweils einmal ange-

wandt, weil bei wiederholter Anwendung die nachfolgenden Iterationen ansonsten teil-

weise erheblich schneller ausgeführt werden konnten, was auf die Verwendung von Ca-

ches zurückgeführt werden kann.

27

Page 28: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 4. Testdurchführung

Nearest Neighbor

Abbildung 4.1 zeigt die gemittelten Performanzen der Testserie mit 50 Wiederholungen

aller Testinstanzen bis 2.392 Knoten. Nicht dargestellt sind 13 Instanzen aus TSPLIB mit

Dimensionen zwischen 3.000 und 85.900 Knoten.

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30Random Insertion

0 400 800 1200 1600 2000 24001,0

1,1

1,2

1,3

1,4

1,5

1,6MST-Heuristik

3000 14000 25000 360001,0

1,1

1,2

1,3

1,4

1,5

1,6MST-Heuristik

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30

1,35

1,40Random Insertion

Nearest Neighbor

Perf

orm

anz

Dimension

40 210 380 550 720 890 10601,0

1,1

1,2

1,3

1,4

1,5Christo�des (approx.)

Christo�des (exakt)

Performanz von Nearest Neighbor

0

55

110

165

220

275

330Anzahl

1,02

69

1,02

56

1,02

44

1,02

31

1,02

19

1,02

06

1,01

94

1,01

81

1,01

69

1,01

56

1,01

44

1,01

31

1,01

19

1,01

06

0

20

40

60

80

1001,

3040

1,29

40

1,28

40

1,27

40

1,26

40

1,25

40

1,24

40

1,23

40

1,22

40

1,21

40

1,20

40

0

30

60

90

1,30

40

1,29

40

1,28

40

1,27

40

1,26

40

1,25

40

1,24

40

1,23

40

1,22

40

1,21

40

1,20

40

0

30

60

90

1,30

40

1,29

90

1,29

40

1,28

90

1,28

40

1,27

90

1,27

40

1,26

90

1,26

40

1,25

90

1,25

40

1,24

90

1,24

40

1,23

90

1,23

40

1,22

90

1,22

40

1,21

90

1,21

40

1,20

90

1,20

40

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30

1,35

1,40

Perf

orm

anz

Dimension

Abbildung 4.1: Performanzen von Nearest Neighbor für alle Instanzen bis 3.000 Kno-ten. Jedes Kästchen steht für eine Instanz, für die der arithmetischeMittelwert aus 50 Testwiederholungen ermittelt wurde.

Es sollen einige Instanzen genauer betrachtet werden. si1032.tsp sticht durch seine au-

ßerordentlich gute Performanz hervor. Mit einer Dimension von 1.032 wurde im Mittel

eine Performanz von 1,0197 erreicht. In einem eigenen Test wird die Häufigkeitsvertei-

lung der Performanzen für jeden möglichen Startknoten der 1.032 Knoten untersucht.

Abbildung 4.2 zeigt die Häufigkeitsverteilung der Performanzen auf Intervalle der Länge

0,00125 an.

Die Lösungen liegen extrem nah beieinander. Egal welcher Knoten als Startknoten be-

stimmt wird, eine mit Nearest Neighbor ermittelte Lösung für die Instanz si1032.tsp

wird niemals mehr als 2,25 % länger sein als die optimale Lösung. Damit handelt es

sich ganz und gar nicht um eine typische Instanz aus TSPLIB. si1032.tsp selbst liegt

nur als Adjazenzmatrix vor und kann deshalb nicht grafisch dargestellt werden. Bei Be-

trachtung der Adjazenzmatrix fällt jedoch auf, dass die Distanz von vielen Knoten zu

ganzen Mengen von anderen Knoten gleich ist. So nehmen beispielsweise die Gewichte

28

Page 29: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

4.2. Laufzeitanalyse und Testergebnisse

der mehr als eintausend inzidenten Kanten des ersten Knotens nur weniger als 100 ver-

schiedene Werte an. Zwei weitere Instanzen, die fast ebenso stark nach unten ausreißen

sind si175.tsp und si535.tsp mit den gleichen Besonderheiten wie si1032.tsp.

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30Random Insertion

0 400 800 1200 1600 2000 24001,0

1,1

1,2

1,3

1,4

1,5

1,6MST-Heuristik

3000 14000 25000 360001,0

1,1

1,2

1,3

1,4

1,5

1,6MST-Heuristik

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30

1,35

1,40Random Insertion

Nearest Neighbor

Perf

orm

anz

Dimension

40 210 380 550 720 890 10601,0

1,1

1,2

1,3

1,4

1,5Christo�des (approx.)

Christo�des (exakt)

Performanz von Nearest Neighbor

0

20

40

60

80

100

1,30

40

1,29

40

1,28

40

1,27

40

1,26

40

1,25

40

1,24

40

1,23

40

1,22

40

1,21

40

1,20

40

0

30

60

90

1,30

40

1,29

40

1,28

40

1,27

40

1,26

40

1,25

40

1,24

40

1,23

40

1,22

40

1,21

40

1,20

40

0

30

60

90

1,30

40

1,29

90

1,29

40

1,28

90

1,28

40

1,27

90

1,27

40

1,26

90

1,26

40

1,25

90

1,25

40

1,24

90

1,24

40

1,23

90

1,23

40

1,22

90

1,22

40

1,21

90

1,21

40

1,20

90

1,20

40

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30

1,35

1,40

Perf

orm

anz

Dimension

0

55

110

165

220

275

330

1,02

56

1,02

44

1,02

31

1,02

19

1,02

06

1,01

94

1,01

81

1,01

69

1,01

56

1,01

44

1,01

31

1,01

19

1,01

06

Anz

ahl

Intervallzentrum

Abbildung 4.2: Verteilung der Performanzen für alle 1.032 möglichen Startknoten vonsi1032.tsp. Die Werte an der Abszisse geben das Zentrum des Inter-valls an. An der Ordinate lässt sich ablesen wie viele der 1.032 Lösungenin das jeweilige Intervall fallen.

Mit der Instanz nrw1379.tsp (1.379 Städte in Nordrhein-Westfalen) soll ein typischer

Vertreter von TSPLIB mit der gleichen Methode wie si1032.tsp untersucht werden.

2500 3500 4500 55005500

6500

7500

8500

0

30

60

90

1,30

40

1,29

90

1,29

40

1,28

90

1,28

40

1,27

90

1,27

40

1,26

90

1,26

40

1,25

90

1,25

40

1,24

90

1,24

40

1,23

90

1,23

40

1,22

90

1,22

40

1,21

90

1,21

40

1,20

90

1,20

40

Anzah

l

Intervallzentrum

Abbildung 4.3: Die nordrein-westfälischen Städte sowie die Häufigkeitsverteilung derPerformanzen für alle möglichen Startknoten. Die Intervalle haben eineLänge von 0,0025.

29

Page 30: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 4. Testdurchführung

Man sieht, dass bei einer recht gleichmäßig verteilten Menge an Städten die Perfor-

manzen aller Startknoten auch auf einem wesentlich größeren Bereich verteilt sind als

bei speziellen Instanzen wie si1032.tsp. Nearest Neighbor liefert für jeden möglichen

Startknoten für nrw1379.tsp eine Performanz zwischen 1,205 und 1,3025.

Random Insertion

Bei Analyse der Ergebnisse der Testserie zur Bestimmung der Performanzen von Random

Insertion lässt sich feststellen, dass im Vergleich zu Nearest Neighbor hier mit besseren

Ergebnissen gerechnet werden kann. Abbildung 4.4 stellt die Messergebnisse der beiden

Verfahren gegenüber.

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30

1,35

1,40

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

0 400 800 1200 1600 2000 24001,0

1,1

1,2

1,3

1,4

1,5

1,6MST-Heuristik

3000 14000 25000 360001,0

1,1

1,2

1,3

1,4

1,5

1,6MST-Heuristik

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30

1,35

1,40Random Insertion

Nearest Neighbor

Perf

orm

anz

Dimension

40 210 380 550 720 890 10601,0

1,1

1,2

1,3

1,4

1,5Christo�des (approx.)

Christo�des (exakt)

Performanz von Nearest Neighbor

Performanz von Random Insertion

0

55

110

165

220

275

330Anzahl

1,02

69

1,02

56

1,02

44

1,02

31

1,02

19

1,02

06

1,01

94

1,01

81

1,01

69

1,01

56

1,01

44

1,01

31

1,01

19

1,01

06

0

30

60

90

1,30

40

1,29

90

1,29

40

1,28

90

1,28

40

1,27

90

1,27

40

1,26

90

1,26

40

1,25

90

1,25

40

1,24

90

1,24

40

1,23

90

1,23

40

1,22

90

1,22

40

1,21

90

1,21

40

1,20

90

1,20

40

Abbildung 4.4: Performanzen aller Instanzen unter 3.000 Knoten der Testserie von Ran-dom Insertion und noch einmal zum Vergleich die von Nearest Neighbor

Es lässt sich der Eindruck gewinnen, dass mit zunehmender Dimension mit Nearest

Neighbor bessere und mit Random Insertion schlechtere Ergebnisse erzielt werden. Ein

Blick auf die restlichen Instanzen aus TSPLIB, die in Abbildung 4.4 nicht dargestellt sind,

zeigt, dass dies allgemein nicht so ist.

30

Page 31: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

4.2. Laufzeitanalyse und Testergebnisse

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30

1,35

1,40

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

0 400 800 1200 1600 2000 24001,0

1,1

1,2

1,3

1,4

1,5

1,6MST-Heuristik

3000 14000 25000 360001,0

1,1

1,2

1,3

1,4

1,5

1,6MST-Heuristik

0 400 800 1200 1600 2000 24001,00

1,05

1,10

1,15

1,20

1,25

1,30

1,35

1,40Random Insertion

Nearest Neighbor

Perf

orm

anz

Dimension

40 210 380 550 720 890 10601,0

1,1

1,2

1,3

1,4

1,5Christo�des (approx.)

Christo�des (exakt)

Performanz von Nearest Neighbor

Performanz von Random Insertion

0

55

110

165

220

275

330Anzahl

1,02

69

1,02

56

1,02

44

1,02

31

1,02

19

1,02

06

1,01

94

1,01

81

1,01

69

1,01

56

1,01

44

1,01

31

1,01

19

1,01

06

0

30

60

90

1,30

40

1,29

90

1,29

40

1,28

90

1,28

40

1,27

90

1,27

40

1,26

90

1,26

40

1,25

90

1,25

40

1,24

90

1,24

40

1,23

90

1,23

40

1,22

90

1,22

40

1,21

90

1,21

40

1,20

90

1,20

40

1500 7000 12500 18000 23500 29000 345001,05

1,15

1,25

1,35Pe

rfor

man

z

Dimension

Abbildung 4.5: Vergleich der Instanzen großer Dimension. Nicht abgebildet istpla85900.tsp, wofür Nearest Neighbor und Random Insertion jeweilseine Performanz von 1,15 ermittelt haben.

„Wie random ist Random Insertion?“

In Abschnitt 3.1.2 auf Seite 16 kam die Frage auf wie sehr die Ergebnisse von wieder-

holten Verfahrensanwendungen bei gleichen Startbedingungen voneinander abweichen

können.

0

5

10

15

20

25

30

35nrw1379.tsp

pa561.tsp

bier127.tsp

berlin52.tsp

ulysses22.tsp

1,231,211,191,171,151,131,111,091,071,051,031,01

Anzah

l

Intervallzentrum

Abbildung 4.6: Häufigkeitsverteilung von jeweils 50 Anwendungen von Random Inser-tion auf Instanzen unterschiedlicher Größe mit jeweils immer gleichenStartbedingungen.

31

Page 32: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 4. Testdurchführung

Anhand von fünf Beispielinstanzen unterschiedlicher Dimension soll dies untersucht

werden.

Abbildung 4.6 zeigt die Häufigkeitsverteilung der Performanzen, die in 50 Testwiederho-

lungen mit jeweils immer gleichen Startbedingungen ermittelt wurden. Die Ergebnisse

zeigen ähnliche Performanz und ähnliches Streuverhalten aller fünf Instanzen. Ledig-

lich ulysses22.tsp zeigt verhältnismäßig gute Ergebnisse, was jedoch – hier nicht zu

sehen – alle Testinstanzen mit Dimensionen unter 50 gemeinsam haben.

ulysses22.tsp berlin52 bier127.tsp pa561.tsp nrw1379.tsp0,036 0,031 0,026 0,013 0,007

Tabelle 4.1: Standardabweichungen der 5 Instanzen aus Abbildung 4.6 bei 50 Wieder-holungen mit jeweils gleichen Startbedingungen

Die Zahlen der beiden gierigen Verfahren im Vergleich der Testserie über alle Testinstan-

zen sind in Tabelle 4.2 zu sehen.

Nearest Neighbor Random InsertionSchlechteste Performanz: 1,3662 1,2320Beste Performanz: 1,0197 1,0230Arithmetisches Mittel: 1,2445 1,1105Median: 1,2532 1,1086Varianz: 0,0036 0,0021Standardabweichung: 0,06 0,0459

Tabelle 4.2: Zusammenfassung der Messergebnisse zu Nearest Neighbor und RandomInsertion für alle 110 Testinstanzen

MST-Heuristik

Die MST-Heuristik liefert die durchweg schlechtesten Ergebnisse. Abbildung 4.7 zeigt

die Häufigkeitsverteilung der Performanzen auf Intervalle der Länge 0,05.

Der Mittelwert beträgt 1,34 und die Standardabweichung 0,09.

Abbildung 4.8 zeigt die Performanz der Testinstanzen gegenüber der Dimension.

32

Page 33: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

4.2. Laufzeitanalyse und Testergebnisse

0

5

10

15

20

25

30

35

1,57

5

1,52

5

1,47

5

1,42

5

1,37

5

1,32

5

1,27

5

1,22

5

1,17

5

1,12

5

1,07

5

1,02

5

Intervallzentrum

Anzah

l

Abbildung 4.7: Häufigkeitsverteilung der Performanzen aller Instanzen mit Ausnahmevon pla85900.tsp bei Verwendung der MST-Heuristik

10 100 1000 10000 1000001,0000

1,0500

1,1000

1,1500

1,2000

1,2500

1,3000

1,3500

1,4000

1,4500

1,5000

1,5500

Dimension

Performanz

Abbildung 4.8: Performanzen der MST-Heuristik aller Instanzen mit Ausnahme vonpla85900.tsp nach Dimension unter Verwendung einer logarithmi-schen Skala für die Dimension. Auffällig: die Positionen der Punkte sindfast auf ein Dreieck im oberen Bereich beschränkt. Nur drei Instanzenliegen deutlich darunter. Es handelt sich um si175.tsp, si535.tsp undsi1032.tsp.

33

Page 34: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 4. Testdurchführung

Die Heuristik von Christofides

Die von Michael Maguire und Luis Goddyn entwickelte Implementierung des Algorith-

mus’ von Edmonds, die hier zur Bestimmung eines gewichtsminimalen perfekten Mat-

chings verwendet wird, funktioniert nur bei Instanzen, bei denen die Knoten in der

euklidischen Ebene liegen.

Dem gegenüber gestellt wird die Implementierung eines Verfahrens von Wattenhofer

und Wattenhofer zur Bestimmung einer Näherungslösung eines gewichtsminimalen per-

fekten Matchings.

40 244 448 652 856 10601,0

1,1

1,2

1,3

1,4

1,5Christo�des (approx.)

Christo�des (exakt)

44 94 144 194 2441,0

1,1

1,2

1,3

244 346 448 550 652 754 856 958 10601,0

1,1

1,2

1,3

Näherungslösung (Wattenhofer)

Exakte Lösung (Edmonds)

Dimension

Perf

orm

anz

Abbildung 4.9: Die Performanzen der Instanzen mit euklidischer Knotenmenge bei Ver-wendung der Heuristik von Christofides. Jedes Kästchen steht für eineTestinstanz.

Abbildung 4.9 zeigt die Ergebnisse der beiden Implementierungen im Vergleich. Bei Ver-

wendung des exakten gewichtsminimalen perfekten Matchings wurde im Mittel eine

Performanz von 1,1053 und bei Verwendung des approximierten1 Matchings eine Per-

formanz von 1,1659 erreicht.

In nur einem einzigen Fall (pr144.tsp) führte die Verwendung eines approximierten

Matchings zu einer insgesamt kürzeren Rundreise als bei Verwendung des exakten Mat-

chings. Dort konnte aus einer längeren Eulertour zufällig eine günstigere Lösung ermit-

telt werden.

1Dies gilt bei Wattenhofer nur für die Menge der in Abbildung 4.9 dargestellten euklidischen Instanzen.Tabelle 4.3 zeigt die Ergebnisse für alle gültigen Testinstanzen einschließlich der nicht-euklidischen.

34

Page 35: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

4.2. Laufzeitanalyse und Testergebnisse

Allgemein sorgt die Verwendung einer Näherungslösung für das gesuchte gewichtsmini-

male perfekte Matching dafür, dass für die Heuristik von Christofides eine Güte von 1,5

nicht mehr garantiert werden kann.

Die Messergebnisse über alle Testinstanzen, das sind alle euklidischen sowie solche mit

expliziten Entfernungsangaben, zeigt jedoch, dass selbst für die Näherungslösung nie-

mals eine Performanz schlechter als 1,3 ermittelt wurde. Wenn 1,3 auch keine echte

obere Schranke darstellt, so zeigt dies doch zumindest, dass es schon speziell konstru-

ierter Instanzen bedarf um möglichst schlechte Ergebnisse zu erzielen.

MST-Heuristik Christofides Christofides(exakt) (approx.)

Schlechteste Performanz: 1,5166 1,1760 1,2704Beste Performanz: 1,0380 1,0318 1,0160Arithmetisches Mittel: 1,3441 1,1053 1,1630Median: 1,3596 1,1074 1,1698Varianz: 0,0082 0,0009 0,0022Standardabweichung: 0,0908 0,0298 0,0474Anzahl der Testinstanzen: 109 51 94

Tabelle 4.3: Zusammenfassung der Messergebnisse zu MST-Heuristik und Heuristik vonChristofides

Laufzeiten der Verfahren

Bei der Analyse der Laufzeiten muss zwischen den Formaten der Instanzen differenziert

werden. Instanzen, bei denen die Distanzen explizit gegeben sind, werden sich – bei

gleicher Dimension – immer schneller lösen lassen als Instanzen mit euklidischen oder

geografischen Koordinaten.

Auch existiert keine Instanz mit explizit gegebenen Distanzen mit größerer Dimension

als 1.032 und keine geografische Instanz mit größerer Dimension als 666.

Bei solch kleinen Dimensionen liegen die Messergebnisse noch recht nah beieinander. Le-

diglich die Heuristik von Christofides bei Verwendung der Implementierung von Magui-

re/Goddyn zur Bestimmung eines gewichtsminimalen perfekten Matchings zeigt Lauf-

zeiten, die deutlich höher liegen. Auch wenn dieses Verfahren mit O(n4) die erwar-

tungsgemäß höchsten Laufzeiten hat, so ist dieser Umstand wohl eher darin zu sehen,

35

Page 36: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 4. Testdurchführung

dass die Implementierung primär für ein Applet geschrieben wurde um Matchings zu

visualisieren für kleine Mengen bis ca. 50 Knoten.

0 200 400 600 800 10000

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

0,55

0,6

0,65

0,7

0,75

0,8

0,85

Christof. (approx., eu-klidisch)

MST (euklidisch)

Nearest Neighbor (eu-klidisch)

Random Insertion (eu-klidisch)

MST (Geo)

Nearest Neighbor (Geo)

Random Insertion (Geo)

Christof. (approx., ex-plizit)

MST (explizit)

Nearest Neighbor (ex-plizit)

Random Insertion (ex-plizit)

Dimension

LaufzeitinSekunden

Abbildung 4.10: Laufzeiten für kleine Instanzen bis 1.000 Knoten. Es zeichnet sich be-reits ab, dass Random Insertion und Nearest Neighbor sowie MST-Heuristik und Christofides (approx.) stets recht nah beieinander lie-gen. Hier nicht dargestellt: Christofides mit exaktem gewichtsminima-lem Matching.

Abbildung 4.10 stellt die Laufzeiten der Testinstanzen bis 1.000 und Abbildung 4.11

bis 7.500 Knoten grafisch dar. Der leichte Einschnitt in der Laufzeit in Abbildung 4.11

bei ca. n = 4.500 Knoten für die MST-Heuristik kommt daher, dass bei der Instanz

fnl4461.tsp die Koordinaten in ganzen Zahlen und bei der Instanz fl3795.tsp in ge-

brochenen Zahlen in Exponentialschreibweise vorliegen, was höheren Rechenaufwand

bedeutet.

Dort ist ebenfalls der Verlauf der Laufzeiten für Brute Force bei Verwendung von In-

stanzen mit explizit angegebenen Distanzen dargestellt. Selbst in diesem Fall beträgt die

Laufzeit bei nur 13 Städten bereits rund 20 Minuten.

Die Laufzeiten der nicht in den Diagrammen dargestellten Instanzen sind in Tabelle 4.4

36

Page 37: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

4.2. Laufzeitanalyse und Testergebnisse

aufgelistet.

0 200 400 600 800 10000

0,05

0,1

0,15

0,2

0,25

0,3

0,35

0,4

0,45

0,5

0,55

0,6

0,65

0,7

0,75

0,8

0,85

Christof. (approx., eu-klidisch)

MST (euklidisch)

Nearest Neighbor (eu-klidisch)

Random Insertion (eu-klidisch)

MST (Geo)

Nearest Neighbor (Geo)

Random Insertion (Geo)

Christof. (approx., ex-plizit)

MST (explizit)

Nearest Neighbor (ex-plizit)

Random Insertion (ex-plizit)

DimensionLaufzeitinSekunden

0 1000 2000 3000 4000 5000 6000 7000 80000

10

20

30

40

50

60

70

80

90

100

110

120

130

140

150

160

170

Christofides (exakt)

Christofides (approx.)

MST-Heuristik

Nearest Neighbor

Random Insertion

Brute Force (explizit)

Dimension

LaufzeitinSekunden

Abbildung 4.11: Laufzeiten für euklidische Instanzen. Christofides’ Heuristik steigtschon früh dramatisch an, was nicht zuletzt an der Implementierungvon Edmonds’ Algorithmus liegt.

Dimension Christofides MST-Heuristik Nearest Neighbor Random Insertion(approx.)

11.849 3 min 31 s 3 min 25 s 24 s 27 s13.509 8 min 7 min 30 s 31 s 36 s14.051 3 min 39 s 3 min 8 s 33 s 38 s15.112 8 min 30 s 7 min 40 s 39 s 44 s18.512 12 min 27 s 11 min 15 s 57 s 1 min 5 s33.810 70 min 27 s 63 min 7 s 3 min 55 s 4 min 42 s85.900 unbestimmt unbestimmt 24 min 34 s 31 min 48 s

Tabelle 4.4: Laufzeiten für große Instanzen

Genetischer Algorithmus

Auf 4 Beispielinstanzen unterschiedlicher Größe soll der genetische Algorithmus ange-

wandt werden. Mit einer Populationsgröße von 10 sollen 100 Generationen erzeugt wer-

37

Page 38: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 4. Testdurchführung

den. Abbildung 4.12 zeigt den Verlauf.

0 10 20 30 40 50 60 70 80 90 1001

3

5

7

9

11

13

15

17 u574.tsp

ulysses22.tsp

gr137.tsp

fri26.tsp

Performan

z

Generation

0 10 20 30 40 50 60 70 80 90 1001

3

5

7

9

11

13

15

17 u574.tsp

ulysses22.tsp

gr137.tsp

fri26.tsp

Performan

z

Generation

Abbildung 4.12: Verlauf des genetischen Algorithmus’. Jedes Kästchen steht für eineGeneration in der eine Verbesserung gegenüber der Elterngenerationeingetreten ist. Die Performanz steht für das kräftigste Individuum derjeweiligen Generation.

Man erkennt, dass für kleine Instanzen durchaus schnell gute Ergebnisse erzielt werden

konnten. Die beiden größeren Instanzen hingegen lieferten nicht so gute Ergebnisse.

Hinzu kommt, dass die Laufzeiten hier für 100 Generationen bereits schon recht hoch

sind wie der Vergleich mit der Laufzeit der MST-Heuristik zeigt.

Instanz Genetischer Algorithmus MST-Heuristikulysses22.tsp 66 ms 370 µs

fri26.tsp 200 ms 175 µsgr137.tsp 1 s 13 ms

u574 5 s 200 ms

Tabelle 4.5: Laufzeiten für 100 Generationen des genetischen Algorithmus’

Abbildung 4.13 zeigt warum das Verfahren nicht skaliert. Bei einer Steigerung der An-

zahl der Generationen auf 2.000 konnte die Performanz für die Instanz u574.tsp nur

38

Page 39: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

4.2. Laufzeitanalyse und Testergebnisse

auf 3,5 gesenkt werden gegenüber dem ersten Versuch, bei dem in 100 Generationen

eine Performanz von 11,6 erreicht wurde. Die Kurve konvergiert jedoch immer langsa-

mer, dieser zweite Versuch dauerte bereits 111 Sekunden und in nur 972 Generationen

konnte eine Verbesserung gegenüber der Elterngeneration erreicht werden; beim ersten

Versuch trat noch in jeder Generation eine Besserung ein.

0 10 20 30 40 50 60 70 80 90 1001

3

5

7

9

11

13

15

17 u574.tsp

ulysses22.tsp

gr137.tsp

fri26.tsp

Performan

zGeneration

0 400 800 1200 1600 20001

3

5

7

9

11

13

15

17

Performan

z

Generation

Abbildung 4.13: Wiederholung des genetischen Algorithmus für u574.tsp mit diesmal2.000 Generationen

Was es sonst noch gibt

Mit Concorde ([4]) steht alternativ eine Software zur Verfügung, die den Ansatz der

linearen Optimierung verfolgt um das Problem des Handlungsreisenden zu lösen.

Dabei handelt es sich tatsächlich nicht mehr um Näherungslösungen, sondern die kür-

zestmögliche Rundreise durch die jeweilige Instanz. Concorde ist auch das Programm,

mit dem die optimalen Lösungen zu 106 der 110 Testinstanzen von TSPLIB ermittelt

werden konnten.

39

Page 40: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 4. Testdurchführung

Die Brute Force-Methode ist mit ihrer exponentiell anwachsenden Laufzeit ungeeignet

um exakte Lösungen zu bestimmen; Concorde schafft dies deutlich schneller.

Die Laufzeit von Concorde für einige Testinstanzen ist in Tabelle 4.6 und Abbildung 4.14

dargestellt.

Instanz Concorde ChristofideskroA100.tsp 1 0,7pr144.tsp 2 0,5a280.tsp 2,5 1,8

lin318.tsp 7,4 2,4rd400.tsp 53 7,6fl417.tsp 34 6,6d493.tsp 251 19,9u574.tsp 28 15,3

Instanz Concorde Christofidesrat575.tsp 163 24p654.tsp 13 31d657.tsp 150 28u724.tsp 220 34pr1002 44 132

u1060.tsp 616 164nrw1379 502pr2392 63

Tabelle 4.6: Laufzeit von Concorde einiger ausgewählter Instanzen und Vergleichmit Christofides. Alle Angaben in Sekunden. Mit der Maguire/Goddyn-Implementierung von Edmonds’ Algorithmus ließen sich keine Matchingsbestimmen für größere Instanzen als u1060.tsp.

0 800 1600 24000

34

68

102

136

170Christo�des

Concorde

Dimension

Lauf

zeit

in S

ekun

den

Abbildung 4.14: Grafische Darstellung der Ergebnisse aus Tabelle 4.6. Nicht dargestelltsind die Ergebnisse, deren Laufzeit 170 Sekunden übersteigt.

Die Laufzeiten bei Concorde schwanken mitunter sehr stark. Während beispielsweise

nrw1379.tsp sehr lange braucht, kann die deutlich größere Instanz pr2392.tsp viel

40

Page 41: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

4.2. Laufzeitanalyse und Testergebnisse

schneller abgeschlossen werden. In Abbildung 4.15 wird ersichtlich warum.

500 6000 115001000

8500

16000

Abbildung 4.15: Die 2.392 Knoten aus pr2392.tsp. Das Vorhandensein speziellerStrukturen und lokaler Gruppen begünstigt das Ausnützen linearerOptimierung. Bei nrw1379.tsp sind die Städte/Knoten dagegen gleich-mäßig verteilt.

41

Page 42: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 4. Testdurchführung

Abbildung 4.16: Concorde mit der optimalen Lösung zu p654.tsp

42

Page 43: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

5 Bewertung der Ergebnisse

Auch mit vorliegenden Messergebnissen fällt die Bewertung noch nicht ganz leicht. Es

lassen sich aber schon einige Beobachtungen äußern.

Der gierige Ansatz der einfachen Heuristiken lieferte durchweg Ergebnisse, gegen die

die ausgefeiltere Methodik der MST-Heuristik nicht ankam. Ihren Vorteil gegenüber den

einfachen Heuristiken, nämlich die Gütegarantie, konnte die MST-Heuristik nicht aus-

spielen, weil alle Verfahren sowieso Ergebnisse erzielten, die deutlich unter den oberen

Schranken lagen. Mit nur einer einzigen Testinstanz überhaupt überschritt die MST-

Heuristik die obere Schranke von 1,5 der verbesserten Heuristik von Christofides knapp.

Die Ergebnisse der beiden Varianten der Christofides-Heuristik liegen ebenfalls derart

niedrig, dass bei Verwendung einer Näherungslösung des gewichtsminimalen perfekten

Matchings die Gefahr des Überschreitens der oberen Schranke von 1,5 praktisch nicht

gegeben ist, wenn man nicht gerade Instanzen konstruiert, die genau darauf abzielen.

Was die Ergebnisse deutlich zeigen, ist dass Nearest Neighbor das schnellste Verfahren

darstellt, Random Insertion jedoch nur unwesentlich langsamer ist; zudem kann bei

Random Insertion im Mittel mit besseren Ergebnissen gerechnet werden.

Die Ergebnisse von Random Insertion sind sogar so gut, dass sie fast gleichauf mit denen

der Christofides-Heuristik liegen, für welche im Mittel die beste Performanz ermittelt

wurde.

„Christofides’ Algorithmus ist der beste heute bekannte Approximationsalgorithmus für

MinMTSP1.“ (aus [7])

Der Satz hätte selbst dann Bestand, wenn die Messergebnisse der Testinstanzen von Ran-

dom Insertion deutlich besser wären als die von Christofides, weil es sich bei Random

Insertion nicht um einen Approximationsalgorithmus handelt. Dennoch fällt es nicht

ganz leicht das bessere der beiden Verfahren zu bestimmen.

1Mit MinMTSP ist das hier behandelte Problem MinTSP gemeint. M: metrisch, hier Voraussetzung.

43

Page 44: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Kapitel 5. Bewertung der Ergebnisse

Die Performanz aller möglichen Testinstanzen der beiden Verfahren liegt im Mittel bei

1,1053 (Christofides) und 1,1105 (Random Insertion) und damit sehr nah beieinander.

Bei Beschränkung der Instanzen auf diejenigen, auf die auch Christofides angewandt

werden konnte, ergibt sich zwar ein Mittelwert von 1,0995 für Random Insertion und

damit ein geringfügig besserer Schnitt als für Christofides; all diese Werte liegen jedoch

derart nah beieinander, dass sich nur aufgrund dessen kein vernünftiges Urteil treffen

lässt.

Die Heuristik von Christofides hat jedoch zwei entscheidende Nachteile.

1. Ein Verfahren zu implementieren, das in der Lage ist ein gewichtsminimales per-

fektes Matching zu bestimmen stellt die anspruchsvollste Aufgabe bei der Imple-

mentierung der hier vorgestellten Verfahren dar.

2. Die Heuristik von Christofides stellt die mit Abstand langsamste der hier vorge-

stellten Verfahren dar.

Punkt 2 lässt sich relativieren, wenn man berücksichtigt, dass zum einen Algorithmen

existieren, die ein gewichtsminimales perfektes Matching in Zeit O(n3) bestimmen und

zum anderen die hier verwendete Maguire/Goddyn-Implementierung nicht für so große

Mengen von Knoten, wie sie hier vorkommen, geschrieben wurde und sich nicht so ganz

nahtlos in die restliche Implementierung einbinden lässt.

Wegen dieser Problematik der unbefriedigenden Implementierung von Edmonds’ Algo-

rithmus sind die Laufzeiten von Christofides’ Heuristik, wie sie sich in Abbildung 4.11

darbieten, nur schwer zu beurteilen.

Was jedoch bleibt ist das Wissen, dass Christofides’ Heuristik, selbst bei Verwendung

eines approximierten Matchings, eine gegenüber Random Insertion erheblich längere

Laufzeit aufweist, die Performanz jedoch allenfalls gleichauf liegt und sich somit allein

mit dem einzigen Vorteil der Heuristik von Christofides gegenüber Random Insertion,

nämlich der Gütegarantie von 32 , kaum argumentieren lässt, dass der Mehraufwand bei

Implementierung und Anwendung von Christofides’ Heuristik gerechtfertigt ist.

Das letzte Verfahren, der genetische Algorithmus, enttäuscht ebenfalls bei großen In-

stanzen und ist allenfalls geeignet für kleine Instanzen, hat dort allerdings wegen seines

stochastischen Einflusses das Potential selbst die besten Lösungen der anderen Verfahren

noch zu unterbieten und sogar die optimale Lösung zu finden.

44

Page 45: Traveling Salesman Problem - THI · PDF filereise die – entsprechend den Möglichkeiten der Heuristik – so kurz wie möglich und dabei so lang wie nötig ist

Literaturverzeichnis

[1] http://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/.

[2] http://de.wikipedia.org/wiki/MST-Heuristik.

[3] http://www.math.sfu.ca/~goddyn/Courseware/Visual_Matching.html.

[4] http://www.tsp.gatech.edu/concorde.html.

[5] G. Ausiello, P. Crescenzi, G. Gambosi, V. Kann, A. Marchetti-Spaccamela, and

M. Protasi. Complexity and Approximation. Springer, 1999.

[6] William Cook and André Rohe. Computing minimum-weight perfect matchings,

August 1998.

[7] Prof. Dr. Heribert Vollmer. Skript zur Vorlesung - Komplexität von Algorithmen,

Sommersemester 2005.

[8] Stuart Russel and Peter Norvig. Künstliche Intelligenz: Ein moderner Ansatz. Pearson

Education, Inc, publishing as Prentice Hall, 2. Auflage 2004 edition, 2003.

[9] Angelika Steger. Diskrete Strukturen 1. Springer, 1. korrigierter Nachdruck 2002

edition, 2002.

[10] Mirjam Wattenhofer and Roger Wattenhofer. Fast and Simple Algorithms for

Weighted Perfect Mathing. In CTW on Graphs and Combinatorial Optimization

(CTW), Milano, Italy), 2004.

45