Flüsse, Schnitte, bipartite Graphen

Größe: px
Ab Seite anzeigen:

Download "Flüsse, Schnitte, bipartite Graphen"

Transkript

1 Flüsse, Schnitte, bipartite Graphen Thomas Fersch Seminar "Hallo Welt!" für Fortgeschrittene 1

2 Übersicht Maximale Flüsse in Netzwerken Worum geht s? Lösung nach Ford-Fulkerson Max-Flow Min-Cut Theorem Laufzeitverhalten Reduktionen Anwendungen Maximales bipartites Matching Konnektivität von Graphen Seminar "Hallo Welt!" für Fortgeschrittene 2

3 Maximale Flüsse in Netzwerken Seminar "Hallo Welt!" für Fortgeschrittene 3

4 Netzwerke (1) Ein Netzwerk ist ein gerichteter, positiv kantengewichteter Graph mit zwei ausgezeichneten Knoten: Quelle s und Senke t Material soll von der Quelle zur Senke transportiert werden Potenziell unendliche Produktion an der Quelle und unendlicher Konsum an der Senke Kantengewichte stehen für Kapazitäten Beschränkung der Menge an Material, die über die Kante befördert werden bzw. fließen kann Seminar "Hallo Welt!" für Fortgeschrittene 4

5 Netzwerke (2) Beispiel: Realität: Wasser- und Stromleitungen, Warentransport vom Lager zum Kunden, Nerds auf dem Weg zur Mensa, Allgemein: Irgendein Material soll über festgelegte Wege mit festgelegten Kapazitäten transportiert werden Modellierung als Netzwerk bedenken Seminar "Hallo Welt!" für Fortgeschrittene 5

6 Flüsse (1) Ein Fluss ist eine Funktion, die jeder Kante eines Netzwerks einen Wert zuordnet, so dass gilt: Kanten: 0 Flusswert Kapazität ( Beschränkung durch Kapazitäten) Knoten \ {s, t}: eingehende Flüsse = ausgehende Flüsse ( Flusserhaltung) Der Betrag eines Flusses durch ein Netzwerk entspricht der tatsächlichen Produktion an der Quelle bzw. dem tatsächlichen Konsum an der Senke Seminar "Hallo Welt!" für Fortgeschrittene 6

7 Flüsse (2) Beispiel: Der Betrag dieses Flusses ist 9 Ein maximaler Fluss in einem Netzwerk ist ein Fluss mit maximalem Betrag Interessant zum Beispiel für Produktionsplanungen eines Unternehmens, aber auch viele weitere Anwendungen (später!) Seminar "Hallo Welt!" für Fortgeschrittene 7

8 Residualgraph (1) Wie kann ein Fluss verändert werden? Lokale Situation: Der zu einem Fluss gehörige Residualgraph enthält die maximal möglichen lokalen Flussveränderungen als gerichtete Kanten Seminar "Hallo Welt!" für Fortgeschrittene 8

9 Residualgraph (2) Unser Beispielgraph: Residualgraph: Seminar "Hallo Welt!" für Fortgeschrittene 9

10 Erweiternde Pfade Ein Pfad von s nach t im Residualgraphen heißt erweiternder Pfad Über einen erweiternden Pfad kann der Betrag des Flusses um das minimale Gewicht aller auf dem Pfad liegenden Kanten erhöht werden Seminar "Hallo Welt!" für Fortgeschrittene 10

11 Beispiel Flusserweiterung 1. Schritt 2. Schritt Kein erweiternder Pfad übrig! Seminar "Hallo Welt!" für Fortgeschrittene 11

12 Ford-Fulkerson-Methode Einfache Idee zur Bestimmung eines maximalen Flusses in einem Netzwerk: Initialisiere alle Flusswerte auf 0 Erweitere den Fluss über einen beliebigen erweiternden Pfad des Residualgraphen, solange es einen solchen Pfad gibt Fertig! Liefert diese Methode immer einen maximalen Fluss? Dazu muss man noch einen weiteren Begriff kennen Seminar "Hallo Welt!" für Fortgeschrittene 12

