Algorithmische Graphentheorie

Größe: px
Ab Seite anzeigen:

Download "Algorithmische Graphentheorie"

Transkript

1 Algorithmische Graphentheorie Vorlesung 13: Flüsse und Zuordnungen Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca 9. Juni 2017

2 DURCHSATZ D(e) ist die maximale Flussmenge, die durch die Ecke e fliessen kann.

3 ALGORITHMUS VON DINIC Die Idee des Verfahrens besteht darin, in jedem Schritt den Fluss auf dem geschichteten Hilfsnetzwerk derart zu erhöhen, dass der Fluss durch die Ecke e mit minimalem Durchsatz gerade D(e) ist. Danach können e und die mit e inzidenten Kanten aus dem Netzwerk entfernt werden. Der Durchsatz aller Ecken muss ebenfalls neu bestimmt werden. Er kann sich auf zwei verschiedene Arten geändert haben.

4 ALGORITHMUS VON DINIC Die Kapazitäten der Kanten werden um den entsprechenden Fluss vermindert. Dadurch kann der Durchsatz sinken. Ferner können Ecken mit Durchsatz 0 entstehen (z.b. die Ecke mit minimalem Durchsatz). Diese werden mit ihren Kanten entfernt und der Durchsatz der Nachbarn abgeändert. Dieser Vorgang wird solange wiederholt, bis der Durchsatz jeder Ecke positiv ist. Die änderung des Durchsatzes erfolgt mittels der beiden Felder D + und D. D + [e] = k=(e,f ) K c(k) und D [e] k=(f,e) K c(k).

5 ALGORITHMUS VON DINIC Die Erhöhung des Flusses bis zu dem Punkt, an dem die Ecke mit minimalem Durchfluss gesättigt ist, erfolgt mit den Prozeduren erweitererückwärts und erweiterevorwärts. Diese verteilen den Fluss D[e], von e aus startend, rückwärts bis zur Quelle bzw. vorwärts bis zur Senke. Dabei werden die beiden Felder D und D + abgeändert. Kanten, deren Kapazitäten voll ausgenutzt werden, werden entfernt. Die Ecken, deren Durchsatz auf 0 absinkt, werden gesammelt und in der Prozedur blockfluss rekursiv entfernt.

6 PROZEDUR blockfluss

7 PROZEDUR blockfluss

8 PROZEDUR erweitererückwärts Die Prozeduren erweitererückwärts und erweiterevorwärts arbeiten nach dem gleichen Prinzip. Sie starten bei der Ecke mit minimalem Durchsatz und verteilen diesen Fluss rückwärts zur Quelle bzw. vorwärts zur Senke unter Beibehaltung der Flusserhaltungsbedingung für alle besuchten Ecken. Dies ist möglich, da der Durchsatz der anderen Ecken mindestens genauso hoch ist. Eine Verteilung dieses Flusses rückwärts von der Senke startend würde nicht das gleiche Ziel erreichen. In diesem Fall wäre nicht gesichert, dass die Ecke mit minimalem Durchsatz gesättigt wäre und deshalb entfernt werden könnte.

9 PROZEDUR erweitererückwärts

10 TRENNENDER SCHNITT

11 TRENNENDER SCHNITT Definition Es sei N = (G, c, s, t) ein Flussnetzwerk mit G = (V, A). Für eine Teilmenge S V heißt A S := {(v, w) A v S, w V \ S} Schnitt von G. Falls s S, t V \ S, so ist A S ein trennender Schnitt. Ein trennender Schnitt A S mit minimaler Kapazität c(a S ) := e A S c(e) heißt minimaler Schnitt.

12 MAX-FLOW-MIN-CUT-THEOREM Theorem

13 BEMERKUNG 1 Kennen wir einen Fluss f und finden wir einen trennenden Schnitt A S mit Φ(f ) = c(a S ), so ist f ein Maximalfluss. 2 Für die Menge S bei Terminierung vom Markierungsalgorithmus ist A S ein minimaler Schnitt. 3 Der Markierungsalgorithmus berechnet also nicht nur einen maximalen Fluss sondern auch einen minimalen Schnitt.

14 BEISPIEL Wie groß ist der Maximalfluss in dem folgenden Graphen?

15 0-1-NETZWERKE In diesem Abschnitt wird ein wichtiger Spezialfall von allgemeinen Netzwerken betrachtet: Netzwerke, in denen jede Kante die Kapazität 0 oder 1 hat. Solche Netzwerke nennt man 0-1-Netzwerke. Sie treten in vielen Anwendungen auf. Auf 0-1-Netzwerke existieren maximale Flüsse mit speziellen Eigenschaften. Satz. Es sei G ein 0-1-Netzwerk. Dann existiert ein maximaler Fluss f, welcher auf jeder Kante den Wert 1 oder 0 hat. Ferner gibt es f Wege von q nach s, welche paarweise keine Kante gemeinsam haben. Die Kanten dieser Wege haben alle den Fluss 1.

