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 Vorlesungen 5 und 6 Programm des Tages: Flüsse in Netzwerken Grundlegende Maximaler-Fluss-Algorithmen Maximale Flüsse und minimale Schnitte Generischer Push-Relabel-Algorithmus 2 Henning Meyerhenke:

3 Inhalt Flüsse in Netzwerken Elementare Ergebnisse Der PUSH-RELABEL-Algorithmus 3 Henning Meyerhenke:

4 Szenario 3 Sie verwalten (und gestalten) das Stromnetz einer großen Firma. Die Firma produziert den Strom selbst an einer (Strom)Quelle. Der Strom wird an einem Ort auf dem Firmengelände konsumiert (Senke). Der Strom muss aus technischen Gründen über eine Zahl von Zwischenstationen geroutet werden. Jede Stromleitung zwischen Quelle und Konsument hat eine gewisse Kapazität. Fragen: Bei gegebenem Netz: Wieviel Strom kann von der Quelle bis zur Senke fließen? Wie modellieren Sie diese Fragestellung? 4 Henning Meyerhenke:

5 Flussnetzwerk Definition (Flussnetzwerk) Ein Flussnetzwerk ist ein Quadrupel (G, u, s, t) mit einem Digraphen G = (V, E), Kantenkapazitäten u : E R +, einer Quelle s V und einer Senke t V. 5 Henning Meyerhenke:

6 Fluss Definition (Fluss, Überschuss) Gegeben sei ein Flussnetzwerk (G, u, s, t). Ein Fluss ist eine Funktion f : E(G) R + mit f (e) u(e) für alle e E(G). Der Überschuss (engl.: excess) eines Flusses f in v V (G) ist ex f (v) := e N (v) f (e) e N + (v) f (e) N + : Nachbarn an ausgehenden Kanten N : Nachbarn an reinkommenden Kanten 6 Henning Meyerhenke:

7 s-t-fluss Definition (s-t-fluss, Wert) Gegeben sei ein Flussnetzwerk (G, u, s, t). Ein s-t-fluss ist ein Fluss f mit ex f (s) 0 und ex f (v) = 0 für alle v V (G)\{s, t} (Flusserhaltung). Der Wert eines s-t-flusses ist value(f ) := f := ex f (s) 7 Henning Meyerhenke:

8 Modellierung der Problemstellung Problem (Maximaler-Fluss-Problem) Gegeben sei ein Flussnetzwerk (G, u, s, t). Bestimme einen s-t-fluss mit maximalem Wert. Idee für Algorithmus? 8 Henning Meyerhenke:

9 Gegenläufige Kanten Definition (Gegenläufige Kante) Sei G ein Digraph und e = (v, w) E(G). Dann sei e eine neue Kante von w nach v, die gegenläufige Kante von e. Ebenso ist e die gegenläufige Kante von e. Definition Sei G := (V (G), E(G) { e : e E(G)}). Achtung: Sind e = (v, w) und e = (w, v) G, dann sind e und e zwei verschiedene Kanten in G. 9 Henning Meyerhenke:

10 Residualnetzwerk Definition (Residualkapazitäten) Gegeben sei ein Digraph G mit Kapazitäten u : E(G) R + und ein Fluss f. Residualkapzitäten u f : E( G ) R + mit u f (e) := u(e) f (e) und u f ( e ) := f (e) Definition (Residualnetzwerk) Das Residualnetzwerk G f ist der Graph (V (G), {e E( G ) : u f (e) > 0}). 10 Henning Meyerhenke:

11 Finden augmentierender Pfade Definition (Augmentierender Pfad) Gegeben sei ein Netzwerk (G, u, s, t) und ein s-t-fluss f. Dann heißt ein s-t-pfad in G f f -augmentierender Pfad. Algorithmus-Idee: Finde sukzessive f -augmentierende Pfade! 11 Henning Meyerhenke:

12 Finden augmentierender Pfade Definition (Augmentierender Pfad) Gegeben sei ein Netzwerk (G, u, s, t) und ein s-t-fluss f. Dann heißt ein s-t-pfad in G f f -augmentierender Pfad. Algorithmus-Idee: Finde sukzessive f -augmentierende Pfade! Algorithm 2 Ford-Fulkerson-Algorithmus 1: function FORD-FULKERSON((G, u, s, t) mit u : E(G) Z + ) 2: Setze f (e) := 0 für alle e E(G) 3: Bestimme einen f -augmentierenden Pfad P 4: while P > 0 do 5: Berechne γ := min e E(P) u f (e) 6: Augmentiere f entlang P um γ 7: Bestimme einen f -augmentierenden Pfad P 8: end while 11 Henning Meyerhenke:

13 Verbesserung des FF-Algorithmus Edmonds-Karp-Algorithmus Problem: Laufzeit kann exponentiell zur Eingabelänge sein! Siehe Tafel. 12 Henning Meyerhenke:

14 Verbesserung des FF-Algorithmus Edmonds-Karp-Algorithmus Problem: Laufzeit kann exponentiell zur Eingabelänge sein! Siehe Tafel. Daher Verbesserung: Algorithm 4 Edmonds-Karp-Algorithmus 1: function EDMONDS-KARP((G, u, s, t) mit u : E(G) Z + ) 2: Setze f (e) := 0 für alle e E(G) 3: Bestimme einen kürzesten f -augmentierenden Pfad P 4: while P > 0 do 5: Berechne γ := min e E(P) u f (e) 6: Augmentiere f entlang P um γ 7: Bestimme einen kürzesten f -augmentierenden Pfad P 8: end while Anmerkung: Kürzester Pfad bedeutet mit den wenigsten Kanten! 12 Henning Meyerhenke:

15 Edmonds-Karp-Algorithmus Laufzeit (1) Definition (Flaschenhals-Kante) Eine Kante, auf denen das Minimum γ angenommen wird, nennt man Flaschenhals-Kante. 13 Henning Meyerhenke:

16 Edmonds-Karp-Algorithmus Laufzeit (1) Definition (Flaschenhals-Kante) Eine Kante, auf denen das Minimum γ angenommen wird, nennt man Flaschenhals-Kante. Theorem (Edmonds und Karp, 1972) Unabhängig von den Kantenkapzitäten terminiert der EDMONDS-KARP-ALGORITHMUS nach höchstens mn 2 Augmentierungen. Beweis. In jedem augmentierenden Pfad ist mind. eine Flaschenhals-Kante von G. Eine Flaschenhals-Kante ist in n 4 augmentierenden Pfaden enthalten (ob). Es kann höchstens E( G ) n 4 augmentierende Pfade geben. Für die Details siehe Korte und Vygen, S Henning Meyerhenke:

17 Edmonds-Karp-Algorithmus Laufzeit (2) Corollary Der EDMONDS-KARP-ALGORITHMUS löst das MAXIMALER-FLUSS-PROBLEM in der Laufzeit O(m 2 n). Beweis. Nach Theorem 11 gibt es höchstens mn 2 Augmentierungen. Jede Augmentierung benutzt BFS und benötigt somit eine Laufzeit von O(m). 14 Henning Meyerhenke:

18 Schnitte im Flussnetzwerk Definition (Schnitt) Ein Schnitt ist eine Aufteilung der Knoten in zwei disjunkte Teilmengen S und T. Dabei gilt s S und t T. Die Kapazität eines Schnittes (S, T ) ist die Summe aller Kantenkapazitäten von S nach T, also u(s, T ) := u(v, w). v S,w T,(v,w) E Lemma Sei (G, u, s, t) ein Flussnetzwerk und sei f ein Fluss in G. Sei außerdem (S, T ) ein Schnitt in G. Dann gilt: f (S, T ) = f, insbesondere f = f (s, V s) = f (V t, t). 15 Henning Meyerhenke:

19 Max-Flow-Min-Cut-Theorem Theorem Die folgenden drei Aussagen sind äquivalent: f ist der maximale Fluss in G. Das Residualnetzwerk enthält keinen augmentierenden Pfad. Für mindestens einen Schnitt ist der Wert des Flusses gleich der Kapazität des Schnittes. Beweis. Siehe Tafel. 16 Henning Meyerhenke:

20 Hilfsergebnisse Proposition Das Maximaler-Fluss-Problem hat stets eine optimale Lösung. 17 Henning Meyerhenke:

21 Hilfsergebnisse Proposition Das Maximaler-Fluss-Problem hat stets eine optimale Lösung. Proposition Sind die Kapazitäten eines Netzwerkes ganzzahlig, so gibt es einen ganzzahligen maximalen Fluss. Beweis. Folgt direkt aus Max-Flow-Min-Cut. 17 Henning Meyerhenke:

22 Inhalt Flüsse in Netzwerken Elementare Ergebnisse Der PUSH-RELABEL-Algorithmus 18 Henning Meyerhenke:

23 Vorschau Wir werden den PUSH-RELABEL-Algorithmus von Goldberg und Tarjan (1988) beschreiben. Andere Namen existieren... Wir werden eine Laufzeit von O(n 2 m) beweisen. Ausgeklügelte Implementierungen mit dynamischen Bäumen sind noch schneller (siehe Korte und Vygen, S. 201). 19 Henning Meyerhenke:

24 Ansatz Wissen: Ein s-t-fluss f hat genau dann maximalen Wert, wenn ex f (v) = 0 für alle v V (G) {s, t} und es keinen f -augmentierenden Pfad gibt. Bisher: Algorithmen erfüllten stets erste Bedingung. 20 Henning Meyerhenke:

25 Ansatz Wissen: Ein s-t-fluss f hat genau dann maximalen Wert, wenn ex f (v) = 0 für alle v V (G) {s, t} und es keinen f -augmentierenden Pfad gibt. Bisher: Algorithmen erfüllten stets erste Bedingung. Nun: Mit f starten, das zweite Bedingung erfüllt. Zweite Bedingung als Invariante für weitere Flüsse. Terminierung nur, wenn erste Bedingung auch erfüllt. Während des Algorithmus ist f kein s-t-fluss, sondern ein s-t-präfluss. 20 Henning Meyerhenke:

26 Intuitive Algorithmus-Idee Ein Flussnetzwerk transportiert Flüssigkeiten; Kanten stellen Röhren dar, Knoten deren Verbindungen. Jeder Knoten hat ein unbegrenztes Reservoir als Zwischenspeicher. Jeder Knoten, sein Reservoir und seine Verbindungen sind auf einer Plattform, deren Höhe während Laufzeit zunimmt Knotenhöhen bestimmen, wie Fluss durch das Netzwerk bewegt wird: abwärts. 21 Henning Meyerhenke:

27 Intuitive Algorithmus-Idee Ein Flussnetzwerk transportiert Flüssigkeiten; Kanten stellen Röhren dar, Knoten deren Verbindungen. Jeder Knoten hat ein unbegrenztes Reservoir als Zwischenspeicher. Jeder Knoten, sein Reservoir und seine Verbindungen sind auf einer Plattform, deren Höhe während Laufzeit zunimmt Knotenhöhen bestimmen, wie Fluss durch das Netzwerk bewegt wird: abwärts. Initial sendet s so viel Fluss wie möglich (= u(s, V s)). Erreicht Fluss einen Zwischenknoten, wird er zunächst im Reservoir zwischengespeichert. Von dort wird er später abwärts geschickt. Wenn alle unsaturierten Rohre, die einen Knoten v verlassen, zu Knoten w führen, die höher als v liegen, wird v angehoben. Hat der maximale Fluss die Senke erreicht, wird der Überschuss zur Quelle zurückgeschickt (Zwischenknoten über Quelle heben). 21 Henning Meyerhenke:

28 Präfluss Definition (Präfluss, aktiver Knoten) Sei (G, u, s, t) ein Netzwerk. Ein s-t-präfluss ist eine Funktion f : E(G) R + mit f (e) u(e) für alle e E(G) und (Kapazitätsbedingung) f (u, v) = f (v, u) für alle u, v V (Antisymmetrie) ex f (v) 0 für alle v V (G) {s}. (relaxierte Flusserhaltung) 22 Henning Meyerhenke:

29 Präfluss Definition (Präfluss, aktiver Knoten) Sei (G, u, s, t) ein Netzwerk. Ein s-t-präfluss ist eine Funktion f : E(G) R + mit f (e) u(e) für alle e E(G) und (Kapazitätsbedingung) f (u, v) = f (v, u) für alle u, v V (Antisymmetrie) ex f (v) 0 für alle v V (G) {s}. (relaxierte Flusserhaltung) Ein Knoten v V (G) {s, t} heißt aktiv, falls ex f (v) > 0. Beispiel: Siehe Tafel. 22 Henning Meyerhenke:

30 Distanzmarkierung Andere Intuition: Funktion der Plattformhöhen Definition (Distanzmarkierung, erlaubte Kante) Sei (G, u, s, t) ein Netzwerk und f ein s-t-präfluss. Eine Distanzmarkierung ist eine Funktion ψ : V (G) Z + mit ψ(t) = 0, ψ(s) = n := V (G) und ψ(v) ψ(w) + 1 für alle (v, w) E(G f ). Eine Kante e = (v, w) E(G) heißt erlaubte Kante, falls e E(G f ) und ψ(v) = ψ(w) Henning Meyerhenke:

31 Distanzmarkierung Andere Intuition: Funktion der Plattformhöhen Definition (Distanzmarkierung, erlaubte Kante) Sei (G, u, s, t) ein Netzwerk und f ein s-t-präfluss. Eine Distanzmarkierung ist eine Funktion ψ : V (G) Z + mit ψ(t) = 0, ψ(s) = n := V (G) und ψ(v) ψ(w) + 1 für alle (v, w) E(G f ). Eine Kante e = (v, w) E(G) heißt erlaubte Kante, falls e E(G f ) und ψ(v) = ψ(w) + 1. Falls ψ eine Distanzmarkierung ist, so ist ψ(v) mit v = s eine untere Schranke für die Distanz zu t in G f. 23 Henning Meyerhenke:

32 Der PUSH-RELABEL-Algorithmus Algorithmus-Idee Initialer s-t-präfluss : Alle Kanten von s aus nutzen ihre Kapazität voll aus, alle anderen haben Fluss 0. Initiale DM: ψ(s) = n und ψ(v) = 0 für alle v V (G) {s}. 24 Henning Meyerhenke:

33 Der PUSH-RELABEL-Algorithmus Algorithmus-Idee Initialer s-t-präfluss : Alle Kanten von s aus nutzen ihre Kapazität voll aus, alle anderen haben Fluss 0. Initiale DM: ψ(s) = n und ψ(v) = 0 für alle v V (G) {s}. Danach Aktualisierungs-Operationen PUSH (Aktualisierung von f ) und RELABEL (Aktualisierung von ψ) in beliebiger Reihenfolge durchführen. 24 Henning Meyerhenke:

34 Der PUSH-RELABEL-Algorithmus Die Komponenten 1: procedure PUSH(e) 2: Setze γ := min{ex f (v), u f (e)}, wobei e in v beginnt. 3: Augmentiere f entlang e um γ. 1: procedure RELABEL(v) 2: Setze ψ(v) := min{ψ(w) + 1 : (v, w) δ + G f (v)}. 25 Henning Meyerhenke:

35 Der PUSH-RELABEL-Algorithmus 1: function PUSH-RELABEL(G, { u, s, t) u(e) für jedes e δ + (s) 2: Setze f (e) = 0 für jedes e E(G) δ + (s) { n v = s 3: Setze ψ(v) = 0 für alle v V (G) {s} 4: while es gibt einen aktiven Knoten do 5: Sei v ein aktiver Knoten 6: if kein e δ + G ist erlaubte Kante then f 7: RELABEL(v) 8: else 9: PUSH(erlaubte Kante e δ + G ) f 10: end if 11: end while=0 Beispiel: Siehe Tafel. 26 Henning Meyerhenke:

36 Der PUSH-RELABEL-Algorithmus Korrektheit (1) Proposition Während des gesamten Ablaufs von PUSH-RELABEL ist f stets ein s-t-präfluss und ψ eine Distanzmarkierung bzgl. f. Für jedes v V (G) gilt: ψ(v) wird durch jedes RELABEL(v ) streng erhöht. Beweis. Übung. 27 Henning Meyerhenke:

37 Der PUSH-RELABEL-Algorithmus Korrektheit (2) Lemma Sei f ein s-t-präfluss und ψ eine DM bzgl. f. Dann gelten: 1. Die Quelle s ist von jedem aktiven Knoten v aus in G f erreichbar. 2. Falls es zwei Knoten v, w V (G) mit der Eigenschaft gibt, so gilt: dass w von v aus in G f erreichbar ist, ψ(v) ψ(w) + n Die Senke t ist von s aus in G f nicht erreichbar. Beweis. Siehe Tafel. 28 Henning Meyerhenke:

38 Der PUSH-RELABEL-Algorithmus Korrektheit (3) Theorem Bei Terminierung des Algorithmus ist f ein s-t-fluss mit maximalem Wert. Beweis. Siehe Tafel. 29 Henning Meyerhenke:

39 Der PUSH-RELABEL-Algorithmus Laufzeit (1) Lemma 1. Für jedes v V (G) gilt: ψ(v) wird niemals verringert und ψ(v) 2n 1 gilt zu jedem Zeitpunkt des Algorithmus. 2. Für keinen Knoten v wird mehr als (2n 1) mal RELABEL(v) aufgerufen. Die Gesamterhöhung von v V (G) ψ(v) nach Ende des Algorithmus ist 2n 2 n. Beweis. Übung. 30 Henning Meyerhenke:

40 Der PUSH-RELABEL-Algorithmus Laufzeit (2) Definition (Saturierender Push) Ein PUSH ist saturierend genau dann, wenn danach u f (e) = 0 gilt. Lemma Die Anzahl der saturierenden Pushes ist höchstens 2mn. Beweis. Siehe Tafel. 31 Henning Meyerhenke:

41 Der PUSH-RELABEL-Algorithmus Laufzeit (3) Lemma Falls wir als v in Zeile 5 von PUSH-RELABEL immer einen aktiven Knoten mit ψ(v) maximal wählen, dann ist die Anzahl der nichtsaturierenden Pushes höchstens 8n 2 m. Beweis. Siehe Korte und Vygen, S Theorem Der PUSH-RELABEL-Algorithmus löst das MAXIMALER-FLUSS-PROBLEM korrekt und kann mit Laufzeit O(n 2 m) implementiert werden. Beweis. Siehe Tafel. 32 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 1 Programm des

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

8 Diskrete Optimierung

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

Mehr

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

Algorithmen II Vorlesung am 15.11.2012

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

Mehr

Algorithmische Methoden für schwere Optimierungsprobleme

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

Mehr

Das Briefträgerproblem

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

Mehr

Netzwerkfluß. Gegeben ist ein System von Wasserrohren: Die Kapazität jedes Rohres ist 3, 5 oder 8 l/s.

Netzwerkfluß. Gegeben ist ein System von Wasserrohren: Die Kapazität jedes Rohres ist 3, 5 oder 8 l/s. Netzwerkfluß (Folie, Seite 78 im Skript) Gegeben ist ein System von Wasserrohren: Quelle s t Senke Die Kapazität jedes Rohres ist, oder 8 l/s. Frage: Wieviel Wasser kann von der Quelle zur Senke fließen?

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

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen Der Tragödie IV. Theyl Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University

Mehr

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

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

Mehr

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

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

Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Diplom/Master Informatik

Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Diplom/Master Informatik Vorlesung für den Bereich Diplom/Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK KIT Universität des Landes

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

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

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

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

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2007 4. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Traversierung Durchlaufen eines Graphen, bei

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

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum

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

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de

Maximaler Fluß und minimaler Schnitt. Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de Maximaler Fluß und minimaler Schnitt Von Sebastian Thurm sebastian.thurm@student.uni-magedburg.de Maximaler Fluß und minimaler Schnitt Wasist das? Maximaler Fluss Minimaler Schnitt Warumtut man das? Logistische

Mehr

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 Kombinatorische Optimierung (Wintersemester 2016/17)

Vorlesung Kombinatorische Optimierung (Wintersemester 2016/17) Vorlesung Kombinatorische Optimierung (Wintersemester 06/7) Kapitel : Flüsse und Zirkulationen Volker Kaibel Otto-von-Guericke Universität Magdeburg (Version vom 4. Oktober 06) Definition. Ein Netzwerk

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

Vorlesung 4 BETWEENNESS CENTRALITY

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

Mehr

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) 5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!

Mehr

Flüsse in Netzwerken. Seminar über Algorithmen SoSe 2005. Mike Rohland & Julia Schenk

Flüsse in Netzwerken. Seminar über Algorithmen SoSe 2005. Mike Rohland & Julia Schenk Flüsse in Netzwerken Seminar über Algorithmen SoSe 2005 Mike Rohland & Julia Schenk Inhalt Einführung Definition Maximale Flüsse Schnitte Restgraphen Zunehmende Wege Max-Fluss Min-Schnitt Theorem Ford-Fulkerson

Mehr

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

Anwendungen von Netzwerkfluss. Wojciech Polcwiartek Institut für Informatik FU Berlin

Anwendungen von Netzwerkfluss. Wojciech Polcwiartek Institut für Informatik FU Berlin Anwendungen von Netzwerkfluss Wojciech Polcwiartek Institut für Informatik FU Berlin 13. 01. 2009 Gliederung Einführung Netzwerk, Fluss und Schnitt Max-Flow-Min-Cut Theorem Algorithmen zum Bestimmen vom

Mehr

15. Elementare Graphalgorithmen

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

Mehr

Guten Morgen und Willkommen zur Saalübung!

Guten Morgen und Willkommen zur Saalübung! Guten Morgen und Willkommen zur Saalübung! 1 Wie gewinnt man ein Spiel? Was ist ein Spiel? 2 Verschiedene Spiele Schach, Tic-Tac-Toe, Go Memory Backgammon Poker Nim, Käsekästchen... 3 Einschränkungen Zwei

Mehr

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

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

Mehr

Algorithmen & Datenstrukturen 1. Klausur

Algorithmen & Datenstrukturen 1. Klausur Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

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

Mehr

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

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

Mehr

Algorithmische Mathematik

Algorithmische Mathematik Algorithmische Mathematik Wintersemester 2013 Prof. Dr. Marc Alexander Schweitzer und Dr. Einar Smith Patrick Diehl und Daniel Wissel Übungsblatt 6. Abgabe am 02.12.2013. Aufgabe 1. (Netzwerke und Definitionen)

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

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 7, 30.11.2011 Henning Meyerhenke

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

Mehr

Undirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time

Undirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time Universität Konstanz Mathematisch-naturwissenschaftliche Sektion Fachbereich Mathematik und Statistik Wintersemester 2001/02 Mikkel Thorup: Undirected Single-Source Shortest Paths with Positive Integer

Mehr

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen

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

Mehr

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

Flüsse, Schnitte, bipartite Graphen. Martin Oettinger

Flüsse, Schnitte, bipartite Graphen. Martin Oettinger Flüsse, Schnitte, bipartite Graphen Martin Oettinger Übersicht Einführung Algorithmen für maximalen Fluss Preflow-Push Ford-Fulkerson Spezialfall: Maximaler Fluss bei minimalen Kosten Reduktionen Bipartites

Mehr

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

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

Mehr

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten Gliederung Zusammenhang von Graphen Stark Zusammenhängend K-fach Zusammenhängend Brücken Definition Algorithmus zum Finden von Brücken Anwendung Zusammenhangskomponente Definition Wichtige Aussagen und

Mehr

Grundlagen: Algorithmen und Datenstrukturen

Grundlagen: Algorithmen und Datenstrukturen Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 00

Mehr

Effiziente Algorithmen und Datenstrukturen II

Effiziente Algorithmen und Datenstrukturen II Effiziente Algorithmen und Datenstrukturen II Prof. Dr. Christian Scheideler Technische Universität München, 25. April 2006 1 Algorithmen für maximale Flüsse 1.1 Flüsse Ein Flussnetzwerk G = (V, E) ist

Mehr

Kombinatorische Optimierung Vorlesung für den Bereich Diplom/Master Informatik

Kombinatorische Optimierung Vorlesung für den Bereich Diplom/Master Informatik Kombinatorische Optimierung Vorlesung für den Bereich Diplom/Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK

Mehr

PROSEMINAR ONLINE ALGORITHMEN

PROSEMINAR ONLINE ALGORITHMEN PROSEMINAR ONLINE ALGORITHMEN im Wintersemester 2000/2001 Prof. Dr. Rolf Klein, Dr. Elmar Langetepe, Dipl. Inform. Thomas Kamphans (Betreuer) Vortrag vom 15.11.2000 von Jan Schmitt Thema : Finden eines

Mehr

16. All Pairs Shortest Path (ASPS)

16. All Pairs Shortest Path (ASPS) . All Pairs Shortest Path (ASPS) All Pairs Shortest Path (APSP): Eingabe: Gewichteter Graph G=(V,E) Ausgabe: Für jedes Paar von Knoten u,v V die Distanz von u nach v sowie einen kürzesten Weg a b c d e

Mehr

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V. Kapitel 4 Graphenalgorithmen 4.1 Definitionen Definition 4.1.1. Der Graph G = (V, E) ist über die beiden Mengen V und E definiert, wobei V die Menge der Knoten und E die Menge der Kanten in dem Graph ist.

Mehr

Rechnerische Komplexität

Rechnerische Komplexität Proseminar Effiziente Algorithmen SS 2002 Rechnerische Komplexität Ulrike Krönert (34180) 0. Inhalt 1. Einführung 2. Algorithmen und Komplexität 2.1. Algorithmen 2.2. Laufzeitabschätzung 2.3. Polynomialzeit

Mehr

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20.

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20. Übersicht Datenstrukturen und Algorithmen Vorlesung 5: (K4) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.informatik.rwth-aachen.de/i2/dsal12/ 20.

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

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

Information Systems Engineering Seminar

Information Systems Engineering Seminar Information Systems Engineering Seminar Algorithmische Prüfung der Planarität eines Graphen Marcel Stüttgen, 22.10.2012 FH AACHEN UNIVERSITY OF APPLIED SCIENCES 1 Planarität - Definition Ein Graph heißt

Mehr

Very simple methods for all pairs network flow analysis

Very simple methods for all pairs network flow analysis Very simple methods for all pairs network flow analysis Tobias Ludes 02.07.07 Inhalt Einführung Algorithmen Modifikation der Gomory-Hu Methode Einführung Nach Gomory-Hu nur n-1 Netzwerk-Fluss- Berechnungen

Mehr

Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik

Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR

Mehr

Graphen: Datenstrukturen und Algorithmen

Graphen: Datenstrukturen und Algorithmen Graphen: Datenstrukturen und Algorithmen Ein Graph G = (V, E) wird durch die Knotenmenge V und die Kantenmenge E repräsentiert. G ist ungerichtet, wenn wir keinen Start- und Zielpunkt der Kanten auszeichnen.

Mehr

Die Komplexitätsklassen P und NP

Die Komplexitätsklassen P und NP Die Komplexitätsklassen P und NP Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 3. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und

Mehr

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20 Suche in Spielbäumen Suche in Spielbäumen KI SS2011: Suche in Spielbäumen 1/20 Spiele in der KI Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche Einschränkung von Spielen auf: 2 Spieler:

Mehr

9. Übung Algorithmen I

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

Mehr

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.

Programmierung 2. Dynamische Programmierung. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland. 1 Programmierung 2 Dynamische Programmierung Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 2 Übersicht Stammt aus den Zeiten als mit Programmierung

Mehr

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 14, 08.02.2012 Henning Meyerhenke

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

Mehr

Lange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege

Lange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege Lange Nacht der Wissenschaft Ein Klassiker Die Mathematik der Kürzesten Wege 09.06.2007 schlechte@zib.de Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB) http://www.zib.de/schlechte 2 Überblick

