Formale Methoden der Informatik WS 2010/2011 Lehrstuhl für Datenbanken und Künstliche Intelligenz Prof. Dr. Dr. F. J. Radermacher • H. Ünver • T. Rehfeld • J. Dollinger 7. Aufgabenblatt Besprechung in den Tutorien vom 15.12.2010 (ab Übungstermin) bis 22.12.2010 (bis Übungstermin) 34. Aufgabe (4 Punkte) Verständnisfragen: a) Was ist eine k-Färbung eines Graphen? Eine Zuordnung von k Farben zu den Knoten, so dass zwei durch eine Kante benachbarte Knoten nicht die gleiche Farbe haben. Definition: Es sei G = (V, E) ein Graph und k ∈ N. Eine k-Färbung (mit den Farben 1, . . . , k) von G ist eine Abbildung f : V → {1, . . . , k} mit f (x) = f (y) für alle Kanten {x, y} ∈ E. b) Was ist die chromatische Zahl eines Graphen? Die kleinste Zahl k ∈ N∗ , sodass der Graph eine k-Färbung bsitzt, also mit k Farben gefärbt werden kann. Definition: Die chromatische Zahl χ(G) von G ist das kleinste k, so dass G eine k-Färbung besitzt. c) Was ist ein bipartiter Graph? Ein Graph, bei dem man die Knotenmenge V in zwei disjunkte Mengen V1 und V2 aufteilen kann, sodass es nur Kanten zwischen den Knoten aus der Menge V1 und der Menge V2 gibt, nicht aber innerhalb der gleichen Menge. d) Was ist ein planarer Graph? Ein Graph, der kreuzungsfrei gezeichnet werden kann. e) Wann ist ein Graph planar? Wenn er die Teilgraphen K3,3 und K5 nicht enthält. f) Was für Graphen werden in der Netzplantechnik verwendet? Gerichtete azyklische (kreisfreie) Graphen. g) Aus welchen Komponenten bestehen diese Graphen? Aus Knoten=Tätigkeiten mit Zeitdauer; Aus gewichteten Kanten=Übergangszeit zwischen den Tätigkeiten. h) Was ist ein kritischer Pfad? Der längste Pfad vom Startknoten zum Endknoten. 1 35. Aufgabe (4 Punkte) Algorithmus von Ford / Fulkerson: 4 ....... ..... ...... ..... . .... ..... . . . . . . . . . . . . ............. ...... ...... ..... . . . . . . ... ...... ... ...... ... ...... ... ..... ..... . ... . . . .... ... . . . . .. ... . . . . . . . . . . . ... ......... ................ . . .... .. .. ......... ... . . . . ... .. ...... .......... . . ............. ..... ..... ...... .......... ...... . ..... ... ..... ...... ... ..... ... ..... ...... .. . ..... ... ...... .......... ............. ..... ... ... .... . ... ............... b 2 Quelle 3 a 2 2 4 e 1 c 3 ................. .. ... .. . ........... ..................... ..... . ..... ........ ..... . . ...... ..... ... ..... .. . ..... ...... .... ...... . . ..... .. ..... . ....... ...... .. . . . . . . . .......... ..... .... ..... . . ... . .. .. . .... . ........... . .. ................ .......................... ... . . . . ... ..... ... ..... ...... ... ...... ... ...... . ... . . . ... ..... ...... . ...... .......... ...... ...................... . . ... .. .. . ........... ................ 4 f h 6 d 2 Senke 4 g a) Bestimmen Sie mit dem Algorithmus von Ford und Fulkerson für den gegebenen Graphen einen maximalen Fluss von der Quelle zur Senke. ausführlich: kürzer: Erweiterungspfad Restkap. / Flusserh. a-b-e-h: a-b: b-e: e-h: 2−0 4−0 4−0 = = = min: 2 4 4 2 a-c-f-e-h: a-c: c-f: f-e: e-h: 3−0 2−0 1−0 4−2 = = = = min: 3 2 1 2 1 a-c: c-b: b-e: e-h: 3−1 3−0 4−2 4−3 = = = = min: 2 3 2 1 1 a-d-g-h: a-d: d-g: g-h: 4−0 2−0 4−0 = = = min: 4 2 4 2 a-c-f-g-h: a-c: c-f: f-g: g-h: 3−2 2−1 6−0 4−2 = = = = min: 1 1 6 2 1 a-d: d-c: c-b: b-e: e-f: f-g: g-h: 4−2 = 2−0 = 3−1 = 4−3 = 0 −(−1) = 6−1 = 4−3 = min: 2 2 2 1 1 5 1 1 a-c-b-e-h: a-d-c-b-e-f-g-h: Maximaler Fluss: 8 b) Geben Sie einen minimalen Schnitt an. {(b, e), (c, f ), (d, g)} oder {(e, h), (g, h)} 2 Erweiterungspfad a-b-e-h a-c-f-e-h a-c-b-e-h a-d-g-h a-c-f-g-h a-d-c-b-e-f-g-h Flusserhöhung 2 1 1 2 1 1 Max-Flow 8 anderer Weg: Erweiterungspfad a-c-b-e-h a-d-g-h a-d-c-f-g-h a-b-e-h Flusserhöhung 3 2 2 1 Max-Flow 8 (gegen die Kantenrichtung) 36. Aufgabe (2 Punkte): Achilles veranstaltet wieder ein Wettrennen gegen die Schildkröte. Da Achilles genau doppelt so schnell läuft wie die Schildkröte, lässt sich Achilles erneut auf erweiterte Spielregeln ein. Um der Schildkröte einen Vorteil zu verschaffen, erhält diese zunächst einen Vorsprung von 100 Metern. Achilles läuft diesmal zunächst 150 Meter vor, dann wieder 50 Meter zurück, dann wieder 150 Meter vor, dann wieder 50 Meter zurück, u.s.w. Wann holt Achilles diesmal die Schildkröte ein? Mit diesen Regeln holt Achilles die Schildkröte gar nicht ein. Achilles läuft drei mal 50 Meter vor und einmal 50 Meter wieder zurück. 50 + 50 + 50 − 50 = 100 Dann wiederholt sich das ganze. Die Schildkröte läuft mit der halben Geschwindigkeit, läuft aber niemals zurück. In der selben Zeit, in der Achilles 50 Meter läuft (gleichgültig in welche Richtung), läuft die Schildkröte jeweils 25 Meter (aber immer in die selbe Richtung). 25 + 25 + 25 + 25 = 100 Beide haben also im Mittel die gleiche Geschwindigkeit. Da die Schildkröte am Anfang 100 Meter Vorschprung erhält und Achilles zeitweilig die doppelte Geschwindigkeit läuft, würde er theoretisch die Schildköte nach 200 Metern erreichen können. Da Achilles jedoch jedesmal bereits nach 150 Metern wieder umkehrt, kommt er nicht an die Schildkröte heran. Da Achilles Geschwindigkeit im Mittel (d.h. über die Perioden hinaus) die gleiche ist wie die der Schildkröte, ändert sich der minimale Abstand, der verbleibt, auch niemals. Weg / Meter 400 350 Schildkröte Achille 300 250 200 150 100 50 0.5 1 1.5 2 2.5 3 3.5 4 3 4.5 5 5.5 6 6.5 7 7.5 Zeiteinheiten 37. Aufgabe (2+2+1+1 Punkte) Färbung von Graphen: Gegeben sei der Graph G = (V, E) mit V = {B, Bay, Brand, BW, HB, Hess, HH, NieS, NRW, M VP, RP, Sa, SaAn, SchlH, SL, Thür} Die angegebenen Knoten stehen für die Bundesländer Berlin, Bayern, Brandenburg, Baden-Württemberg, Hansestadt-Bremen, Hessen, Hansestadt-Hamburg, Niedersachsen, Nordrhein-Westfalen, Mecklenburg-Vorpommern, Rheinland-Pfalz, Sachsen, Sachsen-Anhalt, Schleswig-Holstein, Saarland, Thüringen. a) Zeichnen Sie einen Graphen, der alle Bundesländer mit ihren Nachbarschaftsbeziehungen zu anderen Bundesländern wiedergibt. b) Färben Sie den Graphen (entweder mit Farben oder durch eine Markierung der Knoten mit Zahlen). 1 SchlH rot Beispielsweise: 1 rot HB 1 NRW rot 1 rot SL 2 grün HH 4 MVP blau 3 gelb NieS 1 SaAn rot 2 grün RP 4 blau Hess 1 rot BW 3 gelb Bay c) Ist der Graph planar? Ja. d) Wieviele Farben benötigen Sie? Vier. 4 2 grün Thür 1 rot B 2 Brand grün 4 blau Sa 38. Aufgabe (10 Punkte) Planare Graphen: a) Besuchen Sie folgenden Link: http://www.planarity.net/. Versuchen Sie, das vierte Level des Spiels zu erreichen. Ziel des Spiels, ist es die Knoten so zu platzieren, dass ein planarer Graph entsteht. Gegeben sei folgender Graph G = (V, E): a b f c e d b) Ist der Graph G planar? (Begründen Sie Ihre Aussage) Ja. Die einzig notwendige Begründung ist eine planare Zeichnung des Graphen. Beispielsweise: a b f c e a a e d d f c d d e b b c a f b e c d b e f c f a d b d b c f f c a e a e c) Entfernen Sie eine Kante aus dem Graphen und fügen Sie eine neue hinzu, sodass der Graph nicht planar gezeichnet werden kann. Was für ein Graph muss dann entstehen? Damit der Graph nicht planar ist, muss er den K5 oder K3,3 enthalten. Hier liegt der K3,3 recht nahe, da der Graph sechs Knoten hat und bereits eine ähnliche Anzahl von Kanten (9 Kanten) wie der K3,3 . Entferne die Kante (a, d), füge die Kante (d, e) hinzu und dann entsteht der K3,3 . d b f c a e 5 d) Bestimmen Sie die chromatische Zahl für diesen Graphen. χ(G) = 3. Begründung: Angabe einer möglichen Färbung: {b, c, e} Farbe 1; {d, f } Farbe 2; {a} Farbe 3; Eine andere mögliche Färbung: {b, c, e} Farbe 1; {a, f } Farbe 2; {d} Farbe 3; Eine andere mögliche Färbung: {b, c} Farbe 1; {d, e} Farbe 2; {a, f } Farbe 3; e) Welche Untergraphen verhindern, dass die chromatische Zahl kleiner ist? Die zwei K3 -Untergraphen {a, c, d} und {a, b, d} (Bemerkung: Ein solcher vollständiger Untergraph wird auch als Clique bezeichnet.) f) Welche Kante muss man entfernen, damit die chromatische Zahl von G um Eins kleiner wird. Die Kante, die diese Untergraphen gemeinsam haben (a, d), so dass beide keine vollständigen K3 Graphen mehr sind. g) Fügen Sie ein Kante hinzu, so dass die chromatische Zahl um Eins größer wird. Durch Hinzufügen der Kante (b, c) entsteht ein K4 gebildet aus {a, b, c, d} und die chromatische Zahl wird um Eins größer. h) Was für einen Untergraphen enthält nun der entstandene Graph. Einen Untergraphen der Größe vier gebildet aus {a, b, c, d}. i) Geben Sie einen Graphen an, in dem kein vollständiger Untergraph der Größe drei (K3 ) vorhanden ist, aber dessen chromatische Zahl drei beträgt. Ein Graph, der nur aus einem Zyklus der Lnge fünf besteht. G = ({a, b, c, d, e} , {{a, b} , {b, c} , {c, d} , {d, e} , {e, a}}) j) Welcher Zusammenhang besteht zwischen der chromatischen Zahl und der Größe eines vollständigen Untergraphens? Die chromatische Zahl eines Graphen ist immer größer oder gleich mit der Größe des größten vollständigen Untergraphen aus diesem Graphen. 6