13 Schnitte (1) Ein Schnitt eines Netzwerks ist eine Partition der Knoten des Netzwerks in zwei Teilmengen S und T, so dass s S und t T Die Kapazität eines Schnittes ist die Summe aller Kapazitäten der Kanten, die von Knoten in S zu Knoten in T führen Der einen Schnitt überquerende Fluss ist die Summe der Flüsse der Kanten, die von Knoten in S zu Knoten in T führen, abzüglich der Summe der Flüsse der Kanten, die von Knoten in T zu Knoten in S führen Seminar "Hallo Welt!" für Fortgeschrittene 13

14 Schnitte (2) Beispiel: Kapazität ist 35, überquerender Fluss 9 Ein minimaler Schnitt eines Netzwerks ist ein Schnitt mit minimaler Kapazität Entfernen der von S nach T führenden Kanten trennt s von t mit minimal möglichen Kosten Seminar "Hallo Welt!" für Fortgeschrittene 14

15 Schnitte (3) Wichtige Eigenschaften von Schnitten: Der einen beliebigen Schnitt eines Netzwerks überquerende Fluss ist gleich dem Betrag des Flusses durch das Netzwerk Folgerung: der Betrag jedes Flusses durch ein Netzwerk ist durch die Kapazität jedes Schnittes des Netzwerks von oben beschränkt Insbesondere ist also der Betrag des maximalen Flusses durch die Kapazität des minimalen Schnittes von oben beschränkt Seminar "Hallo Welt!" für Fortgeschrittene 15

16 Max-Flow Min-Cut Theorem Ist f ein Fluss in einem Netzwerk N, dann sind folgende Aussagen äquivalent: f ist ein maximaler Fluss in N Der zu f und N gehörige Residualgraph enthält keine erweiternden Pfade Es gibt einen Schnitt von N mit Kapazität f Unmittelbare Folgerung: f ist auch die Kapazität des minimalen Schnittes von N (max-flow = min-cut) Seminar "Hallo Welt!" für Fortgeschrittene 16

17 Beweis (1) Ist ein Fluss maximal, dann gibt es keinen erweiternden Pfad im zugehörigen Residualgraphen Gäbe es einen erweiternden Pfad, dann könnte der Fluss über diesen erhöht werden Es wäre also kein maximaler Fluss Seminar "Hallo Welt!" für Fortgeschrittene 17

18 Beweis (2) Gibt es keinen erweiternden Pfad im Residualgraphen, dann gibt es einen Schnitt des Netzwerks, dessen Kapazität voll ausgeschöpft ist (d.h. Kapazität = f ) Bilde den Schnitt, bei dem S alle Knoten enthält, die von s aus im Residualgraphen erreichbar sind (inkl. s), und T alle restlichen Knoten (inkl. t) Die Kapazität dieses Schnittes muss voll ausgeschöpft sein, sonst gäbe es im Residualgraphen eine Kante von S nach T Seminar "Hallo Welt!" für Fortgeschrittene 18

19 Beweis (3) Gibt es in einem Netzwerk einen Schnitt, dessen Kapazität voll ausgeschöpft ist, dann ist der Fluss maximal Der Betrag des maximalen Flusses ist durch die Kapazität jedes Schnittes des Netzwerks von oben beschränkt Ist der Betrag eines Flusses also gleich der Kapazität eines Schnittes, dann muss der Betrag des Flusses maximal sein Seminar "Hallo Welt!" für Fortgeschrittene 19

20 Minimalen Schnitt finden Ist der maximale Fluss in einem Netzwerk gefunden, dann lässt sich der minimale Schnitt leicht bestimmen: Suche alle im Residualgraphen von s aus erreichbaren Knoten; diese bilden S, alle anderen Knoten T Die Kapazität dieses Schnittes ist voll ausgeschöpft; daher muss es sich um einen minimalen Schnitt handeln vgl. Beweisschritt Seminar "Hallo Welt!" für Fortgeschrittene 20

21 Laufzeitverhalten Abhängig von einem noch nicht spezifizierten Punkt: Wie findet man erweiternde Pfade? Gesamtlaufzeit ist das Produkt zweier Komponenten: Laufzeit für das Finden eines erweiternden Pfades Anzahl der zu findenden erweiternden Pfade, bis der maximale Fluss erreicht ist Seminar "Hallo Welt!" für Fortgeschrittene 21

22 Worst-Case Wird z.b. Tiefensuche verwendet, kann die Laufzeit im schlechtesten Fall O( f max E ) betragen Seminar "Hallo Welt!" für Fortgeschrittene 22

