Wiederholung zu Flüssen

Größe: px
Ab Seite anzeigen:

Download "Wiederholung zu Flüssen"

Transkript

1 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: Wieviel kann man in einem Netzwerk maximal von einer Quelle s zu einer Senke t transportieren, wenn die Kapazitäten der einzelnen Verbindungen gegeben sind? 1 Definitionen Definition (Fluss) Sei D = (V, E) ein einfacher gerichteter Graph mit Kantenkapazitäten c : E R + 0 und ausgezeichneten Knoten s, t V. Man bezeichnet das Tupel (D; s, t; c) als Netzwerk mit Quelle s (engl.: source) und Senke t (engl.: target). Eine Abbildung f : E R + 0 heißt Fluss, wenn sie die folgenden beiden Eigenschaften hat: 1. Für alle (i, j) E ist die Kapazitätsbedingung erfüllt. 0 f(i, j) c(i, j) 2. Für alle i V \ {s, t} ist die Flusserhaltungsbedingung f(j, i) = 0 erfüllt. {j } {j (j,i) E} Die Kapazitätsbedingung besagt also, dass durch jede Kante ein nicht-negativer Fluss, der durch die Kapazität der Kante beschränkt ist, fließt. Die Flusserhaltungsbedingung besagt, dass in jeden Knoten (abgesehen von Quelle und Senke) genau so viel hinein fließt wie heraus. Anschaulich ist klar, dass der Gesamtfluss aus s heraus gleich dem Gesamtfluss nach t sein sollte. Das folgende Lemma bestätigt dies: Lemma 1 Für einen Fluss f in einem Netzwerk (D; s, t; c) gilt f(s, i) f(i, s) = (s,i) E (i,s) E (i,t) E f(i, t) (t,i) E f(t, i). Beweis. Es gilt f(i, j) = (i,s) E = (s,s) E f(i, s) + (i,t) E f(s, i) + (t,i) E Wegen der Flusserhaltung folgt die Behauptung. 1 f(i, t) + f(t, i) + j V \{s,t} j V \{s,t} (j,i) E f(i, j) f(j, i).

2 Definition (Wert des Flusses) Der Ausdruck w(f) := heißt Wert des Flusses f. (s,i) E f(s, i) (i,s) E f(i, s) Definition (Maximalfluss) Ein Fluss f, für den w(f) maximal ist, d.h. w(f ) w(f) für alle Flüsse f in einem Netzwerk (D; s, t; c), heißt Maximalfluss in (D; s, t; c). Definition (Schnitt, Kapazität eines Schnittes) Eine Menge S V induziert eine Partition (S, V \ S) der Knotenmenge V, die wir Schnitt im Graphen D = (V, E) nennen. In einem Netzwerk (D; s, t; c) heißt (S, V \ S) ein s-t-schnitt, wenn s S und t V \ S. Die Kapazität eine Schnittes (S, V \ S) ist definiert als c(s, V \ S) := c(i, j) Definition (minimaler Schnitt) Ein Schnitt (S, V \ S) heißt minimal, wenn c(s, V \ S) minimalen Wert unter allen Schnitten (S, V \ S ) hat, d.h. c(s, V \ S ) c(s, V \ S) für alle S V mit S V. Lemma (Schnittlemma) Sei (S, V \ S) ein s-t-schnitt im Netzwerk (D; s, t; c). Für jeden Fluss f gilt, dass w(f) = Insbesondere ist w(f) c(s, V \ S). j S i V \S f(i, j). Beweis. Es gilt w(f) = = i,j S ( (j,i) E i,j S (j,i) E f(j, i) + c(i, j) = c(s, V \ S). ) f(j, i) (j,i) E f(j, i) 2