16 BINÄRE FLÜSSE Ein Fluss heisst binär, wenn er auf jeder Kante den Wert 0 oder 1 hat. Man beachte, dass nicht jeder maximale Fluß auf einem 0-1-Netzwerk ein binärer Fluss ist. Die in den letzten Abschnitten entwickelten Algorithmen lassen sich für 0-1-Netzwerke noch verbessern, so dass man zu effizienteren Verfahren gelangt. Die Grundlage für diesen Abschnitt bildet der Algorithmus von Dinic. In beliebigen Netzwerken können die dazugehörigen geschichteten Hilfsnetzwerke aus bis zu n 1 Niveaus bestehen. Für die Anzahl der Niveaus in einem geschichteten Hilfsnetzwerk eines 0-1-Netzwerkes kann eine bessere obere Schranke angegeben werden. Das folgende Lemma gilt auch für Netzwerke, die nicht schlicht sind.

17 BINÄRE FLÜSSE Lemma Es sei N ein 0-1-Netzwerk mit der Eigenschaft, dass es zwischen je zwei Ecken maximal zwei parallele Kanten gibt. Ist f 0 der triviale Fluss auf N und M der Wert eines maximalen Flusses, so besteht das geschichtete Hilfsnetzwerk G f 0 aus maximal 2 2/3 n/ M Niveaus.

18 BINÄRE FLÜSSE Mit Hilfe dieses Ergebnisses kann man nun zeigen, dasss die worst case Laufzeit des Algorithmus von Dinic für 0-1-Netzwerke geringer als die für allgemeine Netzwerke ist. Eine weitere Verbesserung wird dadurch erreicht, dass das Verfahren zum Auffinden von blockierenden Flüssen auf die speziellen Eigenschaften von 0-1-Netzwerken abgestimmt wird.

19 BLOCKIERENDE FLÜSSE Ein Fluss ist ein blockierender Fluss, falls es keinen Erweiterungsweg gibt, der nur aus Vorwärtskanten besteht. Für 0-1-Netzwerke bedeutet dies, dass ein binärer Fluss blockierend ist, falls es keinen Weg von der Quelle zur Senke gibt, der ausschliesslich aus Kanten mit Fluss 0 besteht. Dazu werden Wege von der Quelle zur Senke bestimmt und deren Kanten dann aus dem Netzwerk entfernt. Diese Kanten tragen den Fluss 1. Das folgende Verfahren basiert auf der Tiefensuche. Hierbei wird jede Kante nur einmal betrachtet und anschliessend entfernt.

20 DIE REKURSIVE FUNKTION finde Sucht Wege von der Quelle zur Senke und entfernt alle betrachteten Kanten.

21 PROZEDUR blockfluss Jeder Aufruf von finde erweitert den Fluss h, soweit h noch nicht blockierend ist, und entfernt die besuchten Kanten aus G. Die Prozedur blockfluss ruft solange finde auf, bis kein Weg mehr von der Quelle zur Senke existiert. Am Ende ist h ein binärer blockierender Fluss. Prozedur blockfluss procedure blockfluss(g : 0-1-Netzwerk; var h : Fluss) begin while finde(g, G.quelle, h) = 1 do t end

22 BINÄRE FLÜSSE Die Komplexität der Prozedur blockfluss läßt sich leicht bestimmen. Jede Kante wird maximal einmal betrachtet; somit ergibt sich O(m) als worst case Komplexität. Das im letzten Abschnitt vorgestellte Verfahren zur Bestimmung eines blockierenden Flusses in einem beliebigen Netzwerk hatte dagegen eine Komplexität von O(n 2 ). Mit Hilfe dieser Vorbereitungen kann nun folgender Satz bewiesen werden. Satz. Ein binärer maximaler Fluss für 0-1-Netzwerke kann mit dem Algorithmus von Dinic mit Komplexität O(n 2/3 m) bestimmt werden.

