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

Größe: px
Ab Seite anzeigen:

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

Transkript

1 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 2 E mit e 1 e 2 gilt, dass e 1 e 2 = ist, d.h. die beiden Kanten verbinden unterschiedliche disjunkte Knotenpaare. Ein Matching E nennen wir maximal, wenn es keine echte Obermenge E E gibt, die die Matching-Bedingung erfüllt. E heißt Maximum- oder optimales Matching, wenn die E ein Matching größtmöglicher Kardinalität (in der Menge aller Matchings von G) ist. E ist ein perfektes Matching, falls jeder Knoten von G mit einer Kante aus E inzident ist. 308

2 Definition 21 (Teil 2) Unter dem (2-dimensionalen) Matching-Problem verstehen wir das Problem, für einen ungerichteten Graphen zu entscheiden, ob für diesen ein perfektes Matching existiert. Ist zusätzlich zum Graphen G noch eine Kostenfunktion κ : E R auf den Kanten gegeben, so ergibt sich das gewichtete Matching-Problem. Hierbei unterscheiden wir zwei Varianten: 1. Gesucht ist ein Matching E E, welches den Wert des Matchings W (E ) := e E κ(e) maximiert. 2. Gesucht ist ein optimales Matching E, so dass W (E ) minimal ist. Leider können wir hier nur auf eine eingeschränkte Version weiter eingehen. 309

3 Eine für viele Anwendungen interessante Variante des Matching-Problems erhalten wir, wenn wir uns auf bipartite Graphen einschränken: Definition 22 Einen Graphen G = (V, E) nennen wir bipartit oder 2-färbbar, falls wir seine Knotenmenge in zwei Teilmengen V 1, V 2 partitionieren können, so dass V 1 V 2 =, V 1 V 2 = V und jede Kanten mit einem Knoten aus V 1 und mit einem Knoten aus V 2 inzident ist. Das Matching-Problem für bipartite Graphen nennen wir auch Heiratsproblem. Anwendungen: Ressourcen optimal zuordnen, Prozesse zu Prozessoren zuordnen oder Clients zu Servern zuordnen. 310

4 Definition 23 [3DM, 3-DIM-MATCHING] Gegeben eine Menge M von Tripeln über einer Grundmenge A B C paarweise disjunkter Komponentenmengen A, B, C. Ein Matching von M ist eine Teilmenge M M, so dass jedes Element aus A B C in höchstens einem Tripel aus M vorkommt. Ein Matching M, bei dem jedes Element aus A B C genau einmal vertreten ist, ist ein perfektes 3-dimensionales Matching. Das Entscheidungsproblem, ob für eine Menge M ein perfektes 3-dimensionales Matching existiert nennen wir 3-DIM-MATCHING oder kurz 3DM. Definition 24 [X3C, exakte 3-Überdeckung] Ist M eine Menge von 3-elementigen Mengen über einer endlichen Grundmenge C, wird aus dem 3DM Problem das Problem für eine Menge M zu entscheiden, ob eine exakte 3-Überdeckung existiert. Wir nennen diese Problem X3C. 311

5 10.2 Das Heiratsproblem Satz 18 [Heiratssatz] Ein bipartiter Graph G = (V, E) mit Knotenpartitionierung V 1, V 2 besitzt genau dann ein perfektes Matching, wenn V 1 = V 2 ist und für alle Teilmengen U 1 V 1 und deren Korrespondenz auf der anderen Seite Γ(U 1 ) := { v V 2 u U 1 : {u, v} E } die Ungleichung U 1 Γ(U 1 ) erfüllt ist. Bemerkung: Aus diesem Satz können wir keinen effizienten Algorithmus für das Heiratsproblem herleiten, da es exponentiell viele Teilmengen von V 1 gibt. 312

6 Beweis von Satz 18: Die Notwendigkeit der beiden Bedingungen, folgt unmittelbar aus der Definition des Heiratsproblems: Sei E ein perfektes Matching und U 1 eine beliebige Teilmenge von V 1, dann ist jeder Knoten aus U 1 über E mit genau einem Knoten aus V 2 verbunden. Somit gilt U 1 Γ(U 1 ). 313

