Beispiel 3.. Wir etrachten das folgende nicht gerichtete Netzwerk: v=a 9 4 c 5 2 1 6 4 d e 13 1 f 26 18 3 5 4 g 2 2 h i Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 86 Bemerkung 3.6. Der Algorithmus kann leicht so erweitert werden, daß nicht nur die Astände sondern auch die kürzesten Wege erechnet werden. In einem Netzwerk mit negativen Katenlängen ist es möglich, daß der Dijkstra-Algorithmus falsche Astände erechnet und zwar selst dann, wenn keine Kreise negativer Länge existieren. Durch Wahl einer geeigneten Datenstruktur für die Selektion des Knotens in Schritt 3 kann die Laufzeit u.u. erhelich veressert werden. Für die Berechnung von Routen in Straßennetzen enötigt man optimierte Varianten des Dijkstra-Algorithmus. Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 8
' ' ' Kürzeste Wege in DAGs Da in DAGs keine Kreise auftreten, hat man auch kein Prolem mit negativen Längen. Satz 3.6. Gegeen sei ein gerichtetes Netzwerk mit. Wir lassen auch! "## %$& zu. ( sei )* eine topologische Sortierung von. Dann ergit sich die Länge ' eines kürzesten Weges (*+ * von zu einem Knoten durch die folgende Rekursion für 1. ' :, -. 2. Für /1 2 : (* 3 4 65&(8 *9;:;< =?><6@A?BDCFE G ( *+ IH min ( Beispiel 3.8. Tafel. Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 88 Bemerkung 3.. Ersetzt man in Satz 3.6 min durch max, so erhält man die Länge eines längsten Weges. Das allgemeine Entscheidungsprolem, o in einem (ungerichteten) LNM Netzwerk ein (einfacher) Weg der Länge J K existiert, ist dagegen -vollständig. Die in Satz 3.6 angewendete Vorgehensweise, eine optimale Lösung durch eine estmögliche Komination von Suprolemen zu finden, nennt man dynamisches Programmieren. Satz 3.6 läßt sich in einen Algorithmus mit Zeitkomplexität O umsetzen. Beweis. Mit Induktion üer /. Tafel. W 6P PQHRPTSUPV Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 89
2 / Bemerkung 3.8. Mit dem Verfahren aus Algorithmus 3.6 können nicht nur kürzeste zw. längste Wege sondern auch Anzahlen von Wegen erechnet werden. Z.B. die Anzahl der verschiedenen Wege von * nach. Hierfür muß der Minimum-Operator nur durch die Summenildung ersetzt werden. Für optimale Wege in DAGs git es eine Fülle von Anwendungen. Wir etrachten zwei: Optimale Einteilung in Blöcken (z.b. in der Textverareitung) Projektplanung Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 9 Blocksatzildung Beispiel 3.9. [Berechnung optimaler Blockungen] Gegeen ist eine Folge X YZ # #[\ Jeder Gegenstand hat eine Länge K von [ Gegenständen.. Die Gegenstände sollen in Blöcke eingeteilt werden, woei die Idealgröße eines Blockes ] ist. Die Gesamtlänge der Gegenstände in einem Block darf ] nicht üersteigen. Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 91
t 2 o / Die Gegenstände dürfen nicht umsortiert werden. Ein Block ] sich also durch einen Index / mit (^_ H / 2 ist das erste Element im Block und / ist das letzte Element im Block ]. ergit Für die Aweichung der Länge eines Blockes ] Ia c)d *(= * =Ve#fg K ihj von ] wird eine Bewertung definiert, die monoton in. der Größe der Aweichung ist, z.b. ]lkm ) n Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 92 Gesucht ist eine Blockung, die eine möglichst kleine Bewertung hat, also eine Anzahl o p an Blöcken und eine Folge s"s"s m[ /6t mit nvuxw d ]lkm min /rq / n unter den Bedingungen * = c)d * =Veyfg K ihj {z ] für Y " "y Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 93
/ ~ K 2 ~ K ] 2 2 Beispielprolem: Länge der Gegenstände: }x+}x Blockgröße: 1 gierige Einteilung: ~ 2 }x} ~(2 ~(2, Bewertung: 81 andere Einteilung: ~ y ~(2 +} }x 2 ~(2, Bewertung: 33 Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 94 Modellierung des Prolems als Wegeprolem: a m +&Y ""#+[ ƒ S a m! P / und c)d * g G a Gewichte: / ]lk ihj {z c)d * g ihj n Jeder Weg von nach [ definiert dann eine zulässige Einteilung in Blöcke, woei die Bewertung dieser Blockung gleich der Länge des Weges ist. Also: Finde einen Weg minimaler Länge von nach [. Auf diesem Prinzip asiert die Formatierung in TeX. Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 95
Projektplanung mit Netzplantechnik Beispiel 3.1. [Netzplantechnik mit CPM] Bei der Durchführung umfangreicher Projekte ist es erforderlich, daß einzelne Teilaufgaen (Jos) zeitlich genau aufeinander agestimmt werden. Hierfür werden häufig Methoden der Netzplantechnik eingesetzt. Die ekannteste Methode der Netzplantechnik heißt CPM (Critical Path Method). ˆ Ž hat eine zugeordnete Dauer sowie eine Menge Œ ˆ von Vorgängern. Nˆ sei die Menge der Jos eines Projekts. Jeder Jo Š Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 96 Ein Jo kann erst dann gestartet werden, wenn alle Jos aus Œ eendet wurden. Wir gehen davon aus, daß Jos parallel eareitet werden können. Man möchte z.b. wissen: A welchem Zeitpunkt kann mit einem Jo egonnen werden? Wie lange wird ein Projekt dauern? Welche Jos sind esonders kritisch in ezug auf die Gesamtdauer eines Projekts? Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 9
Beispiel 3.11. Zusammenau eines Fahrrads: Jo Beschreiung Dauer Vorg. a Rahmen vorereiten (Gael, Schutzleche, usw.) 6 Kettenführung anringen 2 c Gangschaltung anringen 3 d Kettenlatt an Kurel montieren 4 e Vorderrad montieren und anpassen 6 a f Hinterrad montieren und anpassen 6 a,c g Kurel am Rahmen anringen 3 d h Endmontage (Lenker, Sattel, usw.) 12 e,f j Linkel Pedal anringen 3 c,g k Rechtes Pedal anringen 3 c,g Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 98 Die Ahängigkeiten der Jos untereinander können wir in Form eines DAGs repräsentieren. Die Knoten stellen hierei die Jos dar. Die Kanten stellen Vorgängereziehungen zwischen den Jos dar. e a f h c j d g k Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 99
Die Jos und können offensichtlich sofort egonnen werden. Der Jo kann egonnen werden, wenn eendet ist und wenn eendet ist. ist nach einer Dauer von 6 eendet, nach einer Dauer von 5, da erst gestartet werden kann, wenn eendet ist. Somit kann zum Zeitpunkt 6 egonnen werden. Allgemein: Der frühste Starttermin eines Jos ergit sich durch einen Weg zu diesem Jo mit maximaler Gesamtdauer. Hier liegen die Bewertungen nun auf den Knoten. Tafel: Frühste Starttermine für die Jos des Beispiels. Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 1 Die Critical-Path-Method CPM stellt eine Modellierung dar, ei der die Jos die Kanten eines DAGs sind. Die Knoten können als Fertigstellungsereignisse angesehen werden. Projekteginn a 6 2 c 3 d 4 r e 6 h 12 f 6 j 3 Projektende g 3 k 3 Die Kanten stellen einen längsten Weg vom Projekteginn zum -ende dar (kritische Pfad). Die Gesamtlaufzeit des Projekts ist also 24. Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 11
Für die Projektplanung sind u.a. die folgenden interessant: Projektdauer : Länge eines längsten Weges (kritischer Pfad) vom Projekteginn is zum Projektende. Starttermin für Jos : Länge eines längsten Weges is zum Startknoten von. Zeitkritische Jos: Alle Jos, die auf einem kritischen Pfad liegen. Pufferzeit für Jo : k Länge eines längsten Weges, der Kante enthält. Und warum verzögern sich Projekte trotz ausgefeilter Planungsmethoden? Siehe Üungen. Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 12 Zusammenfassung des Kapitels Charakterisierung und Berechnung von Eulerwegen (Hierholzer- Algorithmus) Hamiltonsche Wege und Kreise (Berechnung ist schwer) Dijkstra-Algorithmus zur Ermittlung kürzester Wege Dynamische Programmierung zur Berechnung kürzester Wege in DAGs Anwendungen: Blocksatzildung und Netzplantechnik Einführung in die Graphentheorie FH Bonn-Rhein-Sieg, WS 1/2 13