23 KOSTENMINIMALE FLÜSSE In praktischen Anwendungen treten Netzwerke häufig in einer Variante auf, bei der den Kanten neben Kapazitäten auch noch Kosten zugeordnet sind. Es sei G ein Netzwerk mit oberen Kapazitätsbeschränkungen. Jeder Kante k in G sind Kosten c(k) > 0 zugeordnet. Hierbei sind c(k) die Kosten, die beim Transport einer Flusseinheit durch die Kante k entstehen. Die Kosten eines Flusses f von G sind gleich f (k)(c(k). k E

24 KOSTENMINIMALE FLÜSSE In der Praxis interessiert man sich für folgende Fragestellung: Unter den Flüssen mit Wert w ist derjenige mit minimalen Kosten gesucht. Einen solchen Fluss nennt man kostenminimal. Insbesondere sucht man nach einem maximalen Fluss mit minimalen Kosten. Es sei nun f ein Fluss und W ein Erweiterungsweg für f. Die Kosten von W sind gleich der Summe der Kosten der Vorwärtskanten minus der Summe der Kosten der Rückwärtskanten bezüglich f. Ein geschlossener Weg in G f heißt Erweiterungskreis. Die Kosten eines Erweiterungskreises berechnen sich genauso wie für einen Erweiterungsweg. Die wichtigsten Eigenschaften von kostenminimalen Flüssen sind in folgendem Satz zusammengefasst.

25 SATZ Es sei G ein Netzwerk mit oberen Kapazitätsbeschränkungen und einer Bewertung der Kanten mit nicht negativen Kosten. Dann gelten folgende Aussagen: 1 Ein Fluss f mit Wert w hat genau dann minimale Kosten, wenn der Graph G f keinen Erweiterungskreis mit negativen Kosten besitzt. 2 Es sei f ein kostenminimaler Fluss mit Wert w und W ein Erweiterungsweg mit den kleinsten Kosten für f. Der aus f und W gebildete neue Fluss f ist wieder ein kostenminimaler Fluss und hat den Wert f + f. 3 Sind alle Kapazitäten ganze Zahlen, so gibt es einen kostenminimalen maximalen Fluss, dessen Werte ganzzahlig sind.

26 ANWENDUNGEN VON NETZWERKALGORITHMEN Matchings - Wiederholung Es sei G ein ungerichteter Graph mit Kantenmenge K. Eine Teilmenge Z von K heißt Zuordnung (Matching) von G, falls die Kanten in Z paarweise keine gemeinsamen Ecken haben. Eine Zuordnung heißt maximal, wenn es keine Zuordnung mit mehr Kanten gibt. Die Maximalität von Zuordnungen stützt sich nicht auf die Maximalität von Mengen bezüglich Mengeninklusion, sondern auf die Maximalität der Anzahl der Elemente von Mengen. Eine Zuordnung Z eines Graphen G heißt nicht erweiterbar, wenn sie durch keine weitere Kante vergrößert werden kann. In diesem Fall gibt es zu jeder Kante von G eine Kante aus Z, so dass beide Kanten mindestens eine Ecke gemeinsam haben. Eine Zuordnung Z heißt vollständig, falls jede Ecke des Graphen mit einer Kante aus Z inzident ist. Jede vollständige Zuordnung ist maximal, aber die Umkehrung gilt nicht.

27 MATCHINGS IN BIPARTITE GRAPHEN Es sei G ein bipartiter Graph und N G folgendes 0-1-Netzwerk: Die Eckenmenge E G von N G ist gleich E {q, s}, d.h. es werden zwei neue Ecken eingeführt. Für jede Ecke e E 1 gibt es in N G eine Kante von q nach e mit Kapazität 1 und für jede Ecke e E 2 eine Kante von e nach s mit Kapazität 1. Ferner gibt es für jede Kante (e 1, e 2 ) von G eine gerichtete Kante von e 1 nach e 2 mit Kapazität 1 (e 1 E 1, e 2 E 2 ).

28 MATCHINGS IN BIPARTITE GRAPHEN Abbildung 1: Ein bipartiter Graph G und sein 0-1-Netzwerk N G

29 LEMMA Lemma Die Anzahl der Kanten in einer maximalen Zuordnung eines bipartiten Graphen G ist gleich dem Wert eines maximalen Flusses auf N G. Ist f ein maximaler binärer Fluss, so bilden die Kanten aus G mit Fluss 1 eine maximale Zuordnung von G. Beweis Es sei f ein maximaler binärer Fluss auf dem 0-1-Netzwerk N G. Ferner sei Z die Menge aller Kanten aus G, für die der Fluss durch die entsprechende Kante in N G gerade 1 ist. Da jede Ecke aus E 1 in N G den Eingrad 1 und jede Ecke aus E 2 in N G den Ausgrad 1 hat, folgt aus der Flusserhaltungsbedingung, dass Z eine Zuordnung ist. Ferner enthält Z genau f Kanten.

30 BEWEIS (2) Sei nun umgekehrt Z eine maximale Zuordnung von G mit z Kanten. Dann läßt sich leicht ein Fluss f mit Wert z auf N G konstruieren. Für jede Kante (e 1, e 2 ) Z definiert man f (q, e 1 ) = f (e 1, e2) = f (e 2, q) = 1 und f (k) = 0 für alle anderen Kanten k von N G. Die Flusserhaltungsbedingung ist für f erfüllt, und es gilt f = z. Damit ist das Lemma bewiesen.

31 MATCHINGS UND FLÜSSE Satz Für einen bipartiten Graphen kann eine maximale Zuordnung in der Zeit O( zm) mittels des Algorithmus von Dinic bestimmt werden. Hierbei bezeichnet z die Anzahl der Kanten in einer maximalen Zuordnung.

32 BESTIMMEN VON MATCHINGS Maximale Zuordnungen für Bäume können in linearer Zeit bestimmt werden. Verfahren zur Bestimmung von maximalen Zuordnungen in nicht bipartiten Graphen sind komplizierter. Die besten Algorithmen haben erstaunlicherweise die gleiche worst case Laufzeit wie im bipartiten Fall. Dabei wird das Konzept der Erweiterungswege auf dem Netzwerk N G in ein entsprechendes Konzept für G übertragen. Das größte Problem dabei ist die Bestimmung von Erweiterungswegen in nicht bipartiten Graphen.

33 NETZWERKE MIT OBEREN UND UNTEREN KAPAZITÄTEN Bisher wurden nur Netzwerke betrachtet, in denen der Fluss durch jede Kante nur nach oben beschränkt war. Eine explizite untere Grenze wurde nicht angegeben. Es wurde lediglich verlangt, dass der Fluss nicht negativ ist, d.h. 0 war die untere Grenze für alle Kanten. In vielen Anwendungen sind aber von 0 verschiedene Untergrenzen von Bedeutung. In diesem Abschnitt werden Netzwerke mit oberen und unteren Grenzen für den Fluss durch die Kanten betrachtet. Dazu werden zwei Kapazitätsfunktionen κ u und κ 0 für ein Netzwerk angegeben. Für alle Kanten k des Netzwerkes gilt κ u (k) < κ 0 (k). Der erste Teil der Definition eines Flusses wird folgendermaßen abgeändert: a) für jede Kante k von G gilt κ u (k) < f (k) < κ 0 (k).