7 Beweis von Satz 18 (Teil 2): Um zu zeigen, dass die Bedingungen des Satzes auch hinreichend sind, greifen wir auf Satz 14 (MAXFLOW-MINCUT-Theorem auf Folie 208) zurück. Es ist einfach möglich, das Matching-Problem für bipartite Graphen auf ein Flußproblem zu reduzieren: Füge eine Quelle q und eine Senke s zu G hinzu und verbinde q mit alle Knoten aus V 1 und alle Knoten aus V 2 mit s. Richte alle Kanten von q nach s. Insbesondere richte alle Kanten zwischen V 1 und V 2, so dass sie von V 1 nach V 2 verlaufen. Gebe allen Kanten die Kapazität 1. Sei H das resultierende Netzwerk. 314

8 Beweis von Satz 18 (Teil 3): V 1 V 2 u 1 v 1 q u 2 v 2 s u m v m Wie wir aus dem Algorithmus zur Bestimmung des maximalen Flusses (Algorithmus modify-flow auf Folie 202) erkennen können, existiert zu jedem Graphen mit ganzzahliger Kapazitätsfunktion γ : E N ein maximaler Fluss f, der ganzzahlig ist, d.h. ein Fluss der Form f : E N. 315

9 Beweis von Satz 18 (Teil 4): Wir erkennen: Zu jedem Matching E in G korrespondiert eindeutig ein Fluss f in H gleicher Größe, wenn man über die Kanten in H, deren Urbilder in G zu E gehören, jeweils eine Einheit fließen läßt. Analoges gilt auch in umgekehrter Richtung, wenn wir einen ganzzahligen Fluss betrachten. 316

10 Beweis von Satz 18 (Teil 5): Angenommen, ein bipartiter Graph G mit V 1 = V 2 besitzt kein perfektes Matching. Aus der letzten Beobachtung auf der Folie 316 können wir somit folgern, dass der Wert des maximalen Flusses kleiner als V 1 ist. Wir betrachten nun einen minimalen q s-schnitt (Q, S) in H. Die Schnittkapazität γ(q, S) ist die Anzahl der Kanten, die von Q nach S führen. Sei Q := Q V

11 Beweis von Satz 18 (Teil 6): Da q mit jedem Knoten in V 1 S = V 1 \ Q und jeder Knoten aus S = Q V 2 mit s verbunden ist, gilt V 1 > MAXFLOW((H, γ)) = γ(q, S) = (u,v) E u Q,v S γ((u, v)) V 1 \ Q + Γ(Q ) S + Γ(Q ) Q = V 1 Q + Γ(Q ). Dies impliziert Q > Γ(Q ) und die zweite Bedingung ist verletzt. Gibt es kein perfektes Matching für einen bipartiten Graphen, so gilt die zweite Bedingung nicht. 318

12 Beweis von Satz 18 (Teil 7): V 1 V 2 V 1 S u 1 v 1 Q u 2 v 2 q u 3 v 3 s u 4 v 4 Γ(Q ) S u 5 v 5 Q = V 1 Q Γ(Q ) V 2 319

13 Wie wir schon angemerkt haben, können wir aus Satz 18 keinen effizienten Algorithmus zum Lösen des Matching-Problems für bipartite Graphen herleiten. Unsere Überlegungen aus dem Beweis von Satz 18 zeigt jedoch, dass unser Algorithmus von Folie 211 das Matching-Problem für bipartite Graphen zu finden. Einen zunehmenden Weg in dem von uns konstruierten Graphen können wir in H Zeit O( E ) finden. Satz 19 Ein optimales Matching für bipartite Graphen können wir in Zeit O( V E ) finden. Es kann sogar gezeigt werden, dass Matching-Problems für bipartite Graphen in Zeit O( V 2,5 ) gelöst werden kann. Für das gewichtete Matching-Problem für bipartite Graphen können wir nicht so einfach einsehen, dass dieses Problem auch mit Hilfe des General-MAXFLOW Algorithmus gelöst werden kann. 320

