Datenstrukturen & Algorithmen
|
|
- Silke Baum
- vor 6 Jahren
- Abrufe
Transkript
1 Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010
2 Graphenalgorithmen Maximaler Fluss Einleitung Flussnetzwerke Ford-Fulkerson Fulkerson Methode Maximales bipartites Matching 2
3 Einleitung Gerichtete Graphen zur Modellierung von Flussnetzwerken Modell: Material fliesst durch Röhrensystem von Quelle zu Senke Quelle produziert konstantes Materialvolumen pro Zeit Senke konsumiert konstantes Volumen pro Zeit Fluss in Röhre ist Volumen pro Zeit, das verschoben wird Beispiele Flüssigkeit durch Röhren Teile auf Fliessbändern Strom in elektrischen Netzwerken Information in Kommunikationsnetzwerken 3
4 Flussnetzwerke Modellierung mit gerichteten Graphen Kante: Röhre Gewisse maximale Kapazität von Einheiten pro Zeit, die fliessen können Knoten: Verbindungspunkte Material darf sich nicht stauen Fluss hinein muss gleich Fluss hinaus sein Problem des maximalen Fluss Gö Grösstmöglicher ölih Fluss von Quelle zu Senke, so dass keine maximale Kapazität irgendeiner Kante verletzt wird 4
5 Graphenalgorithmen Maximaler Fluss Einleitung Flussnetzwerke Ford-Fulkerson Fulkerson Methode Maximales bipartites Matching 5
6 Flussnetzwerke Gerichteter Graph G=(V,E) Jede Kante (u,v) hat Kapazität c(u,v)>=0 Falls Kante (u,v) nicht existiert, c(u,v)=0 0 Quelle: ein Knoten s Senke: ein Knoten t Annahme: für jeden Knoten v gibt es einen Pf Pfad s à v à t 6
7 Flussnetzwerke w x s t y z 7
8 Flussnetzwerke Jede Kante (u,v) hat eine Kapazität c(u,v) Nicht eingezeichnete i Kanten haben implizit it c(u,v)=0( ) 0 8
9 Flussnetzwerke Positiver Fluss: Eine Funktion p: V x V R Weist jeder Kante einen Wert, d.h. positiven Fluss, zu Kapazitätsbedingung Für alle u,v V, 0 p(u,v) ) c(u,v) Flusserhaltung Fluss hinein gleich Fluss hinaus Für alle u V-{s,t}, { } v V p(v,u) ( ) = v V p(u,v) ( ) Äquivalent v V p(v,u) - v V p(u,v) = 0 9
10 Flussnetzwerke Jede Kante ist annotiert mit positivem Fluss/Kapazität, d.h. p(u,v)/c(u,v) 10
11 Gegenseitige Auslöschung O.B.d.A positiver Fluss ist entweder von u nach v oder von v nach u aber nicht beides Beispiel: zwei äquivalente Situationen 1 Einheit von x z, 2 Einheiten von z x 0 Einheiten von x z, 1 Einheit von z x In beiden Fällen: Netto Fluss ist eine Einheit von z x Netto Fluss erfüllt Kapazitätsbedingung und Flusserhaltung lt immer 11
12 (Netto) Fluss Eine Funktion f: V x V R Sehr ähnlich wie positiver Fluss Kapazitätsbedingung Für alle u,v V, f(u,v) c(u,v) Asymmetrie Für alle u,v V, f(u,v) = -f(v,u) Flusserhaltung Für alle u V-{s,t}, v V f(u,v) = Fluss hinein ist gleich Fluss hinaus Definitionen für (netto) Fluss und positiver Fluss sind gleichwertig 12
13 Auslöschung und netto Fluss Noch ein Beispiel: äquivalente Situationen 5 Einheit von u v, 0 Einheiten von v u 8 Einheiten von u v, 3 Einheiten von v u In beiden Fällen: Fluss ist 5 Einheiten von u v Könnten Sendungen auch ändern, indem zusätzlich 3 Einheiten von u v und 3 Einheiten von v u Netto Fluss bleibt gleich Können tatsächlich geschickte Sendungen nicht aus Fluss rekonstruieren Positiver i Fluss hat einen redundanten d Freiheitsgrad, arbeiten deshalb mit (netto) Fluss 13
14 Fluss w x s t y z 14
15 Fluss Auslöschung aus vorherigem Beispiel durchgeführt Kanten mit positivem Fluss sind annotiert mit Fluss/Kapazität, d.h. f(u,v)/c(u,v) Kanten mit negativem Fluss sind nur mit Kapazität annotiert, d.h. c(u,v); Fluss ist implizit f(u,v) = -f(v,u) z.b. f(y,s) = -2, f(x,z) = -1 Kanten mit Kapazität c(u,v)=0 nicht eingezeichnet; können negativen Fluss haben, z.b. c(y,x)=0, f(y,x)=-1 15
16 Implizite Summation Zur Vereinfachung der Schreibweise Erlaube Mengen als Argumente in Funktionen Mit impliziter Summation f(x, Y ) bedeutet X X f(x, y) x X y Y Flusserhaltung: f(u,v)=0, for all u V-{s,t} Weitere Vereinfachung der Notation Weglassen von Klammern für Mengen Beispiel f(s,v-s) ) statt f(s,v-{s}) { 16
17 Wert eines Flusses Wertdes Flusses f ist f = X v V f(s, v) = totaler Fluss aus Quelle Mit vereinfachter Notation f = f(s, V ) 17
18 Wert eines Flusses Wert des Flusses ist 3 Es wird nur Fluss aus der Quelle hinaus gezählt z.b. f(y,s)=-2 wird nicht mitgezählt 18
19 Graphenalgorithmen Maximaler Fluss Einleitung Flussnetzwerke Ford-Fulkerson Fulkerson Methode Maximales bipartites Matching 19
20 Ford-Fulkerson Methode Löst das Problem des maximalen Flusses Gegeben Graph G Quelle s Senke t Kapazitäten c Finde Fluss f mit grösstem Wert Gö Grösstmöglicher ölih positiver Fluss, der aus Quelle hinausfliesst Brauchen weitere Konzepte Schnitte durch Graphen Restnetzwerke 20
21 Schnitte Schnitt (S,T) eines Flussnetzwerks G=(V,E) ist eine Partition von V in S und T=V-S So dass s S und t T Netto Fluss über Schnitt (S,T) ist f(s,t) Zur Erinnerung f(s, T ) = P x S y T f(x, y) Kapazität des Schnittes (S,T) ist c(s,t) Minimaler Schnitt ist Schnitt, dessen Kapazität minimal ist über alle Schnitte von G P 21
22 Schnitte 22
23 Schnitte Beispiel: Schnitt S={s,w,y}, T={x,z,t} f(s,t) = f(w,x) )+f( f(y,x) )+f( f(y,z) ) = =3 c(s,t) = c(w,x) + c(y,x) + c(y,z) = = 5 Beachte Unterschied zwischen Kapazität und Fluss Fluss ist asymmetrisch, z.b.f(y,x)=-f(x,y)=-1 Kapazität ist nicht, z.b.c(y,x)=0, ( ) 0 aber c(x,y)=1( ) 1 23
24 Schnitte Beispiel: Schnitt S={s,w,x,y}, T={z,t} f(s,t) = f(x,z)+f(x,t)+f(y,z) = = 3 c(s,t) = c(x,z)+c(x,t) +c(y,z) = = 8 Gleicher Fluss wie vorher, aber höhere Kapazität 24
25 Schnitte Lemma Für jeden Schnitt (S,T) gilt f(s,t)= f Korollar Wert für jeden Fluss Kapazität für jeden Schnitt Maximaler Fluss Kapazität des minimalen Schnitts 25
26 Restnetzwerke Gegeben Fluss f in Netzwerk G=(V,E) Knoten u,v V Restkapazität einer Kante (u,v) c f (u,v) = c(u,v) -f(u,v) 0 Zusätzlicher Fluss der von u nach v fliessen könnte Da f(u,v) negativ sein kann, kann c f (u,v) 0 bedeuten: Fluss in die andere Richtung (v,u) kann reduziert werden Restnetzwerk G f = (V,E f ) Menge der Kanten, die Restkapazität haben E f ={(uv) (u,v) V V : c f (u,v) v)>0} > 0 } 26
27 Restnetzwerke G f w x s t y z 27
28 Restnetzwerke 28
29 Summe von Flüssen Gegeben zwei Flüsse f 1 und f 2 Summe der Flüsse f 1 + f 2 ist (f 1 + f 2 )(u,v), ) = f 1 (u,v), + f 2 (u,v), Lemma: Gegeben Flussnetzwerk G, Fluss f in G Restnetzwerk G f, Fluss f in G f Dann ist Summer der Flüsse f + f ein Fluss in G mit Wert f+f f = f + f + f 29
30 Vergrössernder Pfad Ein Pfad s à t in G f Erlaubt mehr Fluss entlang jeder Kannte Eine Folge von Röhren von Quelle zu Senke, durch die mehr Material fliessen kann Wieviel mehr Fluss möglich entlang Pfad p? c f (p) = min {c f (u,v) : (u,v) is on p } 30
31 Vergrössernder Pfad Im Beispiel p = (s,w,y,z,x,t) Kleinste Residualkapazität ist 1 31
32 Vergrössernder Pfad Erhöhung des Flusses entlang p = (s,w,y,z,x,t) um 1 w x s t y w z x s t y z 32
33 Vergrössernder Pfad Erhöhung des Flusses entlang p = (s,w,y,z,x,t) um 1 Kein vergrössernder Pfad mehr! Behauptung: Fluss ist maximal 33
34 Maximaler Fluss Lemma Gegeben Flussnetzwerk G, Fluss f in G, Restnetzwerk G f Sei p vergrössernder Pfad in G f Definiere f p : V V R mit Dann ist f p ein Fluss in G f mit Wert f p = c f (p)>0 Korollar Definiere f p wie oben Definiere f : V V R als f = f + f p Dann ist f Fluss in G mit Wert f = f + c f (p) > f 34
35 Max-flow min-cut Theorem Theorem: Folgendes ist äquivalent f ist maximaler Fluss f erlaubt keinen vergrössernden Pfad f = c(s,t) für einen Schnitt (S,T) 35
36 Beweis (1) => (2): Falls f erweiternden Pfad p hat, dann könnten wir Fluss mit Wert f+c f (p)> f erhalten; Widerspruch zu Annahme (1) (2) => (3) Nehmen an f hat keinen vergrössernden Pfad. Definieren S = {v V: existiert pfad s->v in G f } T=VS V-S t muss in T sein, sonst ex. erweiternder Pfad Es folg (S,T) ist ein Schnitt Für alle u S und v T, muss gelten f(u,v)=c(u,v), sonst wäre (u,v) E f und damit wäre v S f = f(s,t) = c(s,t) (3) => (1): Korollar f c(s,t) für jeden Schnitt. Darum f = c(s,t) => f ist ein maximaler Fluss 36
37 Ford-Fulkerson Algorithmus Analyse Falls ganzzahlige Kapazitäten, dann vergrössert jeder Schritt f um 1 Falls maximaler Fluss Wert f* hat, dann f* Iterationen Komplexität O(E ( f* ) 37
38 Edmonds-Karp Algorithmus Finde erweiternde Pfade mit Breitensuche in Restnetzwerk Aufwand O(VE( 2 ) Beweis siehe Buch 38
39 Graphenalgorithmen Maximaler Fluss Einleitung Flussnetzwerke Ford-Fulkerson Fulkerson Methode Maximales bipartites Matching 39
40 Maximales bipartites Matching Beispiel eines Problems (von vielen), das gelöst werden kann, indem als Flussproblem formuliert Ungerichteter Graph G=(V,E) heisst bipartit falls V in V = L R partitioniert werden kann, so dass alle Kanten zwischen L und R sind 40
41 Maximales bipartites Matching Matching: eine Teilmenge M von E, so dass für alle v V, 1 Kante von M auf v inzident ist Knoten heisst matched falls Kante inzident auf ihn, sonst unmatched Maximales Matching: ein Matching mit grösster Kardinalität M ist maximal falls M M für alle M Problem: gegeben bipartiter Graph (mit Partitionierung), finde maximales Matching 41
42 Maximales bipartites Matching Kein maximales Matching Maximales Matching 42
43 Maximales bipartites Matching Anwendungsbeispiel: Flugzeuge einer Menge von Routen zuweisen L = Menge von Flugzeugen R = Menge von Routen (u,v) E falls Flugzeug u Route v fliegen kann Wollen grösstmögliche Anzahl Routen, die von den Flugzeugen geflogen werden können 43
44 Maximales bipartites Matching Gegeben G, definiere Flussnetzwerk G =(V,E E ) ) Knoten V = V {s,t} Kanten E = {(s,u) : u L} {(u,v), : u L, v R, (u,v), E} } {(v,t) : v R} Kapazität c(u,v) = 1 für alle (u,v) E 44
45 Formulierung als Flussproblem L R 45
46 Formulierung als Flussproblem Jeder Knoten in V hat 1 inzidente Kanten E V /2 Deshalb E E = E + V 3 E Deshalb E = Θ( E ) Finde maximalen Fluss in G Benutze Kanten mit Fluss 1 im Matching Beweis, dass maximales Matching im Buch 46
47 Anwendung von Max-flow min-cut Viele Optimierungsprobleme in der Bildverarbeitung Z.B. Automatische Bildsegmentierung 47
48 Nächstes Mal Lineare Programmierung 48
Inhalt. 1. Flußprobleme. 2. Matching. 3. Lineares Programmieren. 4. Ganzzahliges Programmieren. 5. NP-Vollständigkeit. 6. Approximationsalgorithmen
Effiziente Algorithmen Einführung 1 Inhalt 1. Flußprobleme 2. Matching. Lineares Programmieren 4. Ganzzahliges Programmieren 5. NP-Vollständigkeit 6. Approximationsalgorithmen 7. Backtracking und Branch-and-Bound
MehrFlüsse in Netzwerken
Proseminar Theoretische Informatik, Prof. Wolfgang Mulzer, SS 17 Flüsse in Netzwerken Zusammenfassung Gesa Behrends 24.06.2017 1 Einleitung Unterschiedliche technische Phänomene wie der Flüssigkeitsdurchfluss
MehrWiederholung zu Flüssen
Universität Konstanz Methoden der Netzwerkanalyse Fachbereich Informatik & Informationswissenschaft SS 2008 Prof. Dr. Ulrik Brandes / Melanie Badent Wiederholung zu Flüssen Wir untersuchen Flüsse in Netzwerken:
MehrFlüsse, Schnitte, bipartite Graphen
Flüsse, chnitte, bipartite Graphen Matthias Hoffmann 5.5.009 Matthias Hoffmann Flüsse, chnitte, bipartite Graphen 5.5.009 / 48 Übersicht Einführung Beispiel Definitionen Ford-Fulkerson-Methode Beispiel
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung 1. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Minimale spannende Bäume 5. Färbungen und Cliquen 6. Traveling Salesman Problem 7. Flüsse in Netzwerken
MehrAlgorithmen und Datenstrukturen Kapitel 10
Algorithmen und Datenstrukturen Kapitel 10 Flüsse Frank Heitmann heitmann@informatik.uni-hamburg.de 6. Januar 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/8 Flüsse Graphen Grundlagen Definition
MehrFlüsse in Netzwerken. Seminar über Algorithmen SoSe 2005. Mike Rohland & Julia Schenk
Flüsse in Netzwerken Seminar über Algorithmen SoSe 2005 Mike Rohland & Julia Schenk Inhalt Einführung Definition Maximale Flüsse Schnitte Restgraphen Zunehmende Wege Max-Fluss Min-Schnitt Theorem Ford-Fulkerson
MehrFlüsse, Schnitte, Bipartite Graphen
Flüsse, Schnitte, Bipartite Graphen Sebastian Hahn 4. Juni 2013 Sebastian Hahn Flüsse, Schnitte, Bipartite Graphen 4. Juni 2013 1 / 48 Überblick Flussnetzwerke Ford-Fulkerson-Methode Edmonds-Karp-Strategie
MehrKAPITEL 4 FLÜSSE IN NETZWERKEN
KAPITEL 4 FLÜSSE IN NETZWERKEN F. VALLENTIN, A. GUNDERT 1. Das Max-Flow-Min-Cut Theorem Es sei D = (V, A) ein gerichteter Graph, s, t V zwei Knoten. Wir nennen s Quelle und t Senke. Definition 1.1. Eine
MehrAnwendungen von Netzwerkfluss. Wojciech Polcwiartek Institut für Informatik FU Berlin
Anwendungen von Netzwerkfluss Wojciech Polcwiartek Institut für Informatik FU Berlin 13. 01. 2009 Gliederung Einführung Netzwerk, Fluss und Schnitt Max-Flow-Min-Cut Theorem Algorithmen zum Bestimmen vom
MehrLaufzeit. Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode.
Effiziente Algorithmen Flußprobleme 81 Laufzeit Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode. Der Fluß ist höchstens f = min{ V 1, V 2 }.
Mehr6. Flüsse und Zuordnungen
6. Flüsse und Zuordnungen Flußnetzwerke 6. Flüsse und Zuordnungen In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über diese Kante pro Zeiteinheit transportiert
MehrOperations Research. Flüsse in Netzwerken. Flüsse in Netzwerken. Unimodularität. Rainer Schrader. 2. Juli Gliederung.
Operations Research Rainer Schrader Flüsse in Netzwerken Zentrum für Angewandte Informatik Köln 2. Juli 2007 1 / 53 2 / 53 Flüsse in Netzwerken Unimodularität Gliederung Netzwerke und Flüsse bipartite
Mehr1.Aufgabe: Minimal aufspannender Baum
1.Aufgabe: Minimal aufspannender Baum 11+4+8 Punkte v 1 v 2 1 3 4 9 v 3 v 4 v 5 v 7 7 4 3 5 8 1 4 v 7 v 8 v 9 3 2 7 v 10 Abbildung 1: Der Graph G mit Kantengewichten (a) Bestimme mit Hilfe des Algorithmus
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Minimale spannende Bäume 5. Färbungen und Cliquen 6. Traveling Salesman Problem 7. Flüsse in Netzwerken
MehrFlüsse, Schnitte, bipartite Graphen
Flüsse, Schnitte, bipartite Graphen Thomas Fersch mail@t-fersch.de 11.06.2010 Seminar "Hallo Welt!" für Fortgeschrittene 1 Übersicht Maximale Flüsse in Netzwerken Worum geht s? Lösung nach Ford-Fulkerson
MehrAlgorithmentheorie. 13 - Maximale Flüsse
Algorithmentheorie 3 - Maximale Flüsse Prof. Dr. S. Albers Prof. Dr. Th. Ottmann . Maximale Flüsse in Netzwerken 5 3 4 7 s 0 5 9 5 9 4 3 4 5 0 3 5 5 t 8 8 Netzwerke und Flüsse N = (V,E,c) gerichtetes Netzwerk
MehrAlgorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen WS 08/09 Friedhelm Meyer auf der Heide Vorlesung 8, 4.11.08 Friedhelm Meyer auf der Heide 1 Organisatorisches Am Dienstag, 11.11., fällt die
MehrFlüsse, Schnitte, bipartite Graphen
Flüsse, Schnitte, bipartite Graphen Vlad Popa 08.06.2010 Inhaltsverzeihnis 1. Flussnetzwerke und Flüsse 1.1 Ford- Fulkerson 1.2 Edmond Karp 1.3 Dinic 2. Schnitte 3. Maximaler Fluss bei minimalen Kosten
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Pfade. Traveling Salesman Problem. Flüsse in Netzwerken
Mehrij. , d (k 1) + d (k 1)
Dabei war ja die Idee, dass wir unser k Schritt für Schritt erhöhen bis wir bei n angekommen sind, denn dann haben wir das Problem gelöst. Dies ist im Grunde unser Algorithmus. Wir müssen diesen nur noch
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe 3. Elementare Graphalgorithmen und Anwendungen 4. Minimal spannende Bäume 5. Kürzeste Pfade 6. Traveling Salesman Problem 7. Flüsse
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorleung. Falltudie Bipartite Graphen. Grundbegriffe 3. Elementare Graphalgorithmen und Anwendungen 4. Minimal pannende Bäume 5. Kürzete Pfade 6. Traveling Saleman Problem 7. Flüe in Netzwerken
MehrTrennender Schnitt. Wie groß kann der Fluss in dem folgenden Flussnetzwerk höchstens sein?
6. Flüsse und Zuordnungen max-flow min-cut Trennender Schnitt Wie groß kann der Fluss in dem folgenden Flussnetzwerk höchstens sein? a e s c d t b f Der Fluss kann nicht größer als die Kapazität der der
Mehr6 Flüsse und Matchings
6. Flüsse in Netzwerken Flußnetzwerke 6 Flüsse und Matchings In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über diese Kante pro Zeiteinheit transportiert werden
MehrAlgorithmische Graphentheorie
Algorithmische Graphentheorie Vorlesung 13: Flüsse und Zuordnungen Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 9. Juni 2017 DURCHSATZ D(e) ist die maximale Flussmenge,
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 5. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Wdhlg.: Dijkstra-Algorithmus I Bestimmung der
Mehr2.6.1 Definition und Darstellung Ausspähen von Graphen Minimal spannende Bäume Kürzeste Pfade 2.6.
.6 Graphen.6. Definition und Dartellung.6. Aupähen von Graphen.6.3 Minimal pannende Bäume.6.4 Kürzete Pfade.6.5 Maximaler Flu .6.5 Maximaler Flu.6.5. Flunetzwerke.6.5. Ford-Fulkeron-Methode.6.5.3 Algorithmu
MehrADS: Algorithmen und Datenstrukturen 2
ADS: Algorithmen und Datenstrukturen Der Tragödie IV. Theyl Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University
MehrEffiziente Algorithmen und Datenstrukturen II
Effiziente Algorithmen und Datenstrukturen II Prof. Dr. Christian Scheideler Technische Universität München, 25. April 2006 1 Algorithmen für maximale Flüsse 1.1 Flüsse Ein Flussnetzwerk G = (V, E) ist
MehrGliederung. Kapitel 4. Lokale Suchverfahren. Meta-Heuristiken. Simulated Annealing. Lokale Suchverfahren. Optimierungsalgorithmen
Kapitel Optimierungsalgorithmen Gunnar Klau Institut für Computergraphik und Algorithmen Gliederung Kombinatorische vs. Ganzzahlige Optimierung Exakte Verfahren Branch-and-Bound Schnittebenenverfahren
Mehr5. Musterlösung. Problem 1: Vitale Kanten * ω(f) > ω(f ). (a) Untersuchen Sie, ob es in jedem Netzwerk vitale Kanten gibt.
Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 05/06 ITI Wagner 5. Musterlösung Problem : Vitale Kanten * In einem Netzwerk (D = (V, E); s, t; c) mit Maximalfluß f heißen Kanten e
MehrFreie Bäume und Wälder
(Martin Dietzfelbinger, Stand 4.6.2011) Freie Bäume und Wälder In dieser Notiz geht es um eine besondere Sorte von (ungerichteten) Graphen, nämlich Bäume. Im Gegensatz zu gerichteten Bäumen nennt man diese
MehrGraphalgorithmen Netzwerkalgorithmen. Laufzeit
Netzwerkalgorithmen Laufzeit (Folie 390, Seite 78 im Skript) Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V, V 2 }) mit der Ford Fulkerson Methode. Der Fluß ist höchstens f = min{
Mehr15. Elementare Graphalgorithmen
Graphen sind eine der wichtigste Modellierungskonzepte der Informatik Graphalgorithmen bilden die Grundlage vieler Algorithmen in der Praxis Zunächst kurze Wiederholung von Graphen. Dann Darstellungen
MehrBipartite Graphen. Beispiele
Bipartite Graphen Ein Graph G = (V, E) heiÿt bipartit (oder paar), wenn die Knotenmenge in zwei disjunkte Teilmengen zerfällt (V = S T mit S T = ), sodass jede Kante einen Knoten aus S mit einem Knoten
Mehr4.7 Der Algorithmus von Dinic für maximalen Fluss
4.7 Der Algorithmus von Dinic für maximalen Fluss Wir kennen bereits den Algorithmus von Ford Fulkerson zur Suche nach einem maximalen Fluss in einem Graphen. Wir lernen nun einen Algorithmus für maximalen
MehrDatenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Dynamische Programmierung Einführung Ablaufkoordination von Montagebändern Längste gemeinsame Teilsequenz Optimale
MehrVU Algorithmen auf Graphen Übungsblatt 2 - Aufgabe 2 Transformation einer MaxFlow- in eine MinCost Circulation Instanz
VU Algorithmen auf Graphen Übungsblatt 2 - Aufgabe 2 Transformation einer MaxFlow- in eine MinCost Circulation Instanz Gruppe A: Bernhard Stader, Georg Ziegler, Andreas Zugaj 10. November 2004 Inhaltsverzeichnis
MehrAlgorithmen zur Berechnung von Matchings
Algorithmen zur Berechnung von Matchings Berthold Vöcking 10. Oktober 2006 1 Einleitung Matchingprobleme sind Zuordnungsprobleme. Es geht darum z.b. Studierenden Plätze in Seminaren zuzuordnen, Bewerber
Mehr6. Flüsse und Zuordnungen
6. Flüsse und Zuordnungen In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über solch eine Kante pro Zeiteinheit transportiert werden können. Wir können uns einen
MehrWS 2008/09. Diskrete Strukturen
WS 2008/09 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0809
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesungen 5 und 6 Programm
MehrKAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN
KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN F. VALLENTIN, A. GUNDERT 1. Definitionen Notation 1.1. Ähnlich wie im vorangegangenen Kapitel zunächst etwas Notation. Wir beschäftigen uns jetzt mit ungerichteten
MehrNachklausur Grundlagen der Algorithmik (Niedermeier/Froese/Chen/Fluschnik, Wintersemester 2015/16)
Berlin, 14. April 2016 Name:... Matr.-Nr.:... Nachklausur Grundlagen der Algorithmik (Niedermeier/Froese/Chen/Fluschnik, Wintersemester 2015/16) 1 / 10 2 / 10 3 / 11 4 / 9 5 / 10 Σ / 50 Einlesezeit: Bearbeitungszeit:
MehrAlgorithmische Graphentheorie
Algorithmische Graphentheorie Sommersemester 204 4. Vorlesung Matchings / Paarungen Kombinatorische Anwendungen des Max-Flow-Min-Cut-Theorems Prof. Dr. Alexander Wolff 2 Paarungen (Matchings) Def. Sei
MehrFormale Grundlagen der Informatik
Formale Grundlagen der Informatik / 2015 1 Die Elemente einer (endlichen) Menge sollen den Elementen einer zweiten, gleichmächtigen Menge zugeordnet werden Problemstellung Bipartite Graphen Zuordnungsprobleme
MehrVery simple methods for all pairs network flow analysis
Very simple methods for all pairs network flow analysis Tobias Ludes 02.07.07 Inhalt Einführung Algorithmen Modifikation der Gomory-Hu Methode Einführung Nach Gomory-Hu nur n-1 Netzwerk-Fluss- Berechnungen
MehrName:... Vorname:... Matr.-Nr.:... Studiengang:...
Technische Universität Braunschweig Sommersemester 2013 IBR - Abteilung Algorithmik Prof. Dr. Sándor P. Fekete Dr. Christiane Schmidt Stephan Friedrichs Klausur Netzwerkalgorithmen 16.07.2013 Name:.....................................
MehrFlüsse, Schnitte, bipartite Graphen. Martin Oettinger
Flüsse, Schnitte, bipartite Graphen Martin Oettinger Übersicht Einführung Algorithmen für maximalen Fluss Preflow-Push Ford-Fulkerson Spezialfall: Maximaler Fluss bei minimalen Kosten Reduktionen Bipartites
MehrKürzeste Wegealgorithmen
Kürzeste Wegealgorithmen Berechnung kürzester Wege Ein gewichteter Graph G ist ein Tupel (V,E) zusammen mit einer Gewichtsfunktion f, wobei E V V und f: E Seien u,v V. Ein kürzester Weg von u nach v ist
MehrEffiziente Algorithmen I
H 10. Präsenzaufgabenblatt, Wintersemester 2015/16 Übungstunde am 18.01.2015 Aufgabe Q Ein Reiseveranstalter besitzt ein Flugzeug, das maximal p Personen aufnehmen kann. Der Veranstalter bietet einen Flug
MehrSatz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,...
Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,..., k, so dass gilt M = k c i P i i=1 k c i = r. i=1 Diskrete Strukturen 7.1 Matchings
MehrÜberblick. Kap. 1.4: Minimum Weight Perfect Matching. 1.3 Blüten-Schrumpf Algorithmus für Maximum Matching
Kap. 1.4: Minimum Weight Professor Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering, LS11 4. VO 6. November 2006 Überblick kurze Wiederholung: 1.2 Blüten-Schrumpf-Algorithmus für Perfektes Matching
MehrGraphentheorie. Maximale Flüsse. Maximale Flüsse. Maximale Flüsse. Rainer Schrader. 31. Oktober Gliederung. sei G = (V, A) ein gerichteter Graph
Graphentheorie Rainer Schrader Zentrum ür Angewandte Inormatik Köln 31. Oktober 2007 1 / 30 2 / 30 Gliederung maximale Flüsse Schnitte Edmonds-Karp-Variante sei G = (V, A) ein gerichteter Graph sei c eine
Mehr11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME
Algorithmen und Datenstrukturen 11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME Algorithmen und Datenstrukturen - Ma5hias Thimm (thimm@uni-koblenz.de) 1 Algorithmen und Datenstrukturen 11.1. BERECHNUNG MAXIMALER FLÜSSE
MehrAlgorithmen zur Berechnung von Matchings
Algorithmen zur Berechnung von Matchings Berthold Vöcking 1 Einleitung Matchingprobleme sind Zuordnungsprobleme. Es geht darum z.b. Studierenden Plätze in Seminaren zuzuordnen, Bewerber auf freie Stellen
MehrWS 2009/10. Diskrete Strukturen
WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910
MehrFlüsse und Schnitte von Graphen
Flüsse und Schnitte von Graphen Christian Koch Friedrich-Alexander-Universität Erlangen-Nürnberg 2. Juni 27 Christian Koch Flüsse und Schnitte 2. Juni 27 / 29 Gliederung Flüsse Allgemeines Maximaler Fluss
MehrMustererkennung: Graphentheorie
Mustererkennung: Graphentheorie D. Schlesinger TUD/INF/KI/IS D. Schlesinger () ME: Graphentheorie 1 / 9 Definitionen Ein Graph ist ein Paar G = (V, E) mit der Menge der Knoten V und der Menge der Kanten:
MehrKapitel 5: Minimale spannende Bäume Gliederung der Vorlesung
Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege. Minimale spannende Bäume. Färbungen und Cliquen. Traveling Salesman Problem. Flüsse in Netzwerken
MehrFortgeschrittene Netzwerk- und Graph-Algorithmen
Fortgeschrittene Netzwerk- und Graph-Algorithmen Dr. Hanjo Täubig Lehrstuhl für Eziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester 2007/08
MehrEffiziente Algorithmen (SS2014)
Effiziente Algorithmen (SS204) Kapitel 2 Flüsse Walter Unger Lehrstuhl für Informatik 26.06.204 09: (2:2) Walter Unger 7..205 7:56 SS204 Z x Inhalt I Dinitz mit Propagation Einleitung Algorithmus und
MehrProseminar Graphentheorie Vortrag 3 Matching. Inhalt: 1. Grundlagen 2. Matchings in bipatiten Graphen 3. Matchings in allgemeinen Graphen
Proseminar Graphentheorie Vortrag 3 Matching Inhalt: 1. Grundlagen 2. Matchings in bipatiten Graphen 3. Matchings in allgemeinen Graphen 1. Grundlagen Definition Matching: Eine Menge M von unabhängigen
MehrSystems of Distinct Representatives
Systems of Distinct Representatives Seminar: Extremal Combinatorics Peter Fritz Lehr- und Forschungsgebiet Theoretische Informatik RWTH Aachen Systems of Distinct Representatives p. 1/41 Gliederung Einführung
MehrFelix Brandt, Jan Johannsen. Vorlesung im Wintersemester 2008/09
Felix Brandt, Jan Johannsen Vorlesung im Wintersemester 2008/09 Übersicht Übersicht Definition Ein Matching in G = (V, E) ist eine Menge M E mit e 1 e 2 = für e 1, e 2 M, e 1 e 2 Ein Matching M ist perfekt,
Mehr6. Flüsse in Netzwerken Berechnung maximaler Flüsse. dann berechnet der Markierungsalgorithmus für beliebige Kapazitätsfunktionen
6. Flüsse in Netzwerken Berechnung maximaler Flüsse Satz 6.4. Ersetzt man in Algorithmus 6.1 den Schritt 2 durch 2a. Wähle den Knoten, der zuerst in eingefügt wurde. Setze. dann berechnet der arkierungsalgorithmus
MehrSeminar über aktuelle Forschungsthemen in der Algorithmik, Dozent Prof. Dr. Alt;
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
MehrKlausur zum Modul Einführung in die Diskrete Mathematik
Klausur zum Modul Einführung in die Diskrete Mathematik 11.2.2014 Aufgabe 1 [10 Punkte] Sei G ein ungerichteter Graph, k N und x, y, z V (G). Zeigen Sie: Gibt es k paarweise kantendisjunkte x-y-wege und
MehrMatching. Organisatorisches. VL-18: Matching. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger. Tanzabend
Organisatorisches VL-18: Matching (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Vorlesung: Gerhard Woeginger (Zimmer 4024 im E1) Sprechstunde: Mittwoch 11:15 12:00 Übungen: Tim Hartmann,
MehrEffiziente Algorithmen Übung 2 Lösungen
TU Ilmenau, Fakultät für Informatik und Automatisierung FG Komplexitätstheorie und Effiziente Algorithmen Univ.-Prof. Dr. M. Dietzfelbinger, M. Sc. Stefan Walzer https://www.tu-ilmenau.de/iti/lehre/lehre-ws-016017/ea/
Mehr= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2
1 Graphen Definition: Ein Graph G = (V,E) setzt sich aus einer Knotenmenge V und einer (Multi)Menge E V V, die als Kantenmenge bezeichnet wird, zusammen. Falls E symmetrisch ist, d.h.( u,v V)[(u,v) E (v,u)
MehrFLÜSSE, SCHNITTE UND - TEIL 2 - BIPARTITE GRAPHEN. Vortrag im Seminar Hallo Welt Für Fortgeschrittene Dozenten: Werth, T. & Brinkers, D.
FLÜSSE, SCHNITTE UND BIPARTITE GRAPHEN - TEIL 2 - Vortrag im Seminar Hallo Welt Für Fortgeschrittene Dozenten: Werth, T. & Brinkers, D. Lukas Dresel 17. Juni 215 Inhalt Problemstellung Lösungsmethode 1
MehrNetzwerkfluß. Gegeben ist ein System von Wasserrohren: Die Kapazität jedes Rohres ist 3, 5 oder 8 l/s.
Netzwerkfluß (Folie, Seite 78 im Skript) Gegeben ist ein System von Wasserrohren: Quelle s t Senke Die Kapazität jedes Rohres ist, oder 8 l/s. Frage: Wieviel Wasser kann von der Quelle zur Senke fließen?
MehrKapitel 9: Lineare Programmierung Gliederung
Gliederung 1. Grundlagen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. Ausgewählte Datenstrukturen 5. Dynamisches Programmieren 6. Graphalgorithmen 7. String-Matching 8. Kombinatorische Algorithmen
MehrEinführung in die Mathematik des Operations Research
Universität zu Köln Mathematisches Institut Prof. Dr. F. Vallentin Einführung in die Mathematik des Operations Research Sommersemester 3 en zur Klausur (7. Oktober 3) Aufgabe ( + 3 + 5 = Punkte). Es sei
Mehr1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2006/ März 2007
1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2006/2007 1. März 2007 Lösung! Beachten Sie, dass die enthaltenen Musterlösungen aus didaktischen Gründen umfangreicher formuliert sind als für
Mehr1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2005/2006
1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2005/2006 Hier Aufkleber mit Name und Matrikelnummer anbringen Vorname: Nachname: Matrikelnummer: Beachten Sie: Bringen Sie den Aufkleber mit
MehrMaximale s t-flüsse in Planaren Graphen
Maximale s t-flüsse in Planaren Graphen Vorlesung Algorithmen für planare Graphen 6. Juni 2017 Guido Brückner INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg
MehrLängen-beschränkte Schnitte und Flüsse
Seminarausarbeitung über G. Baiers et al. Abhandlung über: Längen-beschränkte Schnitte und Flüsse (oder: Length-bounded Cuts and Flows) Frank Obermüller 06. Dezember 2009 1 Einleitung Sei G = (V, E) ein
Mehr2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1}
1. Berechne für jeden Knoten i in BFS-Art eine Liste S i von von i aus erreichbaren Knoten, so dass (i) oder (ii) gilt: (i) S i < n 2 + 1 und Si enthält alle von i aus erreichbaren Knoten (ii) S i = n
MehrÜbungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 16/17 Ausgabe 22. Dezember 2016 Abgabe 17. Januar 2017, 11:00 Uhr
MehrSteiner Bäume. Dipl.-Math. Maria Kandyba Lehrstuhl für Algorithm Engineering, LS VO 15. Januar 2007
Steiner Bäume Dipl.-Math. Maria Kandyba Lehrstuhl für Algorithm Engineering, LS11 12 VO 15. Januar 2007 Überblick Einführung Definition und Motivation Komplexität Approximationsalgorithmen Distanznetzwerk
MehrDiskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)
WS 2015/16 Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15
MehrTutoraufgabe 1 (Floyd-Warshall):
für Informatik Prof. aa r. Ir. Joost-Pieter Katoen atenstrukturen und lgorithmen SS hristian ehnert, Friedrich Gretz, enjamin Kaminski, Thomas Ströder Tutoraufgabe (Floyd-Warshall): etrachten Sie den folgenden
MehrKapitel 4: Netzplantechnik Gliederung der Vorlesung
Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Netzplantechnik 5. Minimal spannende Bäume 6. Traveling Salesman Problem 7. Flüsse in Netzwerken
MehrDas Heiratsproblem. Definition Matching
Das Heiratsproblem Szenario: Gegeben: n Frauen und m > n Männer. Bekanntschaftsbeziehungen zwischen allen Männern und Frauen. Fragestellung: Wann gibt es für jede der Frauen einen Heiratspartner? Modellierung
Mehr2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37
2. November 2011 Gradfolgen Zusammenhang Kürzeste Wege H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37 Satz von Erdős und Gallai Eine Partition einer natürlichen Zahl ist genau dann die Gradfolge
MehrNetzwerk-Simplex. MinCostFlow als Lineares Programm. 1 of 12 Netzwerksimplex
Netzwerk-Simplex MinCostFlow als Lineares Programm of 2 Netzwerksimplex MinCostFlow geg: gerichteter Graph G, Kapazitäten u R R 0 { }, Bedarfe b V R, Pfeilkosten c R R ges: zulässiger b-fluss f mit minimalen
Mehr3.6 Branch-and-Bound-Verfahren
36 Branch-and-Bound-Verfahren Die Branch-and-Bound -Methode beruht darauf, auf eine intelligente Weise alle zulässigen Lösungen eines kombinatorischen Optimierungsproblems aufzulisten und mit Hilfe von
MehrFerienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem
Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem Dipl-Math. Wolfgang Kinzner 4.4.2012 Kapitel 6: Matchings und TSP-Problem Matching und Matchingproblem Flussalgorithmus
MehrDurchschnitt von Matroiden
Durchschnitt von Matroiden Satz von Edmonds Dany Sattler 18. Januar 2007/ Seminar zur ganzzahligen Optimierung / Wallenfels Definition: Unabhängigkeitssystem Definition: Ein Mengensystem (S, J ) nennt
MehrAlgorithmen und Datenstrukturen 2-1. Seminar -
Algorithmen und Datenstrukturen 2-1. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Sommersemster 2010 Outline 1. Übungsserie: 3 Aufgaben, insgesamt 30 28 Punkte A1 Spannbäume (10 8
MehrOptimierung. Optimierung. Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung Fabian Kuhn
Optimierung Vorlesung 9 Lineare Programmierung & Kombinatorische Optimierung 1 Assignment Problem (Zuordnungsproblem) Gewichtetes Perfektes Bipartites Matching agents Costs tasks Weise jedem Agenten genau
Mehr3.4 Maximale Flüsse und der Algorithmus von Ford Fulkerson
3.4 Maximale Flüsse und der Algorithmus von Ford Fulkerson Definition 3.4.1 Die Aufgabe, zu jedem Netzwerk N = (s, t, V, E, c o ) mit n = V Knoten und m = E Kanten den Fluß f IR m mit maximalem Wert zu
MehrStefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie
Stefan Schmid TU Berlin & T-Labs, Berlin, Germany Reduktionen in der Berechenbarkeitstheorie Problem: Wie komme ich von hier zum Hamburger Hbf? 2 Beispiel P1 Wie komme ich von hier zum Hamburger Hbf? kann
Mehr9 Minimum Spanning Trees
Im Folgenden wollen wir uns genauer mit dem Minimum Spanning Tree -Problem auseinandersetzen. 9.1 MST-Problem Gegeben ein ungerichteter Graph G = (V,E) und eine Gewichtsfunktion w w : E R Man berechne
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 0..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
MehrAlgorithmen und Datenstrukturen, FS17 Prof Dr Christian Tschudin
Departement Mathematik und Informatik Algorithmen und Datenstrukturen, FS17 Prof Dr Christian Tschudin 20. April 2017 Graphenalgorithmen III Robert Floyd Algorithmen und Datenstrukturen, FS17 20. April
MehrTeil III. Komplexitätstheorie
Teil III Komplexitätstheorie 125 / 160 Übersicht Die Klassen P und NP Die Klasse P Die Klassen NP NP-Vollständigkeit NP-Vollständige Probleme Weitere NP-vollständige Probleme 127 / 160 Die Klasse P Ein
Mehr