34 NETZWERKE MIT OBEREN UND UNTEREN KAPAZITÄTEN Der zweite Teil der Definition bleibt unverändert. Ziel dieses Abschnitts ist die Entwicklung eines Algorithmus zur Bestimmung eines maximalen Flusses in Netzwerken mit oberen und unteren Grenzen. Betrachtet man noch einmal die im letzten Vorlesung diskutierten Algorithmen, so haben diese eine Gemeinsamkeit: Ein gegebener Fluss wird schrittweise erhöht, bis er maximal ist. Ausgangspunkt war dabei meist der triviale Fluss. Auf einem Netzwerk mit von 0 verschiedenen Untergrenzen ist der triviale Fluss aber kein zulässiger Fluss. Das erste Problem ist also die Bestimmung eines zulässigen Flusses. Die Anpassung der Algorithmen, um aus einem zulässigen einen maximalen Fluss zu erzeugen, sind leicht vorzunehmen.

35 BEISPIEL:NETZWERK MIT OBEREN UND UNTEREN KAPAZITÄTEN Abbildung 2: Ein Netzwerk ohne zulässigen Fluss

36 BEISPIEL - DISKUSSION Aus der Quelle können maximal fünf Einheiten hinausfliessen, und in die Senke müssen mindestens sechs Einheiten hineinfliessen. D.h. es ist im allgemeinen nicht sicher, dass ein zulässiger Fluss überhaupt existiert.

37 BESTIMMUNG EINES MAXIMALEN FLUSSES Die Bestimmung eines maximalen Flusses auf Netzwerken mit unteren und oberen Grenzen erfolgt in zwei Phasen: 1 überprüfung, ob ein zulässiger Fluss existiert und desselben Bestimmung 2 Erhöhung dieses Flusses zu einem maximalen Fluss. L.R. Ford und D.R. Fulkerson haben eine Methode entwickelt, mit der das Problem der ersten Phase auf ein Netzwerkproblem ohne untere Kapazitätsgrenzen zurückgeführt werden kann. Dazu wird ein Hilfsnetzwerk G konstruiert.

38 BESTIMMUNG EINES MAXIMALEN FLUSSES

39 BESTIMMUNG EINES MAXIMALEN FLUSSES

40 BESTIMMUNG EINES MAXIMALEN FLUSSES Damit ist G ein g s-netzwerk, d.h. die Ecken q und s sind normale Ecken in G. Das Netzwerk G hat nur obere Kapazitätsgrenzen, d.h. mit den Algorithmen aus der letzten Vorlesung kann ein maximaler Fluss für G bestimmt werden. Die Konstruktion von G bedingt, dass folgende Gleichung gilt: e E κ(k e ) = e E κ(k e ). Diese Größe wird im folgenden mit S bezeichnet. S ist eine obere Grenze für den Wert eines Flusses auf G. Der Wert eines maximalen Flusses auf G zeigt an, ob es einen zulässigen Fluss auf G gibt. Das wird in dem folgenden Lemma bewiesen.

41 LEMMA Genau dann gibt es einen zulässigen Fluss auf dem Netzwerk G, wenn der maximale Fluss auf dem Netzwerk G den Wert S hat.

42 BEISPIEL Abbildung 3: Ein Netzwerk G mit oberen und unteren Kapazitätsgrenzen und das dazugehörige Netzwerk G

43 BEISPIEL Abbildung 4: Werte des maximalen Flusses f für Netzwerk G Auf allen anderen Kanten hat f den Wert 0. Somit hat f den Wert 7. Da auch S gleich 7 ist, gibt es einen zulässigen Fluss f auf G.