14 10.3 Heiratsproblem mit Kantenkosten Unser Algorithmus basiert auf der Idee der zunehmenden Wegen aus Kapitel 8.1. Wir gehen hierbei wie folgt vor: Gegeben ist ein ungerichteter bipartiter Graph G = (V 1 V 2, E) mit V 1 = V 2 = n und eine Gewichtsfunktion κ : E R +. Unser Algorithmus konstruiert iterativ Matchings M i der Größe i = 1,..., n. Hierbei soll M n minimale Kosten haben, d.h. W (M n ) = e M n κ(e) soll minimal unter allen perfekten Matchings sein. Wir gehen wie folgt vor: Sei M i ein Matching mit minimalen Kosten der Größe i und Π ein zunehmender Weg mit minimalen Kosten. Wir verschmelzen nun M i und Π zu einem Matching M i+1 der Größe i + 1 mit minimalen Kosten. 321

15 322 Andreas Jakoby Wir betrachten jedoch einen Restgraphen, der sich vom Restgraph von Folie 200 unterscheidet. Wir definieren: Für G bezeichnen wir mit H = (VH, E H ) den gewichteten Graphen, den wir analog zu H im Heiratssatzes konstruiert haben. Wir setzen jedoch für alle e = (u, v) E H γ((u, v)) = j 0 für u = q oder v = s κ({u, v}) für u V 1 und v V 2. Für ein Matching M in G bezeichnen wir mit HM = (V M, E M ) den gewichteten Graphen mit V M := V 1 V 2 {q, s}, E M := {(q, u) u V 1 \ S e M e} {(v, s) v V2 \ S e M e} {(u, v) V 1 V 2 {u, v} E \ M} {(v, u) V 2 V 1 {u, v} M} und wir setzen für alle e = (u, v) E M 8 < 0 für u = q oder v = s γ((u, v)) = κ({u, v}) für u V 1, v V 2 und {u, v} M : κ({u, v}) für u V 1, v V 2 und {u, v} M.

16 Ein gerichteter Pfad von q nach s in H M ist ein alternierender Pfad: V 1 V 2 u 1 v 1 M = {{u 1, v 2}} q u 2 v 2 s u m v m M = {{u 1, v 1}, {u m, v 2}} Sei M ein Matching in G und Π ein q-s-pfad in H M, wir konstruieren ein neues Matching M, indem wir alle Kanten von V 1 nach V 2 in Π zu M hinzufügen, und alle Kanten von V 2 nach V 1 in Π aus M löschen. Wir erweitern M über Π. Für einen q-s-pfad Π = w 0,..., w t definieren wir die Kosten von Π als W (Π) := i {1,...,t 2} γ((w i, w i+1 )). 323

17 Aus der Definition von H M und dem erweiterten Matching M bezüglich eines alternierenden Pfades Π folgt: Beobachtung 18 Sei M ein Matching und Π ein alternierender q-s-pfades in H M. Sei M das über Π erweiterte Matching, dann gilt M = M + 1 und W (M ) = W (M) + W (Π). Beobachtung 19 M ist genau dann ein perfektes Matching, wenn es in H M keine Kante mehr gibt, die mit q oder s inzident ist. 324

18 325 Andreas Jakoby Wir nennen einen Kreis C = w 1,..., w t (mit w 1 = w t ) in H M negativ, wenn W (C) := γ((w i, w i+1 )) < 0 i {1,...,t 1} ist. Modifizieren wir M über einen Kreis C, analog wie wir eine Matching über einen q-s-pfad erweitern, so erhalten wir: Beobachtung 20 Sei M ein perfektes Matching und C ein negativer Kreis in H M, dann gilt für das über C modifizierte Matching M : M ist ein perfektes Matching und W (M ) = W (M) + W (C) < W (M). Somit sind die Kosten für M nicht minimal. Wir können sogar die Umkehrung dieser Beobachtung zeigen.

