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

Größe: px
Ab Seite anzeigen:

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

Transkript

1 Operations Research Rainer Schrader Flüsse in Netzwerken Zentrum für Angewandte Informatik Köln 2. Juli / 53 2 / 53 Flüsse in Netzwerken Unimodularität Gliederung Netzwerke und Flüsse bipartite Matchings Zur Erinnerung: Proposition 5.9 Sei A Z n m total unimodular, b Z m und l, u Z n derart, dass P = {x R n Ax = b, l x u} =. Dann ist P eine Polytop mit ganzzahligen Ecken. Lemma 5.11 (Pioncaré) Ist A eine { 1, 0, 1}-Matrix, bei der jede Spalte höchstens eine +1 und eine 1 enthält, so ist A total unimodular. sei A eine Matrix mit Einträgen in { 1, 0, +1} A heißt Netzwerkmatrix, wenn in jeder Spalte genau eine 1 und eine +1 vorkommt 3 / 53 4 / 53

2 Netzwerke und Flüsse sei A { 1, 0, +1} n m eine Netzwerkmatrix jedem A entspricht ein gerichteter Graph G = (V, E ): die Zeilen von A entsprechen einer Menge V von m Knoten sei j eine Spalte mit den Koeffizienten a vj = +1 und a uj = 1 wir ordnen j eine (gerichtete) Kanten e j = (u, v ) wie folgt zu: Beispiel: Netzwerke und Flüsse u e j v damit entsprechen die Spalten einer Menge E von n gerichteten Kanten A heißt dann auch die (Knoten-Kanten-) Inzidenzmatrix von G = (V, E ) C A 5 / 53 6 / 53 Netzwerke und Flüsse sei A R m n die Inzidenzmatrix des gerichteten Graphen G = (V, E ) seien c, l, u, b ganzzahlige Vektoren dann hat das folgende LP nur ganzzahlige Ecken: min c T x Ax = b l x u x ganzzahlig wir wollen versuchen, dieses LP graphentheoretisch zu interpretieren Netzwerke und Flüsse ein Koordinatenvektor x R n repräsentiert einen Fluss auf dem Graphen G, die Komponente x j gibt die Quantität an, die über die Kante e j = (u, v ) fließt im Fall x j > 0 fließt x j im Fall x j < 0 fließt x j von u and v von v and u der Nettozufluss im Knoten v V ist: δ v (x) = nx a vj x j j=1 = X (u,v ) E x (u,v ) X (v,u) E x (v,u) 7 / 53 8 / 53

3 δ v (x) = Netzwerke und Flüsse nx a vj x j (v V ) j=1 der Nettozufluss ist die Differenz aus eingehendem und ausgehendem Fluss von x im Knoten v V Netzwerke und Flüsse zu gegebenen Parametern c, l, u R n und b R m definieren wir das Flussproblem auf G als das lineare Optimierungsproblem min c T x s.d. Ax = b, l x u. (1) allgemeiner ist der Vektor δ(x) = Ax R V der Vektor der Nettozuflüsse der Knoten von G zu einem Fluss x heißt der Knoten v V : Senke, falls δ v (x) 0 Quelle, falls δ v (x) 0 Transitknoten, falls δ v (x) = 0 l und u liefern (untere bzw. obere) Kapazitätsbeschränkungen der Kanten von G c j gibt die Kosten des Flusses pro Einheit über die Kante e j an gesucht ist somit ein Fluss, der in jedem Knoten v einen vorgegebenen Nettozufluss b v die Kapazitäten der Kanten einhält, und kostenminimal ist erzeugt, 9 / / 53 Aus der totalen Unimodularität von A folgt: Satz 1 Netzwerke und Flüsse Sind b, l und u ganzzahlig, dann hat das Kosten-Flussproblem entweder keine Optimallösung oder es besitzt eine Optimallösung mit ganzzahligen Komponenten. etwas allgemeiner kann man als Kapazitätsrestriktionen die Funktionen l, u : E R {, + } zulassen Satz 1 bleibt offensichtlich auch in dieser Allgemeinheit entsprechend gültig das Kosten-Flussproblem kann z.b. mit dem Simplexalgorithmus gelöst werden und hat unter den Annahmen von Satz 1 eine ganzzahlige Optimallösung es gibt allerdings auch speziellere Verfahren, die kombinatorische Struktur von G ausnützen und effizienter sind. Gliederung Netzwerke und Flüsse bipartite Matchings Flüsse in Netzwerken 11 / / 53