44 BEISPIEL Abbildung 5: Werte des maximalen Flusses f für Netzwerk G

45 BESTIMMUNG EINES MAXIMALEN FLUSSES Nachdem ein zulässiger Fluss gefunden wurde, kann dieser zu einem maximalen Fluss erhöht werden. Dazu muß die Definition eines Erweiterungsweges geändert werden. Für eine Vorwärtskante k muss nun und für eine Rückwärtskante gelten. Ferner ist f (k) < κ 0 (k) f (k) > κ u (k) f v = min{κ 0 (k) f (k) k Vorwärtskante auf dem Erweiterungsweg} f r = min{f (k) κ u (k) k Rückwärtskante auf dem Erweiterungsweg}.

46 BESTIMMUNG EINES MAXIMALEN FLUSSES Nimmt man diese Änderungen im Algorithmus von Edmonds und Karp vor, so bestimmt dieser ausgehend von einem zulässigen Fluss einen maximalen Fluss.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965). 5. Graphenprobleme Im folgenden bezeichnen G = (E, K) einen endlichen Graphen mit der Eckenmenge E und der Kantenmenge K. G kann ungerichtet, gerichtet, schlicht oder nicht schlicht sein. 5.1 Spannende

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

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

Kapitel 4: Minimal spannende Bäume Gliederung der Vorlesung

Kapitel 4: Minimal spannende Bäume Gliederung der Vorlesung Kapitel : Minimal spannende Bäume Gliederung der Vorlesung. Fallstudie Bipartite Graphen 2. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Wege. Traveling

Mehr

Kapitel 4: Minimale spannende Bäume Gliederung der Vorlesung

Kapitel 4: Minimale spannende Bäume Gliederung der Vorlesung Kapitel : Minimale spannende Bäume Gliederung der Vorlesung. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen. Kürzeste Wege. Minimale spannende Bäume. Färbungen und Cliquen. Traveling Salesman

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

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

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

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen WS 08/09 Friedhelm Meyer auf der Heide Vorlesung 8, 4.11.08 Friedhelm Meyer auf der Heide 1 Organisatorisches Am Dienstag, 11.11., fällt die

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

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

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

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

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung. Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 14. November 2007 1 / 22 2 / 22 Gliederung eulersche und semi-eulersche Graphen Charakterisierung eulerscher Graphen Berechnung eines

Mehr

Das Briefträgerproblem

Das Briefträgerproblem Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................

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 4 Programm des

Mehr

8 Diskrete Optimierung

8 Diskrete Optimierung 8 Diskrete Optimierung Definition 8.1. Ein Graph G ist ein Paar (V (G), E(G)) besteh aus einer lichen Menge V (G) von Knoten (oder Ecken) und einer Menge E(G) ( ) V (G) 2 von Kanten. Die Ordnung n(g) von

Mehr

Stefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie

Stefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie Stefan Schmid TU Berlin & T-Labs, Berlin, Germany Reduktionen in der Berechenbarkeitstheorie Problem: Wie komme ich von hier zum Hamburger Hbf? 2 Beispiel P1 Wie komme ich von hier zum Hamburger Hbf? kann

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 Vorlesungen 5 und 6 Programm

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

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme Universität Hamburg Fachbereich Mathematik Seminar: Proseminar Graphentheorie Dozentin: Haibo Ruan Sommersemester 2011 Ausarbeitung zum Modulabschluss Graphentheorie spannende Bäume, bewertete Graphen,

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

Netzwerk-Simplex. MinCostFlow als Lineares Programm. 1 of 12 Netzwerksimplex

Netzwerk-Simplex. MinCostFlow als Lineares Programm. 1 of 12 Netzwerksimplex Netzwerk-Simplex MinCostFlow als Lineares Programm of 2 Netzwerksimplex MinCostFlow geg: gerichteter Graph G, Kapazitäten u R R 0 { }, Bedarfe b V R, Pfeilkosten c R R ges: zulässiger b-fluss f mit minimalen

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

Abgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g:

Abgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g: TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 2 Prof. Dr. Helmut Seidl, S. Pott,

Mehr

Vorlesung 4 BETWEENNESS CENTRALITY

