Kombinatorische Optimierung

Größe: px
Ab Seite anzeigen:

Download "Kombinatorische Optimierung"

Transkript

1 Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

2 Vorlesung 9 Programm: Übungsblatt 4 Anwendungen des Maximaler-Fluss-Problems An Algorithm for Improving Graph Partitions by Andersen and Lang, SODA Henning Meyerhenke:

3 Inhalt Flüsse in Netzwerken Anwendungen 3 Henning Meyerhenke:

4 Zirkulation Definition Definition Ein Zirkulationsnetzwerk ist ein Tripel (G, b, u) mit einem gerichteten Graphen G = (V, E) und b, u : E R mit b(e) u(e) für alle e E. 4 Henning Meyerhenke:

5 Zirkulation Definition Definition Ein Zirkulationsnetzwerk ist ein Tripel (G, b, u) mit einem gerichteten Graphen G = (V, E) und b, u : E R mit b(e) u(e) für alle e E. Definition Eine Zirkulation f ist ein Fluss ohne Quelle und ohne Senke. Formal ist f : E R mit 1. b(e) f (e) u(e) e E (Kapazitätsbedingung) 2. (u,v) E f (u, v) = (v,w) E f (v, w) v V (Flusserhaltung) 4 Henning Meyerhenke:

6 Zirkulation Definition Definition Ein Zirkulationsnetzwerk ist ein Tripel (G, b, u) mit einem gerichteten Graphen G = (V, E) und b, u : E R mit b(e) u(e) für alle e E. Definition Eine Zirkulation f ist ein Fluss ohne Quelle und ohne Senke. Formal ist f : E R mit 1. b(e) f (e) u(e) e E (Kapazitätsbedingung) 2. (u,v) E f (u, v) = (v,w) E f (v, w) v V (Flusserhaltung) Beispiel: Siehe Tafel 4 Henning Meyerhenke:

7 Zirkulation Formale Aufgabenbeschreibung Problem Eingabe: Ein Zirkulationsnetzwerk (G, b, u) Ausgabe: Eine Zirkulation f für (G, b, u) 5 Henning Meyerhenke:

8 Zirkulation Formale Aufgabenbeschreibung Problem Eingabe: Ein Zirkulationsnetzwerk (G, b, u) Ausgabe: Eine Zirkulation f für (G, b, u) Redefinition des Residualnetzwerkes G f = (V, E f ) mit E f = {(v, w) V V u f (v, w) > 0} und u f (v, w) = u(v, w) f (v, w) + max{f (w, v) b(w, v), 0 }{{}}{{} }. Dabei nimmt man an, dass f (w, v) und b(w, v) gleich 0 sind, wenn (w, v) / E. Beispiel: Siehe Tafel 5 Henning Meyerhenke:

9 Zirkulation Algorithmus Algorithm 1 Berechnung einer Zirkulation 1: function CIRCULATE(G, b, u) 2: f (e) = 0 e E Triviale Initialisierung, unzulässige Zirkulation 3: while e E : f (e) < b(e) do 4: Wähle (v, w) E mit f (v, w) < b(v, w) Fluss auf Kante zu klein 5: if ein Pfad P von w nach v in G f then Redef. von G f beachten! 6: C = (P, (v, w)) ist ein Zyklus mit (v, w) C 7: Schicke δ = min e C u f (e) Flusseinheiten durch C 8: else 9: return NULL Keine Zirkulation möglich 10: end if 11: end while 12: return f 6 Henning Meyerhenke:

10 Zirkulation Analyse des Algorithmus Der Algorithmus terminiert. Falls der Rückgabewert nicht NULL ist, dann ist f eine zulässige Zirkulation. Andernfalls gibt es keine zulässige Zirkulation. Lemma Für (G, b, u) mit G = (V, E) gibt es eine zulässige Zirkulation gdw. für jede Menge U V gilt: b(v, w) u(w, v) (v,w) (U,Ū) E (w,v) (Ū,U) E 7 Henning Meyerhenke:

11 Anwendungsszenario: Verteiltes Rechnen mit zwei Prozessoren Ein Rechnersystem hat zwei (mglw. verschiedene) Prozessoren Wir wollen ein sehr großes Programm darauf ausführen Das Programm besteht aus mehreren Modulen, die miteinander interagieren 8 Henning Meyerhenke:

12 Anwendungsszenario: Verteiltes Rechnen mit zwei Prozessoren Ein Rechnersystem hat zwei (mglw. verschiedene) Prozessoren Wir wollen ein sehr großes Programm darauf ausführen Das Programm besteht aus mehreren Modulen, die miteinander interagieren Folgende Kosten sind gegeben: α j : Berechnungskosten für Modul j auf Prozessor 1 β j : Berechnungskosten für Modul j auf Prozessor 2 γ i,j : Kommunikationskosten zwischen den Modulen i und j, wenn sie auf verschiedenen Prozessoren laufen (ansonsten 0) 8 Henning Meyerhenke:

13 Anwendungsszenario: Verteiltes Rechnen mit zwei Prozessoren Ein Rechnersystem hat zwei (mglw. verschiedene) Prozessoren Wir wollen ein sehr großes Programm darauf ausführen Das Programm besteht aus mehreren Modulen, die miteinander interagieren Folgende Kosten sind gegeben: α j : Berechnungskosten für Modul j auf Prozessor 1 β j : Berechnungskosten für Modul j auf Prozessor 2 γ i,j : Kommunikationskosten zwischen den Modulen i und j, wenn sie auf verschiedenen Prozessoren laufen (ansonsten 0) Aufgabe: Finden Sie eine Zuweisung der Module auf die Prozessoren derart, dass die Gesamtkosten minimiert werden! Beispiel: Siehe Tafel 8 Henning Meyerhenke:

14 Konstruktion Bei gegebener Menge J von Modulen und Kosten α j, β j and γ i,j : Konstruiere Flussnetzwerk (G, u, s, t) wie folgt: V = {s, t} J E = {(s, j) j J} {(j, t) j J} {(i, j) i, j J, γ i,j > 0} β j falls i = s u(i, j) = α i falls j = t falls i = s, j = t γ i,j 9 Henning Meyerhenke:

15 Konstruktion Bei gegebener Menge J von Modulen und Kosten α j, β j and γ i,j : Konstruiere Flussnetzwerk (G, u, s, t) wie folgt: V = {s, t} J E = {(s, j) j J} {(j, t) j J} {(i, j) i, j J, γ i,j > 0} β j falls i = s u(i, j) = α i falls j = t falls i = s, j = t Lemma γ i,j Die Gesamtkosten der Zuweisung der Module an die Prozessoren ist gleich der Kapazität des minimalen Schnitts (S, T ) von G. Beweis. Übung: Vergleiche Kosten einer Zuweisung mit Kapazität eines Schnitts im Flussnetzwerk. 9 Henning Meyerhenke:

16 Spezialfall: Einheitskapazitäten Definition (G, u, s, t) ist ein Einheitskapazitäten-Netzwerk (UCN), wenn c(e) = 1 für alle e E. (G, u, s, t) ist ein schlichtes Einheitskapazitäten-Netzwerk (SUCN), wenn es ein UCN ist und zusätzlich deg in (v) = 1 oder deg out (v) = 1 für alle v V \ {s, t}. Theorem (ohne Beweis) Das Problem des maximales Flusses kann für SUCNs mit Laufzeit O(n 1/2 m) gelöst werden. Das Problem des maximales Flusses kann für UCNs mit Laufzeit O(min{n 2/3 m, m 3/2 }) gelöst werden. 10 Henning Meyerhenke:

17 Aufgabe: Maximale bipartite Matchings mit Flüssen Problem Sei G = (V 1 V 2, E) ein bipartiter Graph. Berechnen Sie ein größtmögliches Matching in G mit einem flussbasierten Algorithmus! Wie müssen Sie das Problem transformieren? Der Algorithmus soll scheller sein als O(m n) (Laufzeit des Algorithmus mit dem alternierenden Baum)! Bemerkung Sei G = (V 1 V 2, E) ein gewichteter bipartiter Graph. Ein Matching mit maximalem Gewicht in G lässt sich mit Laufzeit O(n(m + n log n)) berechnen. 11 Henning Meyerhenke:

18 Verbesserung von Partitionierungen Allgemeines Ziel: Minimalen Schnitt finden, dabei Größenbeschränkung beachten Anwendungen: Teile-und-herrsche-Algorithmen VLSI-Entwurf Clustering 12 Henning Meyerhenke:

19 Verbesserung von Partitionierungen Allgemeines Ziel: Minimalen Schnitt finden, dabei Größenbeschränkung beachten Anwendungen: Teile-und-herrsche-Algorithmen VLSI-Entwurf Clustering Algorithmen: Lokale Suche Spektrale Methoden Multilevel-Verfahren Semidefinite Programmierung Mehrgüterflüsse 12 Henning Meyerhenke:

20 Quotientenwertung Definition (Quotientenwertung) Seien G = (V, E) und S V. Sei S das Gesamtgewicht der Kanten, die zwischen S und S verlaufen. Die Quotientenwertung (engl.: quotient score) ist Q(S) = (S) min{π(s), π(s)} Dabei sei π eine Fkt., die jedem Knoten einen positiven Wert zuweist. Beispiele: π(v) = 1 v V (quotient cut) oder π(v) = deg(v) v V (conductance) 13 Henning Meyerhenke:

21 Problembeschreibung Problem Eingabe: G = (V, E) Ausgabe: Finde S V mit minimalem Q(S)! Bemerkung Das obige Problem ist N P-schwer. 14 Henning Meyerhenke:

22 Problembeschreibung Problem Eingabe: G = (V, E) Ausgabe: Finde S V mit minimalem Q(S)! Bemerkung Das obige Problem ist N P-schwer. Problem (Finde verbesserte Lösung!) Eingabe: G = (V, E), A V mit Q(A) Q(A) Ausgabe: Finde S V mit Q(S) < Q(A)! 14 Henning Meyerhenke:

23 Idee des Algorithmus Graphen auf geeignete Weise in Flussnetzwerk transformieren Bei Transformation aktuelle Lösung und deren Qualität berücksichtigen Minimalen Schnitt der neuen Lösung in Partition für G überführen 15 Henning Meyerhenke:

24 Transformation der Eingabe Eingabe: G = (V, E), A V, α [0, ) Ausgabe: G A (α) mit V (G A (α)) = V {s, t}, E(G A (α)) = E {(s, v) v A} {(v, t) v A}, w(s, v) = απ(v), w(v, t) = απ(v)f (A) mit f (A) = π(a)/π(a) 1, w(u, v) = w G (u, v). 16 Henning Meyerhenke:

25 Transformation der Eingabe Eingabe: G = (V, E), A V, α [0, ) Ausgabe: G A (α) mit V (G A (α)) = V {s, t}, E(G A (α)) = E {(s, v) v A} {(v, t) v A}, w(s, v) = απ(v), w(v, t) = απ(v)f (A) mit f (A) = π(a)/π(a) 1, w(u, v) = w G (u, v). Bemerkung 1. Gesamtkapazität der Quellkanten = Gesamtkap. der Senkenkanten. 2. cost A,α (S) = (S) + απ(a S) + απ(s A)f (A) 16 Henning Meyerhenke:

26 Transformation der Eingabe Eingabe: G = (V, E), A V, α [0, ) Ausgabe: G A (α) mit V (G A (α)) = V {s, t}, E(G A (α)) = E {(s, v) v A} {(v, t) v A}, w(s, v) = απ(v), w(v, t) = απ(v)f (A) mit f (A) = π(a)/π(a) 1, w(u, v) = w G (u, v). Bemerkung 1. Gesamtkapazität der Quellkanten = Gesamtkap. der Senkenkanten. 2. cost A,α (S) = (S) + απ(a S) + απ(s A)f (A) Beispiel: Siehe Tafel 16 Henning Meyerhenke:

27 Qualitätsvergleich Definition Sei A V derart, dass π(a) π(a). Wir definieren: mit f (A) = π(a)/π(a) 1 und D A (S) = π(s A) π(s A) f (A) Q A (S) = { (S)/D A (S) falls D A (S) > 0, + falls D A (S) 0. Bemerkung Es gilt immer: D A (S) < π(s) 17 Henning Meyerhenke:

28 Algorithmus Algorithm 2 Verbesserung der Quotientenwertung 1: function IMPROVE(G, A) A V mit π(a) π(a) 2: S 0 = A; i = 0 3: α 0 = Q A (A) = Q(A) < 4: repeat 5: Berechne s-t-schnitt (S i+1, S i+1 ) in Graph G A (α i ) 6: α i+1 = Q A (S i+1 ) 7: i = i + 1 8: until α i α i 1 9: return S 18 Henning Meyerhenke:

29 Analyse: Haupttheorem Theorem Sei A eine Menge mit π(a) π(a) und sei S = IMPROVE(A). 1. Für jede Menge C A gilt: Q(S) Q(C). 2. Falls C eine Menge ist, für die π(a C) π(c) π(a) π(v ) + ɛ π(a) π(v ) für ein ɛ > 0 gilt, dann erfüllt die Ausgabe S Q(S) 1 ɛ Q(C). 3. Der Algorithmus IMPROVE läuft in polynomieller Zeit. 19 Henning Meyerhenke:

30 Analyse: Hilfsresultate Lemma 1. Der Algorithmus IMPROVE(A) berechnet eine Menge S, die Q A (S) minimiert. 2. Kantengewichte ganzzahlig: Höchstens π(v ) 2 Iterationen. 3. Kanten ungewichtet: Höchstens E Iterationen. Lemma Angenommen, π(a) π(a). Dann gilt: 1. Für jede Menge S V gilt: Q A (S) Q(S). 2. Falls für eine Menge C π(a C) π(c) π(a) π(v ) + ɛ π(a) π(v ) für ein ɛ > 0 gilt, dann gilt Q A (C) 1 ɛ Q(C). 20 Henning Meyerhenke:

31 Analyse: Beweis des ersten Lemmas Minimierung von Q A, Korrektheit. Wir zeigen: Q(IMPROVE(A)) = min X V QA (X ) := α. Falls es eine Knotenmenge X mit Q A (X ) < α, dann finden wir X durch Lösen eines s-t-flussproblems. Invariante von IMPROVE: Q A (S i ) = α i <. Entweder α i+1 < α i oder α i = α. Laufzeit. D A (S i ) wird in jeder Iteration streng verringert. In allen Iterationen außer der letzten: D A (S i ) > 0 und D A (S i+1 ) > 0. D A (S i+1 ) < D A (S i ) (Rechnung siehe Skript) Ganzzahlige Werte: Es können nur entsprechend viele verschiedene Werte angenommen werden. 21 Henning Meyerhenke:

32 Analyse: Beweis des zweiten Lemmas Q A (S) Q(S). Zur Erinnerung: D A (S) = π(s A) π(s A) f (A) Q A (S) = (S)/D A (S), falls D A (S) > 0 Zu zeigen: Wenn π(a) π(a), dann gilt auch D A (S) min(π(s), π(s)). D A (S) π(s), denn D A (S) = π(s A) π(s A)f (A) π(s) D A (S) π(s), denn D A (S) = D A (S) = π(s A) + π(s A)f (A) π(s A)f (A) π(s A). 22 Henning Meyerhenke:

33 Zusammenfassung Flussberechnung zur Optimierung eines Quotientenkriteriums. Kriterium geht ein bei Formulierung des Flussproblems (Transformation). Jede Iteration findet das Optimum einer abgewandelten Zielfunktion. 23 Henning Meyerhenke:

34 Zusammenfassung Flussberechnung zur Optimierung eines Quotientenkriteriums. Kriterium geht ein bei Formulierung des Flussproblems (Transformation). Jede Iteration findet das Optimum einer abgewandelten Zielfunktion. Haupttheorem, Teil 1: Jede Iteration liefert ein Ergebnis, das mindestens so gut ist wie das Ergebnis der besten Teilmenge der bisherigen Lösung. Haupttheorem, Teil 2: Wenn die Lösung der vorherigen Iteration genügend Übereinstimmung mit dem Optimum hat, dann 1 ɛ -approximiert die Lösung S das Optimum. Bedingung zur Übereinstimmung bei π(v) = 1: Anteil von C, der auch in A liegt, muss etwas größer sein als der erwartete Anteil von C in einer Zufallsmenge der Größe A. 23 Henning Meyerhenke:

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

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 16 Programm: Einführung

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

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund

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

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

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke

Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

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

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

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am 07..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum

Mehr

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

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

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

Mehr

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, Henning Meyerhenke Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, 25.01.2012 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum

Mehr

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

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

Mehr

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

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

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen Lerneinheit : Kürzeste Pfade in Graphen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Sommersemester 016.6.01 Einleitung Diese Lerneinheit beschäftigt

Mehr

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 11, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 11, Henning Meyerhenke Algorithmische Methoden zur Netzwerkanalyse Vorlesung 11, 18.01.2012 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum

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

SCHNITTERHALTUNG (SPEKTRALE APPROXIMATION)

SCHNITTERHALTUNG (SPEKTRALE APPROXIMATION) Vorlesung 12 AUSDÜNNUNG VON GRAPHEN SCHNITTERHALTUNG (SPEKTRALE APPROXIMATION) 387 Wiederholung: Approximative Schnitterhaltung Ziel: Approximationsalgorithmus: A(S(G)) Ziele bei Eingabe eines dichten

Mehr

Effiziente Algorithmen I 11. Übungsblatt, Wintersemester 2015/16 Abgabetermin:

Effiziente Algorithmen I 11. Übungsblatt, Wintersemester 2015/16 Abgabetermin: 11 11. Übungsblatt, Wintersemester 2015/16 Abgabetermin: 19.01.2016 Aufgabe 29 Bestimmen Sie mit der Stepping-Stone-ethode einen Transportplan mit minimalen Kosten für das klassische Transportproblem mit

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

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

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

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

Übung 5 Algorithmen II

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

Mehr

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

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 13, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 13, Henning Meyerhenke Algorithmische Methoden zur Netzwerkanalyse Vorlesung 13, 01.02.2012 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum

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

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

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

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

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

VU Algorithmen auf Graphen Übungsblatt 2 - Aufgabe 2 Transformation einer MaxFlow- in eine MinCost Circulation Instanz VU Algorithmen auf Graphen Übungsblatt 2 - Aufgabe 2 Transformation einer MaxFlow- in eine MinCost Circulation Instanz Gruppe A: Bernhard Stader, Georg Ziegler, Andreas Zugaj 10. November 2004 Inhaltsverzeichnis

Mehr

7. Der Entwurf von Algorithmen (Fortsetzung)

7. Der Entwurf von Algorithmen (Fortsetzung) Prof. Dr. Norbert Blum M.Sc. Adrian Schmitz Informatik V BA-INF 041 - Algorithmen und Berechnungskomplexität II SS 2015 Mögliche Klausuraufgaben Stand 1. Juli 2015 Bitte beachten Sie, dass die tatsächlichen

Mehr

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund

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

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

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Die Forschungsuniversität Meyerhenke, in der Institut für Theoretische Informatik

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

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

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

Effiziente Algorithmen I

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

Mehr

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

Lösungshinweise 3 Vorlesung Algorithmentechnik im WS 08/09

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

Mehr

10. Übung Algorithmen I

10. Übung Algorithmen I INSTITUT FÜR THEORETISCHE INFORMATIK 1 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft Institut für Theoretische www.kit.edu Informatik Bäume

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

Vorlesung 14 FORTSETZUNG: LÖSER FÜR LAPLACE-GLEICHUNGSSYSTEME

Vorlesung 14 FORTSETZUNG: LÖSER FÜR LAPLACE-GLEICHUNGSSYSTEME Vorlesung 4 FORTSETZUNG: LÖSER FÜR LAPLACE-GLEICHUNGSSYSTEME 49 Wdh.: Bedingung an optimalen Fluss! Wdh.: Stromfluss f ij zwischen Knoten i und j: (v i v j )w ij! Also: f ij / w ij = v i - v j bzw. f opt

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

Graphalgorithmen Netzwerkalgorithmen. Laufzeit

Graphalgorithmen Netzwerkalgorithmen. Laufzeit Netzwerkalgorithmen Laufzeit (Folie 390, Seite 78 im Skript) Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V, V 2 }) mit der Ford Fulkerson Methode. Der Fluß ist höchstens f = min{

Mehr

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

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

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg

Mehr

Einführung in das Seminar Algorithmentechnik

Einführung in das Seminar Algorithmentechnik Einführung in das Seminar Algorithmentechnik 10. Mai 2012 Henning Meyerhenke, Roland Glantz 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Roland undglantz: nationales Einführung Forschungszentrum

Mehr

Übung 2 Algorithmen II

Übung 2 Algorithmen II Yaroslav Akhremtsev, Demian Hespe yaroslav.akhremtsev@kit.edu, hespe@kit.edu Mit Folien von Michael Axtmann (teilweise) http://algo2.iti.kit.edu/algorithmenii_ws17.php - 0 Akhremtsev, Hespe: KIT Universität

Mehr

Beweis: Färbe jede Kante zufällig und unabhängig mit Ws 1 2. Ereignis A i : i-te Clique K (i), i = 1,..., ( n K (i)

Beweis: Färbe jede Kante zufällig und unabhängig mit Ws 1 2. Ereignis A i : i-te Clique K (i), i = 1,..., ( n K (i) Die Probabilistische Methode Beobachtung: Besitzt ein Ereignis Ws > 0, so muss es existieren! Notation: Sei K n der komplette Graph mit n Knoten und ( n 2) Kanten. Satz Falls 2 (k 2) 1 > ( n k), existiert

Mehr

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

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

Mehr

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

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 und Datenstrukturen Kapitel 9. und

Algorithmen und Datenstrukturen Kapitel 9. und Algorithmen und Datenstrukturen Kapitel 9 und Kürzeste Pfade Frank Heitmann heitmann@informatik.uni-hamburg.de 9. Dezember 0 Frank Heitmann heitmann@informatik.uni-hamburg.de / Problemstellung Definition

Mehr

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0.

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0. 8.4 Digraphen mit negativen Kantengewichten 8.4.1 Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0. k 4 5 1 s 1 3 2 C k 0 k 3 1 1 1 k 1 k 2 v Sollte ein Pfad von s nach C und

Mehr

Algorithmen und Datenstrukturen Kapitel 9. und

Algorithmen und Datenstrukturen Kapitel 9. und Algorithmen und Datenstrukturen Kapitel 9 Minimale Spannbäume und Kürzeste Pfade Frank Heitmann heitmann@informatik.uni-hamburg.de 9. Dezember 01 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/13

Mehr

Approximationsalgorithmen. 19. Dezember / 28

Approximationsalgorithmen. 19. Dezember / 28 Approximationsalgorithmen 19. Dezember 2017 1 / 28 Optimierungsprobleme Das Ziel: Bearbeite schwierige Optimierungsprobleme der Form opt y f (x, y) so dass L(x, y). Die Zielfunktion f (x, y) ist zu minimieren

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

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

Fortgeschrittene Netzwerk- und Graph-Algorithmen

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

Mehr

Algorithmen I - Tutorium 28 Nr. 12

Algorithmen I - Tutorium 28 Nr. 12 Algorithmen I - Tutorium 28 Nr. 12 20.07.2017: Spaß mit Dynamischer und Linearer Programmierung Marc Leinweber marc.leinweber@student.kit.edu INSTITUT FÜR THEORETISCHE INFORMATIK (ITI), PROF. DR. JÖRN

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

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

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am 17.01.013 Parametrisierte Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales

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

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Übung am 16.12.2010 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

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

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

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

Vorlesung 2 KÜRZESTE WEGE

Vorlesung 2 KÜRZESTE WEGE Vorlesung 2 KÜRZESTE WEGE 34 Kürzeste Wege im Graphen Motivation! Heute:! Kürzeste Wege von einem Knoten (SSSP)! Kürzeste Wege zwischen allen Knotenpaaren (APSP)! Viele Anwendungen:! Navigationssysteme!

Mehr

Bemerkung: Es gibt Algorithmen für minimale Spannbäume der Komplexität O(m + n log n) und, für dünnbesetzte Graphen, der Komplexität O(m log n), wobei

Bemerkung: Es gibt Algorithmen für minimale Spannbäume der Komplexität O(m + n log n) und, für dünnbesetzte Graphen, der Komplexität O(m log n), wobei Bemerkung: Es gibt Algorithmen für minimale Spannbäume der Komplexität O(m + n log n) und, für dünnbesetzte Graphen, der Komplexität O(m log n), wobei { log x = min n N n: log (log ( log(x) )) } {{ } n

Mehr

Wiederholung. Divide & Conquer Strategie

Wiederholung. Divide & Conquer Strategie Wiederholung Divide & Conquer Strategie Binäre Suche O(log n) Rekursives Suchen im linken oder rechten Teilintervall Insertion-Sort O(n 2 ) Rekursives Sortieren von a[1..n-1], a[n] Einfügen von a[n] in

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

Überblick. Kap. 1.4: Minimum Weight Perfect Matching. 1.3 Blüten-Schrumpf Algorithmus für Maximum Matching

Überblick. Kap. 1.4: Minimum Weight Perfect Matching. 1.3 Blüten-Schrumpf Algorithmus für Maximum Matching Kap. 1.4: Minimum Weight Professor Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering, LS11 4. VO 6. November 2006 Überblick kurze Wiederholung: 1.2 Blüten-Schrumpf-Algorithmus für Perfektes Matching

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

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 1 / 18 Was tun mit NP-harten Problemen? Viele praxisrelevante

Mehr

5. Bäume und Minimalgerüste

5. Bäume und Minimalgerüste 5. Bäume und Minimalgerüste Charakterisierung von Minimalgerüsten 5. Bäume und Minimalgerüste Definition 5.1. Es ein G = (V, E) ein zusammenhängender Graph. H = (V,E ) heißt Gerüst von G gdw. wenn H ein

Mehr

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

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

Mehr

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

Approximationsalgorithmen für NP-harte Optimierungsprobleme

Approximationsalgorithmen für NP-harte Optimierungsprobleme Approximationsalgorithmen für NP-harte Optimierungsprobleme Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 4. Januar 2011 Berthold Vöcking, Informatik 1 () Vorlesung

Mehr

Flüsse, Schnitte, Bipartite Graphen

Flüsse, Schnitte, Bipartite Graphen Flüsse, Schnitte, Bipartite Graphen Sebastian Hahn 4. Juni 2013 Sebastian Hahn Flüsse, Schnitte, Bipartite Graphen 4. Juni 2013 1 / 48 Überblick Flussnetzwerke Ford-Fulkerson-Methode Edmonds-Karp-Strategie

Mehr

10 Kürzeste Pfade SSSP-Problem

10 Kürzeste Pfade SSSP-Problem In diesem Kapitel setzen wir uns mit der Berechnung von kürzesten Pfaden in einem Graphen auseinander. Definition 10.1 (Pfadgewichte). i) Das Gewicht eines Pfades p = (v 0, v 1,..., v k ) ist die Summe

Mehr

Technische Universität München Zentrum Mathematik. Optimierung 2, WS 2008/09 Übungsblatt 12

Technische Universität München Zentrum Mathematik. Optimierung 2, WS 2008/09 Übungsblatt 12 Technische Universität München Zentrum Mathematik Prof. Dr. P. Gritzmann, Dipl.-Inf. Dipl.-Math. S. Borgwardt, Dr. M. Ritter Optimierung 2, WS 2008/09 Übungsblatt 12 Aufgabe 12.1 Betrachten Sie die folgenden

Mehr

ADS: Algorithmen und Datenstrukturen 2

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

Mehr

Algorithmen I - Tutorium 28 Nr. 2

Algorithmen I - Tutorium 28 Nr. 2 Algorithmen I - Tutorium 28 Nr. 2 11.05.2017: Spaß mit Invarianten (die Zweite), Rekurrenzen / Mastertheorem und Merging Marc Leinweber marc.leinweber@student.kit.edu INSTITUT FÜR THEORETISCHE INFORMATIK

Mehr

Das Problem des minimalen Steiner-Baumes

Das Problem des minimalen Steiner-Baumes Das Problem des minimalen Steiner-Baumes Ein polynomieller Approximationsalgorithmus Benedikt Wagner 4.05.208 INSTITUT FU R THEORETISCHE INFORMATIK, LEHRSTUHL ALGORITHMIK KIT Die Forschungsuniversita t

Mehr

Übersicht. Grundlagen. Methoden zum Entwurf von Approximationsalgorithmen. Approximationsklassen. Das PCP-Theorem

Übersicht. Grundlagen. Methoden zum Entwurf von Approximationsalgorithmen. Approximationsklassen. Das PCP-Theorem Übersicht Einführung Grundlagen Methoden zum Entwurf von Approximationsalgorithmen Das PCP-Theorem Probabilistische Programmierung Derandomisierung V ertex C over Minimum W eig hted V ertex C over Instanz:

Mehr

Theoretische Informatik 1

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

Mehr

Vorlesung 15 ABSCHLUSS UND ZUSAMMENFASSUNG

Vorlesung 15 ABSCHLUSS UND ZUSAMMENFASSUNG Vorlesung 15 ABSCHLUSS UND ZUSAMMENFASSUNG 431 Wiederholung! Größen im Zusammenhang mit Fluss:! Energie des Flusses! Duale Energie: Lagrange-Potential! Dualitätslücke! Zyklusaktualisierung in Form von

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