Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Flussprobleme in Graphen und ihre Anwendung auf 0/1-Netzwerke Informatikseminar WS04/05 Claudia Padberg WI4409.

Ähnliche Präsentationen


Präsentation zum Thema: "Flussprobleme in Graphen und ihre Anwendung auf 0/1-Netzwerke Informatikseminar WS04/05 Claudia Padberg WI4409."—  Präsentation transkript:

1 Flussprobleme in Graphen und ihre Anwendung auf 0/1-Netzwerke Informatikseminar WS04/05 Claudia Padberg WI4409

2 2 Flüsse in Netzwerken Transport von Datenmengen durch ein Netzwerk Netzwerke besitzen obere Kapazitätsbeschränkungen Suche nach Verfahren zur Bestimmung maximaler Flüsse

3 3 Übersicht Theoretische Grundlagen Satz von Ford und Fulkerson Bestimmung von Erweiterungswegen Algorithmus von Edmonds und Karp Algorithmus von Dinic 0-1-Netzwerke

4 4 Übersicht Theoretische Grundlagen q-s-Netzwerk q-s-Fluss Wert eines Flusses q-s-Schnitt Erweiterungswege Satz von Ford und Fulkerson Bestimmung von Erweiterungswegen Algorithmus von Edmonds und Karp Algorithmus von Dinic 0-1-Netzwerke

5 5 Theoretische Grundlagen q-s-Netzwerk kantenbewerteter, gerichteter Graph mit ausgezeichneten Ecken q und s N = (G, q, s, c) mit G = (E, K ) E = {e 1...e n } Eckenmenge K = {k 1...k m }Kantenmenge c (e) = Kapazität c der Kante e q = Quelle s = Senke

6 6 Theoretische Grundlagen q-s-Netzwerk q 6 4 s

7 7 Theoretische Grundlagen q-s-Fluss Funktion f, die jeder Kante k des Netzwerkes eine nichtnegative, reelle Zahl zuordnet Bedingungen Der Fluss entspricht maximal der Kapazität der Kante Der Fluss in eine Ecke e ist gleich dem Fluss aus dieser Ecke

8 8 Theoretische Grundlagen q-s-Fluss q 6 4 s /40 20/37 30/30 0/50 10/10 0/54 0/2020/32 0/17 10/22

9 9 Theoretische Grundlagen Wert eines Flusses |f | Summe aller Flüsse aus der Quelle Summe aller Flüsse in die Senke Was aus der Quelle hinaus fließt, fließt in die Senke hinein

10 10 Theoretische Grundlagen Wert eines Flusses |f | q 6 4 s /40 20/37 30/30 0/50 10/10 0/54 0/2020/32 0/17 10/22 |f |= 30

11 11 Theoretische Grundlagen q-s-Schnitt von G Eine Partition von E in die Mengen X und X, so dass q ε X und s ε X

12 12 Theoretische Grundlagen q-s-Schnitt von G q 6 4 s /40 20/37 30/30 0/50 10/10 0/54 0/2020/32 0/17 10/22 C(X, X)= 101f(X, X)= 30 X={q,1,2,4}X={3,5,6,s}

13 13 Theoretische Grundlagen Erweiterungsweg EW Weg auf dem zu G entsprechenden ungerichteten Graphen G u, über den ein neuer Fluss mit höherem Wert erzeugt werden kann Bedingungen bei Vorwärtskanten ist f(k) < c(k) bei Rückwärtskanten ist f(k) > 0

14 14 Theoretische Grundlagen Erweiterungsweg EW q 6 4 s /40 20/37 30/30 0/50 10/10 0/54 0/2020/32 0/17 10/22

15 15 Theoretische Grundlagen engste Stelle f des Erweiterungsweges finden durch f v = min {c(k) – f(k) | k ist VWK des EW} f r = min {f(k) | k ist RWK des EW} gibt es keine RWK im EW, setzt man f r = f = min {f v, f r } Fluss auf VWK um f erhöhen Fluss auf RWK um f senken

16 16 Theoretische Grundlagen Erweiterungsweg EW q 6 4 s /40 20/37 30/30 0/50 10/10 0/54 0/2020/32 0/17 10/22 f v = 12f r = 10f= 10 10/20 10/54 10/50 0/10 30/37 30/32

17 17 Übersicht Theoretische Grundlagen Satz von Ford und Fulkerson Bestimmung von Erweiterungswegen Algorithmus von Edmonds und Karp Algorithmus von Dinic 0-1-Netzwerke

18 18 Der Satz von Ford und Fulkerson Satz a)Es sei f ein Fluss eines Netzwerkes. Genau dann ist f ein maximaler Fluss, wenn es keinen Erweiterungsweg bezüglich f gibt. b)Der Wert des maximalen Flusses in einem Netzwerk ist gleich der minimalen Kapazität eines Schnittes

19 19 Übersicht Theoretische Grundlagen Satz von Ford und Fulkerson Bestimmung von Erweiterungswegen Konstruktion eines Erweiterungsweges Beispiel Algorithmus von Edmonds und Karp Algorithmus von Dinic 0-1-Netzwerke

20 20 Bestimmung von Erweiterungswegen Aus dem Netzwerk G wird ein Restnetzwerk G f konstruiert. G f besitzt die gleiche Eckenmenge wie G und folgende Kanten: k, falls f(k) < c(k), mit der Bewertung c(k) – f(k) ¬k, falls f(k) > 0, mit der Bewertung f(k)

21 21 Bestimmung von Erweiterungswegen q 6 4 s /40 20/37 30/30 0/50 10/10 0/54 0/2020/32 0/17 10/22 G GfGf q 6 4 s Bestimmung von EW mit minimaler Anzahl von Kanten mit Hilfe der Breitensuche auf G f mit Startecke q EW gefunden, sobald s erreicht wurde Endet die Breitensuche, bevor s erreicht ist, so ist der Fluss bereits maximal

