Seminar über aktuelle Forschungsthemen in der Algorithmik, Dozent Prof. Dr. Alt;

Ähnliche Dokumente
Inhalt. 1. Flußprobleme. 2. Matching. 3. Lineares Programmieren. 4. Ganzzahliges Programmieren. 5. NP-Vollständigkeit. 6. Approximationsalgorithmen

ij. , d (k 1) + d (k 1)

Flüsse in Netzwerken. Seminar über Algorithmen SoSe Mike Rohland & Julia Schenk

Flüsse in Netzwerken

Flüsse, Schnitte, bipartite Graphen

Anwendungen von Netzwerkfluss. Wojciech Polcwiartek Institut für Informatik FU Berlin

Laufzeit. Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode.

Algorithmen und Datenstrukturen Kapitel 10

Netzwerkfluß. Gegeben ist ein System von Wasserrohren: Die Kapazität jedes Rohres ist 3, 5 oder 8 l/s.

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 4: Flüsse

Flüsse, Schnitte, Bipartite Graphen

1.Aufgabe: Minimal aufspannender Baum

Flüsse, Schnitte, bipartite Graphen

Wiederholung zu Flüssen

FLÜSSE, SCHNITTE UND - TEIL 2 - BIPARTITE GRAPHEN. Vortrag im Seminar Hallo Welt Für Fortgeschrittene Dozenten: Werth, T. & Brinkers, D.

Zählen perfekter Matchings in planaren Graphen

Mathematische Modelle in den Naturwissenschaften Proseminar

Kapitel 1: Flussalgorithmen

Klausur zum Modul Einführung in die Diskrete Mathematik

Anwendungen von Netzwerkfluss

ADS: Algorithmen und Datenstrukturen 2

Datenstrukturen & Algorithmen

Bipartites Matching. Gegeben: Ein bipartiter, ungerichteter Graph (V 1, V 2, E). Gesucht: Ein Matching (Paarung) maximaler Kardinalität.

Lineare Programmierung (2)

Netzwerk Simplex Algorithmus. Min Cost Flow Probleme. Jan Burkl Juli 2003

6 Flüsse und Matchings

Bipartite Graphen. Beispiele

4.7 Der Algorithmus von Dinic für maximalen Fluss

6. Flüsse und Zuordnungen

Datenstrukturen & Algorithmen Lösungen zu Blatt 11 FS 14

Maximale s t-flüsse in Planaren Graphen

Kombinatorische Algorithmen zur Berechnung von Marktequilibria

Effiziente Algorithmen I

Flüsse und Schnitte von Graphen

Flüsse und Zuordnungen. Kapitel 6. Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/ / 296

Effiziente Algorithmen (SS2014)

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME

VU Algorithmen auf Graphen Übungsblatt 2 - Aufgabe 2 Transformation einer MaxFlow- in eine MinCost Circulation Instanz

Kombinatorische Optimierung

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme

Der Preow-push-Algorithmus

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Algorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. C5.1 Einführung. C5.2 Grundlagen

EDM, Algorithmen und Graphenspeicherung

Algorithmen und Datenstrukturen

Graphalgorithmen Netzwerkalgorithmen. Laufzeit

Dynamische Programmierung. Problemlösungsstrategie der Informatik

Algorithmische Graphentheorie

Flüsse, Schnitte, bipartite Graphen. Martin Oettinger

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Graphentheorie. Maximale Flüsse. Maximale Flüsse. Maximale Flüsse. Rainer Schrader. 31. Oktober Gliederung. sei G = (V, A) ein gerichteter Graph

Algorithmen und Datenstrukturen 2

6. Flüsse und Zuordnungen

Klausur Algorithmentheorie

Nachklausur Grundlagen der Algorithmik (Niedermeier/Froese/Chen/Fluschnik, Wintersemester 2015/16)

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Algorithmische Mathematik I

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Kombinatorische Optimierung