19 Lemma 20 Sei M ein perfektes Matching, wobei es in H M keinen negativen Kreis gibt, dann ist M ein minimales Matching. Beweis von Lemma 20: Sei M ein nicht minimales perfektes Matching, wobei es in H M keinen negativen Kreis gibt. Sei M ein perfektes Matching mit minimalen Kosten. Sei S die Menge der Kanten, die in einer der Mengen M oder M enthalten sind, aber nicht in beiden. Die Menge der Kanten in S formen eine Menge von knotendisjunkten Kreisen {C 1,..., C k } in H M. Es gilt W (M ) = W (M) + i {1,...,k} W (C i). Da W (M ) < W (M) ist, gibt es einen Kreis C i mit W (C i ) <

20 Unser Ziel ist es nun die Matchings M 1,..., M n so zu konstruieren, dass wir M i über einen minimalen q-s-pfad erweitern und hierbei kein negativer Kreis in H Mi+1 entsteht. Somit erhalten wir nach Lemma 20 ein perfektes Matching M n mit minimalen Kosten. 327

21 Um die Analyse zu vereinfachen, führen wir für alle Knoten Gewichte δ : V R + ein. Wir nenne δ auf ein Matching abgestimmt, wenn für alle Knoten u V 1, welche nicht mit einer Kante aus M inzident sind, gilt δ(u) = 0, für alle {u, v} E mit u V 1, v V 2 gilt δ(u) + κ({u, v}) δ(v) und für alle {u, v} E mit u V 1, v V 2 mit {u, v} M gilt δ(u) + κ({u, v}) = δ(v). Für jede Kante (x, y) E M mit x, y V 1 V 2 des Graphen H M definieren wir γ δ ((x, y)) := δ(x) + γ((x, y)) δ(y). 328

22 Beachte: Die Werte γ((x, y)) für {x, y} M und (x, y) E M sind negativ und zudem ist x V 2 und y V 1. Aus der Definition von γ δ ((x, y)) folgt jedoch, dass für solche Kanten γ δ ((x, y)) = 0 ist. Beobachtung 21 Die Werte γ δ ((x, y)) sind für alle Kanten (x, y) in H M zwischen V 1 und V 2 bzw. V 2 und V 1 immer größer oder gleich 0. Folgen wir nun einem Kreis C in H M, so gilt folglich: Beobachtung 22 Für alle Kreise C = w 1,..., w t mit w 1 = w t in H M gilt t 1 γ δ ((w i, w i+1 )) = i=1 t 1 γ((w i, w i+1 )) 0. i=1 Beobachtung 23 Gibt es für ein Matching M eine abgestimmte Gewichtsfunktion δ, dann gibt es in H M keinen negativen Kreis. 329

23 Betrachten wir nun das Problem einen q-s-weg mit minimalen Kosten zu finden: Für einen Knoten v V 1 V 2 seien d δ,m (v) die minimalen Kosten eines Wegs von q nach v in H M bei Kostenfunktion γ δ. Sei v V 2 ein Knoten, der nicht mit einer Kante des Matchings M inzident ist, dann sind die minimalen Kosten eines q-v-wegs in H M bei Kostenfunktion γ durch d δ,m (v) + δ(v) gegeben. Es gilt: Lemma 21 Da die Kostenfunktion γ δ positiv ist, können wir den kürzesten Weg von q zu jedem Knoten v V 1 V 2 bezüglich der Kostenfunktion γ δ mit Hilfe des Algorithmus von Dijkstra in Zeit O( E log 2 n) bestimmen. Um einen den kürzesten q-s-pfad bezüglich der Kostenfunktion γ zu bestimmen benötigen wir zusätzliche Kosten O(n). 330

24 Betrachten wir nun die Funktion δ 0 (u) := 0 für alle u V 1 und δ 0 (v) := min {u,v} E κ({u, v}) für alle v V 2, dann erkennen wir: Beobachtung 24 δ 0 ist eine mit M 0 := abgestimmte Gewichtsfunktion. Wir müssen somit nur noch zeigen, dass wir über unser Verfahren zum Erweitern eines Matchings M i immer garantieren können, dass eine für M i+1 abgestimmte Gewichtsfunktion existiert: Lemma 22 M ein Matching und δ eine für M abgestimmte Gewichtsfunktion. Sei ferner M das Matching, welches wir aus M erhalten, indem wir dieses bezüglich eines q-s-wegs mit minimalen Kosten in H M erweitern, dann ist δ (v) := δ(v) + d δ,m (v) eine für M abgestimmte Gewichtsfunktion. 331