3 Definition (erhöhender Weg) Zu einem Fluss f im Netzwerk (D; s, t; c) betrachten wir einen ungerichteten Weg von s nach t. Alle Kanten auf diesem Weg, die von s in Richtung t gerichtet sind, heißen Vorwärtskanten (VwK), alle anderen Rückwärtskanten (RwK). Ein solcher Weg heißt erhöhender Weg bezüglich f, wenn für jede Vorwärtskante (i, j) des Weges f(i, j) < c(i, j) gilt und wenn für jede Rückwärtskante f(i, j) > 0. Satz (Satz vom erhöhenden Weg) Ein Fluss f in einem Netzwerk (D; s, t; c) ist genau dann ein Maximalfluss, wenn es bezüglich f keinen erhöhenden Weg gibt. Beweis. = : Sei f ein Maximalfluss. Angenommen, es existiere bezüglich f ein erhöhender Weg. Sei für Kanten (i, j) dieses Weges { c(i, j) f(i, j) falls (i, j) Vorwärtskante (i, j) := f(i, j) falls (i, j) Rückwärtskante und := min{ (i, j) (i, j) auf erhöhendem Weg W }. Dann ist > 0. Sei nun f : E R + 0 definiert als f(i, j) + falls (i, j) Vorwärtskante auf W f := falls (i, j) Rückwärtskante auf W f(i, j) sonst. Dann ist f wieder ein Fluss und w(f ) > w(f) im Widerspruch zur Annahme, dass f ein Maximalfluss ist. =: Das Netzwerk (D; s, t; c) habe keinen bezüglich f erhöhenden Weg. Sei S die Menge aller Knoten in V, zu denen ein erhöhender Weg von s aus bezüglich f existiert. Es gilt S, weil s S und S V, weil t / S. Dann induziert s einen s-t-schnitt und es muss gelten, dass f(i, j) = c(i, j) für alle (i, j) mit i S, j V \ S und dass f(i, j) = 0 für alle (i, j) mit i V \ S, j S (d.h. alle Kanten (i, j) mit i S, j V \ S sind saturiert und alle Kanten (i, j) mit i V \ S, j S sind leer). Nach dem Schnittlemma ergibt sich w(f) = c(s, V \ S). Es muss also w(f) maximal sein. Satz (Max-Flow Min-Cut Theorem, Ford und Fulkerson, 1956) In einem Netzwerk (D; s, t; c) ist der Wert eines Maximalflusses gleich der minimalen Kapazität eines s-t-schnittes. Beweis. Die Behauptung folgt direkt aus dem Satz vom erhöhenden Weg. Denn ist f ein Maximalfluss, dann existiert ein Schnitt (S, V \ S) mit s S und t V \ S, wobei S die Menge aller auf einem erhöhenden Weg von s erreichbaren Knoten ist. Für (S, V \ S) gilt, dass w(f) = c(s, V \ S) und c(s, V \ S) = min =S V s S t V \S c(s, V \ S). 3

4 2 Der Algorithmus von Edmonds und Karp Der Algorithmus von Edmonds und Karp (1972) berechnet in O( V E 2 ) einen maximalen Fluss entsprechend dem Beweis des Satzes vom erhöhenden Weg. Hierbei wird systematisch mittels Breitensuche ein erhöhender Weg kürzester Länge gesucht (siehe Abbildung 1). 1) Setze f(i, j) := 0 für alle Kanten (i, j) E. 2) Solange es einen erhöhenden Weg bezüglich f gibt, führe aus: 3) Sei e 1, e 2,..., e k mit e 1, e 2,..., e k E ein erhöhender Weg kürzester Länge. 4) Setze := min({c(e i ) f(e i ) e i VwK} {f(e i ) e i RwK}). 5) Setze f(e i ) := f(e i ) +, falls e i VwK ist und f(e i ) := f(e i ), falls e i RwK ist. Im Algorithmus von Edmonds und Karp wird der Fluss maximal O( V E ) oft erhöht und eine Erhöhung kostet jeweils höchstens O( E ), was zu einer Laufzeit von O( V E 2 ) führt. Für Implementationsdetails und weitere Flussalgorithmen, siehe Skript über Flussprobleme und Dualität oder [2]. 3 Bipartites Matching 3.1 Definitionen Definition (bipartiter Graph) Sei G = (V, E) ein ungerichteter Graph. G heißt bipartit, falls die Knotenmenge V in zwei disjunkte Teilmengen X und Y partitioniert werden kann, so dass jede Kante aus E genau einen Endknoten in X und genau einen Endknoten in Y hat, d.h. für {v, w} E gilt v X und w Y oder v Y und w X. Definition (Matching, maximales Matching) Ein Matching von G ist eine Teilmenge M der Kantenmenge E, die keine gemeinsamen Endknoten besitzt. Ein maximales Matching ist ein Matching maximaler Mächtigkeit (siehe Abbildung 2(b)), d.h. G enthält kein Matching M mit M < M. Definition (das maximale bipartite Matching-Problem) Das maximale bipartite Matching-Problem besteht darin, ein maximales Matching zu finden. 3.2 Reduktion auf ein Flussproblem Sei G ein bipartiter Graphen, dessen Knoten in zwei disjunkte Mengen X und Y partitioniert sind. Wir erzeugen ein Flussnetzwerk D, so dass der maximale Fluss in D in ein maximales Matching umgerechnet werden kann (siehe Abbildung 3). Alle Knoten in G werden zu Knoten in D. Füge zwei weitere Knoten s bzw. t als Quelle bzw. Senke hinzu. Füge jede Kante von G zu D hinzu, richte die Kante so, dass sie von X nach Y orientiert ist. Füge gerichtete Kanten von s zu jedem Knoten aus X hinzu und Kanten von jedem Knoten aus Y zu t. Alle Kanten bekommen jeweils die Kapazität 1. Sei f ein Fluss in D. Sei e M E, falls f(e) = 1. Wir zeigen nun, dass M ein Matching ist. Da in D alle Kapazitäten 1 sind, trägt jede Kante den Fluss 0 oder 1. Weiterhin hat 4