Mehr

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Paradigmen im Algorithmenentwurf Problemlösen Problem definieren Algorithmus entwerfen

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

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

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

Mehr

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

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

Mehr

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. smichel@cs.uni-kl.de

Datenbankanwendung. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2014/15. smichel@cs.uni-kl.de Datenbankanwendung Wintersemester 2014/15 Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern smichel@cs.uni-kl.de Wiederholung: Anfragegraph Anfragen dieses Typs können als Graph dargestellt werden: Der

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

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

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

Mehr

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

2. Lernen von Entscheidungsbäumen

2. Lernen von Entscheidungsbäumen 2. Lernen von Entscheidungsbäumen Entscheidungsbäume 2. Lernen von Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch Attribut/Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse

Mehr

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J Greedy-Strategie Definition Paradigma Greedy Der Greedy-Ansatz verwendet die Strategie 1 Top-down Auswahl: Bestimme in jedem Schritt eine lokal optimale Lösung, so dass man eine global optimale Lösung

Mehr

Dynamische Optimierung. Kapitel 4. Dynamische Optimierung. Peter Becker (H-BRS) Operations Research II Wintersemester 2014/15 160 / 206

Dynamische Optimierung. Kapitel 4. Dynamische Optimierung. Peter Becker (H-BRS) Operations Research II Wintersemester 2014/15 160 / 206 Kapitel 4 Dynamische Optimierung Peter Becker (H-BRS) Operations Research II Wintersemester 2014/15 160 / 206 Inhalt Inhalt 4 Dynamische Optimierung Allgemeiner Ansatz und Beispiele Stochastische dynamische