Vorlesung 4 BETWEENNESS CENTRALITY Vorlesung 4 BETWEENNESS CENTRALITY 101 Aufgabe! Szenario: Sie arbeiten bei einem sozialen Online-Netzwerk. Aus der Netzwerk-Struktur Ihrer Benutzer sollen Sie wichtige Eigenschaften extrahieren. [http://www.fahrschule-vatterodt.de/

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

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

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

MafI I: Logik & Diskrete Mathematik (F. Hoffmann)

MafI I: Logik & Diskrete Mathematik (F. Hoffmann) Lösungen zum 14. und letzten Aufgabenblatt zur Vorlesung MafI I: Logik & Diskrete Mathematik (F. Hoffmann) 1. Ungerichtete Graphen (a) Beschreiben Sie einen Algorithmus, der algorithmisch feststellt, ob

Mehr

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

Felix Brandt, Jan Johannsen. Vorlesung im Wintersemester 2008/09 Felix Brandt, Jan Johannsen Vorlesung im Wintersemester 2008/09 Übersicht Übersicht Definition Ein Matching in G = (V, E) ist eine Menge M E mit e 1 e 2 = für e 1, e 2 M, e 1 e 2 Ein Matching M ist perfekt,

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

Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke

Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke Steve Göring 13.07.2012 1/18 Gliederung Einleitung Grundlagen Vertex-Cover-Problem Set-Cover-Problem Lösungsalgorithmen

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn Ein 5.55-Approximationsalgorithmus für das VPND-Problem Lars Schäfers Inhalt Einführung:

Mehr

1. Übung Graphentheorie WS2016/17

1. Übung Graphentheorie WS2016/17 1. Übung Graphentheorie WS2016/17 1. Schreiben Sie für jede Ecke der folgenden 7 Graphen den Grad auf! Welche der Graphen sind regulär? G 1 G 2 G 5 G 3 2. Bestimmen Sie alle paarweise nicht-isomorphen

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

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) Berlin, 21. Februar 2013 Name:... Matr.-Nr.:... Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) 1 2 3 4 5 6 7 8 9 Σ Bearbeitungszeit: 90 min. max. Punktezahl:

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

9. Übung Algorithmen I

9. Übung Algorithmen I Timo Bingmann, Christian Schulz INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS 1 KIT Timo Universität Bingmann, des LandesChristian Baden-Württemberg Schulz und nationales Forschungszentrum in der

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

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). 8. Untere Schranken für Sortieren Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). Werden nun gemeinsame Eigenschaften dieser Algorithmen untersuchen. Fassen gemeinsame

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

Statistik und Graphentheorie

Statistik und Graphentheorie Statistik und Graphentheorie Sommersemester 2012 3. Juli 2012 Teil Graphentheorie Name: Matrikelnummer: 1 (12) 2 (12) 3 (12) 4 (12) 5 (12) (60) Aufgabe 1 (12 Punkte) Gegeben sei das folgende Netzwerk:

Mehr

3.4 Maximale Flüsse und der Algorithmus von Ford Fulkerson

3.4 Maximale Flüsse und der Algorithmus von Ford Fulkerson 3.4 Maximale Flüsse und der Algorithmus von Ford Fulkerson Definition 3.4.1 Die Aufgabe, zu jedem Netzwerk N = (s, t, V, E, c o ) mit n = V Knoten und m = E Kanten den Fluß f IR m mit maximalem Wert zu

Mehr

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

Gliederung. Kapitel 4. Lokale Suchverfahren. Meta-Heuristiken. Simulated Annealing. Lokale Suchverfahren. Optimierungsalgorithmen Kapitel Optimierungsalgorithmen Gunnar Klau Institut für Computergraphik und Algorithmen Gliederung Kombinatorische vs. Ganzzahlige Optimierung Exakte Verfahren Branch-and-Bound Schnittebenenverfahren

Mehr

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108 23. November 2011 Betweenness Centrality Closeness Centrality H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108 Betweenness Centrality Grundlegende Idee: Ein Knoten ist wichtig, wenn er auf

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

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

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal 3. Kreis- und Wegeprobleme Kapitelübersicht 3. Kreis- und Wegeprobleme Eulerweg, Eulerkreis Charakterisierung von eulerschen Graphen Bestimmung von eulerschen Wegen und Kreisen Hamiltonsche Graphen Definition

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

4 Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine

Mehr

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É. Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É. Tardos Janick Martinez Esturo jmartine@techfak.uni-bielefeld.de xx.08.2007 Sommerakademie Görlitz Arbeitsgruppe 5 Gliederung

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

Graphen und Bäume. A.1 Graphen

Graphen und Bäume. A.1 Graphen Algorithmen und Datenstrukturen 96 A Graphen und Bäume A.1 Graphen Ein gerichteter Graph (auch Digraph) G ist ein Paar (V, E), wobei V eine endliche Menge und E eine Relation auf V ist, d.h. E V V. V heißt

Mehr

Minimal spannende Bäume

Minimal spannende Bäume Minimal spannende Bäume Ronny Harbich 4. Mai 006 (geändert 19. August 006) Vorwort Ich danke Patrick Bahr und meinem Bruder Steffen Harbich für die Unterstützung bei dieser Arbeit. Sie haben sowohl zu

Mehr

Wie findet man den optimalen Weg zum Ziel? Klassische Probleme der Kombinatorischen Optimierung

Wie findet man den optimalen Weg zum Ziel? Klassische Probleme der Kombinatorischen Optimierung Wie findet man den optimalen Weg zum Ziel? Klassische Probleme der Kombinatorischen Optimierung Teilnehmer/innen: Markus Dahinten, Graf Münster Gymnasium Bayreuth Robert Fay, Herder Gymnasium Berlin Falko