5 (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) Abbildung 1: Beispiel des Algorithmus von Edmonds und Karp. 5

6 (a) (b) Abbildung 2: (a) Ein nicht erweiterbares Matching, das aber nicht maximal ist. (b) Ein maximales Matching. jeder Knoten aus X genau eine einkommende Kante. Dies impliziert, dass höchstens eine ausgehende Kante von X nicht-leeren Fluss haben kann. Genauso hat jeder Knoten aus Y genau eine ausgehende Kante und somit höchstens eine eingehende Kante mit nicht-leerem Fluss. Daraus folgt, dass jeder Knoten aus X mit maximal einem Knoten aus Y durch eine flusstragende Kante verbunden ist und somit ist M ein Matching. Wir sehen leicht, dass die Mächtigkeit von M gleich dem Wert des Flusses f ist. Die umgekehrte Richtung gilt ebenso. Falls ein Matching M eines Graphen G gegeben ist, können wir daraus einen Fluss f für D folgendermaßen bestimmen: Sei f(e) = 1, falls e M und f(e) = 0, sonst. Weiterhin gilt für alle Kanten e D, die inzident zu s oder t sind: f(e) = 1, falls e Endpunkt einer Kante aus M ist und f(e) = 0, sonst. Dann ist f ein Fluss und der Wert des Flusses gleicht der Mächtigkeit von M. Hieraus folgt, dass jeder Algorithmus zur Bestimmung eines maximalen Flusses auch zur Bestimmung des bipartiten maximalen Matching-Problems benutzt werden kann. Genauer: 1. Konstruiere ein Netzwerk D eines bipartiten Graphen G in O(n + m). Das Netzwerk D hat n + 2 Knoten und n + m Kanten. 2. Berechne einen maximalen Fluss für D zum Beispiel mit dem Algorithmus von Edmonds und Karp. Da die Kanten Einheitsgewicht haben und somit der Wert des Maximalflusses gleich M ist, ist die Laufzeit dieses Schrittes O(nm). Satz Sei G ein bipartiter Graph mit n Knoten und m Kanten. Ein maximales Matching von G kann in O(nm) berechnet werden. 4 Anwendungsbeispiel - ein Tag in der Arbeitsagentur Bei der Arbeitsagentur haben sich viele Leute gemeldet, die noch eine Arbeit suchen. Auf dem Formular für Arbeitssuche haben sie angegeben, für welche Arbeiten sie qualifiziert sind. Die Arbeitsagentur möchte nun so viele Jobs wie möglich vermitteln. Hierbei hilft der Satz von Hall (siehe [3]). Satz (Heiratssatz von Hall, 1935) In einem bipartiten Graphen G mit Knotenpartitionen X und Y existiert genau dann ein Matching M mit M = X, falls für jede Teilmenge S X gilt, dass die Nachbarschaft von 6

