Approximationsalgorithmen, SoSe 2005

Werbung
2. Aufgabenblatt zur Vorlesung
Approximationsalgorithmen, SoSe 2005
(Christian Knauer, Wolfgang Mulzer)
Abgabe in der Übung
Aufgabe 1 Knotenfärbung
Sei G = (V, E) ein Graph, und sei χ(G) die minimale Anzahl an Farben, welche man
benötigt, um eine Knotenfärbung von G durchzuführen.
(a) Zeigen Sie, dass es immer eine Benennung v1 , v2 , . . . , vn der Knoten von G gibt,
so dass der gierige Algorithmus eine Knotenfärbung mit χ(G) Farben berechnet.
(b) Zeigen Sie, dass immer
χ(G)
|E| ≥
2
gilt. Folgern Sie daraus, dass
1
χ(G) ≤ +
2
r
2 · |E| +
1
4
ist.
Lösung:
Lösung von Michael Schnürmacher
(a) Seien v1 , v2 , . . . , vn optimal gefärbt. Sortiert man die Knoten aufsteigend nach
ihren Farben cv (vi ) ∈ {1, . . . , m} und lässt nun den Algorithmus auf der Eingabe
ohne Färbung laufen, so findet er genau die optimale Färbung, da er jedem
Knoten die Farbe mit minimaler Größe zuweist.
Da sich dies mit jeder optimalen Färbung leicht machen lässt, gibt es immer
eine Anordnung, so dass der gierige Algorithmus eine Färbung findet.
(b) Zu zeigen ist:
χ(G)
|E| ≥
2
Induktion über die Anzahl der Knoten
(a) Induktionsanfang: |V | = 0
Es gibt keine Kanten und χ(G) = 0. Damit ist die Ungleichung 0 ≤ 0
erfüllt.
(b) Induktionsschritt: |V | → |V | + 1
|V | Knoten mit |E| Kanten seien mit einer minimalen Anzahl χ(G) von
Farben knotengefärbt.
Im ersten Fall kommt ein neuer Knoten hinzu und die Anzahl der hinzukommenden Kanten ist ≥ χ(G). Dies bedeutet, dass höchstens eine neue
Farbe eingeführt werden muss. Es gilt also:
χ(G) + 1
|E| + χ(G) ≥
2
(χ(G) + 1)χ(G)
|E| + χ(G) ≥
2
χ2 (G) χ(G)
−
|E| ≥
2
2
(χ(G) − 1)χ(G)
|E| ≥
2
χ(G)
|E| ≥
2
Dies gilt nach Induktionsvoraussetzung.
Im zweiten Fall kommt ein neuer Knoten hinzu und die Anzahl der hinzukommenden Kanten ist < χ(G). Es muss demnach keine neue Farbe
eingeführt werden und die Ungleichung ist trivialer Weise nach Induktionsvoraussetzung erfüllt.
q
1
Für den zweiten Teil soll gezeigt werden, dass χ(G) ≤ 2 + 2|E| + 41 aus
der ersten Ungleichung zu schlussfolgern ist. Dies geschieht durch einfaches
Umformen und quadratische Ergänzung:
χ(G)
|E| ≥
2
(χ(G) + 1)χ(G)
|E| ≥
2
2 · |E| ≥ χ2 (G) − χ(G)
1
1
2 · |E| ≥ (χ(G) − )2 −
2
4
1 2
1
2 · |E| + ≥ (χ(G) − )
4
2
r
1
1
+ 2 · |E| + ≥ χ(G)
2
4
Aufgabe 2 Kantenfärbung
(a) Sei G = (V, E) ein Graph. Entwerfen Sie analog zum gierigen Algorithmus
für die Knotenfärbung aus der Vorlesung einen Algorithmus, der eine Kantenfärbung von G berechnet. Analysieren Sie die absolute Gütegarantie κ Ihres
Algorithmus’ in Abhängigkeit von dem Maximalgrad ∆(G).
(b) Zeigen Sie, dass der in Abbildung 1 dargestellte Graph einen κ-Zeugen gegen
den gierigen Algorithmus darstellt.
Lösung:
Lösung von David S. Karcher
(a) Sei E gegeben als e1 , . . . , en .
Für i = 1 bis n tue:
...
...
...
...
...
Abbildung 1: Ein κ-Zeuge gegen den gierigen Kantenfärbungsalgorithmus.
Färbe ei mit der ersten möglichen Farbe cj (die noch nicht, durch Kante an die
beiden Knoten, an die ei anliegt belegt ist.).
Behauptung: Im worst-case werden 2 · ∆(G) − 1 Farben benötigt.
Beweis: Annahme: Sei ej = {vn , vm } eine Kante die man nach dem obigen
Algorithmus mit Farbe c2·∆(G) gefärbt hat, dass heißt es waren an vn und vm
zusammen 2 · ∆(G) − 1 Farben belegt, das aber bedeutet, dass einer schon den
Maximalgrad ohne die Kante ej , also folgt ein Widerspruch!
(b) Sei n = ∆(G) dann kann der Algorithmus folgendes liefern:
n
12n−1
...
n+1
12n−1
...
n+2
2n − 1
...
12n−1
12n−1
...
...
Wenn als erstes die Kanten zu den linkesten Kindern in der untersten Ebene
gefärbt werden, dann die zu den zweit linkesten, usw. bis zu den rechtesten
Kindern. Zu letzt werden die Kanten von der Wurzel zu ihren Kindern von
links nach rechts gefärbt.
Aufgabe 3 Planare Graphen
Sei G ein beliebiger zusammenhängender planarer Graph mit n Knoten, m Kanten
und f Flächen.
(a) Zeigen Sie durch Induktion nach f , dass n−m+f = 2 gilt. Dies ist die bekannte
Eulersche Formel. An welcher Stelle gibt es einen schwachen Punkt in Ihrem
Beweis?
(b) Sei g die Länge eines kürzesten Kreises in G. Ist G kreisfrei, so setzt man g = ∞.
Man nennt g die Taillenweite (oder girth) von G. Zeigen Sie, dass
m≤
g
· (n − 2)
g−2
ist, und folgern Sie, dass m ≤ 3n − 6 ist.
Hinweis: Sei fi die Anzahl der Flächen in G, die durch i Kanten begrenzt
werden,
P wobei Kanten, die zweimal auftauchen, doppelt gezählt werden. Was
ist i i · fi ?
(c) Folgern Sie, dass K5 und K3,3 nicht planar sind. Wieso ist die Formel m ≤ 3n−6
für den Algorithmendesigner interessant?
(d) Zeigen Sie, dass G immer einen Knoten mit höchstens 5 Nachbarn enthält.
(e) Zeigen Sie, dass χ(G) ≤ 6 ist.
Lösung: (a) Ist f = 1, so gibt es nur die äußere Fläche. Das bedeutet insbesondere,
dass G kreisfrei ist, denn jeder Kreis stellt eine geschlossene Kurve dar, welche
die Ebene in mindestens zwei Flächen teilt (Diese anscheinend harmlose Aussage ist keinesfalls offensichtlich. Es handelt sich dabei um den Jordanschen
Kurvensatz, dessen Beweis alles andere als trivial ist). Da G laut Annahme zusammenhängend ist, ist G ein Baum, und es gilt n − m = 1. Da f = 1 ist, folgt
also n − m + f = 2, wie gewünscht.
Sei nun f > 1, und wir nehmen an, die Formel gelte für alle planaren Graphen,
die eine Einbettung mit weniger als f Flächen besitzen. Sei G ein planarer
Graph, der eine Einbettung mit f Flächen besitzt. Sei e eine Kante in G, die
keine Brücke ist, d. h. eine Kante, die auf einem Kreis liegt. Die Kante e existiert,
denn wäre G kreisfrei, so wäre f = 1. Da die Kante e auf einem Kreis liegt, ist
sie inzident zu zwei verschiedenen Flächen (wieder der Jordansche Kurvensatz ).
Folglich besitzt der Graph G\e, der entsteht, indem man e aus G entfernt, genau
f − 1 Flächen. Da G\e exakt n Knoten und m − 1 Kanten hat, folgt aus der
Induktionsannahme, dass n − (m − 1) + (f − 1) = 2 gilt. Dies ist äquivalent mit
n − m + f = 2, was zu zeigen war.
(b) Wir nehmen an, dass G mindestens einen Kreis enthält, denn sonst gilt die
Formel ohnehin. Zunächst einmal gilt
∞
X
i · fi = 2m,
i=0
denn jede Kante taucht genau zweimal in der Summe auf der linken Seite auf,
wenn wir die Konvention verwenden, dass Brücken doppelt gezählt werden. Da
der Rand einer jeden Fläche einen Kreis enthält und alle Kreise mindestens die
Länge g haben, ist fi = 0 für i < g, also ist
∞
X
i · fi ≥ g · f.
i=0
Es folgt also
2m
.
g
Setzt man diese Abschätzung in das Ergebnis aus (a) ein, so erhält man
2m ≥ g · f ⇔ f ≤
2=n−m+f ≤n−m+
⇔m≤
g
(n − 2) ,
g−2
2m
g
wie verlangt. Da wir keine Mehrfachkanten zulassen, besitzt jeder Kreis mindestens drei Kanten, es ist also g ≥ 3, folglich m ≤ 3n − 6, denn die Funktion
g
g 7→ g−2
, ist monoton fallend für g ≥ 3. Die Abschätzung gilt auch für kreisfreie
Graphen mit mindestens drei Knoten.
(c) Der K5 hat n = 5 Knoten und m = 52 = 10 Kanten. Es ist also m = 10 >
9 = 3n − 6. Das widerspricht der Abschätzung aus (b), also kann der K5 nicht
planar sein.
Der K3,3 hat n = 6 Knoten und m = 3 · 3 = 9 Kanten. Hier gilt m = 9 ≤
12 = 3n − 6. Dennoch ist der K3,3 nicht planar, denn der K3,3 ist bipartit,
und bekanntlich besitzen bipartite Graphen keine Kreise ungerader Länge. Alle
Kreise im K3,3 haben also mindestens die Länge 4. Aus der Abschätzung in Teil
(b) folgt somit, dass m ≤ 2n − 4 sei muss, falls K3,3 planar ist. Allerdings ist
m = 9 > 8 = 2n − 4, und K3,3 ist nicht planar.
Die Abschätzung m ≤ 3n − 6 ist deswegen interessant, weil sie besagt, dass
in planaren Graphen die Anzahl der Kanten linear in der Anzahl der Knoten
beschränkt ist. Diese Aussage ist wichtig, da die Laufzeit vieler Algorithmen
von der Anzahl der Kanten abhängt, und in allgemeinen Graphen die Anzahl
der Kanten quadratisch in der Anzahl der Knoten werden kann.
(d) Besitzt G höchstens zwei Knoten, so ist die Aussage klar. Ansonsten gilt die
Abschätzung m ≤ 3n − 6. Bezeichne ni die Anzahl der Knoten mit Grad i für
i ∈ N0 . Dann gilt bekanntlich
∞
X
i · ni = 2m ≤ 6n − 12.
i=0
Also ist
12 ≤
∞
X
(6 − i)ni .
i=0
Der Wert der Summe auf der rechten Seite muss positiv sein. Alle Knoten vom
Grad mindestens 6 tragen aber nichtpositive Werte zur Summe bei. Folglich
muss mindestens eine Knoten vom Grad ≤ 5 existieren, denn sonst wäre der
Wert der Summe negativ.
(e) Wir führen den Beweis durch Induktion nach der Anzahl der Knoten n in G.
Ist n ≤ 6, so ist die Aussage klar. Sei nun n > 6, und nehmen wir an, dass
alle planaren Graphen mit weniger als n Knoten 6-knotenfärbbar sind. Sei v
ein Knoten in G mit höchstens 5 Nachbarn. Nach Induktionsannahme ist G\v
mit sechs Farben färbbar, denn er ist ein planar Graph mit n − 1 Knoten. Da
v höchstens 5 Nachbarn hat, haben wir immer eine freie Farbe zur Verfügung,
mit der wir v färben können. Folglich ist auch G 6-färbbar.
Herunterladen