Mehr

Lineare Programmierung

Lineare Programmierung Lineare Programmierung WS 2003/04 Rolle der Linearen Programmierung für das TSP 1954: Dantzig, Fulkerson & Johnson lösen das TSP für 49 US-Städte (ca. 6.2 10 60 mögliche Touren) 1998: 13.509 Städte in

Mehr

4. Kreis- und Wegeprobleme Abstände in Graphen

4. Kreis- und Wegeprobleme Abstände in Graphen 4. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 4.4. Es sei G = (V,E) ein Graph. Der Abstand d(v,w) zweier Knoten v,w V ist die minimale Länge eines Weges von v nach w. Falls

Mehr

Einführung in die Algebra

Einführung in die Algebra Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 4 Das Lemma von Bezout Satz 1. (Lemma von Bézout) Jede Menge von ganzen Zahlen a 1,...,a n besitzt einen größten gemeinsamen Teiler

Mehr

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. a) Es seien W 1 = (V, E 1 ), W 2 = (V, E 2 ) Untergraphen von G, die beide Wälder sind. Weiter gelte E 1 > E 2.

Mehr

Minimal spannende Bäume

Minimal spannende Bäume http://www.uni-magdeburg.de/harbich/ Minimal spannende Fakultät für Informatik Otto-von-Guericke-Universität 2 Inhalt Definition Wege Untergraphen Kantengewichtete Graphen Minimal spannende Algorithmen

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 June 18, 2012 Ignaz Rutter INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg

Mehr

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if

Mehr

Toleranzbasierte Algorithmen für das Travelling Salesman Problem. Gerold Jäger

Toleranzbasierte Algorithmen für das Travelling Salesman Problem. Gerold Jäger Toleranzbasierte Algorithmen für das Travelling Salesman Problem Gerold Jäger (Zusammenarbeit mit Jop Sibeyn, Boris Goldengorin) Institut für Informatik Martin-Luther-Universität Halle-Wittenberg gerold.jaeger@informatik.uni-halle.de

Mehr

Routing Algorithmen. Begriffe, Definitionen

Routing Algorithmen. Begriffe, Definitionen Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über

Mehr

Flüsse in Netzwerken

Flüsse in Netzwerken Skript zum Seminar Flüsse in Netzwerken WS 2008/09 David Meier Inhaltsverzeichnis 1 Einführende Definitionen und Beispiele 3 2 Schnitte in Flussnetzwerken 12 2.1 Maximaler s t Fluss..........................

Mehr

Vier-Farben-Vermutung (1)

Vier-Farben-Vermutung (1) Vier-Farben-Vermutung (1) Landkarten möchte man so färben, dass keine benachbarten Länder die gleiche Farbe erhalten. Wie viele Farben braucht man zur Färbung einer Landkarte? Vier-Farben-Vermutung: Jede

Mehr

WS 2013/14. Diskrete Strukturen

WS 2013/14. Diskrete Strukturen WS 2013/14 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/ws1314

Mehr

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume Effiziente Algorithmen und Datenstrukturen I Kapitel 9: Minimale Spannbäume Christian Scheideler WS 008 19.0.009 Kapitel 9 1 Minimaler Spannbaum Zentrale Frage: Welche Kanten muss ich nehmen, um mit minimalen

Mehr

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2009/10 1 Bernhard Ganter, TU Dresden Modul

Mehr

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Kürzeste Wege in Graphen Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Gliederung Einleitung Definitionen Algorithmus von Dijkstra Bellmann-Ford Algorithmus Floyd-Warshall Algorithmus

Mehr

Kapitel 3: Untere Schranken für algorithmische Probleme Gliederung

Kapitel 3: Untere Schranken für algorithmische Probleme Gliederung Gliederung 1. Grundlagen 2. Analyse der Laufzeit von Algorithmen 3. Untere Schranken für algorithmische Probleme 4. Sortier- und Selektionsverfahren 5. Paradigmen des Algorithmenentwurfs 6. Ausgewählte

Mehr

Matching markets Seminar maschinelles Lernen WS 10/11

Matching markets Seminar maschinelles Lernen WS 10/11 Matching markets Seminar maschinelles Lernen WS 10/11 08.12.2010 Matching markets Rebekka Gohla 1 Einführung Matching markets ist das erste Kapitel des Themenkomplexes Märkte und strategische Interaktionen

Mehr

Vollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete).

Vollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete). Vollständiger Graph Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete). Mit K n wird der vollständige Graph mit n Knoten bezeichnet. Bemerkung

Mehr

Das Multi Traveling Salesman Problem

Das Multi Traveling Salesman Problem Das Multi Traveling Salesman Problem Harald Voit Seminar Ganzzahlige Optimierung 19. bis 21. Januar 2007 Wallenfels Das Multi Traveling Salesman Problem p.1/26 Übersicht Vom TSP zum ATSP Das Multi Traveling