7 (a) (b) Abbildung 3: (a) Ein bipartiter Graph G. (b) Ein von G reduziertes Flussnetzwerk D mit Maximalfluss (dicke Kanten); die dicken Kanten haben Fluss 1, die anderen Kanten haben Fluss 0 (siehe [1]). S mindestens so groß ist, wie S selbst, d.h. N(S) S für alle S X (wobei N(S) := {y Y {x, y} E, x S} die Nachbarschaft der Knotenmenge S heißt). Beweis. = : In dem durch M induzierten Teilgraphen H = (V, M) hat jede Teilmenge S X nach Definition eines Matchings genau S Nachbarn. Wegen M E gilt daher auch N(S) S. =: Beweis durch Widerspruch Annahme: Es gäbe einen Graphen, für den N(S) S für alle S X, aber der kein Matching der Kardinalität X enthält. Wähle ein kardinalitätsmaximales Matching M in G. Dann gilt M < X. Also gibt es mindestens einen Knoten x 0 X, der nicht von M überdeckt wird. Da N(x 0 ) x 0 = 1 nach Voraussetzung, hat x 0 mindestens einen Nachbarn y 0 in Y. Dann können wir eine Folge von Knoten konstruieren: k 0; while y k wird von M überdeckt do x k+1 Nachbar von y k in M; wähle einen beliebigen Knoten y k+1 aus N({x 0,..., x k+1 }) \ {y 0,..., y k }; k k + 1; Wegen der Voraussetzung gibt es in jedem Durchlauf der Schleife Knoten y k+1, denn jeder Knoten ist nach Konstruktion zu mindestens einem Knoten in der Menge {x 0,..., x k+1 } inzident. Somit gibt es einen Pfad von x 0 zu dem letzten gefundenen Knoten, der abwechselnd aus Kanten besteht, die nicht zum Matching M gehören und aus Kanten, die in M enthalten sind. Nach Konstruktion werden x 0 und y k nicht von M überdeckt. Daraus folgt, dass ein neues Matching M konstruiert werden kann. Entferne aus M alle Kanten des Pfades, die zu M gehören und füge statt dessen zu M alle Kanten des Pfades hinzu, die bislang nicht zu M gehört haben. Das so entstandene Matching M enthält dann genau eine Kante mehr als das Matching M. Da M als kardinalitätsmaximal gewählt wurde, haben wir einen Widerspruch zur Annahme. Wann kann nun die Arbeitsagentur allen Bewerbern einen Job vermitteln? Sei hierfür X die Menge die Bewerber und Y die Menge der Jobs. Für jedes S X sei N(S) die Menge der 7

8 Jobs für die sich die Bewerber S X interessieren. Mit der Konstruktion, die im Beweis vom Satz von Hall benutzt wurde, kann nun auch die Arbeitsagentur genau dann allen Bewerbern einen Job vermitteln, falls N(S) S für alle S X. Literatur [1] M. T. Goodrich, R. Tamassia: Algorithm Design: Foundations, Analysis, and Internet Examples. Wiley, [2] D. Jungnickel: Graphen, Netzwerke und Algorithmen. BI-Wissenschaftsverlag, [3] A. Steger: Diskrete Strukturen. Springer,

Algorithmische Graphentheorie

Algorithmische 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,

Mehr

6. Flüsse und Zuordnungen

6. 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

Mehr

6 Flüsse und Matchings

6 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

Mehr

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

Flüsse und Zuordnungen. Kapitel 6. Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/ / 296 Kapitel 6 Peter Becker (H-BRS) Graphentheorie Wintersemester 2018/19 227 / 296 Inhalt Inhalt 6 Flussnetzwerke Berechnung maximaler Flüsse Max-Flow-Min-Cut Matchings Peter Becker (H-BRS) Graphentheorie

Mehr

5. Musterlösung. Problem 1: Vitale Kanten * ω(f) > ω(f ). (a) Untersuchen Sie, ob es in jedem Netzwerk vitale Kanten gibt.

5. 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

Mehr

Flüsse, Schnitte, Bipartite Graphen

Flü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

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 11 FS 14

Datenstrukturen & Algorithmen Lösungen zu Blatt 11 FS 14 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 14. Mai

Mehr

