Graphen

Werbung
Kapitel 8
Graphen
Warum jeder ungerade Kreis eine freie Ecke hat
– Und warum das beim Heiraten nicht stört
Titel eines Vortrags einer Kinderuni
Graphen bilden eine fundamentale Datenstruktur in der Diskreten Mathematik. Entstehung und Entwicklung der Graphentheorie waren weitgehend durch das Bemühen, gekennzeichnet, eine Lösung des 4–Farbenproblems anzugeben; siehe unten. Die Informatik ist heutzutage
Motor der Entwicklung und erfolgreicher Abnehmer von Resultaten der diskreten Mathematik und insbesondere der Graphentheorie. Hier entwerfen wir eine kleine Skizze interessanter
Fragestellungen.1
Bäume sind ein Spezialfall von Graphen, in der Informatik werden Bäume häufig als Datenstruktur eingesetzt, in der Modellierung von Alltagsproblemen findet man sie als Entscheidungshilfen.
8.1
Definition und Diagramme
Isomere sind chemische Verbindungen der gleichen Summenformel, aber unterschiedlicher chemischer Struktur und teilweise auch mit unterschiedlichen chemischen, physikalischen und biologischen Eigenschaften.
Die in saurer Milch weit verbreitete DL-Milchsäure
– sie kommt in Milch, Früchten und in in tierischen
Organen vor – enthält zwei Isomere. In der Abbildung
8.1 ist links die D(-)-Milchsäure, rechts die L(+)-Milchsäure als chemische Formel abgebildet. Dabei steht H
für Wasserstoff, C für Kohlenstoff, O für Sauerstoff. Die
beiden Isomere sind spiegelgleich.
H
COOH
|
C OH
|
CH3
HO
COOH
|
C H
|
CH 3
Abbildung 8.1: Milchsäure
In der Abbildung lassen sich Eckpunkte“– die Mo”
leküle – und Kanten“ – die Verknüpfungen – erkennen.
”
Damit ist die Struktur der Graphen angesprochen. In diesem Kapitel soll auch die Rede von
ganz einfachen Graphen sein, nämlich solchen, die in den Verzweigungen einem realen Baum
ähneln: ein realer Baum hat eine Wurzel, er verzweigt von unten nach oben in Äste und Zweige,
endet in Blättern, Äste und Zweige verwachsen aber nicht miteinander. Man sagt, auf Graphen
1
Im Internet findet man ein ziemlich umfangreiches Skriptum unter:
www2.informatik.hu-berlin.de/alcox/lehre/skripte/ga/
142
übertragen, es entsteht kein Kreis, wie dies etwa beim Haus vom Nikolaus zutrifft, das 5 Ecken
(◦) und 8 Kanten (—) besitzt;2 siehe Abbildung 8.2. Damit sind schon die Grundbausteine der
Graphentheorie angesprochen: zwei Objekte stehen in einer vorgegebenen Beziehung oder nicht.
Mit dem Begriff des Graphen erfassen wir gerade diese Situation, wie wir noch sehen werden.
Beginnen wir mit einem bestens bekannten Gra”
phen“. Er hat 5 Ecken (◦) und 8 Kanten (—) und
ist im Rythmus von
Dies ist das Haus vom Ni–ko–laus
in einem Zug auf das Papier zu zaubern, ohne zweimal eine Kante nachziehen zu müssen. Damit sind
schon wesentliche Begriffe der Graphentheorie angesprochen.
Definition 8.1.1 Ein Graph G = G(E, K) besteht aus einem Paar (E, K), wobei E eine nichtlee- Abbildung 8.2: Das Haus vom Nikolaus
re Menge von Ecken und K eine Menge von Kanten ist und einer Vorschrift, die jeder Kante k ∈ K
genau zwei (verschiedene oder gleiche) Ecken a, b ∈ E zuordnet, die wir Endecken von k nennen; ist a = b, so nennen wir k eine Schlinge bei a.
Im Allgemeinen haben wir endliche Graphen im Blick, also Graphen, deren Eckenmenge eine
endliche Menge ist. (Im englischen Sprachgebrauch spricht man bei Kanten von vertices oder
nodes und bei Kanten von edges; daher G = G(V, E).)
Ist G = G(E, K) ein Graph, so sagen wir, dass k ∈ K die Ecken a und b verbindet, wenn a, b
Endecken von k sind; oft schreiben wir dafür k = {a, b} oder kurz k = ab . Ecken, die durch eine
Kante verbunden sind, nennen wir benachbart. Eine Ecke, die zu keiner Kante Endecke ist,
nennen wir isoliert. Sind zwei Ecken durch Kanten k1 , k2 , . . . , kn , n ≥ 2, verbunden, so heißen
die Kanten k1 , . . . , kn Mehrfachkanten. Wir betrachten im Folgenden ausschließlich einfache
Graphen, also solche, die weder Schlingen noch Mehrfachkanten besitzten.
Einen Graph veranschaulicht man sich am besten durch ein Diagramm, indem man die Ecken
als Punkte der (Zeichen–)Ebene zeichnet und die Kanten als Kurven zwischen den Endpunkten
zeichnet; hier wird die zweistellige Relation, die abstraktes Kernstück eines Graphen ist, deutlich.
Dadurch ist auch die Bezeichnung Graph“ erklärt: das Ecken–Kanten–System erinnert an die
”
graphische Darstellung von Funktionen.
Abbildung 8.3: Vollständige Graphen
Beispiel 8.1.2 Hat man bei einem Graphen G(E, K) als Eckenmenge E = {1, . . . , n}, so kann
man offenbar insgesamt 12 n(n−1) verschiedene Kanten einzeichnen. Da man nun zu jeder Kante
2
Es kann im Rythmus von Dies ist das Haus vom Ni–ko–laus in einem Zug auf das Papier gezaubert werden,
ohne zweimal eine Kante nachziehen zu müssen.
143
1
die Auswahl treffen kann, ob sie im Graphen vorkommen soll ja oder nein, gibt es 2 2 n(n−1)
verschiedene Graphen.
Die Anzahl der Ecken eines Graphen G =
G(E, K) wird üblicherweise als Ordnung von G
bezeichnet, die Anzahl seiner Kanten als Größe.
Einen Graph nennt man dann dicht, wenn das
Verhältnis d von Größe zu Ordnung groß ist; bei
einer Veranschaulichung in der Ebene kann man
Dichte“ sehen.
”
Beispiel 8.1.3 Betrachte ein Beispiel einer
endlichen Geometrie“:
”
P := {A, B, C} , G := {{A, B}, {A, C}, {B, C}}
(a)
(b)
Abbildung 8.4: Bipartite Graphen
P steht für die Punkte, G steht für die Menge der
Geraden.
Dies ist ein Graph G(P, G). Endecken etwa der
Kante k := {A, B} sind A und B.
Einige einfache Graphen sind so wichtig, dass sie eigene Namen tragen. Z.B. heißen die
einfachen Graphen Gn := G(E, K) mit Eckenanzahl n und einer Kante zwischen jedem Paar
von Ecken vollständige Graphen. In Abbildung 8.3 sind Diagramme dazu für n ≤ 5 enthalten.
Weitere Graphen spezieller Struktur sind die bipartiten Graphen G = G(E, K), bei denen
es eine Zerlegung der Eckenmenge E gibt derart, dass
E = U ∪ V , U ∩ V = ∅,
und jede Kante hat eine Ecke in U und eine Ecke in V . Ist jede Ecke aus U mit einer Ecke aus
V verbunden, so sprechen wir von einem vollständigen bipartiten Graphen; wir bezeichnen
sie mit Gm,n , wobei hier die Zerlegung so möglich ist, dass U m und V n Ecken hat. Der
vollständige bipartite Graph G3,3 ist in Abbildung 8.4 (a) skizziert. Abbildung 8.4 (b) gibt einen
unvollständigen bipartiten Graphen wieder.
Beispiel 8.1.4 Geplant ist ein Tennisturnier mit fünf Teilnehmern a, b, c, d, e . Die Turnierbedingungen seien:
(1) Es steht nur ein Tennisplatz zur Verfügung.
(2) Jeder Teilnehmer spielt gegen jeden anderen Teilnehmer genau einmal.
(3) Kein Teilnehmer spielt in zwei aufeinanderfolgenden Spielen.
In der Abbildung 8.5 (a) stellt jede der zehn Verbindungslinien eines der Spiele dar. In der
Abbildung 8.5 (b) ist auch ein Spielplan aufgezeichnet: Die zehn Punkte repräsentieren die Spiele,
und zwei Punkte sind genau dann verbunden, wenn sie keinen gemeinsamen Spieler haben; die
zugehörige Abbildung ist also ein Graph mit 10 Ecken und 15 Kanten. Der fett eingezeichnete
Weg“ liefert eine Lösung für die obigen Bedingungen (1), (2), (3).
”
Das Diagramm haben wir nicht willkürlich gestaltet, sondern eine ästhetisch ansprechende
und einprägsame Form dafür gewählt. Der Graph in Abbildung 8.5 (b) ist der berühmte Petersengraph. Seine Bedeutung liegt in der Liste von Eigenschaften, die er besitzt oder nicht besitzt.
144
a
ab
ce
e
b
cd
bc
ae
ad
c
be
d
(a) Der zugehörige Graph
de
bd
ac
(b) Ein erlaubter Spielplan
Abbildung 8.5: Graph für ein Tennisturnier
Definition 8.1.5 Sei G = G(E, K) ein Graph. Eine Ecke e hat Grad d = d(e), wenn die Anzahl
der Kanten, die e als Endecke haben, d ist.
Lemma 8.1.6 (Handschlaglemma) Sei G = G(E, K) ein Graph mit m Kanten. Dann gilt:
X
2m =
d(v) .
v∈E
Beweis:
Wir zählen die Paare (v, k), v ∈ E, k ∈ K, ab, für die v Endecke von k ist. Da jede Kante genau
2 Endecken hat, ist die Anzahl einerseits 2m, andererseits trägt jede Ecke v ∈ E mit d(v) zu
dieser Anzahl bei.
Die Wortwahl für das obige Lemma kommt von der Interpretation, dass man sich K als die
Paare von Personen (E) vorstellen kann, die sich per Handschlag begrüßen. Man kann daraus
folgern, dass die Anzahl der Personen, die auf einer Party eine ungerade Anzahl von Gästen mit
Handschlag begrüßt haben, gerade ist.
Graphentheorie hat vielfältige Anwendungen; etwa
(-) Reise- oder Transportplanung
(-) Datenstrukturen in der Informatik
(-) Computernetzwerke
(-) Strukturformeln in der Chemie
(-) Anwendungen in der Mathematik
Wir bringen Graphen häufig mit einem Diagramm auf das (planare) Papier, je nach Ge”
schmack“ in unterschiedlichen Darstellungen. Führen uns unterschiedliche Darstellungen zu unterschiedlichen Betrachtunbgsweisen? Dazu ist wichtig:
Definition 8.1.7 Zwei Graphen G = G(E, K), G′ = G(E ′ , K ′ ) heißen isomorph, in Zeichen
G∼
= G′ , falls es eine bijektive Abbildung ϕ : E −→ E ′ gibt, so dass gilt: k = {u, v} ist eine
Kante in G genau dann, wenn k′ := {ϕ(u), ϕ(v)} eine Kante in G′ ist.
145
Beispielsweise sind alle vollständigen Graphen mit n Ecken isomorph. Daher ist es gerechtfertigt,
für solche Graphen eine(!) Bezeichnung zu vergeben: Gn . Zu entscheiden, ob Graphen isomorph
sind, ist so einfach nicht. Hilfreich dabei sind Invarianten“ bei Anwendung eines Isomorphismus:
”
Ecken werden auf Ecken vom selben Grad abgebildet, . . . .
Offensichtlich wird durch die Relation G ∼ G′ genau dann, wenn G, G′ isomorph sind“ eine
”
Äquivalenzrelation erzeugt.
Bemerkung 8.1.8 Die Betrachtung von Isomorphismen ist auch in anderen Strukturen (Gruppen, Körpern, Vektorräume, . . . ) ein wichtiger Gesichtspunkt. Damit soll geklärt werden, wann
sind Objekte als gleich anzusehen, auch wenn sie in unterschiedlichem Kleide“ daherkom”
men. Isomorphismen beschreiben Strukturgleichheit“. Wir formulieren zur Erläuterung noch
”
den Sachverhalt bei Gruppen.
∼ G′ , falls es eine
Zwei Gruppen (G, •), (G′ , •′ ) heißen isomorph, in Zeichen G =
bijektive Abbildung ϕ : G −→ G′ gibt mit ϕ(x) •′ ϕ(y) = ϕ(x • y) für alle x, y ∈ G .
8.2
Wege, Kreise, Zusammenhang
Mit den nun folgenden Begriffen Kantenzug, Weg, Kreis“ können wir etwas über die Feinstruk”
tur von Graphen herausfinden.
Definition 8.2.1 Sei G(E, K) ein Graph.
(a) Sind v0 , v1 , . . . , vl ∈ E, so dass vi mit vi+1 für jedes i = 0, . . . , l − 1 verbunden ist, so
nennen wir W := [v0 , . . . , vl ] einen Kantenzug von v0 nach vl der Länge l .
(b) Ein Kantenzug W = [v0 , . . . , vl ] heißt Weg, falls alle zugehörigen Kanten vi vi+1 paarweise
verschieden sind.
(c) Ein Weg W = [v0 , . . . , vl ] heißt Kreis, falls v0 = vl gilt.
Ohne Beweis führen wir an, dass aus jedem Kantenzug von v0 nach vl ein Weg von v0 nach
vl gemacht werden kann durch Weglassung von Kanten (Beachte die Absprache, dass wir nur
endliche Graphen betrachten).
Beispiel 8.2.2 Betrachte den vollständigen Graphen G4 ; siehe Abbildung 8.3: er hat 4 Ecken
und 6 Kanten; die Dichte ist also 32 . Er enthält Kreise der Länge 3 und 4. Intuitiv sollte man
erwarten, dass ein dichter Graph lange“ Kreise enthalten sollte. Dazu gibt es auch eine präzise
”
Aussage, nämlich den Satz von Dirac (1952), der diese Erwartung bestätigt: gilt für die Dichte
d ≥ 2, so gibt es einen Kreis der Länge größer als d .
Definition 8.2.3 Ein Graph G(E, K) heißt zusammenhängend, wenn je zwei Ecken durch
einen Kantenzug verbindbar sind.
Offenbar ist Verbindbarkeit“ eine Äquivalenzrelation auf der Eckenmenge eines Graphen. Die
”
Äquivalenzklassen bezüglich dieser Relation heißen Zusammenhangskomponenten des Graphen.
146
Bemerkung 8.2.4 Wir betrachten stets ungerichtete Graphen, d.h. solche, deren Kanten
beim Durchlaufen keine Richtung auszeichnen. Ungerichtete Graphen sind solche, deren Kanten mit einem Pfeil“ dargestellt werden; sie können nur in Pfeilrichtung durchlaufen werden.
”
Gewichtete Graphen sind Graphen, bei denen Kanten ein Gewicht tragen, das die Kosten“
”
angibt, wenn die Kante durchlaufen wird.
Definition 8.2.5 Sei G(E, K) ein Graph.
(a) Ein Weg W = [v0 , . . . , vl ] heißt ein Eulerweg, wenn der Weg jede Kante des Graphen
genau einmal enthält.
(b) Ein Eulerweg heißt ein Eulerkreis, wenn er ein Kreis ist.
(c) Der Graph heißt Eulergraph, falls er einen Eulerkreis enthält.
D
D
a
a
d
e
A
b
e
A
C
C
c
c
B
g
d
g
b
f
f
B
(a) Skizze der Landkarte
(b) Der zugehörige Graph
Abbildung 8.6: Das Königsberger Brückenproblem
Der Begriff Eulerkreis“ stammt von dem vermutlich ältesten graphentheoretisch erfassten
”
Problem, nämlich dem Königsberger Brückenproblem, das seine Lösung durch L. Euler3 im
Jahre 1736 fand. Die Abbildung 8.6 zeigt 4 Landstücke A, B, C, D und 7 Verbindungsbrücken
a, b, . . . , g.
Frage: Ist es möglich, von der Insel A aus einen Spaziergang zu machen, bei dem
man alle Brücken genau einmal passiert und schließlich nach A zurückkehrt?
Übersetzen wir dies in die Graphensprache, so resultiert der Graph aus Abbildung 8.6 (b).
Euler hat die Frage nach einer zulässigen Tour im Königsberger Brückenproblem negativ
beantworten können, indem er zeigte, dass kein Eulerkreis existiert. Dafür gibt es eine sehr
einfache Argumentation. Sie geht so: In jeder Ecke kann man die Anzahl der Kanten zählen,
die dort enden; diese Anzahl ist der Grad der Ecke. Soll es einen Eulerkreis geben, dann muss
jede Ecke offenbar geraden Grad haben. Beim Königsberger Brückenproblem gibt es aber Ecken
ungeraden Grades.
Folgerung 8.2.6 Ist G ein Eulergraph, dann hat jede Ecke geraden Grad.
3
Euler, Leonhard (1707 — 1783)
147
Beweis:
Dies ist die Argumentation von Euler.
Gilt auch die Umkehrung in Korollar 8.2.6? Ja, sie gilt, wenn mann nur zusammenhängende
Graphen betrachtet! Dies ist das Resulat von Hierholzer (1873). Damit ist auch klar, dass Eulergraphen schnell ( in linearer Zeit“) anhand der geraden Eckengrade erkannt werden können.
”
Aber wie konstruiert man einen Eulerweg? Darüber gibt auch das Resultat von Hierholzer Auskunft. Die sehr befriedigende Zusatznachricht ist, dass dies auch sehr schnell ( in linearer Zeit“)
”
bewerkstelligt werden kann.
Definition 8.2.7 Sei G(E, K) ein Graph.
(a) Ein Weg W = [v0 , . . . , vl ] heißt Hamiltonweg, wenn der Weg W jede Ecke des Graphen
genau einmal enthält.
(b) Ein Weg W = [v0 , . . . , vl ] heißt Hamiltonkreis, wenn W ′ := [v0 , . . . , vl−1 ] ein Hamiltonweg ist und v0 = vl gilt.
Das Problem der Hamiltonkreise ist ungleich tiefliegender als das der Eulerkreise, für Anwendungen aber sehr viel interessanter: es gibt keine Charakterisierungen für Hamiltonkreise, für
Eulerkreise schon.4
(a) Dodekaeder
(b) Tetraeder
(c) Würfel
Abbildung 8.7: Hamiltonkreise
Bekanntlich gibt es fünf reguläre Körper/platonische Körper: Tetraeder, Würfel, Oktaeder, Dodekaeder, Ikosaeder. Dies zu zeigen, ist die Theorie der Graphen ein entscheidendes
Hilfsmittel, ebenso dafür, das bekannte Färbungsproblem, das wir unten noch kennenlernen
werden, zu lösen. Hamilton fragte nach einem Hamiltonkreis im Graphen, der dem Kantenweg
auf dem Dodekaeder entspricht. Die Abbildung 8.7 (a) gibt die Antwort. In Abbildung 8.7 (b),
(c) finden wir Hamiltonkreise zu anderen regulären Körpern. Dabei verwenden wir die sogenannten Schlegel–Diagramme für die platonischen Körper: Projektionen der Körper auf eine
Zeichenebene von einem Punkt über dem Körper.
Euler behandelte schon das Problem des Rösselsprungs auf einem n × n–Schachbrett. Gefordert ist, dass der Springer von einem Feld beginnend mit kontinuierlichen Zügen alle Felder
genau einmal berührt (und dann eventuell wieder zu seinem Ausgangspunkt zurückkehrt).
Nehmen wir ein (quadratisches) Schachbrett mit n2 Feldern und verbinden wir zwei Ecken,
wenn sie durch einen Springerzug verbunden sind; es resultiert ein Graph. Dann ist die Frage
4
Spezielle Aufgaben, die sich mit der Problematik Hamiltonweg/Hamiltonkreis beschäftigen, sind viel älter als
die Graphentheorie.
148
nach einem Hamiltonweg bzw. Hamiltonkreis klar.5 In Abbildung 8.8 ist ein Hamiltonweg für
den Rösselsprung auf einem 9 × 9–Schachbrett aufgeführt.
Wie oben schon angemerkt, Hamiltongraphen lassen sich nicht so einfach charakterisieren wie Eulergraphen. Da die Ordnung
5
2
7
80
77
74
11
16
13
n eines Graphen stets die Länge eines Ha8
79
4
1
10
81
14
75
18
miltonkreises angibt, kann man einen Ha3
6
9
78
73
76
17
12
15
miltonkreis dadurch finden, dass man alle
32
29
34
69
66
63
24
19
22
n-elementigen Teilmengen der Kantenmenge
daraufhin überprüft, ob sie einen Hamilton35
68
31
72
27
70
21
64
25
kreis darstellen. Dies ist bei dichten Graphen
30
33
28
67
62
65
26
23
20
ein sehr aufwändiges Verfahren. Es ist aber
39
36
41
56
71
58
47
52
49
kein sehr viel schnelleres Verfahren bekannt,
42
55
38
61
44
53
50
59
46
ja es sieht so aus, als gebe es kein sehr viel
37
40
43
54
57
60
45
48
51
schnelleres Verfahren; siehe nächstes Kapitel.
Die Suche nach notwendigen und hinreiAbbildung 8.8: Rösselsprung
chenden Bedingungen für die Existenz eines
Hamiltonweges hat ein umfangreiches Gebäude von neuen Begriffen und Fragestellungen hervorgebracht.
8.3
Planare Graphen
Wir haben schon darauf hingewiesen, dass wir üblicherweise einen Graphen G(E, K) durch
ein Punkt–Linien–System in der Ebene veranschaulichen. Gibt es eine Darstellung, in der die
Kanten von G sich nur an Ecken treffen aber niemals dazwischen, so sagen wir, der Graph G ist
plättbar und nennen den so darstellbaren Graphen einen ebenen Graphen (enbettbar in die
Ebene). Isolierte Ecken spielen dabei keine Rolle, sie können ja irgendwohin platziert werden,
allerdings darf keine Kante über eine isolierte Ecke laufen. In Abbildung 8.9 sind einige ebene
Graphen dargestellt. Dort sieht man auch, wie der Graph zum Haus vom Nikolaus plättbar ist.
Ist G(E, K) ein ebener Graph, so zerlegen die Kanten die Ebene in endlich viele (topologisch)
zusammenhängende Gebiete, von denen genau eines, das äußere“ Gebiet, nicht beschränkt ist.
”
Zusammenhängend bedeutet hier (etwas oberflächlich): Wir können zwischen je zwei Punkten
des Gebietes mit Bleistift (ohne abzusetzen) eine Linie ziehen, die das betreffende Gebiet nicht
verläßt. Der Grund dafür ist der berühmte Jordansche Kurvensatz:
Eine geschlossene Jordankurve γ zerlegt die Ebene in zwei topologisch zusammenhängende Gebiete, von denen genau eines nicht beschränkt ist.
Dies heißt: Zwei Punkte der Ebene können genau dann durch eine Jordan–Kurve
verbunden werden, die γ nicht trifft, wenn sie entweder beide im Inneren oder beide
im Äußeren von γ liegen.
So einleuchtend dieser Satz auch ist, sein Beweis ist alles andere als leicht.
Wir wollen nun erläutern, wie das Färbungsproblem für Landkarten mit den Resultaten der
Graphentheorie zusammenhängt.
5
Das Studium der Hamiltonwege und Hamiltonkreise wurde 1856, etwa gleichzeitig, von Kirkmann und Hamilton angeregt.
149
6
1
3
4
2
5
(a)
(b)
(c)
Abbildung 8.9: Beispiele für ebene Graphen
Wir können also unterstellen, dass bei einem ebenen Graphen die Linien (die für die Kanten stehen) die Ebene in endlich viele topologisch zusammenhängende Gebiete zerlegen. Diese
Gebiete wollen wir Länder nennen.
Haben wir umgekehrt eine reale Landkarte“ L gegeben, so können wir L sofort einen ebenen
”
Graphen G(E, K) zuordnen: Die Ecken E sind die Schnittpunkte verschiedener Grenzen und die
Kanten sind die zwischen Schnittpunkten verlaufenden Grenzlinien; eine Insel wird als Punkt
und seine Grenze als Schlinge dargestellt. Wir halten ausdrücklich fest: Länder grenzen entlang
einer Grenzlinie aneinander, nicht nur in einem Punkt, und die Länder sind zusammenhängend,
d.h. je zwei Punkte eines Landes sind durch einen Streckenzug verbindbar, der das Land nicht
verlässt.
Definition 8.3.1 Eine Landkarte L(E, K, L) ist ein ebener Graph G = G(E, K) zusammen
mit den zu G gehörenden Ländern L . Länder, die eine gemeinsame Grenze haben, nennen wir
benachbart.
Definition 8.3.2 Eine Färbung einer Landkarte L(E, K, L) ist eine Färbung der Länder mit
endlich vielen verschiedenen Farben, und zwar so, dass Länder, die eine gemeinsame Grenzkante
besitzen, stets verschiedene Farben erhalten.
Mit diesen Begriffen können wir nun den 4–Farben–Satz formulieren:
Für jede Landkarte reichen 4 Farben für eine Färbung aus.
Der 4–Farben–Satz hat eine interessante Geschichte, die Beweisversuche dazu haben viel zur
Entwicklung der Graphentheorie beigetragen. Schon 1878 legte A. Kempe einen Beweisversuch
für den 4–Farben Satz vor. Obwohl Kempes Beweis einen Fehler enthielt – er wurde 1890 von
Heawood entdeckt –, so vereinigte er doch nahezu alle Ideen, die zur endgültigen Lösung 100
Jahre später geführt haben. Der 5–Farbensatz von Heawood aus dem Jahre 1898 sagt, dass stets 5
Farben ausreichen. Ein korrekter Beweis für den 4–Farbensatz wurde 1976 von Appel und Haken
vorgelegt. Allerdings wurde der Beweis von der mathematischen Welt mit gemischten Gefühlen
aufgenommen, denn der Beweis wurde geführt unter massivem Einsatz von Computern. Es gibt
nun einen Beweis, der zwar immer noch nicht ohne Computer auskommt, der diesen aber schon
reduziert einsetzt.
Nach der Skizzierung des 4–Farbensatzes liegt es auf der Hand, was Färbungen von Graphen
sein sollen: benachbarte Ecken sollen unterschiedliche Farben erhalten. Wir werden diese Frage
im Kapitel über Abbildungen wieder aufgreifen. Hier nur ein Beispiel, das einen Anwendungshintergrund der Problematik aufzeigt.
150
Beispiel 8.3.3 In einem Zoo soll der Aquariumsbereich umgebaut werden und dazu Notbecken
aufgestellt werden. Dabei ist zu berücksichtigen, dass gewisse Fischarten sich nicht vertragen
und daher nicht in ein gemeinsames Becken eingebracht werden dürfen. Es ist das Ziel, mit
möglichst wenig Notbecken auszukommen.
Seien 1, . . . , N die unterschiedlichen Fischarten; sie dienen als Ecken eines Graphen. Zwei
Fischarten sind durch eine Kante verbunden, wenn sie sich nicht vertragen. Es entsteht ein
Graph. Jeder Fischart soll nun eine Farbe – sie steht für ein Becken – so zugeordnet werden,
dass Knoten, die mit einer Kante verbunden sind, eine unterschiedliche Farbe erhalten.
Kommen wir zu planaren Graphen zurück. Jedem planaren Graphen können Fächen zugeordnet werden; eines davon ist die Außenfläche.
Satz 8.3.4 (Eulerscher Polyedersatz) Sei G = G(E, K) ein planarer zusammenhängender
Graph mit n = #E, m = #K und f Flächen. Dann gilt:
n+f −m = 2
(8.1)
Beweis:
Den Beweis können wir hier nicht führen. Er bedient sich im Allgemeinen der vollständigen Induktion und der speziellen Graphen Bäume“; siehe unten. Für m = 0 können wir die Richtigkeit
”
aber erkennen. Hier muß nämlich n = f = 1 sein (Zusammenhang!).
8.4
Bäume
Eine weitere einfache, aber wichtige Graphenklasse ist die der Bäume. Bäume sind beispielsweise
als Datenstrukturen in der Informatik und bei der Betrachtung von elektrischen Netzwerken von
großer Bedeutung.
Definition 8.4.1 Ein Graph heißt Baum, wenn er zusammenhängend ist und keine Kreise
enthält.
Ein Baum heißt Binärbaum, wenn der Grad einer jeden Ecke höchstens zwei ist.
In Abbildung 8.10 sind im wesentlichen alle“ Bäume mit höchstens 6 Ecken aufgeführt.
”
(a) Alle Bäume mit höchstens 5 Ecken
(b) Alle Bäume mit 6 Ecken
Abbildung 8.10: Alle Bäume mit höchstens 6 Ecken
Bäume lassen sich ziemlich einfach charakterisieren. Wir geben drei äquivalente Charakterisierungen ohne vollständigen Beweis an.
Satz 8.4.2 Sei G ein Graph mit n Ecken. Es sind äquivalent:
(a) G ist ein Baum.
151
(b)
Je zwei Ecken des Graphen sind durch genau einen Weg verbunden.
(c)
G ist zusammenhängend, aber für jede Kante k von G ist der Graph G′ := G(E, K\{k})
nicht zusammenhängend.
(d) G ist zusammenhängend und besitzt genau n − 1 Kanten.
(e)
G besitzt keinen Kreis und besitzt genau n − 1 Kanten.
Beweis:
Wir beweisen nicht alle Implikationen.
a) =⇒ b).
Da ein Baum zusammenhängend ist, gibt es stets einen Weg, der zwei beliebige Ecken verbindet.
Annahme, es gibt mindestens zwei Wege, die ein gegebenes Paar e, e′ von Ecken verbindet. Wenn
beide Wege keine Kante gemeinsam haben, bilden sie einen Kreis: wir laufen den einen Weg von
e nach e′ und laufen nun den zweiten Weg von e′ nach e . Enthalten die beiden Wege eine
gemeinsame Kante, dann finden wir wieder einen Kreis, denn die beiden Wege treffen sich nun
in einer Ecke e′′ , die beide Wege gemeinsam haben. In jedem Falle haben wir, dass der Graph
einen Kreis enthält. Widerspruch!
b) =⇒ c).
Es ist klar, dass G zusammenhängend ist. Sei k = uv eine Kante mit Endecken u, v . Dann ist
[u, v] der einzige Weg, der u, v verbindet; in G′ := G(E, K\{k}) können also u, v nicht durch
einen Weg verbunden sein. Also kann G′ nicht zusammenhängend sein.
c) =⇒ d).
Auf Graphen kennen wir die Äquivalenzklassen der Zusammenhangskomponenten; siehe oben.
Der zusammenhängende Graph G hat eine Zusammenhangskomponente. Nimmt man eine Kante
{k} weg, entsteht ein Graph G′ := G(E, K\{k}), der zwei Zusammenhangskomponenten hat.
Nach Wegnahme aller Kanten hat der entstandene Graph n keine Kante ist mehr und daher n
Zusammenhangskomponenten. Also muss es n − 1 Kanten im Graphen geben.
Die Datenstruktur Baum“ wird bei hierarchischen Beziehungen und bei rekursiven Struk”
turen verwendet. Beispiele sind etwa:
• Stammbaum
• Mathematische Formeln
• Struktogramme von Firmen
• Gliederung von Büchern
Das Beispiel des Stammbaums einer Familie: er enthält als Knoten einen Stammvater, Stammeltern, . . . , Großeltern, Eltern, Kinder, Enkel,. . . . Unter diesen Mitgliedern gibt es die wohlbekannten Abstammungsbeziehungen, die mit Kanten angegeben werden können. Die Genealogie
beschäftigt sich mit der Erforschung solcher Stammbäume
Ein Wurzelbaum ist ein Baum, bei dem unter den Knoten eine Relation Vorfahre“ und
”
Nachkomme“, Eltern“ und Kinder“ erklärt ist, dargestellt durch die Kanten. Den Knoten,
”
”
”
der keinen Vorfahren hat, nennen wir Wurzel. Ein solcher existiert, da wir ja keine Kreise
haben; siehe Abbildung 8.11. In der Darstellung unterscheiden wir interne Knoten (dargestellt
durch Kreise), also solche, die Nachkommen haben, und externe Knoten (dargestellt durch
Quadrate), also solche, die keine Nachkommen besitzen, welche auch Blätter heissen, wie oben
schon vereinbart. Im Gegensatz zu realen Bäumen wird die Wurzel im allgemeinen an den Kopf
des Baumes gelegt;
152
Die Höhe eines Knoten in einem Baum ist die Länge des längsten Weges von diesem
Knoten zu einem Blatt. Die Höhe eines Baumes ist die Höhe seiner Wurzel. Die maximale
Anzahl der direkten Nachfolger, die ein Knoten hat, heißt Grad des Baumes.
Entscheidungsbäume sind eine spezielle Darstellungsform von Entscheidungsregeln. Sie veranschaulichen aufeinanderfolgende, hierarchische Entscheidunw
gen. Sie haben eine Bedeutung in der Stochastik zur
Veranschaulichung von mehrstufiger Experimente und
bedingter Wahrscheinlichkeiten, im Data-Mining, in
M
E
der Entscheidungstheorie sowie in der ärztlichen Entscheidungsfindung. Wir erläutern dies an folgenden
E
M
E
M
Beispielen.
E
Beispiel 8.4.3 Mark und Erich bestreiten eine Tennisauseinandersetzung: Wer zuerst zwei Sätze hintereinander oder insgesamt drei Sätze gewonnen hat, gewinnt die Auseinandersetzung. Alle möglichen Ergebnisse des Wettkampfes entsprechen den Worten
MM,MEMM,MEMEM,MEMEE,MEE,
M
E
E
E
M
M
E
M
M
E
M
Abbildung 8.11: Ein Tennisspiel
EMM,EMEMM,EMEME,EMEE,EE
Der Weg von der Wurzel des Baumes bis zum Endpunkt gibt an, wer jeweils den Wettkampf
gewonnen hat.
Wetter
sonnig
sonnig
bedeckt
regnerisch
regnerisch
regnerisch
bedeckt
sonnig
sonnig
regnerisch
sonnig
bedeckt
bedeckt
regnerisch
Temperature
heiß
heiß
heiß
mild
kühl
kühl
kühl
mild
kühl
mild
mild
mild
heiß
mild
Luftfeuchtigkeit
hoch
hoch
hoch
hoch
normal
normal
normal
hoch
normal
normal
normal
hoch
normal
hoch
windig
nein
ja
nein
nein
nein
ja
ja
nein
nein
nein
ja
ja
nein
ja
Spielen?
nein
nein
ja
ja
ja
nein
ja
nein
ja
ja
ja
ja
ja
nein
Abbildung 8.12: Eine Entscheidungstabelle
Beispiel 8.4.4 Wir wollen ein Spiel im Freien von den Bedingungen Wetter“, Temperatur“,
”
”
Luftfeuchtigkeit“, windig“ abhängig machen. Die Tabelle 8.12 gibt Aufschluss über die Regeln,
”
”
nach denen die Entscheidung gefällt werden sollen.
Jedem Attribut Wetter“, Temperatur“, Luftfeuchtigkeit“, windig“ können wir einen be”
”
”
”
schrifteten Entscheidungsbaum zuordnen. Etwa für Wetter den in Abbildung 8.13 abgebideten.
153
Abbildung 8.13: Ein Spiel im Freien
8.5
Binär- und Suchbäume
Wir halten fest:
(a)
Ein Wurzelbaum heißt Binärbaum, wenn jeder Knoten höchstens 2 Kinder hat.
(b) Ein Binärbaum heißt voller Binärbaum, wenn jeder Knoten genau 2 Kinder hat.
(c)
Ein Binärbaum heißt vollständiger Binärbaum, wenn er ein voller Binärbaum ist und
alle Blätter diesselbe Tiefe haben.
Im Baum 8.11 finden wir einen vollen Binärbaum vor.
Ein Binärbaum zeichnet sich gegenüber dem allgemeinen Wurzelbaum folgendermaßen aus:
• Jeder Knoten außer der Wurzel hat genau einen direkten Vorgänger.
• Jeder Knoten hat null bis zwei direkte Nachfolger, die als linker bzw. rechter Nachfolger
unterschieden werden.
• Der Binärbaum besteht also aus einer Wurzel und zwei Teilbäumen, wobei ein Baum und
damit auch ein Teilbaum leer sein kann.
• Eine Sonderform ist der vollständige Binärbaum, bei dem jeder Knoten außer den
Blättern zwei nicht leere Teilbäume besitzt und jeder Pfad die gleiche Länge hat.
Satz 8.5.1 Ist T ein voller Binärbaum mit m Blättern und n internen Knoten, dann gilt:
m=n+1
Beweis:
Lassen wir den Baum, ausgehend von der Wurzel wachsen“. Bei diesem Prozess verwandelt
”
sich in jedem Schritt ein Blatt in einen internen Knoten, gleichzeitig wachsen aus diesem neuen
internen Knoten zwei neue Blätter. In der Bilanz vergrößert sich die Anzahl der internen Knoten
um 1, und genauso die Anzahl der Blätter um 2 − 1 = 1 . Die Differenz m − n bleibt also
unverändert. Sie beträgt am Anfang 1, denn dann ist die Wurzel ein externer Knoten, und
m − n = 1 − 0 = 1 . Daher gilt also immer m − n = 1 .
In einem vollständigen Binärbaum ist die Gesamtzahl der Knoten leicht zu ermitteln, denn
es ist klar, dass in der Tiefe t sich 2t Knoten befinden. Die Anzahl der Blätter ist somit m = 2h ,
wenn h die Höhe des Baumes ist. Also ist die Anzahl der internen Knoten n = 2h − 1 . Zählt
man die internen Knoten ebenenweise ab, erhält man
1 + 2 + 4 + · · · + 2h−1
Also gilt die Gleichheit
1 + 2 + 4 + · · · + 2h−1 = 2h − 1,
154
eine Identität, die man auch direkt auf unterschiedlichste Weisen beweisen kann. Hier ist eine
elegante Variante:
1 + 2 + 4 + · · · + 2h−1 = (1 + 2 + 4 + · · · + 2h−1 )(2 − 1)
= (2 + 4 + 8 + · · · + 2h ) − (1 + 2 + 4 + · · · + 2h−1 )
= 2h − 1
Offensichtlich kann man also in einem binären Baum der Tiefe h höchstens 2h − 1 Knoten
unterbringen. Bei einem unvollständigen Baum sind es dann weniger. Im ungünstigsten Fall
lassen sich nur h Elemente unterbringen, genau dann, wenn jeder Knoten nur einen Nachfolger
besitzt. In diesem Fall degeneriert der Baum zu einer linearen Liste“.
”
Einem Wurzelbaum kann man eine Menge von Tupeln mit Einträgen aus (0, 1) zuordnen,
indem man jeden Pfad verfolgt und 0 für einen Abzweig nach links und 1 für einen Abzweig
nach rechts vermerkt. Insgesamt ist also ein Wurzelbaum eine Teilmenge W von
∗
{0, 1} :=
∞
[
k=0
{0, 1} × · · · × {0, 1}
{z
}
|
k−mal
mit der Eigenschaft, dass für k ≥ 1 stets mit u := (u1 , . . . , uk−1 , uk ) auch ũ := (u1 , . . . , uk−1 ) zu
W gehört. Das leere Tupel u = () steht für den Wurzelknoten.
In der Sprache der Alphabete ist {0, 1}∗ die Menge der Wörter über dem Alphabet {0, 1} .
Jeder Pfad von der Wurzel ist ein Wort über diesem Alphabet, das die Länge der Tiefe des
Blattes hat.
Satz 8.5.2 (Fano-Kraft) Sei B die Menge der Blätter in einem vollen Binärbaum T, durchnummeriert durch 1, . . . , m . Sei l(k) die jeweilige Tiefe der Blätter. Dann gilt:
m
X
2−l(k) = 1
k=1
Beweis:
Wir wandern von der Wurzel aus durch den Baum bis wir in einem Blatt landen. In jedem
internen Knoten haben wir eine Entscheidung zu treffen, ob wir die rechte oder linke Kante
wählen. Um zum Blatt k der Tiefe l(k) zu gelangen, sind l(k) richtige“ Entscheidungen zu
”
treffen. Also
1
1 1
· · · · · · = 2−l(k)
2}
|2 2 {z
l(k)−mal
Da wir mit Sicherheit in irgendeinem Blatt landen, summieren sich die Wahrscheinlichkeiten“
”
zu 1 auf.
In der Informatik ist das folgende Problem von überragender Bedeutung:
Gegeben sei n Nummern (Zahlen in N0 ) a1 , . . . , an , alle paarweise verschieden.
Gesucht ist ein Speicherverfahren für Computer, das ein schnelles Auffinden dieser
Nummern möglich macht.
Man denke etwa an das Problem, Matrikelnummern von Studierenden zu speichern.
Wir betrachten dazu volle Binärbäume als Ablegespeicher. Der Binärbaum wird sukzessive
nach einem Verfahren aufgebaut, bei dem die größeren Zahlen weiter rechts, die kleineren weiter
links untergebracht sind. Linke und rechte Nachkommen in einem Baum haben wir oben schon
erklärt mit der Beschreibung durch die Wörter über dem Binäralphabet. Man geht daher so vor:
155
(1) Platziere a1 in der Wurzel. Ist n > 1, hänge an diese Wurzel zwei Blätter an; sie sind
mögliche Plätze für a2 .
(2) Gilt a2 > a1 , so gehe von der Wurzel nach rechts in das angehängte Blatt, lege a2 dort
ab, mache dieses Blatt zu einem internen Knoten durch Anhängen von zwei Blättern. Gilt
a2 < a1 , so gehe von der Wurzel nach links in das angehängte Blatt, lege a2 dort ab, mache
dieses Blatt zu einem internen Knoten durch Anhängen von zwei Blättern.
(3) Sind schon a1 , . . . , aj−1 Nummern im Baum untergebracht, so durchlaufe den Baum von der
Wurzel nach unten bis ein Blatt erreicht ist. An jedem besuchten internem Knoten vergleiche
aj mit der dort abgelegten Nummer a . Ist aj > a setze den Weg nach rechts unten fort, ist
aj < a setze den Weg nach links unten fort. Lege aj im erreichten Blatt ab und mache es
zu einem internen Knoten durch Anhängen von zwei Blättern.
Hat man die Nummern nach dem obigen Verfahren abgelegt, so kann man eine Zahl im Suchbaum
wieder finden, indem man so vorgeht: Man vergleicht a an der Wurzel mit a1 und geht nach
rechts oder links in die Tiefe, je nachdem, ob a1 > a oder a1 < a ist. So stößt man schließlich
auf a . hat man die Suche mit einem a durchgeführt, das gar nicht im Suchbaum gespeichert ist,
so stellt man dies fest, wenn man in einem Blatt angelangt ist.
Eine interessante Frage ist, ob bei zufälligen“Nummerfolgen die so entstehenden Suchbäume
”
equilibriert sind in folgendem Sinne: ihre Tiefe hn unterscheidet sich nicht drastisch von der
”
Tiefe eines vollständigen Baumes mit der Tiefe h, so dass n = 2h − 1 ist (2h − 1 ist die Anzahl der
internen Knoten). Logarithmiert man hier, so fragt man sich also, ob die Suchbäume zu zufälligen
Nummerfolgen etwa die Tiefe hn ∼ log2 n haben. Nun ist es so, dass man hn ≤ 1.4 ∼ log2 n
beweisen kann. Wir kommen in Kapitel 7 darauf zurück.
8.6
1.)
2.)
Übungen
Sei G = G(E, K) ein Graph. Der Komplementgraph G von G hat als Eckenmenge
E und als Kantenmenge alle möglichen Kanten zwischen den Ecken, mit Ausnahme der
Kanten in G . Finde den Komplementgraph zum Haus vom Nikolaus“.
”
Jeder Graph mit mindestens zwei Ecken desselben Grades.
3.)
Zeige: Die Isomorphie von Graphen ist eine Äquivalenzrelation auf der Menge der Graphen.
4.)
Finde zwei Beispiele von selbstkomplementären Graphen. Dabei heißt ein Graph selbstkomplementär, wenn G zu seinem Komplementärgraphen G isomorph ist.
5.)
Mindestens einer der Graphen G, G ist zusammenhängend.
6.)
Sei G ein Graph mit n Ecken. Zeige: Gilt d(e) ≥
zusammenhängend.
7.)
Zeige: Ein Kreis in einem Graphen ist bipartit genau dann, wenn alle Ecken gerade sind.
8.)
Zeige: Jeder endliche Baum hat mindestens zwei Blätter.
9.)
Beweise in Satz 8.4.2 die Implikation a) =⇒ b) .
1
2 (n
− 1) für alle Ecken, dann ist G
10.) Ist der vollständige bipartite Graph Gn,n+1 ein Hamiltongraph?
11.) Ist der Petersengraph ein Hamiltongraph?
12.) Gibt es einen interessanten“ Graphen, der zugleich eulersch und hamiltonsch ist?
”
156
13.) Versuche den arithmetischen Ausdruck (in Maple-Schreibweise)
((a+b) * (c-d-7))/(23 * e)
als Binärbaum darzustellen. Wieviele Blätter hat eine solche Darstellung.
14.) Sei G = G(E, K) ein Graph. Zeige, dass die Anzahl der Ecken von ungeradem Grad
stets gerade ist.
Hinweis: Handschlaglemma und Aufspaltung“ des Graphen in Ecken mit geradem Grad
”
und Ecken mit ungeradem Grad.
15.) Betrachte die Graphen
a
b
c
d
e
b
a
e
h
g
f
c
(a)
(a)
d
(b)
Bestimme einen Eulerkreis im Graphen (a).
(b) Gibt es einen Eulerkreis im Graphen (a), wenn man die Kante, die f mit e verbindet,
wegnimmt?
(c)
Bestimme einen Hamiltonkreis im Graphen (b).
16.) Betrachte den Wurzelbaum 8.11. Beschreibe alle Pfade von der Wurzel zu den Blättern
mit Wörtern über dem Alphabet {0, 1} .
17.) Erzeuge den Suchbaum zur Nummernfolge 6, 1, 9, 5, 3, 7 .
157
Herunterladen