23 Edmonds-Karp-Strategie Es wird immer der von der Kantenanzahl her kürzeste erweiternde Pfad gewählt Breitensuche Effizient und einfach zu implementieren Laufzeit im schlechtesten Fall: O( V E ²) Beweis s. Cormen Implementierung s. Wiki Seminar "Hallo Welt!" für Fortgeschrittene 23

24 Reduktionen (1) Ungerichtete Kanten Produktion/Konsum beschränken Seminar "Hallo Welt!" für Fortgeschrittene 24

25 Reduktionen (2) Knotenkapazitäten Mehrere Quellen/Senken Seminar "Hallo Welt!" für Fortgeschrittene 25

26 Maximales bipartites Matching Seminar "Hallo Welt!" für Fortgeschrittene 26

27 Bipartite Graphen Ein ungerichteter Graph heißt bipartit, wenn es eine Partition der Knoten in zwei Teilmengen gibt, so dass keine Kante zwei Knoten derselben Teilmenge verbindet: Offensichtliche Beispiele: Arbeitskräfte und zu erledigende Aufgaben, Tanzpaarbildung Weniger offensichtlich: Schachbrett Seminar "Hallo Welt!" für Fortgeschrittene 27

28 Maximales Matching Ein Matching in einem bipartiten Graphen ist eine Auswahl der Kanten, so dass jeder Knoten zu höchstens einer ausgewählten Kante inzident ist Ein maximales Matching ist ein Matching mit maximaler Kantenanzahl: Seminar "Hallo Welt!" für Fortgeschrittene 28

29 Modellierung als Netzwerk (1) Führe Quelle und Senke ein Verbinde Quelle durch gerichtete Kanten mit jedem Knoten der ersten Teilmenge Verbinde jeden Knoten der zweiten Teilmenge durch eine gerichtete Kante mit der Senke Ersetze die ungerichteten Kanten zwischen den beiden Teilmengen durch gerichtete Kanten von der ersten zur zweiten Teilmenge Weise jeder Kante die Kapazität 1 zu Der maximale Fluss von der Quelle zur Senke entspricht dann dem maximalen bipartiten Matching Seminar "Hallo Welt!" für Fortgeschrittene 29

30 Modellierung als Netzwerk (2) Netzwerk: Maximaler Fluss: Ursprüngliche Kanten mit Fluss 1 bilden das maximale Matching; Laufzeit O( V E ) Seminar "Hallo Welt!" für Fortgeschrittene 30

31 Beispielaufgabe (1) Gegeben: Eine Liste von Transportaufträgen, bestehend aus Startort/Abfahrtszeit und Zielort/Ankunftszeit Transporter können an beliebigen Orten starten und beliebig viele Aufträge übernehmen, falls sie jeweils früh genug am jeweiligen Startort sind Transporter dürfen ihren Aufenthaltsort nur durch Übernahme eines Auftrags wechseln Gesucht: Minimal benötigte Anzahl an Transportern um alle Aufträge zu erfüllen Seminar "Hallo Welt!" für Fortgeschrittene 31

32 Beispielaufgabe (2) Minimierungsproblem Maximierungsproblem Anzahl Transporter = Anzahl Aufträge ist auf jeden Fall eine gültige Lösung Immer wenn ein Transporter zwei Aufträge hintereinander ausführt verringert sich die Lösung um 1 Es gilt also, die Anzahl der Paare von Aufträgen, die direkt aufeinander folgend vom gleichen Transporter ausgeführt werden, zu maximieren Jeder Auftrag darf in beide Richtungen (vorher und nachher) nur jeweils einmal gematched werden Einführung eines Abfahrts- und eines Ankunftsknotens für jeden Auftrag! Seminar "Hallo Welt!" für Fortgeschrittene 32

33 Beispielaufgabe (3) Abfahrten Nürnberg, Uhr München, Uhr Frankfurt, Uhr München, Uhr Ankünfte München, Uhr Frankfurt, Uhr München, Uhr Stuttgart, Uhr Seminar "Hallo Welt!" für Fortgeschrittene 33

34 Beispielaufgabe (4) Abfahrten Nürnberg, Uhr München, Uhr Frankfurt, Uhr München, Uhr Ankünfte München, Uhr Frankfurt, Uhr München, Uhr Stuttgart, Uhr Für jede Möglichkeit zwei Aufträge hintereinander auszuführen wird eine Kante eingefügt Seminar "Hallo Welt!" für Fortgeschrittene 34