Graphentheorie. Kardinalitätsmatchings. Kardinalitätsmatchings. Kardinalitätsmatchings. Rainer Schrader. 11. Dezember 2007

Graphentheorie. Kardinalitätsmatchings. Kardinalitätsmatchings. Kardinalitätsmatchings. Rainer Schrader. 11. Dezember 2007 Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 11. Dezember 2007 1 / 47 2 / 47 wir wenden uns jetzt einem weiteren Optimierungsproblem zu Gliederung Matchings in bipartiten Graphen

Mehr

Bäume und Wälder. Definition 1

Bäume und Wälder. Definition 1 Bäume und Wälder Definition 1 Ein Baum ist ein zusammenhängender, kreisfreier Graph. Ein Wald ist ein Graph, dessen Zusammenhangskomponenten Bäume sind. Ein Knoten v eines Baums mit Grad deg(v) = 1 heißt

Mehr

Bäume und Wälder. Definition 1

Bäume und Wälder. Definition 1 Bäume und Wälder Definition 1 Ein Baum ist ein zusammenhängender, kreisfreier Graph. Ein Wald ist ein Graph, dessen Zusammenhangskomponenten Bäume sind. Ein Knoten v eines Baums mit Grad deg(v) = 1 heißt

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Graphenalgorithmen Maximaler Fluss Einleitung Flussnetzwerke Ford-Fulkerson Fulkerson Methode Maximales bipartites Matching

Mehr

Flüsse, Schnitte, bipartite Graphen

Flü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

Mehr

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

Operations 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

Mehr

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 4: Flüsse

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 4: Flüsse Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 4: Flüsse Dipl-Math. Wolfgang Kinzner 3.4.2012 Kapitel 4: Flüsse Flüsse Netzwerk, Fluss, s,t-schnitt, Kapazität MaxFlow-MinCut-Theorem Restnetzwerk

Mehr

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

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme 10 Matching-Probleme 10.1 Definition von Matching-Probleme Definition 21 [2-dimensionales Matching] Sei G = (V, E) ein ungerichteter Graph und E E. E ist ein Matching, wenn für alle Kantenpaare e 1, e

Mehr

WS 2008/09. Diskrete Strukturen

WS 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

Mehr

Bipartite Graphen. Beispiele

Bipartite 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

Mehr

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

Kapitel 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

Mehr

Flüsse in Netzwerken

Flü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

Mehr

Algorithmentheorie. 13 - Maximale Flüsse

Algorithmentheorie. 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

Mehr

Das Heiratsproblem. Definition Matching

Das 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

Mehr

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

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

Mehr

Lösungshinweise 3 Vorlesung Algorithmentechnik im WS 08/09

Lösungshinweise 3 Vorlesung Algorithmentechnik im WS 08/09 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Lösungshinweise Vorlesung Algorithmentechnik im WS 08/09 Problem : Kreuzende Schnitte Zwei Schnitte (S, V \ S) und (T, V \ T ) in einem

Mehr

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

Graphentheorie. 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

Mehr

Algorithmische Graphentheorie

Algorithmische 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

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 7 Prof. Dr. Gerhard Heyer Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 2. Mai 2018 [Letzte Aktualisierung: 2/05/2018,

Mehr

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

Anwendungen 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

Mehr

Univ.-Prof. Dr. Goulnara ARZHANTSEVA

Univ.-Prof. Dr. Goulnara ARZHANTSEVA Diskrete Mathematik Univ.-Prof. Dr. Goulnara ARZHANTSEVA SS 2018 c Univ.-Prof. Dr. Goulnara Arzhantseva Kapitel 08: Menger, König und Hall / Planare Graphen 1 / 30 Der Satz von Menger: s t trennende Kantenmenge

Mehr

KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN

KAPITEL 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

Mehr

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

Kapitel 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

Mehr

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

Laufzeit. 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 }.

Mehr

6. Flüsse und Zuordnungen

6. 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

Mehr

Matchings in Graphen. Praktikum Diskrete Optimierung (Teil 5)

Matchings in Graphen. Praktikum Diskrete Optimierung (Teil 5) Praktikum Diskrete Optimierung (Teil 5) 6.05.009 Matchings in Graphen Es sei ein ungerichteter Graph G = (V, E) gegeben. Ein Matching in G ist eine Teilmenge M E, so dass keine zwei Kanten aus M einen