25 332 Andreas Jakoby Beweis von Lemma 22: {x, y} M und x V 1 : Es gilt (y, x) EM ist die einzige mit der wir x betreten können. Es gilt dδ,m (x) = d δ,m (y) + γ δ ((y, x)) mit γ δ ((y, x)) := δ(y) + γ((y, x)) δ(x) = 0. Somit erhöhen wir sowohl δ (x) als auch δ (y) um den Wert d δ,m (y). Die Werte von δ (x) und δ (y) erfüllen somit bezüglich der Kante {x, y} die Bedingungen einer für M abgestimmten Gewichtsfunktion.

26 333 Andreas Jakoby Beweis von Lemma 22 (Teil 2): {x, y} M \ M und x V 1 : Die Kante (x, y) EM befindet sich auf dem q-y-weg mit minimalen Kosten. Es gilt dδ,m (y) = d δ,m (x) + γ δ ((x, y)) mit γ δ ((x, y)) := δ(x) + γ((x, y)) δ(y). Wir erhalten δ (x) := δ(x) + d δ,m (x) δ (y) := δ(y) + d δ,m (y) = δ(x) + d δ,m (x) + κ({x, y}). Für den neuen Graphen H M gilt ferner γ((y, x)) := κ({x, y}). Die Werte von δ (x) und δ (y) erfüllen somit bezüglich der Kante {x, y} die Bedingungen einer für M abgestimmten Gewichtsfunktion.

27 334 Andreas Jakoby Beweis von Lemma 22 (Teil 3): {x, y} M M und x V 1 : Der Konten y muss auf einem kürzeren Pfad ohne die Kante (x, y) in H M von q erreichbar sein. Es gilt dδ,m (y) d δ,m (x) + γ δ ((x, y)) mit γ δ ((x, y)) := δ(x) + γ((x, y)) δ(y). Wir erhalten δ (x) + γ((x, y)) δ (y) = δ(x) + d δ,m (x) + γ((x, y)) δ(y) d δ,m (y) 0. Die Werte von δ (x) und δ (y) erfüllen somit bezüglich der Kante {x, y} die Bedingungen einer für M abgestimmten Gewichtsfunktion.

28 335 Andreas Jakoby Algorithmus Bipartites-Matching(G, κ) Eingabe: ungerichteter bipartiter Graph G = (V 1 V 2, E) und Kostenfunktion κ Ergebnis: perfektes Matching M mit minimalen Kosten 1: Sei M = und initialisiere δ := δ 0. 2: while M ist kein perfektes Matching do 3: Finde eine q-s-weg Π mit minimalen Kosten in H M 4: bezüglich der Kostenfunktion γ δ 5: Erweitere M bezüglich Π. Sei M das neue Matching. 6: Berechne eine für M abgestimmte Gewichtsfunktion δ 7: Setze M := M und δ := δ. 8: end while 9: Return(M) Satz 20 Bipartites-Matching findet ein perfektes Matching mit minimalen Kosten für ungerichtete bipartite Graphen G = (V 1 V 2, E) mit V 1 = V 2 = n in Zeit O( E n log 2 n).

29 10.4 Die Komplexität des Matching-Problems Die folgenden Ergebnisse präsentieren wir wieder ohne Beweis: Satz 21 3DM und X3C sind N P-vollständig. Das Problem für einen Graphen zu entscheiden, ob es für diesen ein perfektes Matching gibt, kann in polynomieller Zeit gelöst werden. Der Beweis der N P-Vollständigkeit von 3DM und somit auch für X3C kann in vielen Lehrbüchern der Komplexitätstheorie nachgelesen werden. Der Beweis, dass ein perfektes Matching in polynomieller Zeit generiert werden kann, ist sehr aufwendig und ist daher nur in wenigen Lehrbüchern zu finden. 336

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

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

KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN

KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN F. VALLENTIN, A. GUNDERT 1. Definitionen Notation 1.1. Ähnlich wie im vorangegangenen Kapitel zunächst etwas Notation. Wir beschäftigen uns jetzt mit ungerichteten

Mehr

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

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Pfade. Traveling Salesman Problem. Flüsse in Netzwerken

Mehr

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

Laufzeit. Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode. Effiziente Algorithmen Flußprobleme 81 Laufzeit Finden eines Matchings maximaler Kardinalität dauert nur O( E min{ V 1, V 2 }) mit der Ford Fulkerson Methode. Der Fluß ist höchstens f = min{ V 1, V 2 }.

Mehr

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

Operations Research. Flüsse in Netzwerken. Flüsse in Netzwerken. Unimodularität. Rainer Schrader. 2. Juli Gliederung. Operations Research Rainer Schrader Flüsse in Netzwerken Zentrum für Angewandte Informatik Köln 2. Juli 2007 1 / 53 2 / 53 Flüsse in Netzwerken Unimodularität Gliederung Netzwerke und Flüsse bipartite

Mehr

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

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

Mehr

Das Heiratsproblem. Definition Matching

Das Heiratsproblem. Definition Matching Das Heiratsproblem Szenario: Gegeben: n Frauen und m > n Männer. Bekanntschaftsbeziehungen zwischen allen Männern und Frauen. Fragestellung: Wann gibt es für jede der Frauen einen Heiratspartner? Modellierung

Mehr

Algorithmische Graphentheorie

Algorithmische Graphentheorie Algorithmische Graphentheorie Vorlesung 13: Flüsse und Zuordnungen Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 9. Juni 2017 DURCHSATZ D(e) ist die maximale Flussmenge,

Mehr

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 4: Flüsse

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

Mehr

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

Bäume und Wälder. Definition 1

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

Mehr

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

Naiver Algorithmus für Hamiltonkreis

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

Mehr

Bäume und Wälder. Definition 1

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

Mehr

Univ.-Prof. Dr. Goulnara ARZHANTSEVA

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

Mehr

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

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

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

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

Richtig oder falsch? Richtig oder falsch? Richtig oder falsch? Mit dynamischer Programmierung ist das Knapsack- Problem in Polynomialzeit lösbar.

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

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

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

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

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

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

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

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7 1 Kürzeste Pfade Woche 6 7 Hier arbeiten wir mit gewichteten Graphen, d.h. Graphen, deren Kanten mit einer Zahl gewichtet werden. Wir bezeichnen die Gewichtsfunktion mit l : E R. Wir wollen einen kürzesten

Mehr

WS 2008/09. Diskrete Strukturen

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

Mehr

Diskrete Mathematik Graphentheorie (Übersicht)

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

Mehr

Matchings in Graphen. Praktikum Diskrete Optimierung (Teil 5)

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

Mehr

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

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

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

Mehr

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

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

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

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 11 FS 14

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

Mehr

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

5. Musterlösung. Problem 1: Vitale Kanten * ω(f) > ω(f ). (a) Untersuchen Sie, ob es in jedem Netzwerk vitale Kanten gibt. Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 05/06 ITI Wagner 5. Musterlösung Problem : Vitale Kanten * In einem Netzwerk (D = (V, E); s, t; c) mit Maximalfluß f heißen Kanten e

Mehr

Diskrete Mathematik 1 WS 2008/09

Diskrete Mathematik 1 WS 2008/09 Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 008/09 Blatt

Mehr

Proseminar Graphentheorie Vortrag 3 Matching. Inhalt: 1. Grundlagen 2. Matchings in bipatiten Graphen 3. Matchings in allgemeinen Graphen

Proseminar Graphentheorie Vortrag 3 Matching. Inhalt: 1. Grundlagen 2. Matchings in bipatiten Graphen 3. Matchings in allgemeinen Graphen Proseminar Graphentheorie Vortrag 3 Matching Inhalt: 1. Grundlagen 2. Matchings in bipatiten Graphen 3. Matchings in allgemeinen Graphen 1. Grundlagen Definition Matching: Eine Menge M von unabhängigen

Mehr

Algorithmische Graphentheorie (SS2013)

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