Mehr

Prüfungsklausur Operations Research,

Prüfungsklausur Operations Research, HTWD, FB Informatik/Mathematik Prof. Dr. M. Voigt Prüfungsklausur Operations Research, 10.7.2008 A Name, Vorname Matr. Nr. Aufgabe 1 : In drei Porzellanwerken W 1, W 2 und W 3 werden Speiseservice hergestellt,

Mehr

4. ggt und kgv. Chr.Nelius: Zahlentheorie (SS 2007) 9

4. ggt und kgv. Chr.Nelius: Zahlentheorie (SS 2007) 9 Chr.Nelius: Zahlentheorie (SS 2007) 9 4. ggt und kgv (4.1) DEF: Eine ganze Zahl g heißt größter gemeinsamer Teiler (ggt) zweier ganzer Zahlen a und b, wenn gilt: GGT 0 ) g 0 GGT 1 ) g a und g b GGT 2 )

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

Vollständigkeit; Überabzählbarkeit und dichte Mengen) Als typisches Beispiel für die reellen Zahlen dient die kontinuierlich ablaufende Zeit.

Vollständigkeit; Überabzählbarkeit und dichte Mengen) Als typisches Beispiel für die reellen Zahlen dient die kontinuierlich ablaufende Zeit. Kapitel 4 Reelle Zahlen 4.1 Die reellen Zahlen (Schranken von Mengen; Axiomatik; Anordnung; Vollständigkeit; Überabzählbarkeit und dichte Mengen) Als typisches Beispiel für die reellen Zahlen dient die

Mehr

Single Source Sortest Path Negative Kreise All-Pair Shortest Path Problem Minimum Mean Cycle Zusammenfassung. Shortest Paths

Single Source Sortest Path Negative Kreise All-Pair Shortest Path Problem Minimum Mean Cycle Zusammenfassung. Shortest Paths Shortest Paths Label Correcting Algorithms Florian Reitz Universität Trier Fachbereich IV Fach Informatik Seminar Netzwerkalgorithmen WS 2005/2006 Einleitung: Problemübersicht Eben: Schnelle Algorithmen

Mehr

Logische und funktionale Programmierung

Logische und funktionale Programmierung Logische und funktionale Programmierung Vorlesung 2: Prädikatenkalkül erster Stufe Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 14. Oktober 2016 1/38 DIE INTERPRETATION

Mehr

In diesem Abschnitt betrachten wir nur quadratische Matrizen mit Komponenten aus einem Körper K, also A K n n für ein n N. Wenn (mit einem n > 1)

In diesem Abschnitt betrachten wir nur quadratische Matrizen mit Komponenten aus einem Körper K, also A K n n für ein n N. Wenn (mit einem n > 1) 34 Determinanten In diesem Abschnitt betrachten wir nur quadratische Matrizen mit Komponenten aus einem Körper K, also A K n n für ein n N Wenn (mit einem n > 1) a 11 a 12 a 1n a 21 a 22 a 2n A =, (1)

Mehr

(x, x + y 2, x y 2 + z 3. = e x sin y. sin y. Nach dem Umkehrsatz besitzt f dann genau auf der Menge

(x, x + y 2, x y 2 + z 3. = e x sin y. sin y. Nach dem Umkehrsatz besitzt f dann genau auf der Menge ÜBUNGSBLATT 0 LÖSUNGEN MAT/MAT3 ANALYSIS II FRÜHJAHRSSEMESTER 0 PROF DR CAMILLO DE LELLIS Aufgabe Finden Sie für folgende Funktionen jene Punkte im Bildraum, in welchen sie sich lokal umkehren lassen,

Mehr

3 Klassifikation wichtiger Optimierungsprobleme

3 Klassifikation wichtiger Optimierungsprobleme 3 Klassifikation wichtiger Optimierungsprobleme 3.1 Das MIN- -TSP Wir kehren nochmal zurück zum Handlungsreisendenproblem für Inputs (w {i,j} ) 1 i

Mehr

Diskrete Mathematik. Sebastian Iwanowski FH Wedel. Kap. 6: Graphentheorie

Diskrete Mathematik. Sebastian Iwanowski FH Wedel. Kap. 6: Graphentheorie Referenzen zum Nacharbeiten: Diskrete Mathematik Sebastian Iwanowski FH Wedel Kap. 6: Graphentheorie Lang 6 Beutelspacher 8.1-8.5 Meinel 11 zur Vertiefung: Aigner 6, 7 (7.4: Algorithmus von Dijkstra) Matousek

Mehr

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck Lemma 15 KLP 1 ist genau dann lösbar, wenn das dazugehörige LP KLP 2 eine Lösung mit dem Wert Z = 0 besitzt. Ist Z = 0 für x 0, x 0, dann ist x eine zulässige Lösung von KLP 1. Beweis von Lemma 15: Nach

Mehr