4 sei V eine endliche Menge von Knoten sei E V V eine Menge von (gerichteten) Kanten eines Graphen G = (V, E ) sei wieder A = [a ve ] R V E die zugehörige Inzidenzmatrix mit 8 < 1 falls e = (v, w ) a ve = +1 falls e = (w, v ) : 0 sonst wir wählen zwei feste Knoten s, t und definieren b R V 8 < 1 falls v = s b v = +1 falls v = t : 0 sonst. mit anderen Worten: wir wählen s als Quelle und t als Senke bzgl. eines zu konstruierenden Flusses. als Lemma 2 Sei x ein ganzzahliger Punkt im Polyeder {x Ax = b, x 0}. Dann enthält die Menge P = {e E x e > 0} einen (gerichteten) Weg von s nach t in G. Beweis: Induktion über P n i=1 x i da der Nettozufluss von s negativ ist, existiert eine Kante (s, v 1 ) P ist v 1 = t, so ist der Weg gefunden andernfalls seien j x i xi 1, falls i = 1 = x i, sonst 8 < 1, falls v = v 1 und b v = +1, falls v = t : 0, sonst dann ist x ganzzahliger Punkt in {x Ax = b, x 0} und die Behauptung folgt per Induktion. 13 / / 53 sei d : E R + eine Distanzfunktion auf den Kanten G = (V, E ) sei x eine optimale Ecke des linearen Programms min d T x = P e E d ex e Ax = b, x 0 dann entspricht x einer Menge von Kanten, die einen Weg von s nach t enthält und minimale gesamte Kantenlänge hat, und damit einem kürzesten Weg von s nach t. (2) kürzeste (s, t)-wege in G = (V, E ) können auch anders berechnet werden der Algorithmus von Dijkstra löst das Problem, indem er vom zu (2) dualen linearen Programm ausgeht: max y T b y T A d T max y t y s v w y v d e (e = (v, w ) E ) gesucht ist also ein (Knoten)-Potential entlang jeder Kante e = (v, w ) E gilt: y : V R so, dass: y w y v d e bzw. y w y v + d e (3) und die Potentialdifferenz y t y s maximiert wird. 15 / / 53

5 der Einfachheit halber setzen wir d vw = +, wenn (v, w ) / E der Algorithmus baut nun ein optimales Potential sukzessive folgendermaßen auf: Algorithmus von Dijkstra (1) Setze y s 0, U {s} und y v d sv für alle v V U. (2) while U V do: (3) wähle ein v V U mit minimalem Potential y v (4) setze U U {v } (5) für alle w V U do (5) y w min{y w, y v + d vw } (6) end do (7) end while Algorithmus von Dijkstra (1) Setze y s 0, U {s} und y v d sv für alle v V U. (2) while U V do: (3) wähle ein v V U mit minimalem Potential y v (4) setze U U {v } markiere v (5) für alle w V U do (5) y w min{y w, y v + d vw } schreibe fort (6) end do (7) end while Lemma 3 Der Dijkstra-Algortithmus erzeugt dual-zulässige Potentiale. Beweis: wir führen den Beweis in zwei Teilen 17 / / 53 Algorithmus von Dijkstra (1) Setze y s 0, U {s} und y v d sv für alle v V U. (2) while U V do: (3) wähle ein v V U mit minimalem Potential y v (4) setze U U {v } markiere v (5) für alle w V U do (5) y w min{y w, y v + d vw } schreibe fort (6) end do (7) end while Algorithmus von Dijkstra (1) Setze y s 0, U {s} und y v d sv für alle v V U. (2) while U V do: (3) wähle ein v V U mit minimalem Potential y v (4) setze U U {v } markiere v (5) für alle w V U do (5) y w min{y w, y v + d vw } schreibe fort (6) end do (7) end while (i) wird u direkt vor v markiert, so gilt y u y v : in dem Schritt, in dem u markiert wird, gilt y u y v danach bleibt y v entweder gleich oder wird erniedrigt im zweiten Fall folgt aus dem Fortschreiben y v = y u + d uv y u (ii) für e = (u, v ) E ist zu zeigen: y v y u + d e wird u vor v markiert, so gilt diese Eigenschaft nach dem Fortschreiben danach bleibt y u konstant, y v kann nur noch verringert werden 19 / / 53

6 Algorithmus von Dijkstra (1) Setze y s 0, U {s} und y v d sv für alle v V U. (2) while U V do: (3) wähle ein v V U mit minimalem Potential y v (4) setze U U {v } markiere v (5) für alle w V U do (5) y w min{y w, y v + d vw } schreibe fort (6) end do (7) end while andernfalls gilt zum Zeitpunkt der Markierung von v : y v y u y u + d e danach bleibt y v konstant, y u kann nur noch verringert werden y u kann nur fortgeschrieben werden, wenn ein Knoten w markiert wird sei w der letzte solche Knoten für jeden Knoten v gilt: es existiert ein Knoten u, der y v damit gilt zum letzten Mal fortschreibt y v = y u + d (uv ) (4) mit dieser Eigenschaft lässt sich leicht ein Weg von s nach t durch Zurückrechnen gewinnen: (1) setze v = t (2) bestimme einen Knoten u, der (4) erfüllt (3) falls u = s, stop (4) andernfalls setze v = u und gehe zu (2) dann gilt y v y w = y u d (wu) y u y u + d e. 21 / / 53 Satz 4 Der Dijkstra-Algorithmus berechnet eine kürzesten Weg. Beweis: sei x R E der Inzidenzvektor des wie vorher bestimmten Weges Gliederung Netzwerke und Flüsse bipartite Matchings Flüsse in Netzwerken dann ist x primal zulässig y ist dual zulässig per Konstruktion gilt: x (uv ) > 0 = y v = y u + d (uv ) damit folgt die Behauptung aus dem Satz vom komplementären Schlupf. 23 / / 53