22 22 Übersicht Theoretische Grundlagen Satz von Ford und Fulkerson Bestimmung von Erweiterungswegen Algorithmus von Edmonds und Karp Vorgehensweise Beispiel Algorithmus von Dinic 0-1-Netzwerke

23 23 Der Algorithmus von Edmonds und Karp Vorgehensweise Konstruiere für den Graphen G mit Fluss f den entsprechenden Restgraph G f Finde auf G f mit Hilfe der Breitensuche einen Erweiterungsweg Erhöhe den Fluss um f auf dem EW Wiederhole solange, bis es keinen Erweiterungsweg mehr von q nach s gibt, und damit der maximale Fluss gefunden ist

24 24 Der Algorithmus von Edmonds und Karp q 6 4 s /40 0/37 0/30 0/50 0/10 0/54 0/200/32 0/17 0/22 G0G0 q 6 4 s G f0 |f 0 |= 0 EW = q, 1, 2, 3, s f v = 10 ; f r = ; f = 10

25 25 Der Algorithmus von Edmonds und Karp q 6 4 s /40 0/37 10/30 0/50 10/10 0/54 0/200/32 0/17 10/22 q 6 4 s |f 1 |= 10 EW = q, 1, 2, 6, s f v = 20 ; f r = ; f = 20 G1G1 G f

26 26 Der Algorithmus von Edmonds und Karp q 6 4 s /40 20/37 30/30 0/50 10/10 0/54 0/2020/32 0/17 10/22 q 6 4 s |f 2 |= 30 EW = q, 4, 5, 3, s f v = 12 ; f r = ; f = 12 G2G2 G f

27 27 Der Algorithmus von Edmonds und Karp q 6 4 s /40 20/37 30/30 12/50 10/10 12/54 12/2020/32 0/17 22/22 q 6 4 s |f 3 |= 42 EW = q, 4, 5, 3, 2, 6, s f v = 8 ; f r = 10 ; f = 8 G3G3 G f

28 28 Der Algorithmus von Edmonds und Karp q 6 4 s /40 28/37 30/30 20/50 2/10 20/54 20/2028/32 0/17 22/22 q 6 4 s |f 4 |= 50 Kein Erweiterungsweg Maximaler Fluss erreicht G4G4 G f

29 29 Der Algorithmus von Edmonds und Karp q 6 4 s /40 28/37 30/30 20/50 2/10 20/54 20/2028/32 0/17 22/22 G4G4 |f 4 |= 50

30 30 Übersicht Theoretische Grundlagen Satz von Ford und Fulkerson Bestimmung von Erweiterungswegen Algorithmus von Edmonds und Karp Algorithmus von Dinic Vorgehensweise Beispiel 0-1-Netzwerke

31 31 Der Algorithmus von Dinic Betrachtung geeigneter Hilfsnetzwerke Niveaunetzwerke Konstruktion eines Flusses, der nicht maximal sein muss, für den es aber keinen EW gibt, der nur aus VWK besteht. blockierender Fluss Erhöhung des Flusses auf dem gesamten Netzwerk

32 32 Der Algorithmus von Dinic Vorgehen: Aus dem Netzwerk G wird das Restnetzwerk G f gebildet Aus dem Restnetzwerk G f wird das Niveaunetzwerk G f konstruiert, wobei überflüssige Kanten entfernt werden G f enthält die Kanten k =(e,f ) von G f, für die gilt Niv(e)+1 = Niv(f) In G f gilt g - (q) = g + (s) = 0 Alle möglichen Erweiterungswege werden mit der Breitensuche auf G f bestimmt und geschichtet

33 33 Der Algorithmus von Dinic q 6 4 s /40 0/37 0/30 0/50 0/10 0/54 0/200/32 0/17 0/22 G0G0 q 6 4 s G f0 q 6 4 s /40 20/37 10/30 12/50 10/10 12/54 12/2020/32 10/22 G f0 20/40 20/30 12/22

34 34 Der Algorithmus von Dinic q 6 4 s /40 20/37 30/30 12/50 10/10 12/54 12/2020/32 22/22 G1G1 qs G f q 6 4 s G f1

35 35 Der Algorithmus von Dinic q 6 4 s /40 28/37 30/30 20/50 2/10 20/54 20/2028/32 22/22 G2G2 q 6 4 s G f q 6 4 s G f2

36 36 Der Algorithmus von Dinic q 6 4 s /40 28/37 30/30 20/50 2/10 20/54 20/2028/32 22/22 G2G2 Im Niveaunetzwerk gibt es keinen weiteren Erweiterungsweg Maximaler Fluss erreicht mit |f 2 |= 50

37 37 Übersicht Theoretische Grundlagen Satz von Ford und Fulkerson Bestimmung von Erweiterungswegen Algorithmus von Edmonds und Karp Algorithmus von Dinic 0-1-Netzwerke

38 Netzwerke Spezialfall von allgemeinen Netzwerken Jede Kante besitzt die Kapazität 0 oder 1 Es existiert ein maximaler Fluss f, der auf jeder Kante den Wert 1 oder 0 hat Es gibt |f | Wege von q nach s, welche paarweise keine Kante gemeinsam haben |f | kantendisjunkte Wege

39 39 Vielen Dank für Ihre Aufmerksamkeit!


Herunterladen ppt "Flussprobleme in Graphen und ihre Anwendung auf 0/1-Netzwerke Informatikseminar WS04/05 Claudia Padberg WI4409."

Ähnliche Präsentationen


Google-Anzeigen