Eigenschaften des Algorithmus von Hierholzer

Werbung
3. Kreis- und Wegeprobleme
Eulerwege
3 Kreis- und Wegeprobleme
Charakterisierung von eulerschen Graphen
Bestimmung von eulerschen Wegen und Kreisen
Hamiltonsche Graphen
Abstände in Graphen
Berechnung kürzester Wege
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
3. Kreis- und Wegeprobleme
56
Eulerwege
Eulerweg, Eulerkreis
ein Graph.
genau einmal
Ein Weg, der jede Kante von
enthält, heißt eulerscher Weg von .
Ein Kreis, der jede Kante von genau
einmal
enthält, heißt eulerscher Kreis von .
heißt eulersch gdw. einen eulerschen Kreis
Definition 3.1. Es sei
enthält.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
57
3. Kreis- und Wegeprobleme
Eulerwege
Beispiel 3.1. Der Graph des Königsberger Brückenproblems scheint
nicht eulersch zu sein, er scheint auch keinen eulerschen Weg zu enthalten.
Das “Haus des Nikolaus” enthält einen eulerschen Weg.
c
b
d
a
e
f
g
Das “Haus des Nikolaus mit Keller” ist eulersch:
Weitere Graphen: ✎.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
58
3. Kreis- und Wegeprobleme
Eulerwege
Charakterisierung von eulerschen Graphen
Satz 3.1. [Euler 1736] Es sei
ein Graph.
hat einen eulerschen Weg gdw.
bis auf isolierte Knoten zusammenhängend ist und
die Zahl
der Knoten mit ungeradem Grad
oder
Die Existenz eines Eulerkreises ist äquivalent mit
Beweis. Tafel ✎.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
ist.
.
59
3. Kreis- und Wegeprobleme
Eulerwege
Berechnung eines Eulerweges
ein bis auf isoAlgorithmus 3.1. [Hierholzer 1873] Es sei
lierte Knoten zusammenhängender Graph, der nur Knoten mit geradem
Grad aufweist.
1. Wähle einen beliebigen Knoten
.
Wähle solange dies möglich ist Knoten
jeweils ein Weg in ist.
, so daß ! Unter den gegebenen Voraussetzungen entsteht so automatisch ein
Kreis .
"
"
2. Prüfe, ob ein eulerscher Kreis ist. Wenn ja, dann STOP, ansonsten
gehe zu 3.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
3. Setze "$#&% "
60
3. Kreis- und Wegeprobleme
.
Eulerwege
"#
Wähle einen in
enthaltenen Knoten
enthaltenen Kante inzident ist.
Konstruiere wie unter 1. einen Kreis
enthält.
'
"#
" #)#
"
'
, der mit einer nicht in
" #(# , der keine Kanten von " #
Füge
und
wie folgt zu zusammen: Durchlaufe
, durchlaufe dann
und anschließend den Rest von
" #(#
"#
" # von " #.
bis
Gehe zu 2.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
61
3. Kreis- und Wegeprobleme
Eulerwege
Bemerkung 3.1. Übungsaufgabe: Algorithmus von Hierholzer in
Pseudo-Code.
Beispiel 3.2. Wir demonstrieren den Algorithmus von Hierholzer an
dem folgenden Graphen:
b
c
d
a
e
g
h
f
Tafel ✎.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
3. Kreis- und Wegeprobleme
62
Eulerwege
Eigenschaften des Algorithmus von Hierholzer
Satz 3.2. Algorithmus 3.1 ist korrekt, d.h. bei erfüllten Voraussetzungen wird ein eulerscher Kreis konstruiert.
Beweis. Tafel ✎.
Satz 3.3. Die Zeitkomplexität von Algorithmus 3.1 beträgt
Beweis. Siehe Übungen.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
* ,+-+. .
63
3. Kreis- und Wegeprobleme
Eulerwege
Anwendung von Eulerwegen
/
Dominospiel: Gegeben sind eine Menge von Spielsteinen, die auf
jeder Seite mit einem Symbol markiert sind.
021 %4365 kann man sowohl in dieser Form als auch als
Einen Spielstein
verwenden.
0.37%81$5
Man darf zwei Spielsteine aneinander legen, wenn die sich berührenden Hälften das gleiche Symbol aufweisen.
Kann man die Steine der Menge
zusammenlegen?
/
zu einer ununterbrochenen Kette
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
64
3. Kreis- und Wegeprobleme
Eulerwege
Beispiel 3.3. Gegeben ist die folgende Menge an Spielsteinen:
20 1 4% 365 20 1 %:9;5 .0 3<%=>5 ?0 =@%:9A5 021 %81B5
0C9 %:;9 5 C0 3D%=E5 0F1 %=E5 .0 37%:9A5
Zugehöriger Graph:
B
C
Jede Kante entspricht einem
Spielstein.
Eulerweg entspricht einer
ununterbrochenen Dominokette.
A
D
Anwendungen in der Praxis: Berechnung von Prozessketten mit
möglichst wenigen Unterbrechungen.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
65
3. Kreis- und Wegeprobleme
Hamiltonsche Graphen
Hamiltonsche Graphen
ein Graph.
Ein Weg, der jeden Knoten von genau einmal enthält, heißt hamil-
Definition 3.2. Es sei
tonscher Weg.
Ein Kreis, der jeden Knoten von
tonscher Kreis.
heißt hamiltonsch gdw.
genau einmal enthält, heißt hamil-
einen hamiltonschen Kreis enthält.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
3. Kreis- und Wegeprobleme
66
Hamiltonsche Graphen
Beispiel 3.4.
Die Bezeichnung “hamiltonsch” geht auf
Sir William Rowan Hamilton (1805 –
1865) zurück, der 1859 das Spiel “around
the world” erfand.
Die Punkte eines Dodekaeders stellten
Städte dar.
Die Aufgabe des Spiels bestand darin,
entlang der Kanten des Dodekaeders eine Rundreise zu unternehmen, bei der
man jede Stadt genau einmal besucht.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
67
3. Kreis- und Wegeprobleme
Hamiltonsche Graphen
Charakterisierung von hamiltonschen Graphen
Satz 3.4. Es sei
dann ist
ein Graph. Gilt:
G H %IKJL NMPORQ hamiltonsch.
Beweis. Tafel ✎.
Bemerkung 3.2. Das Entscheidungsproblem, ob ein Gaph
-vollständig.
tonsch ist (HC), ist
SUT
hamil-
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
68
3. Kreis- und Wegeprobleme
Hamiltonsche Graphen
Traveling Salesman Problem
XY% <Z\[ ]2^
Definition 3.3. Gegeben sei ein vollständiger Graph
einer Kostenfunktion
auf den Kanten.
VW
mit
Die Enscheidungsvariante des Traveling Salesman Problem (TSP) lauin , für den die Summe der
tet: Existiert ein hamiltonscher Kreis
ist.
Kantengewichte
X " N_a`
"
Bemerkung 3.3. Die Entscheidungsvariante des TSP ist
vollständig.
Dies kann durch
bc=edgf&/ih
SaT
-
bewiesen werden.
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
69
3. Kreis- und Wegeprobleme
Hamiltonsche Graphen
TSP als Optimierungsproblem
Die Optimierungsvariante des TSP lautet: Finde einen hamiltonschen Kreis mit minimalem Gewicht.
SUT
O
Durch die
-Vollständigkeit des zugehörigen Entscheidungsproblems kann es optimal nur für “kleine” gelöst werden.
O
Für “große” müssen Heuristiken zur Berechnung einer möglichst
guten Lösung angewendet werden.
Theoretisch interessant sind Heuristiken mit Gütegarantie (siehe folgendes Kapitel).
Einführung in die Graphentheorie — FH Bonn-Rhein-Sieg, WS 01/02
70
Herunterladen