7 wir betrachten wieder einen gerichteten Graphen G = (V, E ) mit Knoten-Kanten-Inzidenzmatrix A und Kantenkapazitäten c seien wiederum s und t zwei Knoten als Quelle und Senke der Graph repräsentiert ein Netzwerk (Leitungen, Kanäle, usw.) über das Netzwerk so viel wie möglich von s nach t gepumpt werden wir fügen dazu eine Rückkante f = (t, s) mit unbeschränkter Kapazität hinzu und messen die Stärke des Flusses in der Kante f wir betrachten somit eine Zirkulation (oder Strömung ) d.h. einen Fluss x R E mit Nettozufluss δ v (x) = 0 in jedem Knoten v V d.h. bei einer Zirkulation ist jeder Knoten Transitknoten und es gilt x R E ist Zirkulation auf G Ax = 0. Ford-Fulkerson-Problem bestimme eine nichtnegative Zirkulation x, die den Wert x f maximiert: max x f s.d. δ v (x) = 0 für alle v V 0 x e c e für alle e E {f } (5) 25 / / 53 im folgenden Beispielgraph sei c e = 1 für alle e E f sei nun x 0 eine zulässige Lösung von (5) wir wollen versuchen, diese zu verbessern sei dazu G(x) ein Hilfsgraph auf V eine mögliche Zirkulation x mit x f = 1 ist: f für eine Kante e = (v, w ) E {f } enthält G(x) bis zu zwei Kanten (v, w ), falls x e < c e (Vorwärtskante) (w, v ), falls x e > 0 (Rückwärtskante) f sei ε > 0 so, dass x e + ε c e, x e ε 0, für alle Vorwärtskanten e für alle Rückwärtskanten e x ist nicht maximal, kann aber nicht einfach erhöht werden. 27 / / 53

8 die aktuelle Zirkulation x: sei P ein Weg von s nach t im Hilfsgraphen G(x) der zugehörige Hilfsgraph G(x): f dann kann x um mindestens ε > 0 erhöht werden: erhöhe x um ε auf Vorwärtskanten von P und auf f = (t, s) erniedrige x um ε auf den Rückwärtskanten von P offensichtlich ist die resultierende Zirkulation nichtnegativ respektiert die Kapazitätsgrenzen und genügt den Knotendurchflussbedingungen G(x) kann Kanten enthalten, die in G nicht vorkommen P heißt augmentierender Weg 29 / / 53 der Hilfsgraph G(x) mit einem augmentierendem Weg sei S die Menge aller Knoten, die in G(x) von s aus auf einem gerichteten Weg erreicht werden können dann wissen wir also: im Fall t S kann x verbessert werden die verbesserte Zirkulation x : aus den vorangegangenen Überlegungen ergibt sich der folgende Algorithmus: f 31 / / 53

9 Algorithmus von Ford-Fulkerson (1) beginne mit x = 0 als Startlösung (2) konstruiere den Hilfsgraphen G(x) (3) suche in G(x) einen augmentierenden Weg P von s nach t (4) falls kein solcher Weg existiert, stop, (5) andernfalls erhöhe x entlang P zu einem neuen Fluss x mit = x f + ε x f (6) setze x = x und gehe zu (2) wir wollen zeigen, dass der Algorithmus optimale Zirkulationen berechnet dazu betrachten wir die LP-Formulierung des Flussproblems: max x f δ v (x) = 0 für alle v V 0 x e c e für alle e E {f } äquivalent in Matrixschreibweise und mit Schlupfvariablen s 0: min ef T x Ax = 0 Ix + Is = c x, s 0 (5) hierbei ist e f der zu f E gehörige Einheitsvektor 33 / / 53 die LP-Formulierung mit Schlupfvariablen: min ef T x Ax = 0 Ix + Is = c x, s 0 das dazu duale lineare Programm lautet: max y T 0 + z T c s.d. y T A + z T ef T z T 0 T bzw. letzteres ist äquivalent zu min max y T 0 + z T c s.d. y T A + z T ef T z T 0 T X c e z e e E min z T c s.d. y T A z T ef T z T 0 T s.d. y w y v + z e 0 für alle z = (v, w ) E y s y t + z f 1 z e 0. (6) 35 / / 53