Mehr

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS) Dominating Set 59 Literatur Dominating Set Grundlagen 60 Dominating Set (DS) M. V. Marathe, H. Breu, H.B. Hunt III, S. S. Ravi, and D. J. Rosenkrantz: Simple Heuristics for Unit Disk Graphs. Networks 25,

Mehr

Effiziente Algorithmen Übung 2 Lösungen

Effiziente Algorithmen Übung 2 Lösungen TU Ilmenau, Fakultät für Informatik und Automatisierung FG Komplexitätstheorie und Effiziente Algorithmen Univ.-Prof. Dr. M. Dietzfelbinger, M. Sc. Stefan Walzer https://www.tu-ilmenau.de/iti/lehre/lehre-ws-016017/ea/

Mehr

Vorlesung 3 MINIMALE SPANNBÄUME

Vorlesung 3 MINIMALE SPANNBÄUME Vorlesung 3 MINIMALE SPANNBÄUME 72 Aufgabe! Szenario: Sie arbeiten für eine Firma, die ein Neubaugebiet ans Netz (Wasser, Strom oder Kabel oder...) anschließt! Ziel: Alle Haushalte ans Netz bringen, dabei

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

Anmerkungen zur Übergangsprüfung

Anmerkungen zur Übergangsprüfung DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung

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