35 Beispielaufgabe (5) Abfahrten Nürnberg, Uhr München, Uhr Frankfurt, Uhr München, Uhr Ankünfte München, Uhr Frankfurt, Uhr München, Uhr Stuttgart, Uhr Maximales bipartites Matching liefert maximale Anzahl von Transportern, die man sich sparen kann Seminar "Hallo Welt!" für Fortgeschrittene 35

36 Konnektivität von Graphen Seminar "Hallo Welt!" für Fortgeschrittene 36

37 Problemspezifikation (1) Gegeben: Ein ungerichteter Graph, optional zwei Knoten s und t des Graphen Gesucht: Minimale Anzahl an Kanten oder Knoten, deren Entfernung den Graphen in mindestens zwei zusammenhängende Komponenten teilen würde ( allgemeine Konnektivität) bzw. s von t trennen würde ( (s-t)-konnektivität) Seminar "Hallo Welt!" für Fortgeschrittene 37

38 Problemspezifikation (2) 4 zu unterscheidende Probleme: (s-t)-kantenkonnektivität Allgemeine Kantenkonnektivität (s-t)-knotenkonnektivität Allgemeine Knotenkonnektivität Wichtige Anwendung: Netzwerkstabilität Seminar "Hallo Welt!" für Fortgeschrittene 38

39 Spezialfall Brücken und Artikulationspunkte Allgemeine Kantenkonnektivität = 1 Brücken Allgemeine Knotenkonnektivität = 1 Artikulationspunkte Brücken und Artikulationspunkte lassen sich effizienter mit nur einer Tiefensuche finden Hier geht es um den allgemeinen Fall, wie viele Kanten bzw. Knoten entfernt werden müssen Seminar "Hallo Welt!" für Fortgeschrittene 39

40 (s-t)-kantenkonnektivität Interpretiere den Graphen als Netzwerk mit s als Quelle und t als Senke Weise jeder Kante die Kapazität 1 zu ( ungerichtete Kanten!) Finde den maximalen Fluss von s nach t (Betrag = Kapazität des minimalen Schnittes) Die Kapazität des minimalen Schnittes gibt das minimale Gesamtgewicht der Kanten an, die entfernt werden müssen um s von t zu trennen Da alle Kapazitäten 1 sind entspricht dieser Wert direkt der Anzahl der zu entfernenden Kanten Laufzeit O( E ²) Seminar "Hallo Welt!" für Fortgeschrittene 40

41 Allgemeine Kantenkonnektivität Reduzierung auf (s-t)-kantenkonnektivität: Wähle Knoten v beliebig Das Problem besteht dann darin, v durch Entfernen minimal vieler Kanten von mindestens einem anderen Knoten zu trennen Für alle Knoten v v bestimme (v-v )-Kantenkonnektivität Das Minimum der gefundenen Werte entspricht der allgemeinen Kantenkonnektivität Laufzeit O( V E ²) Seminar "Hallo Welt!" für Fortgeschrittene 41

42 (s-t)-knotenkonnektivität Nur definiert, falls es keine direkte Verbindung zwischen s und t gibt Ansonsten ist eine Trennung nicht möglich Ähnlich zu lösen wie Kantenkonnektivität: Weise zusätzlich jedem Knoten Kapazität 1 zu ( ungerichteter Graph mit Knotenkapazitäten!) Der maximale Fluss von s nach t liefert die Anzahl der zu entfernenden Knoten Laufzeit O( V E ) Seminar "Hallo Welt!" für Fortgeschrittene 42

43 Allgemeine Knotenkonnektivität Zwei beliebige Knoten müssen voneinander getrennt werden Berechne für alle Paare (v 1, v 2 ) von nicht direkt verbundenen Knoten (v 1 -v 2 )-Knotenkonnektivität Falls es kein solches Paar gibt, dann ist ein Zerfallen des Graphen durch Entfernen von Knoten nicht möglich Ansonsten entspricht das Minimum der berechneten Werte der allgemeinen Knotenkonnektivität Laufzeit O( V ³ E ) Seminar "Hallo Welt!" für Fortgeschrittene 43

44 Disjunkte Pfade (1) (s-t)-kantenkonnektivität = k Es gibt genau k kantendisjunkte Pfade zwischen s und t Allgemeine Kantenkonnektivität = k Es gibt zwischen allen Paaren von Knoten mindestens k kantendisjunkte Pfade; der Graph heißt k-fach kantenzusammenhängend Seminar "Hallo Welt!" für Fortgeschrittene 44