10 sei S V eine Knotenmenge mit s S dann bestimmt S einen s-schnitt [S : V S] = {(v, w ) E v S, w / S} der Schnitt S hat die Kapazität c[s : V S] = X e [S:V S] c e Lemma 5 Sei x eine Zirkulation und S ein Schnitt. Dann gilt: X x e X x e = 0 Beweis: e [S:V S] für alle v in V S gilt: X e [V S:S] (u,v ) x (u,v ) X (v,u) x (v,u) = 0 s S t Summation ergibt: X ` X x (v,u) = 0 v V S (u,v ) x (u,v ) X (v,u) 37 / / 53 Summation ergibt: X ` X x (v,u) = 0 v V S (u,v ) x (u,v ) X (v,u) sei e = (u, v ) eine Kante mit u, v V S Lemma 6 (Schnittlemma) Sei x eine zulässige Zirkulation auf G und [S : V S] ein beliebiger s-schnitt. Dann gilt x f c[s : V S]. dann wird x e in der Summation einmal positiv und einmal negativ gezählt somit gehen in die Summation nur Kanten aus [S : V S] und [V S : S] ein woraus die Behauptung folgt. Beweis: setze j 1, für v S y v = 0, für v / S j 1, für e [S : V S] z e = 0, sonst dies liefert eine zulässige Lösung des dualen Problems (6) mit Zielfunktionswert X c e z e = c[s : V S] e E die Behauptung folgt dann aus der schwachen Dualität. 39 / / 53

11 sei wie vorher x 0 eine zulässige Zirkulation sei S die Menge aller von s in G(x) erreichbaren Knoten angenommen t / S per Definition von G(x) und S dann gilt für jede Kante e = (v, w ) E {f }: x e = j ce weiter folgt mit Lemma 5 wenn v S und w V S 0 wenn v V S und w S. x f = X e [S:V S] x e = c[s : V S]. Satz 7 (Ford-Fulkerson) Eine zulässige Zirkulation x ist optimal für (5) genau denn, wenn es im Hilfsgraphen G(x) keinen augmentierenden Weg von s nach t gibt. das lineare Programm (5) hat auf jeden Fall x = 0 als zulässige Lösung also erhalten wir unter den obigen Voraussetzungen eine kombinatorische (graphentheoretische) Form der LP-Dualität: Korollar 8 (max-flow-min-cut) max {x f x ist zulässig für (5)} = min {c[s : V S] s S V }. somit ist x optimal daher ergibt sich der folgende Satz: 41 / / 53 Flüsse in Netzwerken Bemerkungen: sind die Kapazitäten c e ganzzahlig, so ist klar, dass der FF-Algorithmus nur ganzzahlige Lösungen x generiert in jeder Iteration der Flusswert x f um ein ganzzahliges ε 1 verbessert wird Gliederung Netzwerke und Flüsse bipartite Matchings man kann zeigen, dass der FF-Algorithmus: sehr lange brauchen kann, um das Optimum zu bestimmen höchstens V E Augmentierungen erfordert, wenn man kürzeste augmentierende Wege wählt ( also z.b., wenn man P mit dem Dijkstra-Algorithmus berechnet) 43 / / 53