Mehr

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008 Technische Universität München Fakultät für Informatik Lehrstuhl für Informatik 15 Computergraphik & Visualisierung Prof. Dr. Rüdiger Westermann Dr. Werner Meixner Wintersemester 2007/08 Lösungsblatt 9

Mehr

1.Aufgabe: Minimal aufspannender Baum

1.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

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene 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

Mehr

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem

Ferienkurs 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

Mehr

VU 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 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

Mehr

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1}

2. 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

Matching. Organisatorisches. VL-18: Matching. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger. Tanzabend

Matching. 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,

Mehr

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

ij. , 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

Mehr

Algorithmen II Vorlesung am

Algorithmen 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

Mehr

Formale Grundlagen der Informatik

Formale 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

Mehr

Flüsse, Schnitte, bipartite Graphen

Flü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

Mehr

\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E.

\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E. Das Komplement Ḡ = (V, ( V ) \ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E. Ein Graph H = (V, E )

Mehr

Mathematische Modelle in den Naturwissenschaften Proseminar

Mathematische Modelle in den Naturwissenschaften Proseminar Mathematische Modelle in den Naturwissenschaften Proseminar Johannes Kepler Universität Linz Technische Mathematik Der Algorithmus von Ford und Fulkerson Ausgearbeitet von Julia Eder, Markus Eslitzbichler,

Mehr

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

Algorithmentechnik - U bung 3 4. Sitzung Tanja Hartmann 03. Dezember 2009 Algorithmentechnik - U bung 3 4. Sitzung Tanja Hartmann 03. Dezember 2009 I NSTITUT F U R T HEORETISCHE I NFORMATIK, P ROF. D R. D OROTHEA WAGNER KIT Universita t des Landes Baden-Wu rttemberg und nationales

Mehr

Flüsse, Schnitte, bipartite Graphen

Flü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

Mehr

Seien u, v V, u v. Da G zusammenhängend ist, muss mindestens ein Pfad zwischen u und v existieren.

Seien u, v V, u v. Da G zusammenhängend ist, muss mindestens ein Pfad zwischen u und v existieren. Beweis: 1. 2. Seien u, v V, u v. Da G zusammenhängend ist, muss mindestens ein Pfad zwischen u und v existieren. Widerspruchsannahme: Es gibt zwei verschiedene Pfade zwischen u und v. Dann gibt es einen

Mehr

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

Kapitel 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

Mehr

Algorithmen zur Berechnung von Matchings

Algorithmen 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

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am 07..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

Mehr

Ausarbeitung über den Satz von Menger und den Satz von König

Ausarbeitung über den Satz von Menger und den Satz von König Ausarbeitung über den Satz von Menger und den Satz von König Myriam Ezzedine, 0326943 Anton Ksernofontov, 0327064 Jürgen Platzer, 0025360 Nataliya Sokolovska, 0326991 1. Beweis des Satzes von Menger Bevor

Mehr

Effiziente Algorithmen und Datenstrukturen II

Effiziente 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

Mehr

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

Bipartites Matching. Gegeben: Ein bipartiter, ungerichteter Graph (V 1, V 2, E). Gesucht: Ein Matching (Paarung) maximaler Kardinalität. Netzwerkalgorithmen Bipartites Matching (Folie 90, Seite 80 im Skript) Gegeben: Ein bipartiter, ungerichteter Graph (V, V, E). Gesucht: Ein Matching (Paarung) maximaler Kardinalität. Ein Matching ist eine

Mehr

Klausurvorbereitung. 1 Zentrale Begriffe. 2 Bipartite Graphen. 2.1 Begriffe. Vorlesung Graphen und Optimierung Sommersemester 2011 Prof. S.

Klausurvorbereitung. 1 Zentrale Begriffe. 2 Bipartite Graphen. 2.1 Begriffe. Vorlesung Graphen und Optimierung Sommersemester 2011 Prof. S. Vorlesung Graphen und Optimierung Sommersemester 2011 Prof. S. Lange Klausurvorbereitung Hier finden Sie alle Begriffe, Zusammenhänge und Algorithmen, die mit Blick auf die Klausur relevant sind. Um es

Mehr

Diskrete Mathematik Graphentheorie (Übersicht)

Diskrete Mathematik Graphentheorie (Übersicht) Diskrete Mathematik Graphentheorie (Übersicht) Dr. C. Löh 2. Februar 2010 0 Graphentheorie Grundlagen Definition (Graph, gerichteter Graph). Ein Graph ist ein Paar G = (V, E), wobei V eine Menge ist (die

Mehr

Kapitel IV Minimale Spannbäume

Kapitel IV Minimale Spannbäume Kapitel IV Minimale Spannbäume 1. Grundlagen Ein Graph G = (V, E) besteht aus einer Menge V von Knoten und einer Menge E von Kanten. Wir werden nur endliche Knoten- (und damit auch Kanten-) Mengen betrachten.

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

Kapitel 1: Flussalgorithmen

Kapitel 1: Flussalgorithmen Netzwerke und Flüsse Ein Flussnetzwerk ist ein gerichteter Graph G = (V, E, c) mit zwei ausgewählten Knoten q, s V und einer Kapazitätsfunktion c : E N 0. Die Quelle q hat Eingangsgrad 0 und die Senke

Mehr

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007 Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 25. Oktober 2007 1 / 20 2 / 20 Wir werden Optimierungsprobleme vom folgenden Typ betrachten: gegeben eine Menge X und eine Funktion

Mehr

Graphentheorie. Zusammenhang. Zusammenhang. Zusammenhang. Rainer Schrader. 13. November 2007

Graphentheorie. Zusammenhang. Zusammenhang. Zusammenhang. Rainer Schrader. 13. November 2007 Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 13. November 2007 1 / 84 2 / 84 Gliederung stest und Schnittkanten älder und Bäume minimal aufspannende Bäume Der Satz von Menger 2-zusammenhängende

Mehr

Satz 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,... 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

Kombinatorische Optimierung

Kombinatorische 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 Vorlesung 1 Programm des

Mehr

Kürzeste-Wege-Algorithmen und Datenstrukturen

Kürzeste-Wege-Algorithmen und Datenstrukturen Kürzeste-Wege-Algorithmen und Datenstrukturen Institut für Informatik Universität zu Köln SS 2009 Teil 1 Inhaltsverzeichnis 1 Kürzeste Wege 2 1.1 Voraussetzungen................................ 2 1.2

Mehr

Der Preow-push-Algorithmus

Der Preow-push-Algorithmus Der Preow-push-Algorithmus Bea Schumann 26. Juni 2009 Inhaltsverzeichnis Einleitung 2 Der generische Algorithmus 2 2. Push und Relabel........................... 3 2.. Push..............................

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene 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

Mehr

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS) Dominating Set 59 Literatur Dominating Set Grundlagen 60 Dominating Set (DS) M. V. Marathe, H. Breu, H.B. Hunt III, S. S. Ravi, and D. J. Rosenkrantz: Simple Heuristics for Unit Disk Graphs. Networks 25,

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

= 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)