45 Disjunkte Pfade (2) (s-t)-knotenkonnektivität = k Es gibt genau k knotendisjunkte Pfade zwischen s und t Allgemeine Knotenkonnektivität = k Es gibt zwischen allen Paaren von Knoten mindestens k knotendisjunkte Pfade; der Graph heißt k-fach knotenzusammenhängend Seminar "Hallo Welt!" für Fortgeschrittene 45

46 Anwendung (Cormen): Escape-Problem (1) Gegeben: n n-grid und m Startpunkte Gibt es m knotendisjunkte Pfade, die alle Startpunkte mit m verschiedenen Randpunkten verbinden? Seminar "Hallo Welt!" für Fortgeschrittene 46

47 Anwendung (Cormen): Escape-Problem (2) Lösung: Führe Quelle s ein und verbinde diese mit allen Startpunkten Führe Senke t ein und verbinde diese mit allen Randpunkten Das Escape-Problem ist genau dann lösbar, wenn (s-t)-knotenkonnektivität = m Seminar "Hallo Welt!" für Fortgeschrittene 47

48 Zusammenfassung Maximale Flüsse in Netzwerken lassen sich durch Ford-Fulkerson-Methode finden Laufzeit bei Verwendung von Breitensuche O( V E ²) Max-Flow = Min-Cut Durch einfache Reduktionen lassen sich komplexere Situationen auf Standardnetzwerke abbilden Matching- und Konnektivitätsprobleme können mit Hilfe von Flussnetzwerken gelöst werden Seminar "Hallo Welt!" für Fortgeschrittene 48

49 Quellen Introduction to Algorithms (Cormen, Leiserson, Rivest, Stein) The Algorithm Design Manual (Skiena) Flüsse, Schnitte und bipartite Abbildungen in Hallo Welt! 2006 (Adrian Merkel) Flüsse, Schnitte und bipartite Abbildungen in Hallo Welt! 2005 (Tarek Besold) Seminar "Hallo Welt!" für Fortgeschrittene 49

50 Fragen? Seminar "Hallo Welt!" für Fortgeschrittene 50

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

Flüsse und Schnitte von Graphen

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

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

Flüsse, Schnitte, bipartite Graphen. Martin Oettinger

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

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

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

Wiederholung zu Flüssen

Wiederholung 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:

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

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

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

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

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

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

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

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

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

lässt sich auch ableiten, dass es einen augmentierenden Pfad der Länge höchstens

lässt sich auch ableiten, dass es einen augmentierenden Pfad der Länge höchstens Praktikum Algorithmen-Entwurf (Teil 5)..5 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 Endpunkt

Mehr

Klausur zum Modul Einführung in die Diskrete Mathematik

Klausur 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

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

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

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

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

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

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

Name:... Vorname:... Matr.-Nr.:... Studiengang:...

Name:... 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:.....................................

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

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

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

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

FLÜ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

Mehr

Algorithmen zur Visualisierung von Graphen

Algorithmen zur Visualisierung von Graphen Algorithmen zur Visualisierung von Graphen Kombinatorische Optimierung mittels Flussmethoden II Vorlesung im Wintersemester 2011/2012 10.11.2011 Orthogonale Zeichnungen II letztes Mal: Satz G Maxgrad-4-Graph

Mehr

Trennender Schnitt. Wie groß kann der Fluss in dem folgenden Flussnetzwerk höchstens sein?

Trennender 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

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

Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich. Graphen (2)

Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich. Graphen (2) Graphen (2) 1 Topologisches Sortieren (1) Die Kanten eines gerichteten zyklenfreien Graphen bilden eine Halbordnung (die Ordnungsrelation ist nur für solche Knoten definiert die am gleichen Pfad liegen).

Mehr

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

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

12. Graphen Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013

12. Graphen Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013 12. Graphen Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013 1 Agenda Kontrollfragen Graphen Graphenalgorithmen 2

Mehr

Kapitel 5: Minimale spannende Bäume Gliederung der Vorlesung

Kapitel 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

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

1 Kürzeste Pfade in Graphen