Definition Gerichteter Pfad. gerichteter Pfad, wenn. Ein gerichteter Pfad heißt einfach, falls alle u i paarweise verschieden sind.

Definition Gerichteter Pfad. gerichteter Pfad, wenn. Ein gerichteter Pfad heißt einfach, falls alle u i paarweise verschieden sind. 3.5 Gerichteter Pfad Definition 291 Eine Folge (u 0, u 1,..., u n ) mit u i V für i = 0,..., n heißt gerichteter Pfad, wenn ( i {0,..., n 1} ) [ (u i, u i+1 ) A]. Ein gerichteter Pfad heißt einfach, falls

Mehr

9. Übung Algorithmen I

9. Ü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 Musterlösung

Mehr

Vorlesung Algorithmische Geometrie Konvexe Hülle im R 3

Vorlesung Algorithmische Geometrie Konvexe Hülle im R 3 Vorlesung Algorithmische Geometrie Konvexe Hülle im R 3 LEHRSTUHL FÜR ALGORITHMIK I INSTITUT FÜR THEORETISCHE INFORMATIK FAKULTÄT FÜR INFORMATIK Andreas Gemsa 26.06.2012 Prüfung! Termine: 20. Juli 27.

Mehr

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

Seminar über aktuelle Forschungsthemen in der Algorithmik, Dozent Prof. Dr. Alt; Seminar über aktuelle Forschungsthemen in der Algorithmik, Dozent Prof. Dr. Alt Referent Matthias Rost 1 Einleitung Definitionen Maximaler Dynamischer Fluss Algorithmus von Ford-Fulkerson Techniken zur

Mehr

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

4. Kreis- und Wegeprobleme Abstände in Graphen

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

Mehr

Organic Computing: Peer-to-Peer-Netzwerke

Organic Computing: Peer-to-Peer-Netzwerke Organic Computing Peer-to-Peer-Netzwerke Rolf Wanka Sommersemester 2015 rwanka@cs.fau.de Inhalte Kurze Geschichte der Peer-to-Peer- Netzwerke Das Internet: Unter dem Overlay Die ersten Peer-to-Peer-Netzwerke

Mehr

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

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

Mehr

Graphentheorie. Maximale Flüsse. Maximale Flüsse. Maximale Flüsse. Rainer Schrader. 31. Oktober Gliederung. sei G = (V, A) ein gerichteter Graph

Graphentheorie. Maximale Flüsse. Maximale Flüsse. Maximale Flüsse. Rainer Schrader. 31. Oktober Gliederung. sei G = (V, A) ein gerichteter Graph Graphentheorie Rainer Schrader Zentrum ür Angewandte Inormatik Köln 31. Oktober 2007 1 / 30 2 / 30 Gliederung maximale Flüsse Schnitte Edmonds-Karp-Variante sei G = (V, A) ein gerichteter Graph sei c eine

Mehr

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra Effiziente Algorithmen und Datenstrukturen I Kapitel 10: Lineare Algebra Christian Scheideler WS 2008 19.02.2009 Kapitel 10 1 Überblick Notation Arithmetik auf großen Zahlen (Addition und Multiplikation)

Mehr

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2012/13 Prof. Dr. Sándor Fekete 4.4 Binäre Suche Aufgabenstellung: Rate eine Zahl zwischen 100 und 114! Algorithmus 4.1 INPUT: OUTPUT:

Mehr

3.4 Maximale Flüsse und der Algorithmus von Ford Fulkerson

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

Mehr

Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik

Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik Dozent: Prof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK

Mehr

Übungen zur Vorlesung Verteilte Algorithmen II, Heiko Krumm, Universität Dortmund, FB Informatik

Übungen zur Vorlesung Verteilte Algorithmen II, Heiko Krumm, Universität Dortmund, FB Informatik Übung 4: Gegenseitiger Ausschluss (Ricart-Agrawala 1981) Konstanten: n >1 Anzahl der Prozesse; r Adresse des Prozesses, der initial das Token besitzt. Prozessparameter i sei die Adresse der aktuellen Prozessinstanz,

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

Flüsse, Schnitte, Bipartite Graphen II

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

Mehr