6. Flüsse in Netzwerken Berechnung maximaler Flüsse. dann berechnet der Markierungsalgorithmus für beliebige Kapazitätsfunktionen

Operations Research. Flüsse in Netzwerken. Flüsse in Netzwerken. Unimodularität. Rainer Schrader. 2. Juli Gliederung.

2. Das single-source-shortest-path-problem

Datenstrukturen und Algorithmen (SS 2013)

KAPITEL 4 FLÜSSE IN NETZWERKEN

5. Bäume und Minimalgerüste

Grundbegriffe der Informatik Musterlösung zu Aufgabenblatt 9

Algorithmische Graphentheorie

Graphen KAPITEL 3. Dieses Problem wird durch folgenden Graph modelliert:

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1

15. Elementare Graphalgorithmen

Lernmodul 7 Algorithmus von Dijkstra

Robert E. Tarjan. Matthias Bender

Algorithmentechnik - U bung 3 4. Sitzung Tanja Hartmann 03. Dezember 2009

ADS 2: Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

Strukturelle Modelle in der Bildverarbeitung Binäre MinSum Probleme

1 Pfade in azyklischen Graphen

Übung 5 Algorithmen II

4. Kreis- und Wegeprobleme

Effiziente Algorithmen

Algorithmen & Komplexität

Algorithmen zur Berechnung von Matchings

Gliederung. Kapitel 4. Lokale Suchverfahren. Meta-Heuristiken. Simulated Annealing. Lokale Suchverfahren. Optimierungsalgorithmen

Entscheidungsverfahren für die Software-Verifikation. 4 - BDDs

maximaler Fluss & minimaler Schnitt

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen

Algorithmentheorie Maximale Flüsse

Felix Brandt, Jan Johannsen. Vorlesung im Wintersemester 2008/09

Theoretische Informatik 1

3. Übungsblatt zu Algorithmen II im WS 2016/2017

Algorithmen zur Visualisierung von Graphen

1 Kürzeste Pfade in Graphen

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm

Gliederung. Algorithmen und Datenstrukturen II. Graphen: All-pairs shortest paths. Graphen: All-pairs shortest paths. Graphen: Kürzeste Pfade III

Algorithmen für schwierige Probleme

Vorlesung Datenstrukturen

Transkript:

Seminar über aktuelle Forschungsthemen in der Algorithmik, Dozent Prof. Dr. Alt Referent Matthias Rost 1

Einleitung Definitionen Maximaler Dynamischer Fluss Algorithmus von Ford-Fulkerson Techniken zur Lösung dynamischer Fluss Probleme Ausblick Anwendung: Evakuierung Referent Matthias Rost 2

Bisherige Netzwerkflussprobleme Netzwerk = Gerichteter Graph G = (V,E) G, c, s, t Kapazitätsfunktion c :V V s V, t V f V V Quelle s und Senke t, Fluss : Referent Matthias Rost 3

Beispiel aus dem Cormen Zeitliche Komponente wird nicht beachtet! Wenig realistisch für viele Anwendungen Referent Matthias Rost 4

Definiere Transit-Zeiten Vancouver, Edmonton Vancouver, Calgary Edmonton, Calg ary Calg ary, Edmonton Edmonton, Saskatoon Saskatoon, Calgary... 9 7 5 5 8 6 Referent Matthias Rost 5

Dynamische Netzwerkflüsse besitzen zeitliche Komponente Netzwerk = G, c, s, t, Zeit Funktion : V V Fluss f : V V Zeit Restliche Komponenten des Netzwerks sind gleich Referent Matthias Rost 6

yz E t f t f t, : ( ) ( ) yz zy yz Einheit, die zum Zeitpunkt t von y nach z geschickt wird, erreicht z zum Zeitpunkt t yz T a 0 ab 3 b T a 3 ab 3 b fab (0) 1, f (0) 0 ba f ab (3) 0, f (3) 1 ba Referent Matthias Rost 7