1 Kürzeste Pfade in Graphen Praktikum Algorithmen-Entwurf (Teil 3) 03.11.2011 1 1 Kürzeste Pfade in Graphen Es sei ein gerichteter Graph G = (V, E) mit V = n Knoten, E = m Kanten und Kantengewichten c : E R gegeben. Ein Pfad in G

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

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

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

Mehr

Flüsse, Schnitte, Bipartite Graphen II

Flüsse, Schnitte, Bipartite Graphen II Flüsse, Schnitte, Bipartite Graphen II Jonathan Hacker 06.06.2016 Jonathan Hacker Flüsse, Schnitte, Bipartite Graphen II 06.06.2016 1 / 42 Gliederung Einführung Jonathan Hacker Flüsse, Schnitte, Bipartite

Mehr

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37

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

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

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

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

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

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

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

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

Graphen. Leonhard Euler ( )

Graphen. Leonhard Euler ( ) Graphen Leonhard Euler (1707-1783) 2 Graph Ein Graph besteht aus Knoten (nodes, vertices) die durch Kanten (edges) miteinander verbunden sind. 3 Nachbarschaftsbeziehungen Zwei Knoten heissen adjazent (adjacent),

Mehr

Durchschnitt von Matroiden

Durchschnitt 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

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 Der Tragödie IV. Theyl Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University

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

11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME

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

Mehr

Very simple methods for all pairs network flow analysis

Very simple methods for all pairs network flow analysis Very simple methods for all pairs network flow analysis obias Ludes 0.0.0. Einführung Um den maximalen Flusswert zwischen allen Knoten eines ungerichteten Graphen zu berechnen sind nach Gomory und Hu nur

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

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

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

1 Matroide. 1.1 Definitionen und Beispiele. Seminar zur ganzzahligen Optimierung Thema: Durchschnitt von Matroiden - Satz von Edmonds von Dany Sattler

1 Matroide. 1.1 Definitionen und Beispiele. Seminar zur ganzzahligen Optimierung Thema: Durchschnitt von Matroiden - Satz von Edmonds von Dany Sattler Seminar zur ganzzahligen Optimierung Thema: Durchschnitt von Matroiden - Satz von Edmonds von Dany Sattler 1 Matroide 1.1 Definitionen und Beispiele 1. Definition (Unabhängigkeitssystem): Ein Mengensystem

Mehr

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

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

Mehr

Mustererkennung: Graphentheorie

Mustererkennung: 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:

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

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

Wie wird ein Graph dargestellt?

Wie wird ein Graph dargestellt? Wie wird ein Graph dargestellt? Für einen Graphen G = (V, E), ob gerichtet oder ungerichtet, verwende eine Adjazenzliste A G : A G [i] zeigt auf eine Liste aller Nachbarn von Knoten i, wenn G ungerichtet

Mehr

Very simple methods for all pairs network flow analysis

Very 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

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

Effiziente Algorithmen I

Effiziente 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

Mehr

maximaler Fluss & minimaler Schnitt

maximaler Fluss & minimaler Schnitt maximaler Fluss & minimaler Schnitt Referat in angewandte Logistik Marcus Pottendorfer HTBLuVA Sankt Pölten Inhalt Maximaler Fluss minimaler Schnitt... 2 Grundbegriffe... 2 Erklärung... 2 Minimaler Schnitt...

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

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

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

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung

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

Übungsblatt 2 - Lösung

Übungsblatt 2 - Lösung Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 2 - Lösung Vorlesung Algorithmentechnik im WS 08/09 Ausgabe 04. November 2008 Abgabe 8. November, 5:0 Uhr (im Kasten vor Zimmer

Mehr

Lösungsvorschläge Aufgaben 14.1, 14.3, 14.4

Lösungsvorschläge Aufgaben 14.1, 14.3, 14.4 Lösungsvorschläge ufgaben.,.,. ufgabe. Wir starten mit dem gegebenen Graphen, dessen Restgraph beim Nullfluss ϕ 0 dem ingabenetzwerk entspricht. ktueller Fluss: Restgraph: 0/ 0/ 0/ 0/ 0/5 0/ 0/ 0/8 5 8

Mehr

Effiziente Algorithmen Übung 2 Lösungen

Effiziente 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

Der Branching-Operator B

Der Branching-Operator B Branching 1 / 17 Der Branching-Operator B Unser Ziel: Löse das allgemeine Minimierungsproblem minimiere f (x), so dass Lösung(x). B zerlegt eine Menge von Lösungen in disjunkte Teilmengen. Die wiederholte

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

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza)

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza) WS 2013/14 Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza) Dr. Werner Meixner Fakultät für Informatik TU München http://www14.in.tum.de/lehre/2013ws/ds/uebung/ 22. Januar 2014 ZÜ DS ZÜ XIII

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

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 10.06.2016 Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP

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

