Algorithmen II Vorlesung am
|
|
|
- Birgit Schuler
- vor 9 Jahren
- Abrufe
Transkript
1 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 II Wintersemester 0/0 in der Helmholtz-Gemeinschaft
2 Schnitte minimalen Gewichts: MinCut Algorithmen II Wintersemester 0/0
3 Problem MINCUT Problem: MINCUT Gegeben sei ein Graph G = (V, E) mit Kantengewichtsfunktion c : E R + 0. Finde einen nichttrivialen Schnitt (S, V \ S) minimalen Gewichts in G, d.h. finde S V mit S V, sodass c(s, V \ S) := c({u, v}) {u, v} E, u S, v V \ S minimal wird. (S, V\S) wird minimaler Schnitt genannt Algorithmen II Wintersemester 0/0
4 Problem MINCUT Problem: MINCUT Gegeben sei ein Graph G = (V, E) mit Kantengewichtsfunktion c : E R + 0. Finde einen nichttrivialen Schnitt (S, V \ S) minimalen Gewichts in G, d.h. finde S V mit S V, sodass c(s, V \ S) := c({u, v}) {u, v} E, u S, v V \ S minimal wird. (S, V\S) wird minimaler Schnitt genannt. S V \ S c(s, V \ S) = Algorithmen II Wintersemester 0/0
5 Schnittberechnung mittels Flussalgorithmus Bemerkung: Dualität zu maximalem Fluss (Bemerkung.) Zu gegebenen s, t V kann ein minimaler s-t-schnitt mit einem Flussalgorithmus (z.b. Ford & Fulkerson, Goldberg & Tarjan) berechnet werden. Das Minimum über alle Paare s, t V liefert einen global minimalen Schnitt. ( ) V Θ( V ) Flussberechnungen. Da im minimalen Schnitt jeder Knoten von irgendeinem anderen getrennt wird, kann man stattdessen s V auch festhalten und t V \ {s} wähle. V Flussberechnungen. Heute: Effizientere Berechnung eines minimalen Schnittes ohne Flussalgorithmus. Algorithmen II Wintersemester 0/0
6 Stark verbundene Knoten Definition: Am stärksten verbundene Knoten (Definition.) Zu S V und v V \ S sei c(s, v) = {u, v} E u S c({u, v}). Den Knoten v V \ S, für den c(s, v) maximal wird, nennen wir auch den am stärksten mit S verbundenen Knoten. S c(s, ) = + = 5 c(s, ) = c(s, 8) = Knoten ist am stärksten mit S verbunden. Algorithmen II Wintersemester 0/0
7 Verschmelzen zweier Knoten Definition: Verschmelzen zweier Knoten (Definition.) Seien s, t V. Dann können s und t wie folgt verschmolzen werden. s und t werden durch einen neuen Knoten x s,t ersetzt. Alle Kanten die vorher zu s oder t inzident waren sind jetzt zu x s,t inzident (abgesehen von {s, t}, falls s und t adjazent waren). Mehrfachkanten werden aufgelöst indem Kantengewichte addiert werden , 7 8 Algorithmen II Wintersemester 0/0 Verschmelzen der Knoten und 7. 5, 7 5 8
8 Algorithmus von Stoer & Wagner Überblick Der Algorithmus von Stoer & Wagner besteht V Phasen. In jeder Phase i wird ein Schnitt in einem Graphen G i = (V i, E i ) berechnet, der Schnitt der Phase i. G i entsteht aus G i durch Verschmelzen geeigneter Knoten, wobei G = G. Ergebnis des Algorithmus ist der minimale Schnitt aller Schnitte der einzelnen Phasen i (für i V ). Ablauf einer Phase i Starte mit S i = {a}, wobei a ein beliebiger Startknoten in G i ist. Füge iterativ den am stärksten zu S i verbundenen Knoten zu S i hinzu. Seien s und t die als vorletztes bzw. als letztes zu S i hinzugefügten Knoten. Der Schnitt der Phase i ist (V i \ {t}, {t}). G i+ entsteht aus G i durch Verschmelzen von s und t. Algorithmen II Wintersemester 0/0
9 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} (beliebig gewählter Startknoten) Algorithmen II Wintersemester 0/0
10 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} S = {, } (beliebig gewählter Startknoten) ( am stärksten zu {} verbunden) Algorithmen II Wintersemester 0/0
11 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} S = {, } (beliebig gewählter Startknoten) ( am stärksten zu {} verbunden) S = {,, } ( am stärksten zu {, } verbunden) Algorithmen II Wintersemester 0/0
12 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} S = {, } (beliebig gewählter Startknoten) ( am stärksten zu {} verbunden) S = {,, } ( am stärksten zu {, } verbunden) S = {,,, 7} Algorithmen II Wintersemester 0/0
13 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} S = {, } (beliebig gewählter Startknoten) ( am stärksten zu {} verbunden) S = {,, } ( am stärksten zu {, } verbunden) S = {,,, 7} S = {,,, 7, 8} Algorithmen II Wintersemester 0/0
14 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} S = {, } (beliebig gewählter Startknoten) ( am stärksten zu {} verbunden) S = {,, } ( am stärksten zu {, } verbunden) S = {,,, 7} S = {,,, 7, 8} S = {,,, 7, 8, } Algorithmen II Wintersemester 0/0
15 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} S = {, } (beliebig gewählter Startknoten) ( am stärksten zu {} verbunden) S = {,, } ( am stärksten zu {, } verbunden) S = {,,, 7} S = {,,, 7, 8} S = {,,, 7, 8, } S = {,,, 7, 8,, 5} Algorithmen II Wintersemester 0/0
16 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} S = {, } (beliebig gewählter Startknoten) ( am stärksten zu {} verbunden) S = {,, } ( am stärksten zu {, } verbunden) S = {,,, 7} S = {,,, 7, 8} S = {,,, 7, 8, } S = {,,, 7, 8,, 5} S = {,,, 7, 8,, 5, } Schnitt der Phase: {V \ {}, {}} Gewicht 5 s t Algorithmen II Wintersemester 0/0
17 Algorithmus von Stoer & Wagner Beispiel Phase G = G S = {} S = {, } (beliebig gewählter Startknoten) ( am stärksten zu {} verbunden) S = {,, } ( am stärksten zu {, } verbunden) S = {,,, 7} S = {,,, 7, 8} S = {,,, 7, 8, } S = {,,, 7, 8,, 5} S = {,,, 7, 8,, 5, } Schnitt der Phase: {V \ {}, {}} Gewicht 5 Verschmelzen von s und t ergibt G s t, Algorithmen II Wintersemester 0/0
18 Algorithmus von Stoer & Wagner Beispiel Phase G = G mit und 5 verschmolzen S = {} (beliebig gewählter Startknoten), Algorithmen II Wintersemester 0/0
19 Algorithmus von Stoer & Wagner Beispiel Phase G = G mit und 5 verschmolzen S = {} S = {, {, 5}} (beliebig gewählter Startknoten), Algorithmen II Wintersemester 0/0
20 Algorithmus von Stoer & Wagner Beispiel Phase G = G mit und 5 verschmolzen S = {} S = {, {, 5}} S = {, {, 5}, } (beliebig gewählter Startknoten), Algorithmen II Wintersemester 0/0
21 Algorithmus von Stoer & Wagner Beispiel Phase G = G mit und 5 verschmolzen S = {} S = {, {, 5}} S = {, {, 5}, } S = {, {, 5},, } (beliebig gewählter Startknoten), Algorithmen II Wintersemester 0/0
22 Algorithmus von Stoer & Wagner Beispiel Phase G = G mit und 5 verschmolzen S = {} S = {, {, 5}} S = {, {, 5}, } S = {, {, 5},, } S = {, {, 5},,, } (beliebig gewählter Startknoten), Algorithmen II Wintersemester 0/0
23 Algorithmus von Stoer & Wagner Beispiel Phase G = G mit und 5 verschmolzen S = {} S = {, {, 5}} S = {, {, 5}, } S = {, {, 5},, } S = {, {, 5},,, } S = {, {, 5},,,, 7} (beliebig gewählter Startknoten), Algorithmen II Wintersemester 0/0
24 Algorithmus von Stoer & Wagner Beispiel Phase G = G mit und 5 verschmolzen S = {} S = {, {, 5}} S = {, {, 5}, } S = {, {, 5},, } S = {, {, 5},,, } S = {, {, 5},,,, 7} S = {, {, 5},,,, 7, 8} (beliebig gewählter Startknoten) s t, Schnitt der Phase: {V \ {8}, {8}} Gewicht 5 Verschmelzen von s und t ergibt G, 5 7, 8 Algorithmen II Wintersemester 0/0
25 Algorithmus von Stoer & Wagner Beispiel Phase Schnitt der Phase: {V \ {}, {}} Gewicht 5 Phase Schnitt der Phase: {V \ {8}, {8}} Gewicht 5 Phase Schnitt der Phase: {V \ {{7, 8}}, {{7, 8}}} Gewicht 7 Phase Schnitt der Phase: {V \ {{, 7, 8}}, {{, 7, 8}}} Gewicht 7 Phase 5 Schnitt der Phase: {V 5 \ {{,, 7, 8}}, {{,, 7, 8}}} Gewicht Phase Schnitt der Phase: {V \ {{, 5}}, {{, 5}}} Gewicht 7 Phase 7 Schnitt der Phase: {V 7 \ {}, {}} Gewicht 9 siehe Skript Der Schnitt aus Phase 5 ist minimal unter den Schnitten der einzelnen Phasen. Der Algorithmus von Stoer & Wagner gibt diesen Schnitt aus (Beweis, dass der so bestimmte Schnitt immer ein minimaler Schnitt ist folgt später.) Algorithmen II Wintersemester 0/0
26 Algorithmus von Stoer & Wagner Laufzeit MINSCHNITTPHASE(G i, c, a) S {a} t a while S V i do v Knoten aus V i \ S sodass c(s, v) maximal S S {v} s t t v O() O(log V + deg(v)) O() Speichere (V i \ {t}, {t}) als SCHNITT-DER-PHASE Konstruiere aus G i Graph G i+ durch Verschmelzen von s und t Benutze einen FIBONACCI-HEAP um c(s, u) für alle u V i \ S zu speichern. Maximum v entfernen: O(log V ) Nachbarn von v updaten: O(deg(v)) Algorithmen II Wintersemester 0/0
27 Algorithmus von Stoer & Wagner Laufzeit MINSCHNITTPHASE(G i, c, a) S {a} t a while S V i do v Knoten aus V i \ S sodass c(s, v) maximal S S {v} s t t v O() O( V log V + E ) O(log V + deg(v)) O() Speichere (V i \ {t}, {t}) als SCHNITT-DER-PHASE Konstruiere aus G i Graph G i+ durch Verschmelzen von s und t Benutze einen FIBONACCI-HEAP um c(s, u) für alle u V i \ S zu speichern. Maximum v entfernen: O(log V ) Nachbarn von v updaten: O(deg(v)) Jeder Knoten wird nur einmal zu S hinzugefügt. deg(v) = E O( E ) v V Algorithmen II Wintersemester 0/0
28 Algorithmus von Stoer & Wagner Laufzeit MINSCHNITTPHASE(G i, c, a) S {a} t a while S V i do v Knoten aus V i \ S sodass c(s, v) maximal S S {v} s t t v O( V log V + E ) O() O( V log V + E ) O(log V + deg(v)) O() Speichere (V i \ {t}, {t}) als SCHNITT-DER-PHASE Konstruiere aus G i Graph G i+ durch Verschmelzen von s und t O( E ) Benutze einen FIBONACCI-HEAP um c(s, u) für alle u V i \ S zu speichern. Maximum v entfernen: O(log V ) Nachbarn von v updaten: O(deg(v)) Jeder Knoten wird nur einmal zu S hinzugefügt. deg(v) = E O( E ) v V Algorithmen II Wintersemester 0/0
29 Algorithmus von Stoer & Wagner Laufzeit MINSCHNITTPHASE(G i, c, a) O( V log V + E ) MIN-SCHNITT(G, c, a) G G for i = to V do MINSCHNITTPHASE(G i, c, a) if SCHNITT-DER-PHASE ist kleiner als MIN-SCHNITT then speichere SCHNITT-DER-PHASE als MIN-SCHNITT Gib MIN-SCHNITT aus. O( V log V + V E ) O() O( V log V + V E ) O( V log V + E ) O() O() Lemma: Laufzeit des Algorithmus von Stoer & Wagner Der Algorithmus von Stoer & Wagner hat eine Laufzeit von O( V log V + V E ). Zum Vergleich: Der Flussalgorithmus von Goldberg & Tarjan hat eine Laufzeit von O( V E log( V / E )) Algorithmen II Wintersemester 0/0
30 Algorithmus von Stoer & Wagner Korrektheit Definition: s-t-schnitt Für s, t V, s t nenne den Schnitt (S, V \ S) mit s S und t V \ S einen s-t-schnitt. Ein s-t-schnitt trennt Knoten u und v, wenn u S und v V \ S. Lemma: SCHNITT-DER-PHASE ist minimaler s-t-schnitt (Lemma.5) Sei (S, V \ S) der SCHNITT-DER-PHASE in einem Graphen G = (V, E) mit Kostenfunktion c : E R + 0 und Startknoten a V. Dann ist (S, V \ S) minimal unter allen s-t-schnitten, wobei s und t vorletzter bzw. letzter betrachteter Knoten ist. Algorithmen II Wintersemester 0/0
31 Algorithmus von Stoer & Wagner Korrektheit Definition: s-t-schnitt Für s, t V, s t nenne den Schnitt (S, V \ S) mit s S und t V \ S einen s-t-schnitt. Ein s-t-schnitt trennt Knoten u und v, wenn u S und v V \ S. Lemma: SCHNITT-DER-PHASE ist minimaler s-t-schnitt (Lemma.5) Sei (S, V \ S) der SCHNITT-DER-PHASE in einem Graphen G = (V, E) mit Kostenfunktion c : E R + 0 und Startknoten a V. Dann ist (S, V \ S) minimal unter allen s-t-schnitten, wobei s und t vorletzter bzw. letzter betrachteter Knoten ist. Beweis: Zeige: Für jeden s-t-schnitt (S, V \ S ) gilt: c(s, V \ S) c(s, V \ S ) a s t a s t S V \ S V \ S S Algorithmen II Wintersemester 0/0
32 Algorithmus von Stoer & Wagner Korrektheit Beweis: Zeige: Für jeden s-t-schnitt (S, V \ S ) gilt: c(s, V \ S) c(s, V \ S ) Definition: aktive Knoten MINSCHNITTPHASE betrachtet die Knoten aus V gemäß einer linearen Ordnung, die mit a beginnt und mit s und t endet. Ein Knoten v V heißt aktiv (bzgl. S ), wenn {S, V \ S } den Knoten v von seinem Vorgänger trennt. a s t a s t S V \ S V \ S S Algorithmen II Wintersemester 0/0
33 Algorithmus von Stoer & Wagner Korrektheit Beweis: Zeige: Für jeden s-t-schnitt (S, V \ S ) gilt: c(s, V \ S) c(s, V \ S ) Definition: aktive Knoten MINSCHNITTPHASE betrachtet die Knoten aus V gemäß einer linearen Ordnung, die mit a beginnt und mit s und t endet. Ein Knoten v V heißt aktiv (bzgl. S ), wenn {S, V \ S } den Knoten v von seinem Vorgänger trennt. a s t a s t S V \ S V \ S Definition: Für v V \ {a} sei S v Menge der Knoten vor v. Sei weiter V v = S v {v} sowie S v = S V v. a v s t a v s t S S V \ S V \ S v {v} V v \ S v Betrachte Einschränkung von G auf V v für aktiven Knoten v. Zeige: c(s V, {v}) c(s v, V v \ S v ) (zeigt genau das gewünschte für v = t) S v S S Algorithmen II Wintersemester 0/0
34 Algorithmus von Stoer & Wagner Korrektheit () Satz: Korrektheit des Algorithmus von Stoer & Wagner (Satz.) Der minimale Schnitt von allen Ergebnissen der V Ausführungen von MIN- SCHNITTPHASE ist ein minimaler, nichttrivialer Schnitt in G = (V, E) mit V. Algorithmen II Wintersemester 0/0
35 Algorithmus von Stoer & Wagner Korrektheit () Satz: Korrektheit des Algorithmus von Stoer & Wagner (Satz.) Der minimale Schnitt von allen Ergebnissen der V Ausführungen von MIN- SCHNITTPHASE ist ein minimaler, nichttrivialer Schnitt in G = (V, E) mit V. Beweis: Induktion über V. Induktionsanfang: V = ist trivial. Induktionsschritt: V Betrachte Phase mit vorletztem bzw. letztem Knoten s und t. Fall : G hat einen nichttrivialen minimalen Schnitt, der s von t trennt. Schnitt der ersten Phase ist ein nichttrivialer minimaler Schnitt. Fall : G hat keinen nichttrivialen minimalen Schnitt, der s von t trennt. In jedem nichttrivialen minimalen Schnitt liegen s und t auf der gleichen Seite. Verschmilzt man s und t, so induziert ein minimaler Schnitt im resultierenden Graph G einen in minimalen Schnitt in G. Laut Induktionsvoraussetzung liefert der Algorithmus einen minimalen Schnitt für G. Algorithmen II Wintersemester 0/0
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
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
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
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
Algorithmen für Planare Graphen
Algorithmen für Planare Graphen 12. Juni 2018, Übung 4 Lars Gottesbüren, Michael Hamann INSTITUT FÜR THEORETISCHE INFORMATIK KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Prüfungstermine
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
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
Maximale s t-flüsse in Planaren Graphen
Maximale s t-flüsse in Planaren Graphen Vorlesung Algorithmen für planare Graphen June 1, 2015 Ignaz Rutter INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg
Kürzeste-Wege-Algorithmen und Datenstrukturen
Kürzeste-Wege-Algorithmen und Datenstrukturen Institut für Informatik Universität zu Köln SS 2009 Teil 1 Inhaltsverzeichnis 1 Kürzeste Wege 2 1.1 Voraussetzungen................................ 2 1.2
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
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
Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist:
Svenja Hüning, Michael Kerber, Hannah Schreiber WS 2016/2017 Übung zur Vorlesung Diskrete Mathematik (MAT.107) Blatt Beispiellösungen Abgabefrist: Hinweise: Dieses Blatt präsentiert Beispiellösungen zu
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:
Effizienter Planaritätstest Vorlesung am
Effizienter Planaritätstest Vorlesung am 23.04.2014 INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER Satz Gegebenen einen Graphen G = (V, E) mit n Kanten und m Knoten, kann in O(n + m) Zeit
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
Minimale Schnitte und Schnittbäume
Minimale Schnitte und Schnittbäume Studienarbeit von Myriam Freidinger Betreuer: Prof. Dr. Dorothea Wagner, Robert Görke ITI Prof. Dr. Dorothea Wagner, Universität Karlsruhe 23. Februar 2007 Danksagung
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 }.
Voronoi-Diagramme. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 29.05.2011 Das Postamt-Problem b(p, q) = {x R 2 : xp = xq } p q h(p, q) h(q, p) = {x :
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
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
Algorithmen II Vorlesung am 15.11.2012
Algorithmen II Vorlesung am 15.11.2012 Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales
Datenstrukturen & Algorithmen Lösungen zu Blatt 11 FS 14
Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 14. Mai
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
3. Minimale Spannbäume. Definition 99 T heißt minimaler Spannbaum (MSB, MST) von G, falls T Spannbaum von G ist und gilt:
3. Minimale Spannbäume Sei G = (V, E) ein einfacher ungerichteter Graph, der o.b.d.a. zusammenhängend ist. Sei weiter w : E R eine Gewichtsfunktion auf den Kanten von G. Wir setzen E E: w(e ) = e E w(e),
4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1
Allgemeines. Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition.. (a) Ein Graph G =(V, E) heißt kreisfrei, wenn er keinen Kreis besitzt. Beispiel: Ein kreisfreier Graph: FG KTuEA, TU Ilmenau
Voronoi-Diagramme INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK. Dr. Martin Nöllenburg Vorlesung Algorithmische Geometrie
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 03.06.2014 1 Das Postamt-Problem b(p, q) = {x 2 R 2 : xp = xq } p q h(p, q) h(q, p) = {x
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
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{
Algorithmen & Komplexität
Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik [email protected] Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg
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
Richtig oder falsch? Richtig oder falsch? Richtig oder falsch? Mit dynamischer Programmierung ist das Knapsack- Problem in Polynomialzeit lösbar.
Gegeben sei ein Netzwerk N = (V, A, c, s, t) wie in der Vorlesung. Ein maximaler s-t-fluss kann immer mit Hilfe einer Folge von höchstens A Augmentationsschritten gefunden werden. Wendet man den Dijkstra-Algorithmus
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
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
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
Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008
Technische Universität München Fakultät für Informatik Lehrstuhl für Informatik 15 Computergraphik & Visualisierung Prof. Dr. Rüdiger Westermann Dr. Werner Meixner Wintersemester 2007/08 Lösungsblatt 9
9 Minimum Spanning Trees
Im Folgenden wollen wir uns genauer mit dem Minimum Spanning Tree -Problem auseinandersetzen. 9.1 MST-Problem Gegeben ein ungerichteter Graph G = (V,E) und eine Gewichtsfunktion w w : E R Man berechne
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
Berechnung von Abständen
3. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 3.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.
Betriebswirtschaftliche Optimierung
Institut für Statistik und OR Uni Graz 1 Approximationsalgorithmen auf metrischen Instanzen Minimum Spanning Tree Definition (Spannbaum) Ein Spannbaum in einem Graphen G = (V,E) ist ein kreisfreier Teilgraph
Übung 5 Algorithmen II
Michael Axtmann [email protected] 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
Klausur. 18. Juli 2008, 10:15-12:15 Uhr. Name:... Matrikelnummer:... Anzahl beschriebener Blätter (ohne Aufgabenblatt):... D(p) : Y = p x X + p y
GRUNDZÜGE DER ALGORITHMISCHEN GEOMETRIE Klausur 18. Juli 2008, 10:15-12:15 Uhr Name:................................... Matrikelnummer:................................... Anzahl beschriebener Blätter (ohne
Naiver Algorithmus für Hamiltonkreis
Naiver Algorithmus für Hamiltonkreis Algorithmus HAMILTON EINGABE: G = ([n], E) in Adjazenzmatrixdarstellung 1 Für alle Permutationen π : [n] [n]. 1 Falls (π(1), π(2),..., π(n)) ein Kreis in G ist, AUSGABE
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
Betriebliche Optimierung
Betriebliche Optimierung Joachim Schauer Institut für Statistik und OR Uni Graz Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 1 / 21 1 Approximationsalgorithmen auf
2. Das single-source-shortest-path-problem
. Das single-source-shortest-path-problem Zunächst nehmen wir an, dass d 0 ist. Alle kürzesten Pfade von a nach b sind o.b.d.a. einfache Pfade.. Dijkstra s Algorithmus Gegeben: G = (V, A), (A = V V ),
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
3.2 Generischer minimaler Spannbaum-Algorithmus
3.2 Generischer minimaler Spannbaum-Algorithmus Initialisiere Wald F von Bäumen, jeder Baum ist ein singulärer Knoten (jedes v V bildet einen Baum) while Wald F mehr als einen Baum enthält do wähle einen
Datenstrukturen und Algorithmen
Prof. Dr. Erika Ábrahám Datenstrukturen und Algorithmen 1/1 Datenstrukturen und Algorithmen Vorlesung 14: Prof. Dr. Erika Ábrahám Theorie Hybrider Systeme Informatik 2 http://ths.rwth-aachen.de/teaching/ss-14/
Relationen und DAGs, starker Zusammenhang
Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind
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!
Vorlesung Algorithmische Geometrie. Streckenschnitte. Martin Nöllenburg INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK
Vorlesung Algorithmische Geometrie INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 24.04.2011 Überlagern von Kartenebenen Beispiel: Gegeben zwei verschiedene Kartenebenen,
Vorlesungstermin 2: Graphentheorie II. Markus Püschel David Steurer. Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich
Vorlesungstermin 2: Graphentheorie II Markus Püschel David Steurer Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich Wiederholung: Vollständige Induktion Ziel: zeige n N. A(n) für eine Aussage
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
Theoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 17. Januar 2012 INSTITUT FÜR THEORETISCHE 0 KIT 18.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der
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
Lernmodul 7 Algorithmus von Dijkstra
Folie 1 von 30 Lernmodul 7 Algorithmus von Dijkstra Quelle: http://www.map24.de Folie 2 von 30 Algorithmus von Dijkstra Übersicht Kürzester Weg von A nach B in einem Graphen Problemstellung: Suche einer
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
Breitensuche BFS (Breadth First Search)
Breitensuche BFS (Breadth First Search) Algorithmus BREITENSUCHE EINGABE: G = (V, E) als Adjazenzliste, Startknoten s V 1 Für alle v V 1 If (v = s) then d[v] 0 else d[v] ; 2 pred[v] nil; 2 Q new Queue;
durch Einfügen von Knoten konstruiert werden kann.
Satz von Kuratowski Definition Unterteilung eines Graphen Sei G = (V, E) und e = {u, v} E. 1 Das Einfügen eines neuen Knoten w in die Kante e führt zum Graphen G = (V {w}, E \ e {{u, w}, {w, v}}). 2 Der
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
Vorlesung Datenstrukturen
Vorlesung Datenstrukturen Minimale Spannbäume Maike Buchin 18.7., 20.7.2017 Einführung Motivation: Verbinde Inseln mit Fähren oder Städte mit Schienen und verbrauche dabei möglichst wenig Länge. Problem:
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
15. Elementare Graphalgorithmen
Graphen sind eine der wichtigste Modellierungskonzepte der Informatik Graphalgorithmen bilden die Grundlage vieler Algorithmen in der Praxis Zunächst kurze Wiederholung von Graphen. Dann Darstellungen
Polygontriangulierung
Vorlesung Algorithmische Geometrie Polygone triangulieren LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Martin Nöllenburg 26.04.2011 Das Kunstgalerie-Problem
6. Musterlösung. Problem 1: Abgeschlossenheit der Addition *
Universität Karlsruhe Algorithmentehnik Fakultät für Informatik WS 05/06 ITI Wagner 6. Musterlösung Problem 1: Abgeshlossenheit der Addition * Zeigen oder widerlegen Sie: Die Summe 1 2 zweier Kreise ist
\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E.
Das Komplement Ḡ = (V, ( V ) \ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E. Ein Graph H = (V, E )
Grundzüge von Algorithmen und Datenstrukturen, WS 15/16: Lösungshinweise zum 13. Übungsblatt
U N S A R I V E R S A V I E I T A S N I S S Grundzüge von Algorithmen und Datenstrukturen, WS /6: Lösungshinweise zum 3. Übungsblatt Christian Hoffmann, Fabian Bendun Aufgabe 3. (a) Sei j i + = n die Größe
1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2009/2010
. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2009/200 Lösung! Beachten Sie: Bringen Sie den Aufkleber mit Ihrem Namen und Matrikelnummer auf diesem Deckblatt an und beschriften Sie jedes Aufgabenblatt
Matchings in Graphen. Praktikum Diskrete Optimierung (Teil 5)
Praktikum Diskrete Optimierung (Teil 5) 6.05.009 Matchings in Graphen Es sei ein ungerichteter Graph G = (V, E) gegeben. Ein Matching in G ist eine Teilmenge M E, so dass keine zwei Kanten aus M einen
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
4. Kreis- und Wegeprobleme
4. Kreis- und Wegeprobleme Kapitelübersicht 4. Kreis- und Wegeprobleme Charakterisierung von eulerschen Graphen Bestimmung von eulerschen Wegen und Kreisen Hamiltonsche Graphen Abstände in Graphen Berechnung
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.
Bäume und Wälder. Definition 1
Bäume und Wälder Definition 1 Ein Baum ist ein zusammenhängender, kreisfreier Graph. Ein Wald ist ein Graph, dessen Zusammenhangskomponenten Bäume sind. Ein Knoten v eines Baums mit Grad deg(v) = 1 heißt
Algorithmische Graphentheorie
Algorithmische Graphentheorie Vorlesung 7 und 8: Euler- und Hamilton-Graphen Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca [email protected] 17. April 2018 1/96 WIEDERHOLUNG Eulersche
1 Kürzeste Pfade in Graphen
Praktikum Algorithmen-Entwurf (Teil 3) 03.11.2011 1 1 Kürzeste Pfade in Graphen Es sei ein gerichteter Graph G = (V, E) mit V = n Knoten, E = m Kanten und Kantengewichten c : E R gegeben. Ein Pfad in G
3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel
3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel EADS 3.1 Konstruktion von minimalen Spannbäumen 16/36
Freie Bäume und Wälder
(Martin Dietzfelbinger, Stand 4.6.2011) Freie Bäume und Wälder In dieser Notiz geht es um eine besondere Sorte von (ungerichteten) Graphen, nämlich Bäume. Im Gegensatz zu gerichteten Bäumen nennt man diese
Datenstrukturen und Algorithmen SS07
Datenstrukturen und Algorithmen SS0 Datum:.6.200 Michael Belfrage [email protected] belfrage.net/eth Programm von Heute Minimaler Spannbaum (MST) Challenge der Woche Fibonacci Heap Minimaler Spannbaum