Mehr

KAPITEL 4 FLÜSSE IN NETZWERKEN

KAPITEL 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

Mehr

Nachbarschaft, Grad, regulär, Inzidenz

Nachbarschaft, Grad, regulär, Inzidenz Nachbarschaft, Grad, regulär, Inzidenz Definition Eigenschaften von Graphen Sei G = (V, E) ein ungerichteter Graph. 1 Die Nachbarschaftschaft Γ(u) eines Knoten u V ist Γ(u) := {v V {u, v} E}. 2 Der Grad

Mehr

Algorithmische Graphentheorie (SS2013)

Algorithmische Graphentheorie (SS2013) Algorithmische Graphentheorie (SS2013) Kapitel 1 Grundlagen Walter Unger Lehrstuhl für Informatik 1 08.05.2013 09:42 (1:2) Walter Unger 8.5.2013 10:26 SS2013 Z x Inhalt I 1 Einleitende Definitionen

Mehr

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)

Diskrete 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

Mehr

Proseminar 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 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

Mehr

Vorlesungstermin 2: Graphentheorie II. Markus Püschel David Steurer. Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich

Vorlesungstermin 2: Graphentheorie II. Markus Püschel David Steurer. Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich Vorlesungstermin 2: Graphentheorie II Markus Püschel David Steurer Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich Wiederholung: Vollständige Induktion Ziel: zeige n N. A(n) für eine Aussage

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Search - Beweis der Korrektheit David Kappel Institut für Grundlagen der Informationsverarbeitung TU Graz SS 2013 Algemeine Anmerkungen zur Übung 9 Aufgabenblätter, 3 Abgabetermine

