Rolf Wanka Erlangen, 22. Mai 2009 Übungen zur Vorlesung Approximationsalgorithmen SS 2009 Blatt 2 (c) Kann man mit der Reduktion aus (a) und dem Algorithmus aus (b) einen guten Approximationsalgorithmus für IS angeben? Welche Güte erreichen Sie? AUFGABE 6: Betrachten Sie den in der Abbildung dargestellten Graphen G. Die eingezeichneten Kanten haben die Länge 1, alle anderen Abstände ergeben sich als Länge eines kürzesten Weges über die eingezeichnete Kanten. Für diese Abstände gilt die Dreiecksungleichung. Auf diesem Graphen soll das ∆TSP gelöst werden. 5 AUFGABE 4: Sei G = (V, E) ein Graph. χ(G) bezeichnet die minimale Zahl an Farben, mit der man auskommt, eine korrekte Knotenfärbung von G durchzuführen. χ(G) ist die chromatische Zahl von G. Zeigen Sie: q χ(G) ≤ 12 + 3 1 2 · |E| + 14 Hinweis: Zeigen Sie, daß in einer minimalen Knotenfärbung cmin für jedes Farbpaar (i, j) zwi−1 schen Knotenmenge c−1 min (i) und cmin ( j) mindestens eine Kante existiert. Wieviele Kanten muß es deswegen mindestens geben? AUFGABE 5: Sei G = (V, E) ein Graph. Eine Knotenüberdeckung (engl.: vertex cover) ist eine Knotenmenge C ⊆ V , so daß für jede Kante / Das NP-vollständige Entscheidungsproblem VC ist die Frage, ob {u, v} ∈ E gilt: {u, v} ∩ C 6= 0. es zu gegebenem Graphen und einer Zahl K eine Knotenüberdeckung C gibt mit |C| ≤ K. Beim entsprechenden Optimierungsproblem soll eine kleinste Knotenüberdeckung bestimmt werden. Eine Knotenmenge U ⊆ V heißt unabhängige Menge (engl.: independent set), wenn für alle u, v ∈ U gilt: {u, v} 6∈ E. Das NP-vollständige Entscheidungsproblem IS ist die Frage, ob es zu gegebenem Graphen und einer Zahl K eine unabhängige Menge U gibt mit |U | ≥ K. Beim entsprechenden Optimierungsproblem soll eine größte unabhängige Menge bestimmt werden. (a) Zeigen Sie: C ist genau dann eine Knotenüberdeckung von G = (V, E), wenn U = V \C eine unabhängige Menge ist. Zeigen Sie außerdem: C ist genau dann eine optimale Lösung für VC, wenn U = V \C eine optimale Lösung für IS ist. Hinweis: Dies sind die sehr einfachen Reduktionen, die man anwendet, wenn man IS auf VC und umgekehrt für NP-Vollständigkeitsbeweise reduziert. (b) Zeigen Sie, daß der nachfolgende Algorithmus G REEDY VC das Problem VC mit relativer Güte 2 approximiert. A LGORITHMUS G REEDY VC / C := 0; while E 6= 0/ do wähle eine Kante {u, v} aus G; C := C ∪ {u, v}; lösche in G die Knoten u und v und die zu ihnen adjazenten Kanten done; gib C aus. 4 n 2 Zeigen Sie mittels G, daß der einfache Approximationsalgorithmus M ST ∆TSP, der (1) einen minimalen Spannbaum T berechnet, (2) die Kanten von T verdoppelt, (3) darauf eine Euler-Tour berechnet und dann (4) doppelte Knoten in der Euler-Tour löscht, 1 haben kann. eine relative Abweichung von 2 − n/2 Zur Erinnerung: In der Vorlesung haben wir gesehen, daß M ST ∆TSP die relative Gütegarantie 2 − 1 n/2 hat. AUFGABE 7: Diese Aufgabe stellt eine einfache Anwendung des TSP vor. Gegeben ist auf der Rückseite des Übungsblattes eine Leiterplatte der Größe 11 × 11 und darauf 18 markierte Stellen, in die jeweils ein Loch gebohrt werden soll. Ein Bohrer fährt, von zwei Motoren angetrieben, einer für die x-Richtung, einer für die y-Richtung, die markierten Stellen ab und bohrt jeweils das gewünschte Loch. Der Verschleiß an den beiden Motoren ist proportional zur Summe der Beträge der in x- und y-Richtung zurückgelegten Abstände. Z. B. ist der Abstand von Loch 4 zu Loch 5 (und umgekehrt) gleich 3 (Manhattan-Norm). Der Bohrer beginnt bei Loch 1, soll alle Löcher bohren und zum Ende wieder bei Loch 1 sein, um die nächste Leiterplatte bearbeiten zu können. (a) Finden Sie auf der gegebenen Leiterplatte eine solche Bohrtour mit geringem Verschleiß. Hinweis: Kürzeste Touren haben die Länge 58. (b) Berechnen Sie Rundreisen mit Christofides’ Algorithmus und mit dem Algorithmus, der die Kanten des minimalen Spannbaums verdoppelt.