Mehr

8 Das Flussproblem für Netzwerke

8 Das Flussproblem für Netzwerke 8 Das Flussproblem für Netzwerke 8.1 Netzwerke mit Kapazitätsbeschränkung Definition 15 Ein Netzwerk N = (V, E, γ, q, s) besteht aus einem gerichteten Graph G = (V, E), einer Quelle q V und einer Senke

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

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

Bipartite Graphen. Beispiele

Bipartite Graphen. Beispiele Bipartite Graphen Ein Graph G = (V, E) heiÿt bipartit (oder paar), wenn die Knotenmenge in zwei disjunkte Teilmengen zerfällt (V = S T mit S T = ), sodass jede Kante einen Knoten aus S mit einem Knoten

Mehr

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

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

Einführung in die Mathematik des Operations Research

Einführung in die Mathematik des Operations Research Universität zu Köln Mathematisches Institut Prof. Dr. F. Vallentin Einführung in die Mathematik des Operations Research Sommersemester 3 en zur Klausur (7. Oktober 3) Aufgabe ( + 3 + 5 = Punkte). Es sei

Mehr

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

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Minimale spannende Bäume 5. Färbungen und Cliquen 6. Traveling Salesman Problem 7. Flüsse in Netzwerken

Mehr

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

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

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

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

ij. , d (k 1) + d (k 1) Dabei war ja die Idee, dass wir unser k Schritt für Schritt erhöhen bis wir bei n angekommen sind, denn dann haben wir das Problem gelöst. Dies ist im Grunde unser Algorithmus. Wir müssen diesen nur noch

Mehr

Algorithmen II Vorlesung am

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

Mehr

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

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem Dipl-Math. Wolfgang Kinzner 4.4.2012 Kapitel 6: Matchings und TSP-Problem Matching und Matchingproblem Flussalgorithmus

Mehr

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

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

Das Matching Polytop

Das Matching Polytop Das Matching Polytop Manuel Schneider Institut für Mathematik, TU Berlin Seminar: Algorithmische Diskrete Mathematik 27. Mai 2008 Überblick 1 Beschreibungen durch Ungleichungen Das Perfekte Matching Polytop

Mehr

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 16/17 Ausgabe 22. Dezember 2016 Abgabe 17. Januar 2017, 11:00 Uhr

Mehr

Algorithmische Mathematik I

Algorithmische Mathematik I Algorithmische Mathematik I Wintersemester 2011 / 2012 Prof. Dr. Sven Beuchler Peter Zaspel Übungsblatt zur Wiederholung Teil 1. Abgabe am -. Aufgabe 1. a) Was ist eine B-adische Darstellung mit fixer

Mehr

Wir betrachten einen einfachen Algorithmus, der den Zusammenhang eines Graphen testen soll.

Wir betrachten einen einfachen Algorithmus, der den Zusammenhang eines Graphen testen soll. Kapitel 2 Zusammenhang 2.1 Zusammenhängende Graphen Wir betrachten einen einfachen Algorithmus, der den Zusammenhang eines Graphen testen soll. (1) Setze E = E, F =. (2) Wähle e E und setze F = F {e},

Mehr

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

WS 2015/16 Diskrete Strukturen Kapitel 4: Graphen (Matchings) WS 2015/16 Diskrete Strukturen Kapitel 4: Graphen (Matchings) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15

Mehr

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 9 Programm: Übungsblatt

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

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

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

Übungsblatt 5. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18

Übungsblatt 5. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 5 Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Ausgabe 20. Dezember 2017 Abgabe 16. Januar 2018, 11:00 Uhr

Mehr

Strukturelle Modelle in der Bildverarbeitung Binäre MinSum Probleme

Strukturelle Modelle in der Bildverarbeitung Binäre MinSum Probleme Strukturelle Modelle in der Bildverarbeitung Binäre MinSum Probleme TUD/INF/KI/IS Äquivalente Transformationen (Reparametrisierung) Binäre MinSum Probleme kanonische Form MinCut Binäre MinSum Probleme