T y V s t f yz t t=0 z V \{, }: ( ) 0 Menge an Fluss im Netzwerk bleibt erhalten Fluss an einem Knotens: f ( T ) f ( t) y T t=0 z V yz Gesamtfluss ist Fluss in die Senke innerhalb der Zeit T: f ( T) f ( T) t Referent Matthias Rost 8

Die Kapazitätsfunktion bezieht sich auf jeden einzelnen Zeitschritt T a 0 c ab ab 1, 3 b T a 1 c ab ab 1, 3 b Fluss f ab (0) 1 Fluss f ab (1) 1 Wir benutzen keinen Holdover-Flow [Speicherung von Fluss an Knoten] Referent Matthias Rost 9

Transport von Gütern Steigerung der Effizienz Senkung der Kosten Evakuierungsberechnungen Erstellen von Evakuierungsplänen Optimierung von Gebäudearchitektur Finden von Bottlenecks bei Evakuierungen Referent Matthias Rost 10

Algorithmus von Ford-Fulkerson [1] Idee des Algorithmus Eine beispielhafte Durchführung Beweis Referent Matthias Rost 11

Ford-Fulkerson im statischen Netzwerk Solange es einen augmentierenden Weg von s nach t im Restgraphen gibt Augmentiere f um diesen Weg Ford-Fulkerson im dynamischen Netzwerk Jeder Knoten besitzt einen zeitlichen Zustand Für jeden Zeitpunkt T werden maximale statische Flüsse im Restnetz berechnet Es werden im Restnetz nur Kanten betrachtet, die zeitlich zulässig sind Berechnung einzelner Flüsse, die zeitlich wiederholt werden Referent Matthias Rost 12

Knoten (0..n) sind nummeriert Knoten 0 entspricht der Quelle und n der Senke i 0 { } Zeitlicher Zustand von Knoten i: Statischer Fluss im Netz: x i, j Kapazität der Kanten: c i, j Menge an Zerlegungen des Flusses in Wege von Quelle zur Senke: Kante ij ist zulässig xi, j ci, j j i i, j Referent Matthias Rost 13

initialisiere alle solange n T i mit 0 solange augmentierender Pfad existiert v augmentierender Pfad (*) augmentiere Fluss { x } gemäß v i, j für alle von der Quelle nicht erreichten Knoten i ++ i Berechne Zerlegung des Flusses (Chain-Decomposition) Routine I a) Routine I b) Routine II (*) = betrachte zusätzlich nur zeitlich zulässige Kanten im Restnetzwerk Referent Matthias Rost 14

Nach Beendigung der Routine I liegt statischer Fluss { x i, j } vor Routine II zerlegt diesen Fluss in Wege von der Quelle zur Senke, so dass diese den gesamten Fluss ergeben solange Weg P von wobei für alle enthaltenen Kanten i, j i, j P x x h 0 nach n mit Fluss h existiert ij x i, j Referent Matthias Rost 15 h 0 gilt

Inv a) Inv b) über P(i), 0 j i i, j i, j 0 j i i, j i, j i, j i, j max(0, j i i, j ) t t t i, j j i i, j i x x max(0, ) c k, sei ein Pfad von 0 nach n Hochgestelltes t bedeutet Zustand nach t äußeren Schleifendurchläufen, insbesondere: Referent Matthias Rost 16

I) Pfade P von Quelle zur Senke, über die Fluss fließt, gilt: k 1 t t 0 P( i), P( i 1) t m i P( i), P( i 1) P( m), P( m 1) ( ) : 0 II) Sei v der Wert des Flusses { x }: tv x c i, j i, j i, j i, j i, j i, j i, j III) f ( T ) c und f ( T ) ist maximal i, j T 1 i, j i, j *Beweis siehe Tafel bzw. [1] Referent Matthias Rost 17