Seminar: Einladung in die Mathematik

Seminar: Einladung in die Mathematik Seminar: Einladung in die Mathematik Marius Kling 11.11.2013 Übersicht 1. Königsberger Brückenproblem 2. Diskrete Optimierung 3. Graphentheorie in der Informatik 4. Zufällige Graphen 5. Anwendungen von

Mehr

9 Minimum Spanning Trees

9 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

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

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

Algorithmen I - Tutorium 28 Nr. 11

Algorithmen I - Tutorium 28 Nr. 11 Algorithmen I - Tutorium 28 Nr. 11 13.07.2017: Spaß mit Schnitten, Kreisen und minimalen Spannbäumen Marc Leinweber marc.leinweber@student.kit.edu INSTITUT FÜR THEORETISCHE INFORMATIK (ITI), PROF. DR.

Mehr

Das Steinerbaumproblem

Das Steinerbaumproblem Das Steinerbaumproblem Natalie Richert Fakultät für Elektrotechnik, Informatik und Mathematik, Universität Paderborn 4. Februar 008 / 3 Überblick Problembeschreibung Vorstellung von zwei Approimationsalgorithmen

Mehr

3. Musterlösung. Problem 1: Boruvka MST

3. Musterlösung. Problem 1: Boruvka MST Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 06/07 ITI Wagner. Musterlösung Problem : Boruvka MST pt (a) Beweis durch Widerspruch. Sei T MST von G, e die lokal minimale Kante eines

Mehr

Graphentheorie. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S

Graphentheorie. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S Minimale Graphentheorie Formale Grundlagen (WIN) Franz Binder Institut für Algebra Johannes Kepler Universität Linz Vorlesung im 2008S http://www.algebra.uni-linz.ac.at/students/win/fg Minimale Inhalt

Mehr

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Vortrag von Michael Daumen am 13.12.2000 Thema : Minimum Spanning Tree und 2-Approximation der TSP-Tour Inhalt des Vortrags : 1. genaue Vorstellung des

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 und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Graphen 9/1 Begriffsdefinitionen Ein Graph besteht aus Knoten und Kanten. Ein Knoten(Ecke) ist ein benanntes Objekt. Eine Kante verbindet zwei Knoten. Kanten haben ein Gewicht

Mehr

Grundlagen Datenstrukturen Transitive Hülle Traversierung Kürzeste Wege Spannender Baum Max. Fluss Zuordnungen. 6. Graphen

Grundlagen Datenstrukturen Transitive Hülle Traversierung Kürzeste Wege Spannender Baum Max. Fluss Zuordnungen. 6. Graphen . Graphen viele praktische (Optimierungs-)Probleme sind als graphentheoretische Probleme formulierbar z.b. in Produktionsplanung, Personaleinsatzplanung,.... Grundlagen gerichteter, ungerichteter und gewichteter

Mehr

Grundbegri e der Graphentheorie: Eckengrad, Wege und Kreise, Zusammenhang

Grundbegri e der Graphentheorie: Eckengrad, Wege und Kreise, Zusammenhang raphen- und Berechenbarkeitstheorie rundbegri e der raphentheorie: Eckengrad, Wege und Kreise, Zusammenhang 0.1 raphen Ein raph ist ein aar = (V, E) disjunkter Mengen mit E [V ]2, wobei [V ]2 die Menge

Mehr

Systems of Distinct Representatives

Systems of Distinct Representatives Rheinisch-Westfälische Technische Hochschule Aachen Lehr- und Forschungsgebiet Theoretische Informatik Prof. Dr. Peter Rossmanith Systems of Distinct Representatives Seminar: Extremal Combinatorics SS

Mehr

Ausfallsicherheit von Netzen

Ausfallsicherheit von Netzen Version 1.02, 20.10.2003 Kapitel 7 Ausfallsicherheit von Netzen Ein wichtiges Ziel beim Entwurf der Topologie von Kommunikationsnetzen ist Ausfallsicherheit. Man möchte vermeiden, dass der Ausfall eines

Mehr