12 bipartite Matchings seien S und T zwei endliche disjunkte Mengen und E S T wir betrachten den (ungerichteten) Graphen G = (S T, E ) seine Kanten verlaufen nur zwischen S und T innerhalb von S oder von T gibt es keine Kanten bipartite Matchings ein Matching ist eine Teilmenge M E von paarweise nichtinzidenten Kanten: (s 1, t 1 ), (s 2, t 2 ) M = s 1 s 2, t 1 t 2. M S ein solcher Graph G = (S T, E ) heißt bipartit T S T wir suchen in G ein Matching maximaler Kardinalität 45 / / 53 bipartite Matchings bipartite Matchings das Matching-Problem lässt sich als Spezialfall des FF-Problems auffassen dazu betrachten wir den Graphen G = (V, E), mit zwei neuen Knoten s 0 und t 0, d.h. V = (S T {s 0, t 0 }, E, und Kantenmenge wir setzen die Kapazität der Kanten vom Typ (s 0, s) und (t, t 0 ) auf 1 (und + sonst), offensichtlich entspricht jedem Matching ein ganzzahliger Fluss und umgekehrt E = E {(s 0, s) s S} {(t, t 0 ) t T } {(t 0, s 0 } der FF-Algorithmus liefert einen Vektor x {0, 1} E Flusswert x (t0,s 0 ) = X x e. e E mit maximalem folglich ist M = {e E x e = 1} ein maximales Matching in G. s t S T 47 / / 53

13 bipartite Matchings bipartite Matchings eine (Kanten-)Überdeckung von G = (S T, E ) ist Teilmenge der Knoten C S T mit der Eigenschaft (v, w ) E = v C oder w C. sei andererseits M ein maximales Matching, das nach dem FF-Algorithmus konstruiert wurde sei C der Schnitt aller Knoten, die von s 0 dann gilt; c[c : V C] = M <, noch erreichbar sind C daher existiert kein e E, das von S C nach T C verläuft also ist eine Überdeckung gegeben durch: C = (S C) (T C) S da jede Kante aus M durch C abgedeckt sein muss, folgt: T C M. sie hat Mächtigkeit somit ergibt sich: C = S C + T C = c[c : V C] = M. 49 / / 53 Satz 9 (König) Sei G = (S T, E ) bipartit. Dann gilt bipartite Matchings max { M M Matching} = min { C C Überdeckung.} das Matching- und Überdeckungsproblem kann sinnvoll auch im nichtbipartiten Fall formuliert werden während das Matchingproblem (mit etwas mehr Aufwand) noch effizient lösbar bleibt, ist für das analoge Überdeckungsproblem kein effizienter Algorithmus bekannt insbesondere gilt der Satz von König in diesem Rahmen nicht mehr bipartite Matchings seien S und T disjunkte Mengen mit S = T = n < und E = S T wir setzen V = S T und definieren die Matrix A = [a ve ] R V E der Vektor b R V 8 < 1 falls e = (v, w ) a ve = +1 falls e = (w, v ) : 0 sonst sei gegeben durch j 1 falls v S b v = +1 falls v T ein (S T )-Matching entspricht einer (0, 1)-Lösung x von Ax = b. über 51 / / 53

14 bipartite Matchings es liegt hier also ein Flussproblem vor, bei dem alle Knoten in S Quellen und alle Knoten in T Senken sind nach Wahl von b erfüllt jedes nichtnegative x R E automatisch die Bedingung x e 1 für alle e E. A ist eine Netzwerkmatrix und damit total unimodular also gilt P = {x R E Ax = b, x 0} = P I. die zulässigen Basislösungen des Simplexalgorithmus sind Ecken von P und folglich ganzzahlig d.h. diese Basislösungen entsprechen Matchings mit anderen Worten: P ist genau das Matching-Polytop. 53 / 53

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

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007 Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 25. Oktober 2007 1 / 20 2 / 20 Wir werden Optimierungsprobleme vom folgenden Typ betrachten: gegeben eine Menge X und eine Funktion

Mehr

Optimierung auf Netzwerken

Optimierung auf Netzwerken KAPITEL 4 Optimierung auf Netzwerken Wir untersuchen hier spezielle lineare Programme, die eine zusätzliche kombinatorische (graphentheoretische) Struktur tragen. Nutzt man diese kombinatorische Struktur

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

Ganzzahlige lineare Programme

Ganzzahlige lineare Programme KAPITEL 5 Ganzzahlige lineare Programme Wir betrachten nun Optimierungsprobleme vom Typ (42) min c T x s.d. Ax = b, x 0, x ganzzahlig, wobei die Matrix A R m n und die Vektoren c R n, b R m gegeben seien.

Mehr

Operations Research. Ganzzahlige lineare Programme. ganzzahlige lineare Programme. Ganzzahlige lineare Programme. Rainer Schrader. 25.

Operations Research. Ganzzahlige lineare Programme. ganzzahlige lineare Programme. Ganzzahlige lineare Programme. Rainer Schrader. 25. Operations Research Rainer Schrader Ganzzahlige lineare Programme Zentrum für Angewandte Informatik Köln 25. Juni 2007 1 / 49 2 / 49 Ganzzahlige lineare Programme Gliederung ganzzahlige lineare Programme

Mehr

Unimodulare lineare Programme

Unimodulare lineare Programme KAPITEL 5 Unimodulare lineare Programme Wir betrachten hier eine Klasse von linearen Programmen mit der schönen Eigenschaft, dass Basislösungen automatisch ganzzahlige Komponenten haben. 1. Unimodulare

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

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

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

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

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

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

Dualitätssätze der linearen Optimierung

Dualitätssätze der linearen Optimierung Kapitel 9 Dualitätssätze der linearen Optimierung Sei z = c T x min! Ax = b 9.1 x 0 mit c, x R n, b R m, A R m n ein lineares Programm. Definition 9.1 Duales lineares Programm. Das lineare Programm z =

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

6 Flüsse und Matchings

6 Flüsse und Matchings 6. Flüsse in Netzwerken Flußnetzwerke 6 Flüsse und Matchings In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über diese Kante pro Zeiteinheit transportiert werden

Mehr

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

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

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

3.6 Branch-and-Bound-Verfahren

3.6 Branch-and-Bound-Verfahren 36 Branch-and-Bound-Verfahren Die Branch-and-Bound -Methode beruht darauf, auf eine intelligente Weise alle zulässigen Lösungen eines kombinatorischen Optimierungsproblems aufzulisten und mit Hilfe von

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

Optimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung

Optimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung Optimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung Dr. Nico Düvelmeyer Freitag, 24. Juni 2011 1: 1 [1,1] Inhaltsübersicht für heute 1 Dualität Motivation Duales LP Dualitätssätze

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

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

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

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

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

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

Operations Research. Die Simplexmethode. LP-Dualität. Die Simplexmethode. Rainer Schrader. 18. Juni Zur Erinnerung: Gliederung

Operations Research. Die Simplexmethode. LP-Dualität. Die Simplexmethode. Rainer Schrader. 18. Juni Zur Erinnerung: Gliederung Operations Research Rainer Schrader Die Simplexmethode Zentrum für Angewandte Informatik Köln 18 Juni 00 1 / 1 / 1 Gliederung LP-Dualität ein lineares Produktionsmodell der Simplexalgorithmus Phase I Endlichkeit

Mehr

Ecken des Zuordnungsproblems

Ecken des Zuordnungsproblems Total unimodulare Matrizen Ecken des Zuordnungsproblems Definition.6 Ein Zuordnungsproblem mit den Vorzeichenbedingungen 0 apple x ij apple für i, j =,...,n statt x ij 2{0, } heißt relaxiertes Zuordnungproblem.

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

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

VORLESUNG 14 Lineare Optimierung, Dualität (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt)

VORLESUNG 14 Lineare Optimierung, Dualität (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt) VORLESUNG 14 Lineare Optimierung, Dualität (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt) 96 H. Meyerhenke: Kombinatorische Optimierung Dualität bei linearen Programmen Def.: Es sei (L): c T x max

Mehr

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

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

Mehr

6. Flüsse und Zuordnungen

6. Flüsse und Zuordnungen 6. Flüsse und Zuordnungen In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über solch eine Kante pro Zeiteinheit transportiert werden können. Wir können uns einen

Mehr

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

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

Mehr

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

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

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

Mehr

Aufgabe 1: Berechnen Sie für den in Abbildung 1 gegebenen Graphen den. Abbildung 1: Graph für Flussproblem in Übungsaufgabe 1

Aufgabe 1: Berechnen Sie für den in Abbildung 1 gegebenen Graphen den. Abbildung 1: Graph für Flussproblem in Übungsaufgabe 1 Lösungen zu den Übungsaufgaben im Kapitel 4 des Lehrbuches Operations Research Deterministische Modelle und Methoden von Stephan Dempe und Heiner Schreier Aufgabe 1: Berechnen Sie für den in Abbildung

Mehr

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme Theoretische Informatik Exkurs Rainer Schrader Exkurs: Komplexität von n Institut für Informatik 13. Mai 2009 1 / 34 2 / 34 Gliederung Entscheidungs- und Approximationen und Gütegarantien zwei Greedy-Strategien

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

KAPITEL 6 GANZZAHLIGE OPTIMIERUNG UND VOLLSTÄNDIG UNIMODULARE MATRIZEN

KAPITEL 6 GANZZAHLIGE OPTIMIERUNG UND VOLLSTÄNDIG UNIMODULARE MATRIZEN KPITEL 6 GNZZHLIGE OPTIMIERUNG UND VOLLSTÄNDIG UNIMODULRE MTRIZEN F. VLLENTIN,. GUNDERT. Ganzzahlige lineare Programme Viele Optimierungsprobleme des Operations Research lassen sich als ganzzahlige lineare

Mehr

Kürzeste-Wege-Algorithmen und Datenstrukturen

Kürzeste-Wege-Algorithmen und Datenstrukturen Kürzeste-Wege-Algorithmen und Datenstrukturen Institut für Informatik Universität zu Köln SS 2009 Teil 1 Inhaltsverzeichnis 1 Kürzeste Wege 2 1.1 Voraussetzungen................................ 2 1.2

Mehr

1 Der Simplex Algorithmus I

1 Der Simplex Algorithmus I 1 Nicoletta Andri 1 Der Simplex Algorithmus I 1.1 Einführungsbeispiel In einer Papiermühle wird aus Altpapier und anderen Vorstoffen feines und grobes Papier hergestellt. Der Erlös pro Tonne feines Papier

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

6 Korrektheit des Simplexalgorithmus

6 Korrektheit des Simplexalgorithmus 6 Korrektheit des Simplexalgorithmus Folgerung: Es sei L: Ax = b, c T x max LP und A B nicht-degenerierte PZB von L und es gebe c r := c r c B A B A r > 0 a) Falls a r := A B a r 0, dann L unbeschränkt

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

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

Eigenschaften von LPs

Eigenschaften von LPs 2 Lineare Programmierung Eigenschaften von LPs Eigenschaften von LPs Definition 24 Eine Menge K IR n heißt konvex gdw für je zwei Punkte Punkte x (1) K und x (2) K auch jeder Punkt mit 0 λ 1 zu K gehört

Mehr

Die duale Simplexmethode

Die duale Simplexmethode Kapitel 0 Die duale Simplexmethode Bei der dualen Simplexmethode ist eine Startlösung oftmals leichter angebbar als bei der Simplexmethode für das ursprüngliche lineare Programm, da man keine Nichtnegativitätsanforderungen

Mehr

Schranken für zulässige Lösungen

Schranken für zulässige Lösungen Schranken für zulässige Lösungen Satz 5.9 Gegeben seien primales und duales LP gemäß der asymmetrischen Form der Dualität. Wenn x eine zulässige Lösung des primalen Programms und u eine zulässige Lösung

Mehr

Die duale Simplexmethode zur Lösung rein ganzzahliger linearer Programme

Die duale Simplexmethode zur Lösung rein ganzzahliger linearer Programme Kapitel 11 Die duale Simplexmethode zur Lösung rein ganzzahliger linearer Programme Wir betrachten folgendes Optimierungsproblem z = c T x min! Ax = b (11.1) (11.2) x j ganz für j = 1,..., n 1 n, (11.3)

Mehr

VORLESUNG 12 Lineare Optimierung (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt)

VORLESUNG 12 Lineare Optimierung (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt) VORLESUNG 12 Lineare Optimierung (Viele Folien nach Ulf Lorenz, jetzt TU Darmstadt) 53 Wiederholung! Basis-Startlösung berechnet! Künstliche Variablen! Erkennung von unlösbaren Problemen! Eliminierung

Mehr

4. Dualität Dualität 4.1 Dualität von LPs und der Dualitätssatz. Die duale Form eines LP in allgemeiner Form. Herleitung der dualen Form

4. Dualität Dualität 4.1 Dualität von LPs und der Dualitätssatz. Die duale Form eines LP in allgemeiner Form. Herleitung der dualen Form 2... 22 4.2 Die Bedingungen vom komplementären Schlupf... 23 4.3 Das Kürzeste-Wege-Problem und zugehörige duale Problem... 24 4.4 Das Farkas Lemma... 25 4.5 Duale Information im Tableau... 26 4.6 Der duale

Mehr

Das Linear Ordering Problem Exakte Lösungsverfahren. für NP-schwierige. VO Algorithm Engineering

Das Linear Ordering Problem Exakte Lösungsverfahren. für NP-schwierige. VO Algorithm Engineering Das Linear Ordering Problem Exakte Lösungsverfahren VO Algorithm Engineering für NP-schwierige Professor Dr. Petra Mutzel kombinatorische Lehrstuhl für Algorithm Engineering, LS11 Optimierungsprobleme

Mehr

Unimodularität. Kapitel 1. Peter Becker (H-BRS) Operations Research II Wintersemester 2015/16 11 / 206

Unimodularität. Kapitel 1. Peter Becker (H-BRS) Operations Research II Wintersemester 2015/16 11 / 206 Kapitel 1 Unimodularität Peter Becker (H-BRS) Operations Research II Wintersemester 2015/16 11 / 206 Inhalt 1 Unimodularität Total unimodulare Matrizen Inzidenzmatrix Optimierungsprobleme auf Graphen Peter

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

Flüsse in Netzwerken

Flüsse in Netzwerken Proseminar Theoretische Informatik, Prof. Wolfgang Mulzer, SS 17 Flüsse in Netzwerken Zusammenfassung Gesa Behrends 24.06.2017 1 Einleitung Unterschiedliche technische Phänomene wie der Flüssigkeitsdurchfluss

Mehr

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

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

Zugeordneter bipartiter Graph

Zugeordneter bipartiter Graph Zugeordneter bipartiter Graph Für ein Transportproblem sei A = {A 1,...,A m } die Menge der Fabriken und B = {B 1,...,B n } sei die Menge der Warenhäuser. Wir ordnen nun einem Transportproblem einen bipartiten

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

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

Lineare Programmierung (2)

Lineare Programmierung (2) Inhalt Rückblick Motivation - linearen Programmierung Flussprobleme Multiple Warenflüsse Fortsetzung Simplex Algorithmus Initialisierung Fundamentalsatz der linearen Programmierung schwache Dualität Dualität

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

Kapitel 1: Flussalgorithmen

Kapitel 1: Flussalgorithmen Netzwerke und Flüsse Ein Flussnetzwerk ist ein gerichteter Graph G = (V, E, c) mit zwei ausgewählten Knoten q, s V und einer Kapazitätsfunktion c : E N 0. Die Quelle q hat Eingangsgrad 0 und die Senke

Mehr

Die lineare Programmierung. Die Standardform 1 / 56

Die lineare Programmierung. Die Standardform 1 / 56 Die lineare Programmierung Die Standardform 1 / 56 Die Standardform der linearen Programmierung - Für n reellwertige, nichtnegative Variablen x 1 0,..., x n 0 erfülle die m linearen Gleichungen n a ij

Mehr

1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme. Duales Problem. a i u i + i=1. j=1

1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme. Duales Problem. a i u i + i=1. j=1 1. Transport- und Zuordnungsprobleme Optimierungsalgorithmus für Transportprobleme Duales Problem Lemma 1.4. Das zum Transportproblem duale Problem lautet: max unter den Nebenbedingungen m a i u i + i=1

Mehr

Schnittebenenverfahren für das symmetrische

Schnittebenenverfahren für das symmetrische Schnittebenenverfahren für das symmetrische TSP Sebastian Peetz Mathematisches Institut Universität Bayreuth 19. Januar 2007 / Blockseminar Ganzzahlige Optimierung, Bayreuth Gliederung 1 Das symmetrische

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

Kombinatorische Optimierung

Kombinatorische Optimierung Kombinatorische Optimierung Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales

Mehr

Lösungsskizzen zu den Klausuraufgaben zum Kurs 1142 Algorithmische Mathematik

Lösungsskizzen zu den Klausuraufgaben zum Kurs 1142 Algorithmische Mathematik Lösungsskizzen zu den Klausuraufgaben zum Kurs Algorithmische Mathematik KSL09 Aufgabe. Zeigen oder widerlegen Sie: Es existiert ein Graph mit Valenzsequenz (8,,,,,,,,,). Geben Sie im Falle der Existenz

Mehr

Wiederholung. Wir gehen von LP s in Standardform aus, wobei A R m n vollen Zeilenrang hat: minc T x A x = b

Wiederholung. Wir gehen von LP s in Standardform aus, wobei A R m n vollen Zeilenrang hat: minc T x A x = b Wiederholung Wir gehen von LP s in Standardform aus, wobei A R m n vollen Zeilenrang hat: minc T x A x = b x 0. x R n heißt Basislösung, wenn Ax = b und rang(a J ) = J, wobei J = {j x (j) 0}; Basislösung

Mehr

Simplex-Verfahren. Kapitel 4. Simplex-Verfahren. Peter Becker (H-BRS) Operations Research I Sommersemester / 298

Simplex-Verfahren. Kapitel 4. Simplex-Verfahren. Peter Becker (H-BRS) Operations Research I Sommersemester / 298 Kapitel 4 Simplex-Verfahren Peter Becker (H-BRS) Operations Research I Sommersemester 24 86 / 298 Inhalt Inhalt 4 Simplex-Verfahren Dualer Simplexalgorithmus Vermeidung von Zyklen Peter Becker (H-BRS)

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

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 3. Konvexe Funktionen

KAPITEL 3. Konvexe Funktionen KAPITEL 3 Konvexe Funktionen Sei F R n ein Definitionsbereich und f : F R eine Funktion. Unter dem Epigraphen von f versteht man die Menge epif = {(x, z) R n+1 x F, z R, z f(x)}. Man nennt f konvex, wenn

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

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

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

Flüsse, Schnitte, bipartite Graphen

Flüsse, Schnitte, bipartite Graphen Flüsse, Schnitte, bipartite Graphen Thomas Fersch mail@t-fersch.de 11.06.2010 Seminar "Hallo Welt!" für Fortgeschrittene 1 Übersicht Maximale Flüsse in Netzwerken Worum geht s? Lösung nach Ford-Fulkerson

Mehr

2. Optimierungsprobleme 6

2. Optimierungsprobleme 6 6 2. Beispiele... 7... 8 2.3 Konvexe Mengen und Funktionen... 9 2.4 Konvexe Optimierungsprobleme... 0 2. Beispiele 7- Ein (NP-)Optimierungsproblem P 0 ist wie folgt definiert Jede Instanz I P 0 hat einen

Mehr

1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2009/2010

1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2009/2010 . Klausur zur Vorlesung Algorithmentechnik Wintersemester 2009/200 Lösung! Beachten Sie: Bringen Sie den Aufkleber mit Ihrem Namen und Matrikelnummer auf diesem Deckblatt an und beschriften Sie jedes Aufgabenblatt

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

Graphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke

Graphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke Graphen Graphentheorie Graphentheorie Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke 2 Was ist ein Graph? Ein Graph ist in der Graphentheorie eine abstrakte Struktur,

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

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Prof. Martin Lercher Institut für Informatik Heinrich-Heine-Universität Düsseldorf Teil 10 Suche in Graphen Version vom 13. Dezember 2016 1 / 2 Vorlesung 2016 / 2017 2 /

Mehr

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben

Mehr

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

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

Mehr

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

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

Mehr

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

Das Multi Traveling Salesman Problem

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

Mehr

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

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

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

Mehr

Name:... Vorname:... Matr.-Nr.:... Studiengang:...

Name:... Vorname:... Matr.-Nr.:... Studiengang:... Technische Universität Braunschweig Sommersemester 2013 IBR - Abteilung Algorithmik Prof. Dr. Sándor P. Fekete Dr. Christiane Schmidt Stephan Friedrichs Klausur Netzwerkalgorithmen 16.07.2013 Name:.....................................

Mehr

Freie Bäume und Wälder

Freie Bäume und Wälder (Martin Dietzfelbinger, Stand 4.6.2011) Freie Bäume und Wälder In dieser Notiz geht es um eine besondere Sorte von (ungerichteten) Graphen, nämlich Bäume. Im Gegensatz zu gerichteten Bäumen nennt man diese

Mehr

5. Bäume und Minimalgerüste

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

Mehr

Globalübungsaufgabe1 (All Pair Shortest Path):

Globalübungsaufgabe1 (All Pair Shortest Path): Prof. aa r. Ir. G. Woeginger atenstrukturen und lgorithmen SS7 Tutoriumslösung - Übung 0 (bgabe 2.07.207) T. Hartmann,. Korzeniewski,. Tauer Globalübungsaufgabe (ll Pair Shortest Path): etrachten Sie den

Mehr

Optimierung für Nichtmathematiker

Optimierung für Nichtmathematiker Optimierung für Nichtmathematiker Prof. Dr. R. Herzog WS2010/11 1 / 1 Teil IV Konvexe und ganzzahlige Optimierung Vorlesung 11 IV Konvexe und ganzzahlige Optimierung 2 / 34 Inhaltsübersicht 29Lineare Optimierung

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