Mehr

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

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37 2. November 2011 Gradfolgen Zusammenhang Kürzeste Wege H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37 Satz von Erdős und Gallai Eine Partition einer natürlichen Zahl ist genau dann die Gradfolge

Mehr

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

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Kürzeste Wege Maike Buchin 4. und 6.7.2017 Einführung Motivation: Bestimmung von kürzesten Wegen ist in vielen Anwendungen, z.b. Routenplanung, ein wichtiges Problem. Allgemeine

Mehr

Algorithmische Graphentheorie

Algorithmische Graphentheorie 1 Algorithmische Graphentheorie Sommersemester 2014 5. Vorlesung Matchings / Paarungen II Kombinatorischer Algorithmus, Anwendung für Handlungsreisende, LP-Runden Dr. Joachim Spoerhase Prof. Dr. Alexander

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

Effiziente Algorithmen II

Effiziente Algorithmen II 10. Präsenzaufgabenblatt, WiSe 2014/15 Übungstunde am 19.01.2015 Aufgabe Q Betrachten Sie das Knapsackpolytop P = conv(v ) mit V = {x n i=1 a ix i α} {0, 1} n für gegebenes α und a i 0 (insbesondere ist

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

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

Knoten-Partitionierung in feste Eigenschaften ist NP-schwer

Knoten-Partitionierung in feste Eigenschaften ist NP-schwer Knoten-Partitionierung in feste Eigenschaften ist NP-schwer Seminar: Ausgewählte Kapitel der Informatik bei Prof. Dr. R. Schrader Seminarvortrag von Nils Rosjat Wintersemester 09 / 10 1 Einleitung Dieser

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

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

Ü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

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1

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

Mehr

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

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

Mehr

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

Matching. Organisatorisches. VL-18: Matching. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger. Tanzabend Organisatorisches VL-18: Matching (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Vorlesung: Gerhard Woeginger (Zimmer 4024 im E1) Sprechstunde: Mittwoch 11:15 12:00 Übungen: Tim Hartmann,

Mehr

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

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

Systems of Distinct Representatives

Systems of Distinct Representatives Systems of Distinct Representatives Seminar: Extremal Combinatorics Peter Fritz Lehr- und Forschungsgebiet Theoretische Informatik RWTH Aachen Systems of Distinct Representatives p. 1/41 Gliederung Einführung

Mehr

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

Lösungen zur Vorlesung Berechenbarkeit und Komplexität

Lösungen zur Vorlesung Berechenbarkeit und Komplexität Lehrstuhl für Informatik 1 WS 009/10 Prof. Dr. Berthold Vöcking 0.0.010 Alexander Skopalik Thomas Kesselheim Lösungen zur Vorlesung Berechenbarkeit und Komplexität. Zulassungsklausur Aufgabe 1: (a) Worin

Mehr

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

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1} 1. Berechne für jeden Knoten i in BFS-Art eine Liste S i von von i aus erreichbaren Knoten, so dass (i) oder (ii) gilt: (i) S i < n 2 + 1 und Si enthält alle von i aus erreichbaren Knoten (ii) S i = n

Mehr

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

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

Mehr

Argumentationen zu ermöglichen, verlangen wir, dass diese Eigenschaft auch für induzierte Teilgraphen

Argumentationen zu ermöglichen, verlangen wir, dass diese Eigenschaft auch für induzierte Teilgraphen Kapitel 9 Perfekte Graphen 9.1 α- und χ-perfektheit Eine Clique in einem Graphen G ist ein induzierter vollstäniger Teilgraph. Die Cliquenzahl ω(g) ist die Kardinalität einer größten in G enthaltene Clique.

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

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

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

Mehr

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

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

Algorithmen zur Visualisierung von Graphen

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

Mehr

Vorlesung Lineare Optimierung (Sommersemester 2007)

Vorlesung Lineare Optimierung (Sommersemester 2007) 1 Vorlesung Lineare Optimierung (Sommersemester 007) Kapitel 9: Ganzzahlige Polyeder und Kombinatorische Dualität Volker Kaibel Otto-von-Guericke Universität Magdeburg Montag, 9. Juli 007 Gliederung Ganzzahlige

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