Mehr

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

Kapitel 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

Mehr

Algorithmen und Datenstrukturen Kapitel 10

Algorithmen 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

Mehr

Übung 5 Algorithmen II

Übung 5 Algorithmen II Michael Axtmann michael.axtmann@kit.edu http://algo.iti.kit.edu/algorithmenii_ws6.php - 0 Axtmann: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie Dipl-Math. Wolfgang Kinzner 2.4.2012 Kapitel 1: Grundlagen der algorithmischen Graphgentheorie

Mehr

WS 2015/16 Diskrete Strukturen Kapitel 4: Graphen (Matchings)

WS 2015/16 Diskrete Strukturen Kapitel 4: Graphen (Matchings) WS 2015/16 Diskrete Strukturen Kapitel 4: Graphen (Matchings) 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

Mehr

Tutoraufgabe 1 (Suchen in Graphen):

Tutoraufgabe 1 (Suchen in Graphen): Prof. aa Dr. E. Ábrahám Datenstrukturen und Algorithmen SS14 F. Corzilius, S. Schupp, T. Ströder Tutoraufgabe 1 (Suchen in Graphen): a) Geben Sie die Reihenfolge an, in der die Knoten besucht werden, wenn

Mehr

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V. Kapitel 4 Graphenalgorithmen 4.1 Definitionen Definition 4.1.1. Der Graph G = (V, E) ist über die beiden Mengen V und E definiert, wobei V die Menge der Knoten und E die Menge der Kanten in dem Graph ist.

Mehr

4.7 Der Algorithmus von Dinic für maximalen Fluss

4.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

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen 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

Mehr

Graphalgorithmen Netzwerkalgorithmen. Laufzeit

Graphalgorithmen 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{

Mehr

Anwendungen von Netzwerkfluss

Anwendungen von Netzwerkfluss Anwendungen von Netzwerkfluss Berlin, 13. 01. 2009 Wojciech Polcwiartek Institut für Informatik FU Berlin 1. Einführung/ Definitionen Modellieren der Probleme mit Hilfe von Netzwerken und Flüssen in den

Mehr

15. Elementare Graphalgorithmen

15. 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

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester

Mehr

Algorithmen zur Berechnung von Matchings

Algorithmen 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

Mehr

6. Übung zur Linearen Optimierung SS08

6. Übung zur Linearen Optimierung SS08 6 Übung zur Linearen Optimierung SS08 1 Sei G = (V, E) ein schlichter ungerichteter Graph mit n Ecken und m Kanten Für eine Ecke v V heißt die Zahl der Kanten (u, v) E Grad der Ecke (a) Ist die Anzahl

Mehr

Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist:

Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist: Svenja Hüning, Michael Kerber, Hannah Schreiber WS 2016/2017 Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist: Hinweise: Dieses Blatt präsentiert Beispiellösungen zu

Mehr

Effiziente Algorithmen I

Effiziente Algorithmen I 9. Präsenzaufgabenblatt, WiSe 2013/14 Übungstunden am 13.01. & 15.01.2014 Aufgabe Q Gegeben sei ein Fluss-Netzwerk mit Digraph D = (V, A), Knotenkapazitäten c(u, v) 0, Quelle s und Senke t. Kann sich der

Mehr

Maximale s t-flüsse in Planaren Graphen

Maximale 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

Mehr

Systems of Distinct Representatives

Systems 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

Mehr

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de Maximaler Fluß und minimaler Schnitt Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de Maximaler Fluß und minimaler Schnitt Wasist das? Maximaler Fluss Minimaler Schnitt Warumtut man das? Logistische

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Prof. Martin Lercher Institut für Informatik Heinrich-Heine-Universität Düsseldorf Teil 10 Suche in Graphen Version vom 13. Dezember 2016 1 / 2 Vorlesung 2016 / 2017 2 /

Mehr