Theoretische Informatik 2 - Hausaufgaben Serie 6 Andreas Furtner, Christoph Böhm, Michael Hempel (#172575 – #173585 – #159149) Aufg. 14 a) geg.: Graph G = (V, E) mit n = |V |. z.Zg.: ∃ 2-Approximationsalgorithmus für HAMILTON WEG.: Sei Wopt ein optimaler Weg (also minimal). |E(Wopt )| ≥ n − 1, denn Wopt ist Weg (immer zus.-hgd.) über n Knoten. Betrachten folgenden Algorithmus, der einen Weg der Länge ≤ 2(n − 1) liefert: 1. Starte modifizierte Tiefensuche (DFS) in beliebigen Knoten s, welche statt pred(v) ein Feld succ(v) mit allen noch nicht besuchten Nachbarn von v ausgibt. 2. klar: DFS liefert über das Feld succ(v) einen spannenden Baum B für G mit Kantenzahl n − 1. 3. bauen Hamilton-Weg Wapx für G indem wir diesen Spannbaum entlanggehen: 4. gehe von s aus nacheinander zu allen Folgeknoten laut DFS und wieder zurück zu s. Wenn man dies nacheinander für alle Nachbarn von s macht (und rekursiv für deren Nachbarn), werden alle Kanten von B genau 2-mal besucht. 5. |E(Wapx )| = 2(n − 1). 6. DFS polynomial und Durchgang durch den Baum wg. 2(n − 1) Kanten ebenfalls. Da gesuchter Algorithmus sogar nur die Länge eines Hamilton Weges ausgeben muß und obiges Verfahren beweist, daß es in zusammenhängenden Graphen immer einen Weg der Läng 2(n-1) gibt, kann der Algo auch direkt (ohne DFS) für zusammenhängende Graphen 2(n-1) ausgeben, falls die Eingaben auf solche Graphen beschränkt sind. Dann sogar Laufzeit O(1) und immer noch geforderte Güte. n b) z.Zg: falls P 6= N P ⇒ @R-Approximationsalg. für LÄNGSTER KREIS mit R < n−1 . (Beweis durch Kontraposition) n Annahme: ∃R-Algorithmus M, mit R < n−1 . Zu geg. Graphen G sei Copt ein längster Kreis. M ist für G in |C | = n−1 der Lage eine Länge > opt n n · |Copt | in Polynomialzeit zu liefern. n−1 Wir benutzen M, um HAMILTONIAN in PolyZeit zu lösen: n−1 Fall 1: G ist Hamiltonsch. Also |Copt | = n. M berechnet mindestens Länge > n−1 n · |Copt | = n · |n| = n − 1. Wegen Länge > n − 1 folgt Länge n für die Ausgabe von M, da natürlich keine “gebrochenen” Kreise konstruiert werden. Fall 2: G nicht Hamiltonsch. Dann hat G keinen Kreis der Länge n. Also kann auch M keinen Kreis der Länge n finden und gibt eine Zahl < n aus. ⇒: Setzte M auf G an, bei Erg. n ist G Hamiltonsch, sonst nicht. ⇒: M entscheidet HAMILTONIAN in Polynomialzeit und da HAMILTONIAN N P -vollständig folgt P = N P . Widerspruch zur Vorraussetzung. Also kann es unter dieser Voraussetzg. keinen solchen Algorithmus geben. 1 Th3 HA Serie 4 Andreas Furtner #172575 Ü-Gr. Do/1 14-16 bei T. Nierhoff Christoph Böhm #173585 Michael Hempel #159149 Aufgabe 15 a) z.Zg.: Für Graphen mit Maximalgrad ∆ ex. ein ∆ + 1-Approximationsalgorithmus für INDEPENDENT α(G) SET-O. D.h. Algorithmus, muß zu Graphen G eine Zahl αapx ≥ ∆(G)+1 liefern. Verwenden Greedy-Färbung auf G. Greedy färbt mit k Farben, wobei die Farbklassen jeweils stabile Mengen sind. Wissen (aus Th. Inf 2), daß Greedy immer mit k ≤ ∆(G) + 1 Farben auskommt, also maximal ∆(G) + 1 Farbklassen liefert. Suchen Farbklasse S mit maximaler Anzahl Knoten und bestimmen αapx = |S|: |V | |V | |S| ≥ ∆(G)+1 , da bei ≤ ∆(G) + 1 Farbklassen mindestens eine ≥ ∆(G)+1 Elemente enthalten muß (sonst wären |V | |V | ∆(G)+1 − 1 < ∆(G) + 1 · ∆(G)+1 − 1 < |V | α(G) α(G) ∆(G)+1 ≥ ∆(G)+1 und somit αapx ≥ ∆(G)+1 . nur k · |V | Knoten gefärbt worden). Da logischerweise |V | ≥ α(G) folgt Da Greedy in polynomieller Zeit implementiert werden kann und das Bestimmen der größten Farbklasse sowie deren Mächtigkeit ebenfalls polynomiell ist, leistet dieser Algorithmus das Verlangte. 2