Eigenschaften von Graphen - Fakultät für Informatik

Werbung
WS 2007/08
Diskrete Strukturen
Prof. Dr. R. Westermann
Lehrstuhl für Computer Grafik und Visualisierung
Fakultät für Informatik
Technische Universität München
http://wwwcg.in.tum.de/Teaching/WS2007/DiskreteStrukturen
11.12.2007
Kapitel IV – Graphentheorie
• Graphentheorie
– Grundlagen
– Bäume
– Eigenschaften von Graphen
– Graphen-Algorithmen
– Matchings und Netzwerke
2
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
Ein Graph heißt planar, falls die Knoten und
Kanten so im 2D-Raum eingebettet werden
können, dass es keine Kantenüberschneidungen
gibt.
– Man kann den Graph so zeichnen, dass sich keine
Kanten kreuzen.
– Ein ebener Graph ist ein in einer Ebene
gezeichneter planarer Graph
3
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
planar
K3
K2,3
nicht planar
K5
K3,3
4
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
nicht planar
K5
K3,3
Da K5 und K3,3 nicht planaren Graphen sind, ist
jeder Graph, der sie als Teilgraphen hat oder
dadurch ensteht, dass Kanten des K5 oder K3,3
durch Pfade ersetzt werden, auch wieder nicht
planar.
5
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
Satz (Kuratowski):
Ein Graph G ist genau dann planar, wenn er
weder eine Unterteilung des K5 noch des K3,3 als
Teilgraphen enthält.
Unterteilung: Eine Ersetzung von Kanten durch
beliebige Pfade.
6
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
Satz (Eulersche Polyederformel):
Sei G = (V,E) ein zusammenhängender ebener
Graph. Dann gilt:
R := #Gebiete = |E| - |V| + 2.
Die Gebiete sind die zusammenhängenden Teile
der Ebene, die durch das Zerschneiden der
Ebene entlang der Kanten entstehen. Das
äussere Gebiet zählt man mit.
7
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
Aus der Eulerschen Polyederformel folgt, dass
in jeder planaren Darstellung eines Graphen die
Anzahl der Gebiete gleich bleibt.
8
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
Beweis (Eulersche Polyederformel):
Da G zusammenhängend, gilt |E|  |V| - 1.
Induktionsanfang: |E| = |V| - 1.
Dann ist G ein Baum, der ja keine Kreise enthält und
somit in jeder Einbettung genau 1 = |E| - |V| + 2
Gebiete enthält.
Induktionsannahme: für |E| = |V| - 1 + n gilt die EPf.
9
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
10
Beweis (Eulersche Polyederformel):
Induktionsschritt: |E| = |V| - 1 + n + 1.
Dann kann G kein Baum sein und muss (da
zusammenhängend) einen Kreis enthalten, der zwei
Gebiete voneinander trennt.
Wenn wir eine Kante aus dem Kreis löschen, dann
verschmelzen wir zwei Gebiete und reduzieren die Anzahl
der Gebiete um 1.
Für den entstehenden Graph gilt nach Induktionsannahme
die Polyederformel, und somit auch für den Graphen G. □
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
Satz:
Für jeden planaren Graphen G = (V,E) mit |V| 
3 Knoten gilt:
|E|  3|V| - 6
11
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Planare Graphen
Beweis:
Da jedes Gebiet einer Einbettung durch
mindestens 3 Kanten begrenzt ist und jede
Kante höchstens 2 Gebiete begrenzt, gilt
3|R|  2|E|.
Mit der Eulerformel ergibt sich
2/3|E|  |R| = |E| - |V| + 2.
Hieraus folgt: 1/3|E|  |V| - 2.
□
12
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Frage:
Wie können wir die Zeiten für die Prüfungen im
Grundstudium Informatik so ansetzen, dass
kein Student mehr als zwei Prüfungen zur
selben Zeit hat?
13
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Annahme:
Es gibt 7 Prüfungen zu den Vorlesungen 1,…,7.
Die folgenden Vorlesungspaare werden von
einigen Studierenden gleichzeitig gehört:
(1,2);(1,3);(1,4);(1,7);(2,3);(2,4);(2,5);(2,7);
(3,4);(3,6);(3,7);(4,5);(4,6);(5,7);(6,7)
14
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Der folgende Graph repräsentiert diesen
Sachverhalt:
Eine Planung muss berücksichtigen,
dass keine über eine Kante
verbundenen Prüfungen zur selben
Zeit stattfinden.
1
2
7
3
6
15
5
4
Dies entspricht einer Färbung der
Knoten (Knotenfärbung), wobei die
Farben den Prüfungszeiten
entsprechen und adjazente Knoten
nicht die gleiche Farbe haben
dürfen.
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Bei 4 möglichen Zeiten (rot, blau, grün, gelb)
ergibt sich folgende Färbung:
1
3
6
16
Die Frage ist nun, ob es
Färbungen mit weniger als
4 Farben gibt.
2
7
5
4
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Frage:
Eine Anzahl von Fernsehprogrammen werden
von Stationen in Deutschland ausgestrahlt.
Wie müssen die Übertragungskanäle
zugeordnet werden, damit keine 2 Stationen,
die maximal 200 km voneinander entfernt sind,
über den gleichen Kanal senden?
17
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Lösungsskizze:
Konstruiere einen Graph, in dem die Stationen
als Knoten repräsentiert sind.
Verbinde zwei Knoten, wenn sie maximal 200
km voneinander entfernt sind.
Die gewünschte Zuordnung entspricht einer
Knotenfärbung, wobei jede Farbe einem Kanal
entspricht.
18
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Das klassische Graphfärbungsproblem ist das
Färben von Landkarten, bei dem benachbarte
Länder unterschiedliche Farben bekommen
sollen.
Es ist klar, dass hierbei interessiert, welches die
kleinste Anzahl von unterschiedlichen Farben
ist, die hierfür benötigt werden.
19
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
– Man nimmt hierbei an, dass das Gebiet eines
Landes zusammenhängend ist und Länder, die nur
an einem Punkt zusammenstossen gleich gefärbt
werden dürfen.
20
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
– Das Überführen des Färbungsproblems für
Landkarten auf ein äquivalentes Graphenproblem
ist einfach.
– Graphen, die aus Landkarten entstehen, sind
spezielle Graphen. Auf jeden Fall sind die Graphen
planar. Weiterhin sind die entstehenden Graphen
einfach, weil ein Land nicht an sich selbst angrenzt
oder mehrere Grenzen mit einem anderen Land
hat.
21
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
22
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Definition:
Eine Knotenfärbung (vertex colouring) eines
Graphen G = (V,E) mit k Farben ist eine
Abbildung c: V  [k], so dass gilt:
c(u)  c(v) für alle Kanten {u,v}  E.
Die chromatische Zahl (chromatic number) (G)
ist die minimale Anzahl Farben, die für eine
Knotenfärbung von G benötigt werden.
23
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Beispiele:
– Ein vollständiger Graph mit n Knoten hat
chromatische Zahl n.
24
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Beispiele:
– Ein Kreis gerader Länge hat chromatische Zahl 2.
– Ein Kreis ungerader Länge hat chromatische Zahl 3.
25
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Beispiele:
– Bäume mit  2 Knoten
haben
chromatische Zahl 2.
o
n
h
d
r
m
b
a
e
c
g
q
i
f
26
p
j
k
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
l
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Es ist klar, dass bipartite Graphen immer
chromatische Zahl 2 haben.
Ausnahme: Graph ohne Kanten!
Satz:
Ein Graph G = (V,E) ist genau dann bipartit,
wenn er keinen Kreis ungerader Länge als
Teilgraphen enthält.
27
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Beweis:
Folgt direkt aus dem vorhergehenden Beispiel
und dem folgenden Algorithmus zur Färbung des
bipartiten Graphen.
28
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Algorithmus zum Färben eines bipartiten Graphen.
1.
2.
3.
4.
Bestimme den Knoten, an dem die Färbung beginnen soll, und speichere
ihn in einer Warteschlange ab. Setze die Farbe dieses Knoten auf 0.
Entnimm einen Knoten vom Beginn der Warteschlange und setze die
aktuelle Farbe auf (die Farbe dieses Knotens + 1) mod 2.
1. Hänge alle bisher unmarkierten Nachfolger dieses Knotens ans Ende
der Warteschlange an. Setze ihre Farbe auf die aktuelle Farbe.
Wenn die Warteschlange leer ist, dann wurde jeder Knoten bereits
untersucht. Beende die Färbung.
Wiederhole ab Schritt 2.
Da es keinen Kreis ungerader Länge gibt, kann es keine Kante geben, deren
Endknoten gleiche Färbung erhalten.
29
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färben von Landkarten.
Satz (Vierfarbensatz):
Für jeden planaren Graphen G ist (G)  4.
Die Frage ist nun, wie man eine Färbung eines
Graphen mit möglichst wenigen Farben
berechnen kann.
30
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Der folgende Algorithmus berechnet eine
Färbung eines Graphen, indem die Knoten des
Graphen in beliebiger Reihenfolge besucht
werden und ihnen die jeweils “kleinste” Farbe
zugeordnet wird, die noch nicht vergeben wird.
Der Algorithmus versucht immer, die lokal beste
Möglichkeit zu finden, daher heißt er auch
Greedy-Färbung im Sinne einer gierigen Suche.
31
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Greedy-Färbung:
Eingabe: Graph G = (V,E), wobei V = {v1,…,vn}.
Ausgabe: Färbung c[v].
c[v1]  1;
For i from 2 to n do
c[vi]  min {k  ℕ: k  c(u) für alle u  (vi)  {v1,…,vi-1}};
32
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Analyse der Greedy-Färbung.
– Es wird immer die kleinste Farbe gewählt, die noch nicht
für einen der direkten Nachbarn gewählt wurde.
– Der schlimmste Fall tritt auf, wenn die Nachbarknoten
von vi in den Farben 1,…, deg(vi) gefärbt sind, denn dann
bekommt der neue Knoten die Farbe deg(vi) + 1.
– Ist (G) der maximale Grad der in G vorkommenden
Knoten, dann gilt für die Anzahl der vom GreedyAlgorithmus berechneten Farben C(G):
(G)  C(G)  (G) + 1.
– Die Anzahl der berechneten Farben hängt von der
Reihenfolge der besuchten Knoten ab.
33
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Beispiel:
u1
u2
u3
un
…
…
v1
v2
v3
vn
Bei jeder Anordnung der Knoten, in der immer ein
vi auf ein ui folgt, werden bei Greedy-Färbung stets
n = (G) + 1 Farben verwendet.
34
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Wie kann man nun eine gültige Färbung eines Graphen
mit k Farben berechnen?
– Man beginnt mit dem ersten Knoten und färbt ihn mit Farbe eins. Bei
allen weiteren Knoten verwendet man die niedrigste verfügbare
Farbe, die keinen Konflikt mit bereits eingefärbten Knoten verursacht.
– Es kann sein, dass für den aktuell zu färbenden Knoten keine Farbe
mehr existiert, die ihn konfliktfrei zu den bereits verarbeiteten Knoten
einfärben würde.
– In diesem Fall werden alle Schritte bis zu dem zuletzt gefärbten Knoten
rückgängig gemacht, für den noch andere Farben zur Verfügung
stehen, und man ersetzt seine aktuelle Farbe durch die nächst
niedrigste.
– Ausgehend von dieser veränderten Situation versucht man erneut die
weiteren Knoten einzufärben.
35
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Beispiel:
In diesem Fall führt die Färbung mit zwei Farben
immer in eine Sackgasse.
36
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Der vorgestellte Algorithmus nennt sich
Backtracking-Algorithmus.
– Er versucht, eine erreichte Teillösung schrittweise zu
einer Gesamtlösung auszubauen.
– Wenn der Algorithmus in eine Sackgasse läuft
(endgültige Lösung kann nicht erreicht werden), dann
wird der letzte Schritt bzw. die letzten Schritte
zurückgenommen, und es werden alternative Lösungen
probiert.
– Es werden also alle in Frage kommenden Lösungswege
ausprobiert.
37
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Backtracking-Algorithmus Beispiel (4 Farben):
38
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Backtracking-Algorithmus Beispiel:
39
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Backtracking-Algorithmus Beispiel:
40
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Backtracking-Algorithmus Beispiel:
41
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Backtracking-Algorithmus Beispiel:
42
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Backtracking-Algorithmus Beispiel:
43
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Kapitel IV – Graphen; Eigenschaften
• Färbung von Graphen
Backtracking-Algorithmus Beispiel:
44
Vorlesung Diskrete Strukturen WS 07/08
Prof. Dr. R. Westermann – Institut für Informatik, TU München
computer graphics & visualization
Herunterladen