t Knoten: i,0 t T Kanten: t t i, j i j mit c t t c i, j,, j 0 t T Superquelle / Supersenke i i, j i j, Referent Matthias Rost 18

Äußere Schleife von Routine I wird genau T+1 oft durchgeführt, da in Routine I b) n bei jeder Durchführung um 1 inkrementiert wird Augmentierende Pfade werden beliebig ausgewählt, es können maximal f integrale augmentierende Pfade gefunden werden Zusätzlich wird in jedem äußeren Durchlauf einmal kein augmentierender Pfad gefunden werden O( E f E T) Referent Matthias Rost 19

Routine I liefert einen statischen Netzwerkfluss Routine II berechnet für diesen statischen Fluss eine Zerlegung in einzelne Pfade Diese Zerlegung entspricht dem Finden der augmentierenden Pfade im statischen Netz O( E f ) Referent Matthias Rost 20

Dynamischer Ford-Fulkerson: Mit Edmonds-Karp: 2 O( E V E T) O( E f E T) Im Expanded-Netzwerk mit statischem Ford- Fulkerson O( E f T) Im Expanded-Netzwerk mit Edmonds-Karp O E 2 3 ( V T ) Referent Matthias Rost 21

Gemäß II) und III) gilt f ( t) t v x i, j i, j i, j Maximaler Fluss in einem dynamischen Netzwerk entspricht einem Minimum-Cost Circulation im erweiterten Netzwerk, wobei Kosten der Zeit entsprechen erweitertes Netzwerk ist Netzwerk mit Kante n 0 mit ( T 1) und cn n,0,0 Referent Matthias Rost 22

Time-Expanded Networks Grundlage für Lösung des maximalen Flussproblems in dynamischen Netzwerken mittels Minimum-Cost Circulation kann in streng polynomieller Zeit bestimmt werden (Standard-)Chain-Decomposable Flows Referent Matthias Rost 23

Möglichkeit der Reduktion dynamischer Netzwerkflussprobleme auf statische Probleme Laufzeit und Platzbedarf nehmen polynomiell zu Viele dynamische Probleme werden über Time- Expanded Networks gelöst Referent Matthias Rost 24

Ford-Fulkerson haben Zerlegung von dynamischen Flüssen eingeführt Dabei werden nur Pfade entlang der Flussrichtung betrachtet Verallgemeinerung: Fluss wird entgegen der eigentlichen zeitlichen Richtung zugelassen Referent Matthias Rost 25

Referent Matthias Rost 26

Referent Matthias Rost 27

Referent Matthias Rost 28

mehrere Quellen und mehrere Senken jede Quelle hat bestimmtes Angebot an Fluss Ziel: Sende den gesamten Fluss in minimaler Zeit durch das Netzwerk Modelliert Evakuierungssituation Hoppe: erster polynomieller Algorithmus mittels Chain-Decomposable Flows Referent Matthias Rost 29

maximiert für jeden Zeitschritt den eingehenden Fluss in die Quellen Referent Matthias Rost 30

Beispiel-Berechnungen von Nadine Baumann Referent Matthias Rost 31

[1] Ford, L.R. and Fulkerson, D.R., Constructing maximal dynamic flows from static flows. Operations Research. v6. 419-433 [2] Ford, L.R. and Fulkerson, D.R., Flows in Networks. 1962. Princeton University Press, Princeton, NJ [3] R. K. Ahuja, T. L. Magnanti, and J. B. Orlin. Network Flows: Theory, Algorithms, and Applications. Prentice Hall, NJ, 1993 [4] Bruce Edward Hoppe, Efficient dynamic network flow algorithms, Cornell University, Ithaca, NY, 1996 [5] T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein. Introduction to Algorithms. 2nd edition, McGraw-Hill Book Company, Boston, MA, 2001 [6] Nadine Baumann, Evacuation by Earliest Arrival Flows, Universität Potsdam, 2007 Referent Matthias Rost 32