Graphentheorie - Werner Knoben

Werbung
Graphentheorie
1 Aus der Kursbeschreibung
Vor nunmehr 270 Jahren stand das so genannte Königsberger Brückenproblem, das dem berühmten Mathematiker Leonhard Euler (1707–1783) von dem damaligen Bürgermeister der Stadt Danzig C.L.G. Ehler vorgelegt wurde, an der Wiege der Graphentheorie. Über den Fluss Pregel führten zu jener Zeit sieben Brücken und
Ehler fragte, ob es einen Rundgang durch Königsberg geben könne, der jeweils genau einmal über jede der
Brücken führt. Euler widmete dieser Frage eine dreizehnseitige Abhandlung und stellte dabei die Königsberger Brücken und Wege mithilfe eines geometrischen Gebildes dar, das aus »Ecken« und »Kanten« bestand
(heute spricht man von einem Graphen) und untersuchte, ob es einen geschlossenen Weg durch diesen Graphen gibt, der jede Kante nur einmal enthält. Da es, wie Euler erkannte, nur dann einen solchen Rundweg in
diesem Graphen geben kann, wenn der »Grad« der Ecken (also die Anzahl seiner unmittelbaren Nachbarn)
eine gerade Zahl ist, war gezeigt, dass ein solcher Rundgang durch Königsberg mit den gewünschten Vorgaben nicht existieren konnte, da jede Ecke von ungeradem Grad war. Verwandt mit diesem Problem ist die
Frage, warum zwar das »Haus des Nikolaus« ohne abzusetzen gezeichnet werden kann, jedoch nicht das
»Doppelhaus des Nikolaus«. Ein weiteres Problem, das die Entwicklung der Graphentheorie wesentlich beeinflusst hat, ist das »Vierfarben-Problem«, bei dem die Frage untersucht werden soll, ob sich jede beliebige
Landkarte so mit vier Farben einfärben lässt, dass keine zwei Länder, die eine Grenze gemeinsam haben,
gleichfarbig sind. Diese Frage ist erst zum Ende des letzten Jahrhunderts geklärt worden. Dass die Graphentheorie aber nicht zum Bereich der reinen Unterhaltungsmathematik gerechnet werden kann, zeigt das große
Interesse, das ihr in den Anwendungsbereichen der Mathematik zu Teil wird. Bereits 1847 nutzte G.R. Kirchhoff (1824–1887) grundlegende Resultate der Graphentheorie in seiner Arbeit über elektrische Netzwerke.
A. Cayley (1821–1895) stellte mit ihrer Hilfe in der zweiten Hälfte des 19. Jahrhunderts Untersuchungen zu
Anzahlen chemischer Verbindungen an. In der zweiten Hälfte des 20. Jahrhunderts nahm die Graphentheorie
durch das Bestreben, Probleme in diskreter Weise zu modellieren, um sie einer Bearbeitung durch Computer
zugänglich zu machen, einen rasanten Aufschwung. Die Informatik und die diskrete Optimierung gehören heute zu den wichtigsten Anwendungsbereichen der Graphentheorie. Aber auch die Technik und die Wirtschaftsund Sozialwissenschaften nutzen zur Problembeschreibung und -lösung graphentheoretische Methoden. Es
verwundert daher nicht, dass die Graphentheorie zu jenen Gebieten der Mathematik zählt, die im Zentrum der
aktuellen Forschung stehen und die sich heute am schnellsten weiterentwickeln.
7
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
Im Kurs wurde aus der Stoffmenge, welche die Graphentheorie umfasst, natürlich ausgewählt. Ebenso konnten nicht alle Zweige dieser Theorie berücksichtigt werden. Es wurde versucht, aus der Angebotsfülle einige
interessante Fragestellungen auszuwählen, um an ihnen exemplarisch die Arbeitsweise der Graphentheorie
und der Mathematik überhaupt deutlich werden zu lassen. Begriffs- und Modellbildung, die aus Anwendungen
geschöpft werden, wurden dabei besonders berücksichtigt. Der Kurs bestand aus drei Teilen, die zeitlich mitund ineinander verwoben waren. Im ersten Teil wurden einige nötige Grundlagen gelegt. Der zweite Teil untersuchte in Form kleiner Projekte Einzelfragen und Anwendungen der Graphentheorie in »theoretischer« und
»praktischer« Form. Diese Projekte, die kleine Forschungsvorhaben darstellten, verlangten Kreativität, Spaß
an theoretischen und praktischen »Knobelaufgaben«, die Fähigkeit sich selbstständig mit neuen und ungewohnten Fragestellungen auseinander zu setzen, Geduld und die Bereitschaft, in kleinen Teams zu arbeiten.
Im dritten Teil wurden die Ergebnisse der Projektarbeit in Form von Vorträgen dem gesamten Kurs vorgestellt.
Die Darstellung der bearbeiteten Projekte bildet den Inhalt der folgenden Dokumentation.
2 Einleitung
(Carolin Sellmann, Charlotte Mielke)
Definition 1 Ein (endlicher) Graph ist ein Tupel G = (V, E), wobei V eine endliche nicht leere Menge und
E eine Teilmenge der zweielementigen Teilmengen von V ist. Die Elemente von V heißen Knoten (engl.:
vertices), die Elemente von E Kanten (engl.: edges) von G.
Beispiel: Ein Beispiel für einen Graphen ist das Haus des Nikolaus (Abbildung 1.1).
Es besteht aus acht Kanten und fünf Knoten {A, B, C, D, E}. Der Schnittpunkt in
der Mitte zählt nicht als Knoten.
Definition 2 Ein Knoten v1 heißt Nachbar eines Knoten v2 genau dann, wenn v1
durch eine Kante mit v2 verbunden ist.
Beispiel: Im Haus des Nikolaus sind beispielsweise die Knoten A und B oder die
Knoten D und B Nachbarn.
Definition 3 Der Grad d(v) eines Knoten v ∈ V ist die Anzahl seiner Nachbarn.
Abb. 1.1: Das ist das Haus
des Nikolaus.
Beispiel: Der Knoten A im Haus des Nikolaus hat den Grad 3, also d(A) = 3.
Definition 4 (1) Ein Weg W (engl.: walk) ist eine Folge von (nicht notwendig verschiedenen) Knoten, die jeweils durch Kanten verbunden sind.
(2) Ein Weg, in dem jeder Knoten nur einmal vorkommt, heißt Pfad P (engl.: path).
(3) Ein Weg heißt Zykel, falls der erste Knoten gleich dem letzten ist. Ein kreuzungsfreier Zykel (d.h.: die Knoten wiederholen sich nicht) heißt Kreis.
Beispiele:
(1) Die Knotenfolge (C, D, E, G, H, I, H, G, F ) ist ein Weg.
(2) Die Knotenfolge (A, B, C, D, E, G, H, I) ist ein Weg und ein Pfad.
(3) Die Knotenfolge (C, D, E, G, F, C) ist ein Weg, ein Pfad und ein Kreis.
8
Abb. 1.2: Wege, Pfade und
Kreise
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
Kurs 7.1: Graphentheorie
3 Eulersche Graphen
(Carolin Sellmann, Charlotte Mielke)
3.1 Definitionen
Definition 5 Ein Multigraph ist ein Graph, in dem mehrere Kanten zwischen zwei Knoten zugelassen sind.
Definition 6 Ein Pseudograph ist ein Multigraph , wobei hier zusätzlich Schlingen zugelassen sind.
Definition 7 Ein Graph G heißt zusammenhängend, wenn zwischen je zwei Knoten ein Weg existiert.
3.2 Königsberger Brückenproblem
Das erste und bekannteste Problem der Graphentheorie ist das Königsberger Brückenproblem. Durch Königsberg fließt die Pregel, welche die Stadt in zwei Inseln und zwei Stadtgebiete teilt. Diese sind über sieben
Brücken miteinander verbunden, wie man der Abbildung 1.3 entnehmen kann. Leonhard Euler (1707-1783)
sollte einen Rundweg durch die Stadt Königsberg finden. Dieser Rundgang sollte an einem Punkt starten,
über jede der sieben Brücken genau einmal führen und schließlich zum Startpunkt zurückführen. Im Jahre
1736 formulierte Leonard Euler den Beweis für die Unmöglichkeit eines solchen Rundganges.
Das Königsberger Brückenproblem lässt sich wie folgt mathematisieren: Die vier Stadtteile werden auf die vier Knoten A, B, C und D
zusammengezogen und sind jeweils paarweise über Kanten verbunden, welche sich nicht schneiden. Die Kanten repräsentieren die sieben Brücken in Königsberg.
In der Graphentheorie bezeichnet man einen geschlossenen Kantenzug, der jede Kante von G genau einmal enthält, als Eulerschen
Rundweg. Einen Graphen, der einen Eulerschen Rundweg enthält, Abb. 1.3: Das Königsberger
nennt man auch Eulerschen Graphen. Das Königsberger Brücken- Brückenproblem
problem zu lösen, bedeutet also, einen Eulerschen Rundweg zu finden. Dazu beweisen wir den folgenden Satz:
9
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
Satz 1 Wenn ein Graph G = (V, E) einen Eulerschen Rundweg enthält, dann ist G zusammenhängend und
jeder Knoten von G hat einen geraden Grad.
Beweis: Gegeben sei ein Eulerscher Graph G, der einen Eulerschen Rundweg Z enthält. Da Eulersche Rundwege geschlossene Kantenzüge sind, also Start- und Endpunkt übereinstimmen, muss G zusammenhängend
sein.
Wir stellen uns vor, dass man nun diesem Kantenzug folgt, so dass jeder Knoten über eine Kante angelaufen
und über eine andere Kante wieder verlassen wird. Jeder Knoten wird so h-mal während eines Rundgangs
angelaufen und wieder verlassen. Daraus folgt, dass der Grad jedes Knoten gerade sein muss.
q.e.d.
Analog gilt dieser Beweis auch für Pseudographen. Denn bei einer Schlinge erhöht sich der Grad eines Knoten
um zwei, weil die Schlinge am gleichen Knoten startet und endet.
Zum Königsberger Brückenproblem: Wie man nun leicht der Abbildung 1.3 entnehmen kann, hat jeder Knoten
des zum Königsberger Brückenproblems gehörenden Graphen einen ungeraden Grad. Zum Beispiel ist der
Grad des Knoten A gleich drei. Ein Eulerscher Rundweg ist somit nicht möglich.
3.3 Satz von Hierholzer
Lemma 1 Hat jeder Knoten eines Graphen G = (V, E) geraden Grad, so liegt jeder Knoten auf einem Rundweg in G.
Beweis: Angenommen, a ist ein Knoten in G. Wir beginnen nun einen Rundgang. Jeder Knoten b, den wir
erreichen, hat entweder noch eine Kante, die noch nicht durchlaufen wurde, denn der Eckengrad ist gerade,
oder keine unbenutzte Kante. Im letzten Fall muss b die Ausgangsecke sein, da dort der Weg begonnen wurde.
Damit ist der Rundweg gefunden.
q.e.d.
Satz 2 Ist ein Graph G = (V, E) zusammenhängend und der Grad jedes Knotens gerade, dann enthält G
einen Eulerschen Rundweg.
Beweis: Sei G ein zusammenhängender Graph, dessen Knoten alle von geradem Grad sind. C sei der längste
Rundweg in G. Wenn C = G, ist C ein Eulerscher Rundweg, da C jeden Knoten von G enthält und der Satz ist
bewiesen.
Enthält C nicht jeden Knoten von G, entfernen wir die Kanten von C aus G und definieren: G − C =: H
Der Grad aller Knoten von H ist gerade; denn der Grad aller Knoten in C (ohne H) ist gerade und wir haben
eine gerade Anzahl von Kanten abgezogen. Da G zusammenhängend ist, gibt es mindestens einen Knoten a,
der sowohl in C als auch in H liegt. Aus dem zuvor gezeigten Lemma folgt, dass a auf einem Rundweg D in
H liegt.
Nun erweitern wir C, indem wir den Rundweg D an C anhängen. Der so entstandene Rundweg ist offensichtlich
länger als C. Das ist ein Widerspruch, da wir angenommen hatten, C sei der längste Rundweg.
q.e.d.
3.4 Eulerscher Pfad
Definition 8 Sei G = (V, E) ein Pseudograph. Ein Eulerscher Pfad in G ist ein Kantenzug, der jede Kante und
jede Ecke enthält. Dabei darf jede Kante nur genau einmal vorkommen.
Satz 3 Ein Pseudograph enthält genau dann einen Eulerschen Pfad, wenn G zusammenhängend ist und
genau zwei Knoten ungeraden Grad haben.
Beweis: ⇒: G enthalte einen Eulerschen Pfad T . Aus der Definition folgt, dass G zusammenhängend ist. Nun
beginne man das Durchlaufen bei einer Ecke a und beende es bei einer Ecke b. Daraufhin füge man eine
Kante e von a nach b hinzu. Dann ist T + e ein Eulerscher Rundweg in dem Pseudographen G + e, und nach
dem Satz von Euler hat jede Ecke von G + e einen geraden Grad. Wenn man e nun wieder entfernt, sind die
einzigen Knoten, die nun von ungeradem Grad sind, die Knoten a und b.
⇐: Nun nehme man an, dass G zusammenhängend ist und genau zwei Ecken a und b mit ungeradem Grad
hat. Wie zuvor füge man eine Kante e von a nach b hinzu. Dann ist G + e zusammenhängend und jede Ecke
hat einen geraden Grad. Nach dem Satz von Hierholzer enthält G + e einen Eulerschen Rundgang C. C − e ist
ein Eulerscher Pfad in G.
q.e.d.
10
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
3.5 Aufteilen von Graphen
Der Graph G in Abbildung 1.4 enthält einen Eulerschen Rundweg, da alle Knoten
vom Grad vier, also von geradem Grad sind. Dass sich Graphen, deren Knoten
alle vom Grad vier sind, in zwei Teilgraphen einteilen lassen, die ebenfalls einen
Eulerschen Rundweg enthalten, ist der Inhalt des folgenden Satzes.
Satz 4 Wenn alle Knoten eines Graphen G vom Grad vier sind, existiert eine Aufteilung in zwei Teilgraphen, deren Knoten alle vom Grad zwei sind.
Beweis: G sei ein Graph, dessen Knoten vom Grad vier sind. Wir setzen voraus,
dass G zusammenhängend ist; ist G nicht zusammenhängend, verläuft der Beweis
für die zusammenhängenden Teilgraphen von G analog.
Abb. 1.4: Graph G
Da alle Knoten von G von geradem Grad sind, existiert ein Eulerscher Rundweg C in G. Die Länge, also die
Anzahl der Kanten des Rundwegs, sei q. Die Anzahl der Ecken des Graphen sei p. Dann ist
q=
4p
= 2p,
2
denn wir zählen zuerst die Kanten, die von jedem Knoten ausgehen und teilen diese Anzahl anschließend
durch zwei, weil wir schließlich jede Kante doppelt gezählt haben. Man sieht so, dass die Anzahl der Kanten
in C gerade ist. Wir färben nun die Kanten abwechselnd rot und blau, so dass an jeden Knoten zwei rote und
zwei blaue Kanten grenzen. Man überlegt sich, dass die roten Kanten ebenso wie die blauen einen Eulerschen
Rundweg bilden. Jeder Knoten hat in Bezug auf die neuen Rundwege den Grad zwei.
q.e.d.
4 Die platonischen Körper
(Sophie Knell, Marie Livrozet)
4.1 Die Eulersche Polyederformel
Die Eulersche Polyederformel besagt, dass die Anzahl der Ecken, |V |, abzüglich der Anzahl der Kanten, |E|,
plus die Anzahl der Flächen, |F |, eines Körpers immer gleich 2 ist: |V | − |E| + |F | = 2. Sie gilt für alle Körper,
die durch Polygone begrenzt werden. Für Polyeder, die als ebene Graphen dargestellt werden können, kann
die Formel auf die zugehörigen planaren, zusammenhängenden Graphen G = (V, E) angewendet werden.
Dabei ist die Menge der Flächen mit F bezeichnet, inklusive der Fläche um den Graphen herum.
Es gibt mehrere Möglichkeiten, die Eulersche Polyederformel zu beweisen, eine davon benutzt die Methode
der vollständigen Induktion. Induktionsgegenstand ist die Anzahl n der Ecken des Polyeders. Zunächst wird
die Formel für einen Graphen bewiesen, der nur aus einem Punkt und beliebig vielen Kanten besteht, die
zwangsläufig Schlaufen bilden. Dann wird bewiesen, dass die Formel weiterhin gilt, wenn man immer einen
Punkt mehr hinzufügt.
Induktionsanfang: Beweis für n = 1.
Im Falle n = 1 sind alle vorhandenen Flächen, außer der umgebenden, durch Schlaufen begrenzt.
|V | = 1 ⇒ |E| + 1 = |F | und |V | − |E| + |F | = 1 − |E| + (1 + |E|) = 2.
Induktionsannahme: Die Eulersche Polyederformel gilt für die Anzahl der Ecken n.
Induktionsschluss: Jede Ecke, die hinzukommt, muss durch eine Kante mit dem vorhandenen Graphen verbunden werden, die dem Graphen keine neue Fläche hinzufügt. Jede zusätzliche Kante begrenzt eine neue
Fläche. Seien E ∗ , F ∗ die Menge der Kanten im Graphen bzw. der Flächen mit n + 1 Ecken. e sei die Anzahl
der zusätzlichen Kanten und somit auch der Flächen, die hinzukommen. Also gilt für n + 1:
n + 1 − |E ∗ | + |F ∗ | = n + 1 − (|E| + e) + (|F | + e − 1) = n − |E| + |F | = 2.
q.e.d.
11
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
4.2 Die fünf Platonischen Körper
Es gibt genau fünf platonische Körper: das Tetraeder, den Würfel (Hexaeder), das Oktaeder, das Dodekaeder
und das Ikosaeder. Diese sind durch folgende Eigenschaften bestimmt: Die Seitenflächen sind zueinander
kongruent, an allen Ecken sind gleich viele Kanten und alle Kanten sind gleich lang.
Alle Körper können als Graphen dargestellt werden, indem man eine Seitenfläche auseinanderzieht und den
Körper so in die Ebene abbildet. Dazu nimmt man die Ecken der Körper als Ecken der Graphen. Da es bei
Graphen unerheblich ist, welche Form die Kanten haben und nur wichtig ist, dass die Ecken verbunden sind,
sind die Kanten der Darstellung nicht alle gleich lang, obwohl die Flächen des Körpers identisch sind. Wenn es
nur Kanten auf der Oberfläche des Körpers gibt und keine Diagonalen innerhalb, überschneiden sich außerdem
keine Kanten des Graphen.
Abb. 1.5: Die platonischen Körper und ihre Graphen
Somit sind die Graphen der platonischen Körper eben und alle Flächen werden von gleich vielen Kanten
begrenzt. Zusätzlich haben alle Ecken den gleichen Grad ρ und da es sich um dreidimensionale Figuren
handelt, muss dieser mindestens drei sein. Graphen G, die dies erfüllen, nennt man regulär. Ist auch der duale
Graph G∗ regulär, also der Grad an jeder Ecke gleich, wird G als vollständig regulär bezeichnet. Im dualen
Graphen wird jeder Fläche von G eine Ecke in G∗ zugeordnet. Wenn also der duale Graph G∗ regulär ist, wird
jede Fläche in G von der gleichen Anzahl Kanten ρ∗ begrenzt. Es existieren nur fünf Graphen, die vollständig
regulär sind. Jeder platonische Körper lässt sich genau einem dieser Graphen zuordnen. Also kann man über
den Beweis, dass es nur fünf vollständig reguläre Graphen gibt, schließen, dass es nur fünf platonische Körper
geben kann. Für den Beweis benötigt man die Eulersche Formel.
Um die Anzahl der Kanten in einem Graphen zu ermitteln, wird der Grad aller Ecken aufsummiert. Man erhält
so die doppelte Anzahl der Kanten, weil jede Kante durch zwei Ecken begrenzt wird. Da die Graphen der
platonischen Körper regulär sind, gilt deshalb: |V | · ρ = 2|E|. Wenn man analog mit den Flächen verfährt,
erhält man ρ∗ |F | = 2|E|. Zusammengefasst gilt also: 2|E| = ρ · |V | = ρ∗ · |F |. Um die Zusammenhänge in die
Eulersche Formel |V | + |F | − |E| = 2 einsetzen zu können, lösen wir nach |E| und |F | auf. Somit erhalten wir:
ρ
1
ρ
1
|V | + ∗ |V | − ρ · |V | = |V | 1 + ∗ − ρ = 2.
ρ
2
ρ
2
Durch eine leichte Umformung ergibt sich: |V |(2ρ∗ + 2ρ − ρρ∗ ) = 4ρ∗ , wobei: |V |, ρ∗ ∈ N. Somit muss auch
gelten:
(2ρ + 2ρ∗ − ρρ∗ ) ∈ N ⇒ (2ρ + 2ρ∗ − ρρ∗ ) > 0.
Durch eine leichte Umformung und Ausklammern erhält man die Ungleichung:
(2ρ + 2ρ∗ − ρρ∗ ) > 0 | · (−1) + 4
also: (ρ − 2) · (ρ∗ − 2) < 4.
Selbige ist nur in zwei Fällen erfüllt:
1) ρ − 2 und ρ∗ − 2 sind positiv, also ρ, ρ∗ > 2.
2) 1 ≤ ρ ≤ 2 oder 1 ≤ ρ∗ ≤ 2.
12
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
Der zweite Fall kann bei Körpern jedoch nicht eintreten, da Körper dreidimensional sind; für ρ, ρ∗ muss also
gelten: ρ, ρ∗ ≥ 3.
Führen wir den ersten Fall weiter aus.
Es gilt ρ − 2 ≤ 3 ∧ ρ∗ − 2 ≤ 3 ⇒ ρ ≤ 5 ∧ ρ∗ ≤ 5, wobei ρ und ρ∗ nicht gleichzeitig 5 sein dürfen, und
ρ ≥ 3 ∧ ρ∗ ≥ 3. Da weiterhin die Gleichung (ρ − 2) · (ρ∗ − 2) < 4 erfüllt sein muss, gibt es für ρ und ρ∗ nur
die folgenden ungeordneten Produktpaare: (1; 1), (1; 2), (1; 3). Insgesamt zählt man also nur fünf verschiedene
Kombinationsmöglichkeiten. Durch Einsetzen in die zu Beginn hergeleiteten Formeln |V |(1 + ρρ∗ − 12 ρ) = 2 und
ρ · |V | = 2|E| = ρ∗ · |F | erhält man die Anzahl der Kanten |E|, die der Ecken |V | und die der Flächen |F | der
Graphen.
ρ
3
3
3
4
5
ρ∗
3
4
5
3
3
|V |
4
8
20
6
12
|E|
6
12
30
12
30
|F |
4
6
12
8
20
Körper
Tetraeder
Würfel
Dodekaeder
Oktaeder
Ikosaeder
Tab. 1.1: Übersicht über platonische Körper
Es gibt somit genau fünf vollständig reguläre Graphen. Da der zu einem platonischen Körper gehörige Graph
vollständig regulär sein muss, kann es nicht mehr platonische Körper als vollständig reguläre Graphen geben.
Es existieren nun genau fünf vollständig reguläre Graphen, weswegen es auch genau fünf platonische Körper
gibt, die als vollständig reguläre und damit platonische Graphen dargestellt werden können.
q.e.d.
5 Algorithmen zur Wegfindung
(Clemens Wieck, Daniel Mescheder)
5.1 Was ist ein Algorithmus?
Ein Algorithmus kann als eine genau definierte Handlungsvorschrift zur Lösung von Problemen aufgefasst
werden. Algorithmen werden hauptsächlich in der Mathematik und in der Informatik verwendet, doch treten
sie auch im Alltag auf. Die bekanntesten Beispiele sind Koch- oder Backrezepte: Alle Zutaten müssen in einer
festgelegten Reihenfolge verarbeitet werden, damit ein klar festgelegter Endzustand erreicht wird.
5.2 Was ist ein Wegproblem?
Es gibt eine Reihe von graphentheoretischen Anwendungsproblemen, die Algorithmen zu ihrer Lösung erfordern. Eines der bekanntesten Probleme ist das Finden von kürzesten Wegen innerhalb eines Graphen.
Wir wollen ein Wegproblem P folgendermaßen definieren: P = (G, S, T, C, λ), wobei G = (V, E) ein beliebiger
Graph, S ⊆ V sei die Menge aller Startpunkte, T ⊆ V die Menge aller Endpunkte des Wegproblems sei.
Man spricht von einem Single-Source Wegproblem, wenn |S| = 1, von einem Single-Pair Wegproblem, wenn
|S| = 1 und |T | = 1 und von einem All-Pairs Wegproblem, wenn S = V und T = V ist. Im Folgenden wollen
wir uns auf das Lösen von Single-Source Wegproblemen beschränken.
C = (R,
M
, , e0 , e1 )
L
ist eine Bewertungsstruktur bestehend aus einer Bewertungsmenge R und zwei Operationen:
: 2R → R
(dient zur Bestimmung der optimalen Pfadlänge aus einer Menge von Pfadbewertungen), : R × R → R (verknüpft verschiedene Kantenbewertungen innerhalb eines Pfades). Ausserdem enthält C zwei ausgezeichnete
Elemente e0 , e1 ∈ R. λ : E → R ist eine Kantenbewertungsfunktion, die jeder Kante genau eine Bewertung
aus R zuordnet.
Sei Pst die Menge aller Pfade zwischen einem Startknoten s ∈ S und einem Endknoten t ∈ T . Dann wird der
kürzeste Pfad definiert als
M
{λ(p)|p ∈ Pst }.
λ(Pst ) =
13
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
Für jedes Problem P gilt für den leeren Pfad (also ein Weg, der über keine Kante führt) λ() = e1 .
Ein Beispiel für eine Bewertungsstruktur C ist die folgende:
C = (R∞ , inf, +, ∞, 0).
Hier wird jedem möglichen Pfad eine Bewertungsnummer aus der Menge der reellen Zahlen zugeordnet.
Dabei wird aus einer Menge von Wegen der kürzeste über die Infimum-Operation ausgewählt. Einzelne Kantenbewertungen werden zur Gesamtpfadbewertung aufaddiert: λ(pij ) = λ((vi , vi+1 )) + ... + λ((vj−1 , vj )).
5.3 Wegexpansion
Es soll nun ein Single-Source Wegproblem über Wegexpansion gelöst werden. Wegexpansion bedeutet, dass
ein Graph ausgehend von einem Startpunkt Schritt für Schritt abgegangen wird. Wege, die noch nicht expandiert, also bearbeitet wurden, heißen »aktiv«, bereits expandierte Wege werden im Folgenden »permanent«
genannt.
Wir betrachten nun ein Wegproblem P = (G, S, T, C, λ), für das für jedes e ∈ E gilt λ(e) > 0.
5.4 Der Algorithmus von Dijkstra
Der Algorithmus von Dijkstra ist einer der gebräuchlichsten zur Findung von kürzesten Wegen innerhalb eines
Graphen. Im Folgenden findet man eine mögliche Darstellung in einem Pascal-ähnlichen Pseudocode. Hinter
den »//« Zeichen findet sich ein Kommentar zur Funktion der jeweiligen Zeile.
1) d : array[V ] of R; //Array der besten bekannten Bewertungen für i ∈ V
2) p : array[V ] of set of (PG ∪ {undef }) × R × {aktiv, permanent};
3) D : priority queue of V × R; //«Puffer« für die Ecken, die als nächstes bearbeitet werden sollen.
4) d[s] := e1 ; p[s] := {(, e1 , aktiv)}; //Initialisierung von s.
5) insert (s, e1 ) into D; //Einfügen von s in D.
6) f or all (i ∈ V \ {s}) do d[i] := e0 ; p[i] := {undef, e0 , aktiv)}; //Initialisierung aller Punkte außer s.
7) while (D 6= ∅) do
8)
(i, r) := min(D); //Kleinstes Element aus D wählen.
9)
p := p0 | (p0 , r, aktiv) ∈ p[i] //Das aktuelle Pfadelement wählen.
10)
p[i] := p[i] ∪ {(p, r, permanent)}{(p, r, aktiv)}; //Der betrachtete Pfad wird auf permanent gesetzt.
11)
f or all (e = (i, j) ∈ E) do //Alle Kanten zu benachbarten Punkten von i wählen.
12)
13)
14)
if (d[j] > (r λ(e), aktiv)) then //Wenn der neue Weg nicht größer ist als der schon bekannte.
d[j] := (r λ(e)); //Der neu gefundene Weg ist nun der kürzeste.
a := f alse; //a (eine temporäre Variable) wird initialisiert.
15)
p[j] := p[j] ∪ {(pe, r λ(e), aktiv)}; //Der Weg über i nach j wird dem Array p hinzugefügt.
16)
f or all (p0 , r0 , φ) ∈ p[j] do //Das Array p soll nun in eine minimale Menge umgeformt werden.
L
if
(p<<,r<<,φ)∈p[j],r<<6=r 0 r <<= d[j] then
17)
18)
p[j] := p[j] \ {(p0 , r0 , φ)};
19)
if ((j, r0 ) ∈ D) then
20)
relocate(j, r0 , r λ(e)) in D;
21)
a := true; //Wenn bereits (j, r0 ) ∈ D ist, braucht man (j, r0 ) nicht zu D hinzuzufügen.
22)
23)
if (a = f alse) then
insert (j, r λ(e)) into D.
Man kann sich leicht klarmachen, wie der Algorithmus arbeitet (siehe Abbildung 1.6): Anfangs werden alle
bekannten Weglängen von s auf e0 gesetzt – nach unserem weiter oben vorgestelltem Bewertungssystem wäre
dies z.B. ∞. Gleichzeitig wird der Startpunkt s als trivialer Wegpunkt in den Pufferspeicher D eingefügt. Jetzt
werden innerhalb der Schleife alle Nachbarpunkte des gerade bearbeiteten Punktes betrachtet und, falls sie
noch nicht mit einer permanenten Kante inzidieren, ebenfalls in D gespeichert. Bei jedem Schleifendurchlauf
wird der jeweils kostengünstigste bekannte Weg aus D bearbeitet.
14
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
Sobald ein Punkt i aus D entfernt wird, wird der Pfad p[i] auf
permanent gesetzt – der kürzeste Weg nach i wurde gefunden. Sollte die Ausgangsfrage ein Single-Pair Wegproblem gewesen sein, kann der Algorithmus also abgebrochen werden,
sobald der Zielknoten aus D entfernt wurde. Bei einem SingleSource Problem wird der Algorithmus so lange durchgeführt,
bis zu jedem Knoten kein kürzerer Weg als der bereits gefundene verfügbar ist. In diesem Fall bilden die Pfade aus p[...]
einen Baum, in dem vom Startpunkt s genau ein Pfad zu jedem anderen Punkt existiert. Dieser ist der Kürzeste aus dem
Ursprungsgraphen G.
Zu zeigen bleibt noch, dass der Algorithmus von Dijkstra korAbb. 1.6: In einem gewichteten Graphen soll der
rekt funktioniert, also dass nach dem letzten Durchlauf der
kürzeste Weg von s zu allen anderen Punkten
while-Schleife d[i] = d(s, i) gilt. Der ausführliche Beweis soll gefunden werden.
an dieser Stelle entfallen, da er den Rahmen dieser Dokumentation sprengen würde. Der geneigte Leser kann den Beweis allerdings in entsprechender Fachliteratur selbst
nachvollziehen. Zur Beweisidee: Über das Prinzip der vollständigen Induktion und einen Widerspruch kann die
Korrektheit des Algorithmus gezeigt werden.
6 Bäume
(Thomas Czulak, Christian Franke)
6.1 Einleitung
Der minimale Spannbaum eines Graphen ist von besonderer Bedeutung für die Wirtschaft, beispielsweise beim
Planen eines Strom- oder Gasnetzes. Von den Versorgungsstationen aus soll ein Produkt günstig zum Endverbraucher transportiert werden. Gefragt ist in diesem
Fall nicht der kürzeste Weg, da das Produkt aufteilbar
ist, z.B. Strom. Benötigt wird ein Baum, der jeden Knoten
mit jedem anderen verbindet und das genau mit einem
Pfad, da so die Kosten am geringsten sind. Ein Beispiel
zeigt Abbildung 1.7. Der Knoten f ist ein Kraftwerk und
von diesem sollen einige größere Städte mit Strom versorgt werden. Die grauen Kanten zeigen hierbei den minimalen Spannbaum, also die kostengünstigste Verbindung. Allerdings wird bei diesem nicht die Ausfallsicherheit beachtet; so würde ein Ausfallen der Verbindung
{f ; h} ein komplettes Zusammenbrechen der Stromversorgung zur Folge haben.
Aufgabenstellung:
Untersuchen des Laufzeitverhaltens des Algorithmus von Prim und des Algorithmus
von Kruskal.
6.2 Grundlagen
Abb. 1.7: Beispiel für die Anwendung eines
Definition 9 Ein Baum ist ein zusammenhängender,
Spannbaumes
kreisfreier Graph, der mindestens zwei Blätter v hat, wobei ein Blatt ein Knoten v mit d(v) = 1 ist.
1
Definition 10 Ein minimaler
P Spannbaum T (U, F, ω) ⊆ G(V, E, ω) ist definiert durch U = V und F ⊆ E, wobei
die Summe der Gewichte e∈F ω(e) minimal ist.
1
G sei im Folgenden stets zusammenhängend und gewichtet, ω(e) ist für jedes e ∈ E das Gewicht.
15
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
Definition 11 Seien g, f : N → R Funktionen. Es gilt:
f (n)
=
O(g(n)) : ⇔
∃ C ∈ R+ ∧ ∃n0 ∈ N 3 ∀n ≥ n0 : |f (n)| ≤ C|g(n)|.
6.2.1 Algorithmen
Sei im Folgenden T (U, F, ω) ⊆ G(V, E, ω), wobei T der minimale Spannbaum von G sei.
Algorithmus von Kruskal
Dieser Algorithmus beginnt mit leerer Kantenmenge und Knotenmenge U =
V . Zu Beginn sortiert er alle e ∈ E aufsteigend nach ihrem Gewicht. Nun wählt er die »erste« Kante e so aus,
dass ω(e) minimal ist, und entfernt diese aus der sortierten Liste. Sofern F + e keinen Kreis enthält, wird diese
zu F hinzugefügt. Dies wird genau (|E| = m)-mal wiederholt.
Algorithmus von Prim
Dieser Algorithmus beginnt mit leerer Kantenmenge. Die Knotenmenge enthält
genau einen beliebigen Startknoten. Der Algorithmus sucht eine Kante e ∈ E von u ∈ U ⊆ V mit minimalem
ω(e) zu einem v ∈ (V \ U ) und fügt sowohl v als auch e zu U bzw. F hinzu. Dieser Vorgang wird (|V | − 1)-mal
wiederholt. Danach ist T ein minimaler Spannbaum von G.
Beide Algorithmen lösen das Problem, in einem Graphen G(V, E, ω) einen minimalen Spannbaum T (U, F, ω) ⊆
G zu finden.2
6.3 Laufzeitbetrachtungen
Im Folgenden wird immer der Worst-Case Fall betrachtet, da der Best-Case Fall meistens keine konkrete
Aussage bezüglich der Laufzeit zulässt und der Average-Case Fall nahezu unmöglich zu kalkulieren ist.
6.3.1 Algorithmus von Kruskal
Zunächst müssen die Kanten sortiert werden, dafür bietet sich ein Verfahren wie Merge-Sort an, ein höheres
Sortierverfahren, mit einer Laufzeit O(n · log n), wobei n = |E|. Die darauffolgende Schleife wird (|E|)-mal
durchlaufen. In ihr wird zunächst das erste Element der sortierten Liste entnommen [O(1)] und überprüft, ob
dieses keinen Kreis bildet [O(log |V |)] und gegebenenfalls werden die Komponenten der Kante hinzugefügt
[O(1)], dies ergibt eine Gesamtlaufzeit für die Schleife von [O(|E| log |V |)]. Daraus folgt für die Gesamtlaufzeit:
O(|E| log |E| + |E| log |V |) = O(|E|(log |E| + log |V |)).
Da |E| =
|V |
2
≤ |V |(|V | − 1) ≤ |V |2 für einen vollständigen Graphen, also für maximales |E| gilt, folgt:
= O(|E|(2 log |V | + log |V |) = O(|E|3 log |V |) = O(|E| log |V |).
6.3.2 Algorithmus von Prim
Zunächst werden die Felder initialisiert, dies dauert O(|V |). Der Vorgang wird für jeden Knoten außer dem
letzten durchgeführt, also (|V | − 1)-mal wiederholt. Dabei wird jedesmal die kürzeste Kante gesucht [O(|V |)]
und hinzugefügt [O(1)] und zum Schluss werden noch einmal die Felder angepasst [O(|V |)]. Daraus ergibt
sich eine Laufzeit für die Schleife von O((|V | − 1)(|V | + |V | + 1)) = O(|V | · 2|V |) = O(|V |2 ):
O(|V |2 + |V |) = O(|V |2 ).
6.3.3 Auswertung.
Der Algorithmus von Kruskal ist dem von Prim vorzuziehen, da sich bei Prim die Laufzeit quadratisch mit der
Knotenzahl entwickelt.
2
16
Die Ergebnisse der Algorithmen sind in jedem Fall minimal, aber nicht immer identisch.
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
7 Fixpunktsatz von Brouwer
(Friederike Schroeder, Sebastian Timmerberg)
Luitzen E. J. Brouwer (1881-1966) stellte den nach ihm benannten Fixpunktsatz auf, der besagt, dass jede
stetige Selbstabbildung einer geschlossenen n-Scheibe einen Fixpunkt besitzt.
Als anschauliches Beispiel kann eine Tasse Kaffee dienen. Nach dem Brouwerschen Fixpunktsatz gilt, dass
sich nach dem Umrühren des Kaffees mindestens ein Punkt wieder an der selben Stelle wie vorher befindet,
wenn man das Umrühren als stetige Abbildung annimmt.
Für Brouwers Fixpunktsatz gibt es mehrere Beweise. Sperners Lemma aus dem Jahr 1928 ist die Grundlage
eines relativ leicht nachvollziehbaren Beweises, der nur auf elementare topologische Begriffe zurückgreift.
7.1 Sperners Lemma
Lemma 2 (Sperners Lemma) Jede geeignet beschriftete, simpliziale Unterteilung eines Dreiecks T besitzt
eine ungerade Anzahl ausgezeichneter Dreiecke.
Eine simpliziale Unterteilung eines Dreiecks ist definiert als eine Unterteilung in eine endliche Anzahl beliebiger, kleinerer Dreiecke, von denen jeweils zwei aneinandergrenzende Dreiecke eine ganze Kante oder einen
Punkt gemeinsam haben.
Eine Beschriftung der Ecken des Dreiecks T ist geeignet, wenn:
– die drei Ecken von T mit 0, 1, 2 (in beliebiger Reihenfolge) beschriftet sind,
– alle Ecken auf den Dreiecksseiten von T mit Endpunkten i und j entweder i oder j heißen,
– alle Ecken innerhalb von T beliebig beschriftet sind (vgl. Abbildung 1.8 (a) ).
Teildreiecke, deren Ecken alle drei Beschriftungen aufweisen nennt man ausgezeichnet.
Abb. 1.8: (a) geeignet beschriftetes Dreieck, (b) zugehöriger Graph
Beweis: Sei T0 die Region außerhalb von T und seien T1 , T2 , ..., Tn die Teildreiecke. Hierzu wird ein Graph
G mit der Eckenmenge v0 , v1 , ..., vn konstruiert, wobei jede Ecke vk für ein Dreieck Tk und v0 für die Region
T0 steht. Haben Tm und Tk eine gemeinsame Seite mit den Endpunkten 0 und 1, so werden die zugehörigen
Ecken vm und vk durch eine Kante verbunden (vgl. Abbildung 1.8 (b)).
v0 kann nur mit Ecken verbunden werden, deren zugehörige Dreiecke eine Seite mit Teilen der Kante von T
zwischen 0 und 1 gemeinsam haben. Auf dieser Kante liegen ausschließlich Kanten von Teildreiecken mit den
Endpunkten (0, 0), (0, 1) oder (1, 1). Zu zeigen, dass v0 immer ungeraden Grades ist, entspricht dem Beweis,
dass es immer eine ungerade Anzahl von Kanten (0, 1) gibt, die auf der zu den Eckpunkten 0 und 1 gehörenden
Seite von T liegen:
Nimmt man an, alle variabel benennbaren Ecken seien 0, so gibt es genau eine Kante mit 0 und 1 als Ecken.
Benennt man weitere Knoten in 1 um, so verschiebt sich entweder die vorhandene Kante, oder es kommen
zwei neue hinzu (vgl. Abbildung 1.9). Damit ist die Anzahl immer ungerade und somit v0 immer ungeraden
Grades.
17
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
Abb. 1.9: Dreiecksseite mit Endpunkten 0 und 1
Da die Summe aller Eckengrade eines Graphens immer gerade und der Grad von v0 ungerade ist, muss eine
ungerade Anzahl der Ecken v1 , v2 , ..., vn von ungeradem Grad sein.
Es ist offensichtlich, dass keine Ecke außer v0 den Grad drei haben kann, und so müssen die Ecken mit
ungeradem Grad den Grad eins haben. Aber eine Ecke hat nur dann den Grad eins, wenn das zugehörige
Dreieck ausgezeichnet ist (vgl. Abbildung 1.10)
Abb. 1.10: Teildreiecke und Gradzahl der zugehörigen Ecke
D.h. jedes simplizial unterteilte, geeignet beschriftete Dreieck T besitzt eine ungerade Anzahl ausgezeichneter
Dreiecke.
q.e.d.
7.2 Beweis des Fixpunktsatzes von Brouwer
Satz 5 (Brouwerscher Fixpunktsatz) Jede stetige Selbstabbildung einer geschlossenen n-Scheibe besitzt
einen Fixpunkt.
Der Einfachheit halber wird der Beweis im Folgenden nur für den zweidimensionalen Fall durchgeführt. Im
Beweis wird das 2-Simplex benutzt - ein Dreieck. Da ein Dreieck homöomorph zur 2-Scheibe ist, ist der Satz
damit für den zweidimensionalen Fall bewiesen.
Beweis: Wir betrachten ein geschlossenes Dreieck T mit den Ecken x0 , x1 und x2 .
Dann kann jeder Punkt des Dreiecks dargestellt werden durch x = a0 x0 + a1 x1 + a2 x2 mit ai ≥ 0 für i ∈ {0, 1, 2}
P2
und i=0 ai = 1.
Ist ai = 0, so liegt der Punkt x auf der Dreiecksseite, welche der Ecke xi gegenüberliegt. Ist ai = 1, sind
an = ak = 0 und damit ist x eine der Ecken von T , wobei i, n, k ∈ {0, 1, 2}.
Im Folgenden wird jeder Punkt x durch den Vektor (a0 , a1 , a2 ) ∈ R repräsentiert.
Sei f eine stetige Selbstabbildung von T und ferner sei f (a0 , a1 , a2 ) = (a00 , a01 , a02 ).
Des Weiteren seien die Mengen Si für i ∈ {0, 1, 2} wie folgt definiert
S0 = {(a0 , a1 , a2 )|a00 ≤ a0 }, S1 = {(a0 , a1 , a2 )|a01 ≤ a1 }, S2 = {(a0 , a1 , a2 )|a02 ≤ a2 }.
Gilt S0 ∩ S1 ∩ S2 6= ∅, so besitzt f einen Fixpunkt. Denn nehmen wir an, es gelte (a0 , a1 , a2 ) ∈ S0 ∩ S1 ∩ S2 ,
dann muss a0 ≥ a00 , a1 ≥ a01 und a2 ≥ a02 sein.
18
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
Zusätzlich gilt nach wie vor
2
X
ai =
i=0
2
X
a0i = 1
i=0
Folglich muss (a00 , a01 , a02 ) = (a0 , a1 , a2 ) gelten. (a0 , a1 , a2 ) ist also ein Fixpunkt von f .
Die Existenz eines solchen Punktes kann mit Hilfe von Sperners Lemma bewiesen werden. Sei T ein geeignet
beschriftetes Dreieck mit willkürlicher Unterteilung, wobei jede Ecke des Dreiecks so beschriftet werden muss,
dass die Ecke i in die Menge Si fällt.
Aus Sperners Lemma folgt, dass mindestens ein ausgezeichnetes Teildreieck existiert, für dessen drei Ecken
gilt, dass eine zu S0 , eine zu S1 und eine zu S2 gehört. Da dies für jede Unterteilung gilt und es möglich ist
die Unterteilung so zu wählen, dass die Teildreiecke einen beliebig kleinen Durchmesser haben, lässt sich
schließen, dass es je drei Punkte aus S0 , S1 und S2 gibt, die beliebig nah beieinader liegen. Daraus folgt
S0 ∩ S1 ∩ S2 6= ∅.
q.e.d.
8 Planarität von Graphen
(Carl Heese, Georg Loho)
8.1 Vorbemerkung
Wir haben das Thema »topologische Graphentheorie« gewählt; dieses Teilgebiet der Graphentheorie beschäftigt sich mit der Darstellbarkeit von Graphen auf Oberflächen. Nach kurzer Zeit merkten wir allerdings, dass
man um selbige richtig zu betreiben, tiefer gehende analytische bzw. vor allem topologische Vorkenntnisse benötigt. So entschlossen wir uns, den Blick auf eine besondere Oberfläche, die Ebene, zu richten; aus diesem
Gebiet beweisen wir jetzt den »Satz von Kuratowski«.
8.2 Grundbegriffe
1) Wenn Y ein Subgraph eines Graphen G ist und Y durch Setzen von neuen Ecken auf Kanten eines
Graphen X entsteht, so ist X ein topologischer Minor von G. Man schreibt G = T X.
2) Ein Graph G = (V, E) heißt zusammenhängend, falls es für alle x, y ∈ V einen Pfad von x nach y gibt.
3) Ein Graph G heißt k-fach zusammenhängend, wenn man mindestens k Ecken entfernen müsste, damit
der resultierende Graph nicht mehr zusammenhängend ist.
4) Ein Graph G heißt planar, wenn er zusammenhängend ist und sich in der Ebene darstellen lässt, so dass
zwei beliebige Kanten höchstens einen Knoten als gemeinsamen Punkt haben, sich also keine zwei
Kanten schneiden.
5) Ein Graph G heißt kantenmaximal bezüglich einer gewissen Eigenschaft, falls G die Eigenschaft erfüllt,
aber ein Graph, der durch das Hinzufügen einer beliebigen Kante zu G entsteht, diese Eigenschaft nicht
mehr hat.
1) K 5 : Der vollständige Graph mit fünf Knoten.
˙ 2 = V
2) K3,3 : Der Graph mit sechs Punkten, der aus zwei gleichmächtigen Teilmengen V1 , V2 : V1 ∪V
besteht, sodass jeder Punkt von V1 mit allen Punkten aus V2 paarweise verbunden ist.
8.3 Der Satz von Kuratowski
Satz 6 (Kuratowski) Ein Graph G ist genau dann planar, wenn er weder den K 5 noch den K3,3 als Minor hat.
Der Beweis dieses Satz besteht aus zwei Richtungen, von denen im Folgenden die erste ausgeführt und die
zweite skizziert wird:
1) Hat ein Graph den K 5 oder den K3,3 als Minor, so ist er nicht planar.
2) Besitzt ein Graph weder den K 5 noch den K3,3 als Minor, so ist er planar.
19
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
8.3.1 Beweis der ersten Aussage
Offensichtlich ist jeder Subgraph bzw. Minor eines planaren Graphen planar. Um die erste Aussage zu beweisen, muss also gezeigt werden, dass weder der K 5 noch der K3,3 planar sind.
Hierzu verwenden wir die Eulersche Formel (Beweis: siehe Kapitel »Platonische Körper«; dabei ist |V | die Anzahl der Knoten, |E| die Anzahl der Kanten und |R| die Anzahl
der Flächen): |V | − |E| + |R| = 2.
Lemma 3 Für einen planaren Graphen G = (V, E) mit |V | ≥ 3 gilt: |E| ≤ 3 · |V | − 6.
Beweis: Jedes Gebiet aus R wird von mindestens drei Kanten berandet. Da jede Kante
gleichzeitig Rand von zwei Gebieten ist, wobei auch das Außengebiet mitzählt, gilt
folgende Ungleichung: 3·|R| ≤ 2·|E| . Durch Umformen und Einsetzen in die Eulersche
q.e.d.
Formel folgt: |V | − |E| + 23 |E| ≥ 2 ⇔ 3 · |V | − 6 ≥ |E| .
Abb. 1.11: K 5 und K3,3
Lemma 4 Für einen dreiecksfreien, planaren Graphen mit V ≥ 3 gilt: |E| ≤ 2 · |V | − 4.
Beweis: Der Rand eines jeden Gebietes ist hier mindestens ein Viereck. Somit gilt in Analogie zu Lemma 1
4 · |R| ≤ 2 · |E|. Einsetzen in die Eulersche Formel ergibt |V | − |E| + 12 |E| ≥ 2 ⇔ 2|V | − |E| ≥ 4. q.e.d.
Satz 7 Weder (i) der K 5 noch (ii) der K3,3 ist planar.
Beweis: (i) Annahme: Der K 5 ist planar, dann gilt nach Lemma 1 folglich |E(K 5 )| ≤ 3·|V (K 5 )|−6 = 3·5−6 = 9.
Es ist aber |E(K 5 )| = 4 + 3 + 2 + 1 = 10 > 9. Widerspruch.
(ii) Der K3,3 ist per Definition dreiecksfrei. Angenommen, der K3,3 ist planar. Dann gilt nach Lemma 2 |E(K3,3 )| ≤
2 · |V (K3,3 )| − 4 = 2 · 6 − 4 = 8. Außerdem gilt |E(K3,3 )| = 3 · 3 = 9 . Widerspruch.
Somit ist die erste Aussage bewiesen.
q.e.d.
8.3.2 Beweis der zweiten Aussage
Lemma 5 Jeder 3-fach zusammenhängende Graph G, der keinen K 5 oder K3,3 als topologischen Minor hat,
ist planar.
Beweisidee: Durch Induktion über |G|: Für |G| = 4 erhält man den vollständigen Graphen mit vier Ecken, für den
die Behauptung gilt. Sei also |G| > 4 und die Aussage richtig für kleinere Graphen. Wenn man nun zwei Punkte
x und y mit den angrenzenden Kanten herausnimmt, erhält man einen Graphen mit einem Gebiet, in dem sich
vorher die Kante xy befand. Der Rand dieses Gebietes sei ein Kreis C. Jetzt betrachtet man die Menge X aller
Nachbarn von x außer y. Es muss nun einen Pfad auf C zwischen zwei nebeneinanderliegenden Nachbarn
xi und xi+1 von X geben, sodass alle Nachbarn von Y auf diesem Pfad liegen. Denn sonst erhält man einen
K3,3 aus x, y, xi und xi+1 und den zwei nicht beide auf dem Pfad liegenden Punkten, was ein Widerspruch
zur Planarität wäre. Damit liegen alle auf einem solchen Pfad und man kann y in die Fläche einbetten, die von
dem Pfad und den Kanten xi x und xi+1 x begrenzt ist.
Lemma 6 Sei Ψ eine Menge von 3-fach zusammenhängenden Graphen. Sei G ein Graph, in dem es zwei
Punkte gibt, sodass G ohne diese zwei Punkte nicht zusammenhängend ist und seien G1 , G2 Subgraphen
von G so, dass G = G1 ∪ G2 und G1 ∩ G2 = {x, y} = S mit x, y ∈ V . Wenn G kantenmaximal ohne einen
topologischen Minor in Ψ ist, dann sind es auch G1 und G2 und xy ist eine Kante von G.
Beweisidee: Als Erstes ist festzustellen, dass x und y jeweils Nachbarn in jeder Komponente von Gi − S (i = 1
oder 2) haben, da sonst schon das Entfernen eines einzelnen Knotens genügen würde, damit der Graph nicht
mehr zusammenhängend ist. Falls xy ∈
/ G, so hat G + x wegen der Kantenmaximalität einen T X mit X ∈ Ψ,
wobei x, y ∈ T X. Da X 3-fach zusammenhängend ist, S allerdings nur aus zwei Punkten besteht, muss der
T X ganz in einem der Gi liegen, o.B.d.A in G1 . Da x und y beide jeweils Nachbarn in G2 haben, gibt es
einen Pfad von x nach y durch G2 , durch den man xy in T X ersetzen kann und einen T X in G erhält. Das ist
ein Widerspruch zur Voraussetzung, womit xy ∈ G ist. Um noch zu zeigen, dass G1 und G2 kantenmaximal
ohne einen topologischen Minor in Ψ sind, fügt man diesmal G1 eine Kante e0 hinzu. Da G + e0 wegen der
Kantenmaximalität von G einen T X enthalten muss, muss er entweder in G1 + e0 , womit das gewünschte
gezeigt wäre, oder in G2 ⊆ G, was ein Widerspruch dazu ist, dass G keinen T X enthält, sein.
20
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
Lemma 7 Wenn G = (V, E) ein Graph mit |G| ≥ 4 kantenmaximal ohne Elemente aus Ψ := {K 5 , K3,3 } ist,
dann ist G 3-fach zusammenhängend.
Beweisidee: Wieder mit Induktion über |G|, mit dem selben Induktionsanfang wie im Lemma zuvor. Der Beweis
wird nun durch Widerspruch geführt: Angenommen, es gäbe zwei Punkte, sodass G ohne diese zwei Punkte
nicht zusammenhängend ist. Man wählt nun zwei Subgraphen G1 und G2 von G so, dass G1 ∩ G2 = {x, y}
mit x, y ∈ V . Nun sind G1 und G2 nach Lemma 5 auch kantenmaximal ohne Elemente aus Ψ, damit nach
Induktionsvoraussetzung 3-fach zusammenhängend und deshalb wegen Lemma 4 planar. Sei nun zi ein Punkt
auf dem Rand eines Gebietes in Gi , auf dessen Rand die Kante xy liegt (i = 1 oder 2); und sei X ∈ Ψ.
Würde ein T X ganz in einem der Gi liegen, dann würde nach Definition von T X entweder Gi + xzi oder
Gi + xzi einen T K 5 oder einen T K3,3 enthalten; damait würde sich allerdings ein Widerspruch ergeben, da Gi
planar ist und xzi bzw. yzi nach Wahl von zi durch ein Gebiet gehen und damit keine andere Kante schneiden
können.
Also müssen die Teile eines T X auf G1 und G2 verteilt sein. Da G allerdings nicht 3-fach zusammenhängend
sein soll, kann es zwischen G1 und G2 nur x, y und die Kante z1 z2 geben. Dadurch ergibt sich dann aber bei
jeder beliebigen Verteilung der Ecken eines T X ein Widerspruch zur Planarität von G1 und G2 .
Satz 8 Besitzt ein Graph weder den K 5 noch den K3,3 als Minor, so ist er planar.
Beweis: Ein Graph H, der (i) keinen K 5 oder K3,3 als topologischen Minor hat, ist ein Subgraph eines Graphen mit der Eigenschaft aus Lemma 6 und ist damit (ii) 3-fach zusammenhängend. Da mit (i) und (ii) die
Bedingungen von Lemma 4 erfüllt sind, ist H planar. Damit ist die zweite Richtung des Satzes von Kuratowski
bewiesen.
q.e.d.
9 Färbung
(Hella Ußler, Fairouz Gaber)
9.1 Einleitung
Wieviele Farben werden mindestens gebraucht, um eine politische Landkarte zu färben?
Selbstverständlich sollen dabei keine zwei Länder mit gemeinsamer Grenze dieselbe Farbe erhalten. Schon lange wurde vermutet, dass die Antwort
»vier« lautet. Bewiesen wurde dies aber erst 1976 von Kenneth Appel und
Wolfgang Haken, die in ihrem Beweis neben elementaren und teilweise sehr
alten Ideen auch den Computereinsatz nutzten. Wesentlich einfacher und
ohne den Einsatz von Computern lässt sich beweisen, dass fünf Farben zur
Färbung ausreichen, was Thema unseres Projekts sein soll.
9.2 Der Fünffarbensatz
Abb. 1.12: Umwandlung der Knoten
in Flächen
Satz 9 Sei G = (V, E) ein Graph und C eine Menge von Farben. Dann ist eine k-Flächenfärbung eine Abbildung, die jeder Fläche aus G genau eine Farbe aus C zuordnet, sodass keine zwei benachbarten Flächen
(Flächen, die an die gleiche Kante grenzen) die gleiche Farbe erhalten. Genauso ist eine Knotenfärbung eine
Färbung, die jedem Knoten genau eine Farbe zuordnet, sodass keine benachbarten Knoten die gleiche Farbe
erhalten. Der Fünffarbensatz besagt, dass für die Flächenfärbung eines planaren Graphen ohne Brücken fünf
Farben ausreichen.
9.2.1 Vereinfachung des Graphen
Eine politische Landkarte kann als Graph aufgefasst werden, wobei die Grenzen zweier benachbarter Länder
die Kanten und die Schnittpunkte der Grenzen die Knoten darstellen. Man kann jeden Knoten v mit Grad
d(v) 6= 3 in Knoten mit Grad d(v) = 3 umwandeln, indem man, wie in Abbildung 1.12 gezeigt wird, jeden
Knoten in eine Fläche umwandelt.
21
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
Wenn sich der Graph aus Abbildung 1.12b) in fünf Farben färben lässt, so lässt sich auch der aus Abbildung 1.12a) mit fünf
Farben färben. Wir können also jeden Graphen in einen Graphen umwandeln, in dem gilt: ∀v ∈ V : d(v) = 3.
9.2.2 Umwandlung der Flächen- in Knotenfärbung
Das Problem der Flächenfärbung kann man vereinfachen, indem man es in eine Knotenfärbung umwandelt. Dazu benötigt
man den dualen Graphen G∗ , der wie folgt konstruiert wird: Zu Abb. 1.13: a): Graph G mit Knoten f ∗ in jeder
jeder Fläche f aus G gibt es einen Knoten f ∗ in G∗ (Abbildung Fläche f , b): dualer Graph G∗
1.13):
Wenn zwei Flächen f1 , f2 eine Kante gemeinsam haben, so werden die jeweiligen Knoten f1∗ , f2∗ durch eine
Kante e∗ verbunden. Wenn sich die Knoten von G∗ in fünf Farben färben lassen, so lassen sich die Flächen
von G ebenfalls in fünf Farben färben. Da wir in Schritt 1 den Graphen so vereinfacht haben, dass d(v) = 3 für
alle Kanten v gilt, entstehen in G∗ nur Flächen mit drei anliegenden Kanten, d.h. Dreiecke, und somit eine so
genannte Triangulität 3 .
9.2.3 Beweis, dass es Knoten mit Grad d(v) ≤ 5 gibt:
Definiere: ni :=| {v ∈ V | d(v) = i} | (Anzahl der Knoten vom Grad i)
Ist k = max(d(v)) (maximaler Knotengrad), so ergeben sich die Beziehungen:
1)
k
P
ni = n (Anzahl aller Knoten)
i=2
2)
k
P
i · ni = 2e (jeder Knoten vom Grad i grenzt an i Knoten; jede Kante grenzt
i=2
an 2 Knoten)
3) 2e = 3f (da es sich um eine Triangulität handelt, grenzt jede Fläche an drei
Kanten; jede Kante grenzt an 2 verschiedene Flächen)
Abb. 1.14: a) G∗ ; b) G∗ − v
Mit Verwendung der Eulerschen Formel (f + n − e = 2) folgt nach einigen Umformungsschritten:
12 +
k
X
Abb. 1.15: a) G∗ ; b) G∗ − v
(i − 6)ni = 4n2 + 3n3 + 2n4 + n5 .
i=6
Da die rechte Seite der Gleichung positiv ist, muss auch die linke Seite der Gleichung positiv sein, d.h. es muss Knoten v mit d(v) ≤ 5 geben, welche wir im
Folgenden für die Induktion betrachten wollen.
Abb. 1.16: a) G∗ ; b) G∗ − v
9.2.4 Induktion über Anzahl der Knoten:
Induktionsanfang: Ein Graph mit ≤ 5 Knoten lässt sich offensichtlich mit ≤ 5 Farben färben.
Induktionsbehauptung: Es existiert eine 5-Knotenfärbung für G∗ mit | G∗ |= n.
Induktionsschritt: Angenommen, im Graphen mit n + 1 Knoten existiert ein Knoten
mit:
Abb. 1.17: a) G∗ ; b) G∗ − v
a) d(v) = 2
Durch Entfernen des Knotens v und einer umgebenden Kante, entsteht ein Graph G∗ , der eine Triangulität mit
n-Knoten darstellt und damit nach Induktionsbehauptung eine 5-Knotenfärbung besitzt. Da die anliegenden
Knoten von v mit zwei Farben gefärbt sind, bleibt für v eine 5. Farbe übrig.
3
22
Graph, bei dem alle Flächen, auch die Äußere, Dreiecke sind.
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
b) d(v) = 3
Durch Entfernen des Knotens v, entsteht ein Graph G∗ , der eine Triangulität mit n-Knoten darstellt und damit
nach Induktionsbehauptung eine 5-Knotenfärbung besitzt. Da die anliegenden Knoten von v mit drei Farben
gefärbt sind, bleibt für v eine 5. Farbe übrig.
c) d(v) = 4
Durch Entfernen des Knotens v und durch Verbinden von zwei diagonal gegenüberliegenden Punkten entsteht ein Graph G∗ , der eine Triangulität mit n-Knoten darstellt und damit nach Induktionsbehauptung eine
5-Knotenfärbung besitzt. Da die anliegenden Knoten von v mit ≤ 4 Farben gefärbt sind, bleibt für v eine 5.
Farbe übrig.
d) d(v) = 5
Durch Entfernen des Knotens v mit d(v) = 5 kann man wie in Abbildung 1.17 eine Triangulität mit n-Knoten erzeugen. Um zu beweisen, dass die fünf benachbarten Knoten von v mit nur vier Farben färbbar sind, benötigen
wir die Kemp’sche Kettenfärbung, die wie folgt funktioniert:
Abb. 1.18: a) Graph G; b) H(c1 ; c2 ), c) H(c1 ; c2 ) mit vertauschten Farben
H(c1 , c2 ) ist der induzierte Untergraph von G, der nur die Knoten enthält, die mit den Farben c1 und c2 gefärbt
sind. Die zusammenhängenden Teile von H sind seine Komponenten.
Diese Komponenten sind nicht mit anderen Knoten der Farben c1
bzw. c2 verbunden. Somit kann man die Farben innerhalb dieser Komponenten problemlos vertauschen.
Nun wollen wir dieses Verfahren zum weiteren Beweis benutzen. Die
Knoten seien wie in Abbildung 1.17 zu sehen mit u1 bis u5 bezeichnet.
Fall d1 ) Die Knoten u3 und u1 oder u2 und u4 haben die gleiche Farbe.
Damit haben wir für die Knoten u1 bis u5 weniger als fünf Farben
gebraucht, womit eine 5. Farbe für v übrig bleibt.
Fall d2 ) Die Knoten u1 bis u5 sind alle mit verschiedenen Farben gefärbt. O.B.d.A. kann man annehmen, dass u1 mit c1 , u2 mit c2 usw.
gefärbt ist.
Fall d2 a) u1 und u3 liegen in verschiedenen Komponenten von Abb. 1.19: Wegen Planarität Farben
H(c1 , c3 ). Damit können wir die Komponente, in der u1 liegt umfär- vertauschen
ben, wodurch u1 mit c3 gefärbt wird. Somit bleibt für v die Farbe c1
übrig.
Fall d2 b) u1 und u3 liegen in derselben Komponente von H(c1 , c3 ). Dadurch entsteht ein Weg von u1 nach u3 ,
der mit den Farben c1 und c3 gefärbt ist. Nun betrachten wir H(c2 , c4 ). Da der Graph planar sein soll, können
c2 und c4 nicht in derselben Komponente von H(c2 , c4 ) liegen.
Somit kann man die Farben der Knoten vertauschen, indem u2 mit c4 gefärbt wird. Hiermit bleibt c2 für den Knoten v übrig. Damit lässt sich der duale Graph 5-Knotenfärben, und somit der Ursprungsgraph 5-Flächenfärben,
was zu beweisen war!
23
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
10 Das Paradoxon des Sportreporters
(Fabian Graimann, René Niehus)
Am Ende der Fußballsaison, wenn die Sieger schon den Meisterpokal in den Händen gehalten haben, stellt
nicht selten ein Sportreporter die Behauptung auf, dass in Wirklichkeit die Absteigermannschaft A Sieger über
alle anderen ist. Das belegt er mit Hilfe einer Siegesfolge in der A gegen B, B gegen C, ... und am Ende Z
gegen den Sieger gewann.
10.1 Begriffe
Definition 12 Gerichteter Graph oder Digraph (directed graph): Ein Graph in dem alle Kanten gerichtet sind,
also eine Richtung haben, die durch eine Pfeilspitze gekennzeichet wird.
Definition 13 Ein Graph, für den gilt, dass jeder Knoten mit jedem anderen Knoten durch eine Kante verbunden ist, heißt vollständig.
Definition 14 Elementarer Weg: Ein Weg, der keinen Knoten mehrfach enthält.
Definition 15 Deklassierter Teilnehmer: Ein Teilnehmer, der im Turnier nur verloren hat.
Definition 16 Zweitklassige Gruppe im Graphen G: Eine Gruppe von Knoten K, die mit allen Knoten außerhalb der Gruppe mit auf sich gerichteten Kanten verbunden sind.
10.2 Turniergraphen
Das Paradoxon des Sportreporters besagt, dass sich für jeden Turnierausgang und für jeden beliebigen Teilnehmer ein Weg finden lässt, in dem der als Ausgangspunkt gewählte Teilnehmer Sieger bezüglich einer
Rangliste ist. Tatsächlich gilt folgender Satz:
Satz 10 In einem vollständigen, gerichteten Graphen gibt es immer einen gerichteten elementaren Weg, der
durch alle Ecken des Graphen verläuft.
Das ist zu beweisen.
Nehmen wir einen Graphen P , der vollständig und gerichtet ist. Sei V die Menge der Ecken und E die Menge
der Kanten von P . Da für den trivialen Graphen |V | = 1 eine Untersuchung nicht notwendig ist, betrachten
wir zunächst einen Graphen mit |V | = 2, für den es offensichtlich einen derartigen Weg gibt. Es bleibt zu
zeigen: Wenn es einen gerichteten elementaren Weg durch die Punkte A1 , A2 , ..., An eines Graphen gibt,
dann lässt sich immer auch ein Weg durch einen zusätzlichen Punkt finden. Also nehmen wir einen solchen
Weg W mit den Ecken E={A1 , A2 , A3 , ...,Ak } und fügen zu diesen einen zusätzlichen Knoten Ak+1 hinzu,
der, da der Graph vollständig und gerichtet ist, mit allen bisherigen Ecken von W verbunden wird. Es gibt drei
Möglichkeiten Ak+1 mit den Ecken in W zu verbinden:
1) Alle Verbindungen von Ak+1 sind zu diesem Knoten gerichtet. Man findet einen Weg, indem man W um
Ak+1 verlängert.
2) Mindestens eine, aber nicht alle Kanten zwischen Ak+1 und den anderen Ecken sind von Ak+1 weggerichtet. In diesem Fall findet sich ein Paar von Kanten, für die gilt, dass eine der Kanten zu Ak+1 führt und
eine der nachfolgende Kanten wieder von diesem Knoten weggerichtet ist. Dann ersetzt man den alten
Weg durch den Weg vom ersten der beiden oben beschriebenen Knoten zu Ak+1 und anschließend zum
zweiten.
3) Alle Verbindungen sind von Ak+1 weggerichtet. Ist das der Fall, muss man den gerichteten elementaren
Weg bei Ak+1 beginnen und über A1 durch W fortsetzten.
Wir haben also gezeigt, dass ein Sportreporter im Anschluss an ein Turnier unter günstigen Bedingungen
ein Ranking aufstellen kann, mit welchem er seinen Favoriten als Sieger präsentieren kann. Das Paradoxon
besteht aber in der Aussage, dass man von jedem Teilnehmer behaupten kann, er sei Sieger über alle anderen.
In Fall 3 kann dies allerdings offensichtlich nicht gelten, weil keiner der Knoten des Weges W außer Ak+1
Anfangspunkt sein kann, wenn alle Kanten von Ak+1 weggerichtet sind. Im Folgenden beschäftigen wir uns mit
24
Akademie Roßleben 2006-7
Kurs 7.1 – Graphentheorie
Abb. 1.20: Verbindungsmöglichkeiten
der Frage, wann eine Ecke Ausgangspunkt eines Weges durch einen gerichteten Graphen sein kann. Der zum
Knoten Am gehörige Spieler (siehe Fall 1) hat im Turnier nur verloren und ist daher ein deklassierter Teilnehmer
des Turniers. Da von ihm kein Weg wegführt, ist leicht einzusehen, dass er immer Endpunkt des Weges
sein muss. Allgemeiner kann man über einen beliebigen Punkt An sagen: ein gerichteter elementarer Weg,
der von An ausgehen soll, kann nicht gefunden werden, wenn An zu einer zweitklassigen Gruppe O gehört,
deren Mitglieder nur gegeneinander gewonnen haben. Es ist also nicht möglich, die paradoxe Behauptung als
allgemein gültig zu zeigen.
Satz 11 Wenn A1 nicht zu einer zweitklassigen Gruppe gehört, gibt es immer einen gerichteten elementaren
Weg von A1 aus durch alle Ecken.
Für diese Aussage soll nun ein Beweis skizziert werden. Dazu konstruieren wir wie im ersten Beweis einen
maximal langen, gerichteten elementaren Weg W , der so zu erweitern ist, dass der Anfangspunkt nicht verändert werden muss. Das ist der Fall, wenn es eine Kante gibt, die auf die Ecke Ak+1 weist, um welche der Weg
erweitert werden soll.
In seiner allgemeinen Form trifft das Paradoxon also genau dann zu, wenn keine zweitklassigen Gruppen
vorhanden sind.
Literaturverzeichnis
Printmedien
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
Halin, Rudolf: Graphentheorie, Wissenschaftliche Buchgesellschaft Darmstadt, 1989, S. 24–26.
Hartsfield, Nora/Ringel, Gerhard: Pearls in Graph Theory, Academic Press, 1990, S. 49–58.
Ore, Oystein: Graphen und ihre Anwendungen, Ernst Klett Verlag, 1974, 90–95.
Nitzsche, Manfred: Graphentheorie für Einsteiger, Vieweg Verlag, 2004, 168–171.
Theune, Dirk: Robuste und effiziente Methoden zur Lösung von Wegproblemen, B. G. Teubner Verlagsgesellschaft, 1995.
Turau, Volker: Algorithmische Graphentheorie, Addison Wesley Verlag, 1996.
Jungnickel, Dieter: Graphen, Netzwerke und Algorithmen, B.I.–Wissenschaftsverlag, 1987.
Bondy, J.A. und Murty, U.S.R.: Graph Theory with applications, North-Holland, 1976, Seiten 21–23.
Diestel, Reinhard: Graph Theory, Springer-Verlag, 1996, Kapitel 4.
Internetquelle, Stand 12.08.2006
http://www.tiscali.co.uk/reference/encyclopaedia/hutchinson/m0005344.html
http://www.math.tu-cottbus.de
http://www.fmi.uni-passau.de/blochg/mst/prim.html
http://www.fmi.uni-passau.de/blochg/mst/kruskal.html
http://xipolis.net/suche/artikel.php?shortname=b1&artikel_id=10073700
http://buechertransportdienst.sub.uni-goettingen.de/pics/karte.gif
25
Kurs 7.1 – Graphentheorie
Akademie Roßleben 2006-7
Kurs 7.1: Graphentheorie
Kurs 7.2: Welt der Oberflächen
26
Herunterladen