• Keine Ergebnisse gefunden

Effiziente Algorithmen (WS2019/20) Kapitel 3 Matchings Walter Unger

N/A
N/A
Protected

Academic year: 2022

Aktie "Effiziente Algorithmen (WS2019/20) Kapitel 3 Matchings Walter Unger"

Copied!
645
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)Effiziente Algorithmen (WS2019/20) Kapitel 3 Matchings. Walter Unger Lehrstuhl für Informatik 1. 14:33 Uhr, den 26. November 2019.

(2) Einleitung. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 3:2. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Inhalt I. 1. Einleitung Definitionen maximales Matching. Beispiel. 5. mit Kosten Einleitung Erster Algorithmus Zweiter Algorithmus. 2. Mit Flüssen Idee Transformation. 6. 3. Alternierende Pfade Idee Aussagen Algorithmus. Blüten Probleme bei ungeraden Kreisen Algorithmus Ergebnisse. 7. 4. verbesserte Laufzeit Idee Aussagen Algorithmus. Zwei Anwendungen Definitionen Aussagen Vorgehen Stabile Paarungen. WS2019/20.

(3) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. Inhaltsverzeichnis. Motivation und Anwendungen vielfältige Zuordnungsprobleme:. mit Kosten. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(4) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. Inhaltsverzeichnis. mit Kosten. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater. WS2019/20.

(5) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter. WS2019/20.

(6) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung. WS2019/20.

(7) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen. WS2019/20.

(8) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld auf Konten. WS2019/20.

(9) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld auf Konten. Grundsätzliche Probleme:. WS2019/20.

(10) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld auf Konten. Grundsätzliche Probleme: Bestimme größtes Matching.. WS2019/20.

(11) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld auf Konten. Grundsätzliche Probleme: Bestimme größtes Matching. Bestimme nicht erweiterbares Matching.. WS2019/20.

(12) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld auf Konten. Grundsätzliche Probleme: Bestimme größtes Matching. Bestimme nicht erweiterbares Matching. Bestimme größtes Matching mit Kantengewichten.. WS2019/20.

(13) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld auf Konten. Grundsätzliche Probleme: Bestimme Bestimme Bestimme Bestimme maximum. größtes Matching. nicht erweiterbares Matching. größtes Matching mit Kantengewichten. günstigstes Matching (d.h. Kosten auf den Kanten) unter allen Matchings..

(14) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld auf Konten. Grundsätzliche Probleme: Bestimme Bestimme Bestimme Bestimme maximum. größtes Matching. nicht erweiterbares Matching. größtes Matching mit Kantengewichten. günstigstes Matching (d.h. Kosten auf den Kanten) unter allen Matchings.. Im Folgenden: G = (V , E ) zusammenhängend, |V | = n, |E | = m.

(15) Einleitung 3. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Inhaltsverzeichnis. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld auf Konten. Grundsätzliche Probleme: Bestimme Bestimme Bestimme Bestimme maximum. größtes Matching. nicht erweiterbares Matching. größtes Matching mit Kantengewichten. günstigstes Matching (d.h. Kosten auf den Kanten) unter allen Matchings.. Im Folgenden: G = (V , E ) zusammenhängend, |V | = n, |E | = m Im Folgenden: G = (V , W , E ) bipartit und zusammenhängend, |V ∪ W | = n, |E | = m.

(16) Einleitung 3:2. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 1/5. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Definitionen δG (v ) = |NG (v )| NG (v ) = {w ∈ V (G ) | {v , w } ∈ E (G )}. Definition (Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt Matching: ∀e, f ∈ M : e ∩ f = ∅ D.h. ∀v ∈ V : δG 0 (v ) 6 1 mit G 0 = (V , M)..

(17) Einleitung 3:2. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 2/5. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Definitionen δG (v ) = |NG (v )| NG (v ) = {w ∈ V (G ) | {v , w } ∈ E (G )}. Definition (Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt Matching: ∀e, f ∈ M : e ∩ f = ∅ D.h. ∀v ∈ V : δG 0 (v ) 6 1 mit G 0 = (V , M)..

(18) Einleitung 3:2. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 3/5. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Definitionen δG (v ) = |NG (v )| NG (v ) = {w ∈ V (G ) | {v , w } ∈ E (G )}. Definition (Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt Matching: ∀e, f ∈ M : e ∩ f = ∅ D.h. ∀v ∈ V : δG 0 (v ) 6 1 mit G 0 = (V , M). Definition ((inklusions-)maximales Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt maximales Matching: ∀M 0 : M ( M 0 ⊂ E : M 0 ist kein Matching..

(19) Einleitung 3:2. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 4/5. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Definitionen δG (v ) = |NG (v )| NG (v ) = {w ∈ V (G ) | {v , w } ∈ E (G )}. Definition (Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt Matching: ∀e, f ∈ M : e ∩ f = ∅ D.h. ∀v ∈ V : δG 0 (v ) 6 1 mit G 0 = (V , M). Definition ((inklusions-)maximales Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt maximales Matching: ∀M 0 : M ( M 0 ⊂ E : M 0 ist kein Matching..

(20) Einleitung 3:2. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 5/5. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Definitionen δG (v ) = |NG (v )| NG (v ) = {w ∈ V (G ) | {v , w } ∈ E (G )}. Definition (Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt Matching: ∀e, f ∈ M : e ∩ f = ∅ D.h. ∀v ∈ V : δG 0 (v ) 6 1 mit G 0 = (V , M). Definition ((inklusions-)maximales Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt maximales Matching: ∀M 0 : M ( M 0 ⊂ E : M 0 ist kein Matching. Definition (maximum Matching) Sei G = (V , E ) ungerichteter Graph. M ⊆ E heißt maximum Matching: ∀M 0 ⊂ E : |M| < |M 0 | : M 0 ist kein Matching..

(21) Einleitung 3:3. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 1/5. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Betrachte Graph: f. e. d. a. b. c. WS2019/20.

(22) Einleitung 3:3. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 2/5. Blüten. Beispiel Betrachte Graph:. {{a, b}} Matching. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. f. e. d. a. b. c. WS2019/20.

(23) Einleitung 3:3. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 3/5. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Betrachte Graph: f. e. d. a. b. c. {{a, b}} Matching {{a, b}, {b, c}} kein Matching. WS2019/20.

(24) Einleitung 3:3. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 4/5. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Betrachte Graph: f. e. d. a. b. c. {{a, b}} Matching {{a, b}, {b, c}} kein Matching {{a, f }, {c, d}} maximales Matching. WS2019/20.

(25) Einleitung 3:3. m.Fl. Definitionen. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 5/5. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Betrachte Graph: f. e. d. a. b. c. {{a, b}} Matching {{a, b}, {b, c}} kein Matching {{a, f }, {c, d}} maximales Matching {{a, f }, {b, c}, {e, d}} maximum Matching. WS2019/20.

(26) Einleitung 3:4. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. 1/7. mit Kosten. Blüten. Algorithmus (maximales Matching) Idee: Greedy, d.h. solange es geht, wähle Kante für das Matching. 1. Gegeben G = (V , E ). Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(27) Einleitung 3:4. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. 2/7. mit Kosten. Blüten. Algorithmus (maximales Matching) Idee: Greedy, d.h. solange es geht, wähle Kante für das Matching. 1. Gegeben G = (V , E ). 2. M=∅. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(28) Einleitung 3:4. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. 3/7. mit Kosten. Blüten. Algorithmus (maximales Matching) Idee: Greedy, d.h. solange es geht, wähle Kante für das Matching. 1. Gegeben G = (V , E ). 2. M=∅ Solange E nicht leer, mache:. 3. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(29) Einleitung 3:4. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. 4/7. mit Kosten. Blüten. Algorithmus (maximales Matching) Idee: Greedy, d.h. solange es geht, wähle Kante für das Matching. 1. Gegeben G = (V , E ). 2. M=∅ Solange E nicht leer, mache:. 3. 1. Wähle e ∈ E .. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(30) Einleitung 3:4. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. 5/7. mit Kosten. Blüten. Algorithmus (maximales Matching) Idee: Greedy, d.h. solange es geht, wähle Kante für das Matching. 1. Gegeben G = (V , E ). 2. M=∅ Solange E nicht leer, mache:. 3. 1 2. Wähle e ∈ E . Setze M = M ∪ {e}. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(31) Einleitung 3:4. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. 6/7. mit Kosten. Blüten. Algorithmus (maximales Matching) Idee: Greedy, d.h. solange es geht, wähle Kante für das Matching. 1. Gegeben G = (V , E ). 2. M=∅ Solange E nicht leer, mache:. 3. 1 2 3. Wähle e ∈ E . Setze M = M ∪ {e} Setze E = {e 0 ∈ E | e 0 ∩ e = ∅}. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(32) Einleitung 3:4. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. 7/7. mit Kosten. Blüten. Algorithmus (maximales Matching) Idee: Greedy, d.h. solange es geht, wähle Kante für das Matching. 1. Gegeben G = (V , E ). 2. M=∅ Solange E nicht leer, mache:. 3. 1 2 3 4. Wähle e ∈ E . Setze M = M ∪ {e} Setze E = {e 0 ∈ E | e 0 ∩ e = ∅}. Ausgabe: M.. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(33) Einleitung 3:5. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. Blüten. 1/6. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Idee: Greedy Algorithmus: b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(34) Einleitung 3:5. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. Blüten. 2/6. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Idee: Greedy Algorithmus: b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(35) Einleitung 3:5. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. Blüten. 3/6. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Idee: Greedy Algorithmus: b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(36) Einleitung 3:5. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. Blüten. 4/6. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Idee: Greedy Algorithmus: b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(37) Einleitung 3:5. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. Blüten. 5/6. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Idee: Greedy Algorithmus: b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(38) Einleitung 3:5. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. Blüten. 6/6. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Beispiel Idee: Greedy Algorithmus: b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(39) Einleitung 3:6. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. 1/7. Probleme Definition (Bipartites Matchingproblem). mit Kosten. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(40) Einleitung 3:6. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. 2/7. Probleme Definition (Bipartites Matchingproblem) Gegeben: G = (V , W , E ) bipartiter Graph.. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(41) Einleitung 3:6. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. 3/7. Probleme Definition (Bipartites Matchingproblem) Gegeben: G = (V , W , E ) bipartiter Graph. Gesucht: Maximum Matching auf G .. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(42) Einleitung 3:6. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. 4/7. Probleme Definition (Bipartites Matchingproblem) Gegeben: G = (V , W , E ) bipartiter Graph. Gesucht: Maximum Matching auf G .. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(43) Einleitung 3:6. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. 5/7. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Probleme Definition (Bipartites Matchingproblem) Gegeben: G = (V , W , E ) bipartiter Graph. Gesucht: Maximum Matching auf G . Definition (Bipartites kostenminimales Matchingproblem). WS2019/20.

(44) Einleitung 3:6. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. 6/7. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Probleme Definition (Bipartites Matchingproblem) Gegeben: G = (V , W , E ) bipartiter Graph. Gesucht: Maximum Matching auf G . Definition (Bipartites kostenminimales Matchingproblem) Gegeben: G = (V , W , E ) bipartiter Graph und Kostenfunktion l : E 7→ N.. WS2019/20.

(45) Einleitung 3:6. m.Fl. Altern. Pfade. maximales Matching. verbesserte Laufzeit. mit Kosten. 7/7. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Probleme Definition (Bipartites Matchingproblem) Gegeben: G = (V , W , E ) bipartiter Graph. Gesucht: Maximum Matching auf G . Definition (Bipartites kostenminimales Matchingproblem) Gegeben: G = (V , W , E ) bipartiter Graph und Kostenfunktion l : E 7→ N. Gesucht: Kostenminimales maximum Matching auf G .. WS2019/20.

(46) Einleitung 3:7. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. 1/7. mit Kosten. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee (bipartites Matching und Flüsse) Matching von V nach W entspricht “Transport”.. WS2019/20.

(47) Einleitung 3:7. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 2/7. Blüten. Idee (bipartites Matching und Flüsse) Matching von V nach W entspricht “Transport”. Jeder Knoten kann eine Einheit transportieren.. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(48) Einleitung 3:7. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 3/7. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee (bipartites Matching und Flüsse) Matching von V nach W entspricht “Transport”. Jeder Knoten kann eine Einheit transportieren. Jede Matchingkante kann eine Einheit transportieren.. WS2019/20.

(49) Einleitung 3:7. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 4/7. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee (bipartites Matching und Flüsse) Matching von V nach W entspricht “Transport”. Jeder Knoten kann eine Einheit transportieren. Jede Matchingkante kann eine Einheit transportieren. Modelliere das durch Fluss, erweitere Graph:. WS2019/20.

(50) Einleitung 3:7. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 5/7. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee (bipartites Matching und Flüsse) Matching von V nach W entspricht “Transport”. Jeder Knoten kann eine Einheit transportieren. Jede Matchingkante kann eine Einheit transportieren. Modelliere das durch Fluss, erweitere Graph: Füge Quelle s ein und verbinde s zu jedem Knoten aus V .. WS2019/20.

(51) Einleitung 3:7. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 6/7. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee (bipartites Matching und Flüsse) Matching von V nach W entspricht “Transport”. Jeder Knoten kann eine Einheit transportieren. Jede Matchingkante kann eine Einheit transportieren. Modelliere das durch Fluss, erweitere Graph: Füge Quelle s ein und verbinde s zu jedem Knoten aus V . Füge Senke t ein und verbinde jeden Knoten aus W zu t.. WS2019/20.

(52) Einleitung 3:7. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 7/7. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee (bipartites Matching und Flüsse) Matching von V nach W entspricht “Transport”. Jeder Knoten kann eine Einheit transportieren. Jede Matchingkante kann eine Einheit transportieren. Modelliere das durch Fluss, erweitere Graph: Füge Quelle s ein und verbinde s zu jedem Knoten aus V . Füge Senke t ein und verbinde jeden Knoten aus W zu t. Diese neuen Kanten können eine Einheit transportieren.. WS2019/20.

(53) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 1/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. a6 0. 0/1/0 1 0/1/0. 0/ 0/ 11/0 1/ 0. b7 0 0 1/ 0/1 1/0 0/. 0. a5 0. b6 0 0 1/ 0/1 1/0 0/. a4 0. 0/1/0 1 0/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. a3 0. 0 1/ 0/1 1/0 0/. 0/1/0 1 0/1/0. a2 0. b4 0. 0/ 0/ 11/0 1/ 0. b3 0 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/. 0/1/0 1 0/1/0 a1 0. b2 0. 0/ 0/ 11/0 1/ 0. b1 0. a7 0. WS2019/20.

(54) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 2/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. a6 0. 0/1/0 1 0/1/0. 0/ 0/ 11/0 1/ 0. b7 0 0 1/ 0/1 1/0 0/. 0. a5 0. b6 0 0 1/ 0/1 1/0 0/. a4 0. 0/1/0 1 0/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. a3 0. 0 1/ 0/1 1/0 0/. 0/1/0 1 0/1/0. a2 0. b4 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b3 0 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/. 0/1/0 1 0/1/0 a1 0. b2 0. 0/ 0/ 11/0 1/ 0. b1 0. 0/ 0/ 0/ 1 1/00 1 1/0 /1 1/ /0 0. 0 1/ 0 0/1 1/ 0/ 0/1/0 1 0/1/0. 0 0 / 1 1 1/ 0/ /00/1 /0 1 1 0/ 0/. a7 0. WS2019/20.

(55) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 3/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. t 0. 0 /0 1 1/ /1 1 0/ 1/00 1/0 / 0/ 0. a6 0. 0/1/0 1 0/1/0. 0/1/0 1 0/1/0. 0 1/ 0 0/1 1/ 0/. 0/ 0/ 11 11 0/ /00/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 0 1/ 0/1 1/0 0/. a3 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b5 0. 0 1/ 0/1 1/0 0/. 0/1/0 1 0/1/0. a2 0. b4 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b3 0 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/. 0/1/0 1 0/1/0 a1 0. b2 0. 0/ 0/ 11/0 1/ 0. b1 0. 0/ 0/ 0/ 1 1/00 1 1/0 /1 1/ /0 0. 0 1/ 0 0/1 1/ 0/ 0/1/0 1 0/1/0. 0 0 / 1 1 1/ 0/ /00/1 /0 1 1 0/ 0/. a7 0. WS2019/20.

(56) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 4/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. b4 0. 10 / 0/ 1/ 1/ 0 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. a5 0. 0/1/01 0/1/0 01 1/ 0 0/ 1/ 0/. 0/ 0/ 1 1 0/ /00/1 /0 1/ /0 0 1. 1. t 0. 1. 0/1/0 1 0/1/0 1. a4 0. 0 /0 1/ /1 0/ 1/00 1/0 / 0/ 10. b7 0 0 1/ 0/ 1/0 0/. a3 0. b6 0. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 0. b5 0 0 1/ 0/ 1/0 0/. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0. a1 0. b3 0. 1 0 / 0/ 1/0 1/ 0. b2 0. 1 0 / 0/ 1/0 1/ 0. b1 0. 1. 1 0 / 0/ 1/0 1/ 0. 10 / 0/ 1/ 1/ 0 0. 1. 0/ 0/ 0/ 1/00 1/0 /1 1/ / 0 1 0. 01 1/ 0 0/ 1/ 0/ 0/1/01 0/1/0. 0 /0 1/ 0/ /00/1 /0 1 1 0/ 1 0/. a6 0. a7 0. WS2019/20.

(57) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 5/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. b4 0. 0/1/01 0/1/0 01 1/ 0 0/ 1/ 0/. 0/ 0/ 1 1 0/ 1 /10/1 /0 1/ /0 1 1. a5 0 10 / 0/ 1/ 1/ 0 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. a4 0. 1. t 0. 1. 0 /0 1/ /1 0/ 1/00 1/0 / 0/ 10. b7 0 0/1/0 1 0/1/0 1. a3 0. b6 0 0 1/ 0/ 1/0 0/. 0 1/ 0/ 1/0 0/. 1. a2 0. b5 0 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. 0 1/ 0/ 1/0 0/. 0 1/ 0/ 1/0 0/. 0/1/1 1 1 0/1/1 a1 0. b3 0. 1 0 / 0/ 1/0 1/ 0. b2 0. 1 0 / 0/ 1/0 1/ 0. b1 0. 1. 1 0 / 0/ 1/0 1/ 0. 10 / 0/ 1/ 1/ 0 0. 1. 0/ 0/ 0/ 1/00 1/0 /1 1/ / 0 1 0. 01 1/ 0 0/ 1/ 0/ 0/1/01 0/1/0. 1 /0 1/ 0/ 1 /10/1 /0 1 1 0/ 1 0/. a6 0. a7 0. WS2019/20.

(58) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 6/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. t 0. 0 /0 1 1/ /1 1 0/ 1/00 1/0 / 0/ 0. a6 0. 0/1/0 1 0/1/0. 0/1/0 1 0/1/0. 0 1/ 0 0/1 1/ 0/. 0/ 1/ 11 1 1/1 /10/1 /0 1/ /0 1. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 0 1/ 0/1 1/0 0/. a3 0. 0/1/0 1 0/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/ 1/1/1 1/1 1 1/1/1. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b2 0. 0/ 0/ 11/0 1/ 0. b1 0. 0/ 0/ 0/ 1 1/00 1 1/0 /1 1/ /0 0. 0 1/ 0 0/1 1/ 0/ 0/1/0 1 0/1/0. 0 1 / 1 1/ 1/ 1/10/1 /0 1 1 1/ 0/. a7 0. WS2019/20.

(59) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 7/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. t 0. 0 /0 1 1/ /1 1 0/ 1/00 1/0 / 0/ 0. a6 0. 0/1/0 1 0/1/0. 0/1/0 1 0/1/0. 0 1/ 0 0/1 1/ 0/. 0/ 1/ 11 1 1/ /00/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 0 1/ 0/1 1/0 0/. a3 0. 0/1/0 1 0/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b2 0. 0/ 0/ 11/0 1/ 0. b1 0. 0/ 0/ 0/ 1 1/00 1 1/0 /1 1/ /0 0. 0 1/ 0 0/1 1/ 0/ 0/1/0 1 0/1/0. 0 0 1 / 1 1/ 1/ /00/1 /0 1 1 1/ 0/. a7 0. WS2019/20.

(60) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 8/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 10 / 0/ 1/ 1/ 0 0. b2 0. b3 0. b4 0. b5 0. 1. b6 0. b7 0. 1. b1 0. 0/ 0/ 0/ 1/00 1/0 /1 1/ / 0 1 0. 01 1/ 0 0/ 1/ 0/ 0/1/01 0/1/0. 1 0 /0 1/ 1/ /00/1 /0 1 1 1/ 1 0/. 1. t 0. 1. 0 /0 1/ /1 0/ 1/00 1/0 / 0/ 10. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 0/1/01 0/1/0 01 1/ 0 0/ 1/ 0/. 0/ 1/ 1 1 1/ /00/1 /0 1/ /0 0. a5 0 10 / 0/ 1/ 1/ 0 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. a4 0. 0/1/0 1 0/1/0 1. a3 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 1 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a1 0. a6 0. a7 0. WS2019/20.

(61) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 9/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 10 / 0/ 1/ 1/ 0 0. b2 0. b3 0. b4 0. b5 0. 1. b6 0. b7 0. 1. b1 0. 0/ 0/ 0/ 1/00 1/0 /1 1/ / 0 1 0. 01 1/ 0 0/ 1/ 0/ 0/1/1 1 1 0/1/1. 1 0 /0 1/ 1/ /00/1 /0 1 1 1/ 1 0/. 1. t 0. 1. 0 /0 1/ /1 0/ 1/00 1/0 / 0/ 10. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 0/1/01 0/1/0 11 11/ 1 0/ 1/ 0/. 0/ 1/ 1 1 1/ /00/1 /0 1/ /0 0. a5 0 10 / 0/ 1/ 1/ 0 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 11/1 1/ 1. a4 0. 0/1/0 1 0/1/0 1. a3 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 1 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a1 0. a6 0. a7 0. WS2019/20.

(62) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 10/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. t 0. 0 /0 1 1/ /1 1 0/ 1/00 1/0 / 0/ 0. a6 0. 0/1/0 1 0/1/0. 0/1/0 1 0/1/0. 1 1/ 1 1/ 1/ 1 1/. 0/ 1/ 11 1 1/ /00/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 0 1/ 0/1 1/0 0/. a3 0. 0/1/0 1 0/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b2 0. 1/ 1/ 1/1 1/ 1 1. b1 0. 0/ 0/ 0/ 1 1/00 1 1/0 /1 1/ /0 0. 0 1/ 0 0/1 1/ 0/ 1/1/1 1/1 1 1/1/1. 0 0 1 / 1 1/ 1/ /00/1 /0 1 1 1/ 0/. a7 0. WS2019/20.

(63) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 11/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. t 0. 0 /0 1 1/ /1 1 0/ 1/00 1/0 / 0/ 0. a6 0. 0/1/0 1 0/1/0. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 0/ 1/ 11 1 1/ /00/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 0 1/ 0/1 1/0 0/. a3 0. 0/1/0 1 0/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b2 0. 1/ 1/ 1/10 1/ 0. b1 0. 0/ 0/ 0/ 1 1/00 1 1/0 /1 1/ /0 0. 0 1/ 0 0/1 1/ 0/ 1/1/0 1/1 1/1/0. 0 0 1 / 1 1/ 1/ /00/1 /0 1 1 1/ 0/. a7 0. WS2019/20.

(64) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 12/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 10 / 0/ 1/ 1/ 0 0. t 0. 1. 0 /0 1/ /1 0/ 1/00 1/0 / 0/ 10. b7 0 0/1/0 1 0/1/0 1. 1. a5 0. 0/1/01 0/1/0. 0 1/ 0 1/ / 1 1/1. 0/ 1/ 1 1 1/ /00/1 /0 1/ /0 0. b6 0 0 1/ 0/ 1/0 0/. a4 0. 1. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0. a3 0. b5 0 0 1 1/ 0/ 1/0 0/. 1 0 / 0/ 1/0 1/ 0. b4 0. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 1 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a1 0. 1. 10 / 0/ 1/ 1/ 0 0. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0. 1. b1 0. 0/ 0/ 0/ 1/00 1/0 /1 1/ / 0 1 0. 01 1/ 0 0/ 1/ 0/ 1/1/0 1/1/0. 1 0 /0 1/ 1/ /00/1 /0 1 1 1/ 1 0/. a6 0. a7 0. WS2019/20.

(65) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 13/32. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 10 / 0/ 11/ 1/ 1 1. 1 0 / 0/ 1/0 1/ 0. 0/1/0 1 0/1/0 1. t 0. 1. 0 /0 1/ /1 0/ 1/00 1/0 / 0/ 10. b7 0 0 1/ 0/ 1/0 0/. 1. a5 0. 0/1/01 0/1/0. 0 1/ 0 1/ / 1 1/1. 0/ 1/ 1 1 1/ /00/1 /0 1/ /0 0. 0 1 1/ 0/ 1/0 0/. a4 0. 1. b6 0. 0/1/1 1 1 0/1/1. a3 0. b5 0 0 1 1/ 0/ 1/0 0/. 1 0 / 0/ 1/0 1/ 0. b4 0. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 1 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a1 0. 1. 10 / 0/ 1/ 1/ 0 0. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0. 1. b1 0. 0/ 0/ 0/ 1/00 1/0 /1 1/ / 0 1 0. 11 11/ 1 0/ 1/ 0/ 1/1/0 1/1/0. 1 0 /0 1/ 1/ /00/1 /0 1 1 1/ 1 0/. a6 0. a7 0. WS2019/20.

(66) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 14/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. t 0. 0 /0 1 1/ /1 1 0/ 1/00 1/0 / 0/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1 1/ 1 1. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 0/ 1/ 11 1 1/ /00/1 /0 1/ /0 0. a5 0. a6 0. 0/1/0 1 0/1/0. a4 0. b7 0 0 1/ 0/1 1/0 0/. a3 0. b6 0. 0 1/ 0/1 1/0 0/ 1/1/1 1/1 1 1/1/1. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b2 0. 1/ 1/ 1/10 1/ 0. b1 0. 0/ 0/ 0/ 1 1/00 1 1/0 /1 1/ /0 0. 1 1/ 1 1/ 1/ 1 1/ 1/1/0 1/1 1/1/0. 0 0 1 / 1 1/ 1/ /00/1 /0 1 1 1/ 0/. a7 0. WS2019/20.

(67) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 15/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. t 0. 0 /0 1 1/ /1 1 0/ 1/00 1/0 / 0/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 0/ 1/ 11 1 1/ /00/1 /0 1/ /0 0. a5 0. a6 0. 0/1/0 1 0/1/0. a4 0. b7 0 0 1/ 0/1 1/0 0/. a3 0. b6 0. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b2 0. 1/ 1/ 1/10 1/ 0. b1 0. 0/ 0/ 0/ 1 1/00 1 1/0 /1 1/ /0 0. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 0 1 / 1 1/ 1/ /00/1 /0 1 1 1/ 0/. a7 0. WS2019/20.

(68) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 16/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 1 t 0. 1. 0 /0 1/ /1 0/ 1/00 1/0 / 0/ 10. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 1 0 / 0/ 1/0 1/ 0. b7 0 0/1/0 1 0/1/0 1. a5 0. 0/1/01 0/1/0. 0 1/ 0 1/ / 1 1/1 1. b6 0 0 1/ 0/ 1/0 0/. a4 0. 0/ 1/ 1 1 1/ /00/1 /0 1/ /0 0. 1. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a3 0. b5 0 0 1 1/ 0/ 1/0 0/. 1 0 / 0/ 1/0 1/ 0. b4 0. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 1 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a1 0. 0/ 0/ 0/ 1/00 1/0 /1 1/ / 0 1 0. 1. 10 / 0/ 1/ 1/ 0 0. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0. 1. b1 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 0 /0 1/ 1/ /00/1 /0 1 1 1/ 1 0/. a6 0. a7 0. WS2019/20.

(69) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 17/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 1 t 0. 1. 0 /1 1/ /11 0/ 1/00 1/1 / 0/ 10. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 1 0 / 0/ 1/0 1/ 0. b7 0 0/1/1 1 1 0/1/1 1. a5 0. 0/1/01 0/1/0. 0 1/ 0 1/ / 1 1/1 1. b6 0 0 1/ 0/ 1/0 0/. a4 0. 0/ 1/ 1 1 1/ /00/1 /0 1/ /0 0. 1. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a3 0. b5 0 0 1 1/ 0/ 1/0 0/. 1 0 / 0/ 1/0 1/ 0. b4 0. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 1 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a1 0. 0/ 0/ 0/ 1/00 11/1 /1 1/ / 0 1 1. 1. 10 / 0/ 1/ 1/ 0 0. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0. 1. b1 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 0 /0 1/ 1/ /00/1 /0 1 1 1/ 1 0/. a6 0. a7 0. WS2019/20.

(70) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 18/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. t 0. 0 /1 1 1/ /1 0/ 1/01 11/1 / 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 0/ 1/ 11 1 1/ /00/1 /0 1/ /0 0. a5 0. a6 0. 1/1/1 1/1 1 1/1/1. a4 0. b7 0 0 1/ 0/1 1/0 0/. a3 0. b6 0. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b2 0. 1/ 1/ 1/10 1/ 0. b1 0. 0/ 1/ 0/ 1 1/01 1/1 /11 1/ /1 0. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 0 1 / 1 1/ 1/ /00/1 /0 1 1 1/ 0/. a7 0. WS2019/20.

(71) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 19/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. t 0. 0 0 /1 1 1/ /1 0/ 1/01 1/0 / 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 0/ 1/ 11 1 1/ /00/1 /0 1/ /0 0. a5 0. a6 0. 1/1/0 1/1 1/1/0. a4 0. b7 0 0 1/ 0/1 1/0 0/. a3 0. b6 0. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. 0/ 0/ 11/0 1/ 0. b5 0 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b2 0. 1/ 1/ 1/10 1/ 0. b1 0. 0/ 1/ 0/ 1 1/01 1/0 /1 1/ /0 0. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 0 1 / 1 1/ 1/ /00/1 /0 1 1 1/ 0/. a7 0. WS2019/20.

(72) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 20/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 1. 1. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 1 0 / 0/ 1/0 1/ 0. 1. t 0. 1. 0 /0 1/ /1 0/ 1/01 1/0 / 1/ 0. 1/1/0 1/1/0. a5 0. 0/1/01 0/1/0. 0 1/ 0 1/ / 1 1/1 1. b7 0 0 1/ 0/ 1/0 0/. a4 0. 0/ 1/ 1 1 1/ /00/1 /0 1/ /0 0. b6 0. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a3 0. b5 0 0 1 1/ 0/ 1/0 0/. 1 0 / 0/ 1/0 1/ 0. b4 0. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 1 0. 0 1/ 0/ 1/0 0/. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a1 0. 1. 10 / 0/ 1/ 1/ 0 0. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0. 1. b1 0. 1 0/ 1/ 0/ 1/01 1/0 /1 1/ / 0 1 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 0 /0 1/ 1/ /00/1 /0 1 1 1/ 1 0/. a6 0. 1. a7 0. WS2019/20.

(73) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 21/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 1. 1. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 1 0 / 0/ 1/0 1/ 0. 1. t 0. 1. 0 /0 1/ /1 0/ 1/01 1/0 / 1/ 0. 1/1/0 1/1/0. a5 0. 0/1/01 0/1/0. 0 1/ 0 1/ / 1 1/1 1. b7 0 0 1/ 0/ 1/0 0/. a4 0. 0/ 1/ 1 1 1/ /00/1 1 /1 1/ /1 0. b6 0. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a3 0. b5 0 0 1 1/ 0/ 1/0 0/. 1 0 / 0/ 11/1 1/ 1. b4 0. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. a2 1 0. 0 1/ 0/ 1/0 0/. 1 1 1/ 0/ 11/1 0/ 1/1/0 1 1/1/0. a1 0. 1. 10 / 0/ 1/ 1/ 0 0. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0. 1. b1 0. 1 0/ 1/ 0/ 1/01 1/0 /1 1/ / 0 1 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 0 /1 1/ 1/ /00/11 /1 1 1 1/ 1 0/. a6 0. 1. a7 0. WS2019/20.

(74) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 22/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. b5 0. 0 0 /1 1 1/ /1 0/ 1/01 1/0 / 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. t 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. 1/ 1/ 1/10 1/ 0. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 1/ 1/ 1 1 1/ /01/11 /1 1/ /1 0. a5 0. a6 0. 1/1/0 1/1 1/1/0. a4 0. b7 0 0 1/ 0/1 1/0 0/. a3 0. b6 0. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. 0 1/ 0/1 1/0 0/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 1. b3 0 0 1/ 0/1 1/0 0/. 1 1/ 1/ 1/1 1 1/. 0/1/0 1 0/1/0 a1 0. b2 0 1/ 1/ 1/1 1/ 1 1. b1 0. 0/ 1/ 0/ 1 1/01 1/0 /1 1/ /0 0. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 1 /1 1/ 1/ /01/1 1/1 1 1 1/ 1/. a7 0. WS2019/20.

(75) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 23/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. t 0. 0 0 /1 1 1/ /1 0/ 1/01 1/0 / 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. a5 0. a6 0. 1/1/0 1/1 1/1/0. a4 0. b7 0 0 1/ 0/1 1/0 0/. a3 0. b6 0. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. 0 1/ 0/1 1/0 0/. 1/ 1/ 1/10 1/ 0. b5 0. 0 1/ 0/1 1/0 0/. 0/1/0 1 0/1/0. a2 0. b4 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/ 1/ 0 0. b3 0 0 1/ 0/1 1/0 0/. 0 1/ 1/ 1/0 1/. 0/1/0 1 0/1/0 a1 0. b2 0. 1/ 1/ 1/10 1/ 0. b1 0. 0/ 1/ 0/ 1 1/01 1/0 /1 1/ /0 0. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 1 /10 1/ 1/ /01/1 /0 1 1 1/ 1/. a7 0. WS2019/20.

(76) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 24/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s. 1. 1. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 10 / 0/ 1/ 1/ 0 0. 1. 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 0/1/01 0/1/0 t 0. 1. 0 /0 1/ /1 0/ 1/01 1/0 / 1/ 0. 1. a5 0. 1/1/0 1/1/0. 1 0 / 0/ 1/0 1/ 0. b7 0 0 1/ 0/ 1/0 0/. a4 0. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. b6 0. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a3 0 0 1/ 0 1/ / 1 1/1. 1. b5 0 0 1 1/ 0/ 1/0 0/. 0 1/ 0/ 1/0 0/. a2 1 0. 1 0/ 1/ 0/ 1/01 1/0 /1 1/ / 0 1 0. b4 0. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. 0 1/ 1/ /0 1 1/1 0/1/0 1 0/1/0. a1 0. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0 1/ 1/ 1/0 1/ 0 1. b1 0. 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 1 0 /0 1/ 1/ /01/1 /0 1 1 1/ 1/. a6 0. 1. a7 0. WS2019/20.

(77) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 25/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s. b4 0. 1. 1. 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 0/1/01 0/1/0 t 0. 1. 1 /0 11/ /1 0/ 1/11 1/0 / 1/ 0. 1. a5 0. 1/1/0 1/1/0. 1 0 / 0/ 11/1 1/ 1. b7 0 0 1/ 0/ 1/0 0/. a4 0. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. b6 0. 1 1 1/ 0/ 11/1 0/ 1/1/0 1 1/1/0. a3 0 0 1/ 0 1/ / 1 1/1. 1. 1 1 1/ 0/ 11/1 0/. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0 1. 1 1/ 0/ 11/1 0/. 0 1/ 1/ 1/0 1/. a2 1 0. b5 0 1 0 / 0/ 1/0 1/ 0. 1. 0/1/1 1 1 0/1/1 a1 0. 1 0/ 1/ 0/ 1/01 1/0 /1 1/ / 0 1 0. 1. 10 / 0/ 11/ 1/ 1 1. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0 1/ 1/ 1/0 1/ 0 1. b1 0. 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 1 0 /0 1/ 1/ /01/1 /0 1 1 1/ 1/. a6 0. 1. a7 0. WS2019/20.

(78) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 26/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 1. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. t 0. 1 0 /1 1/ /1 1/ 11/11 1/0 / 1/ 1. a6 0. 1/1/0 1/1 1/1/0. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 1 1/ 1/ 1/1 1 1/. a3 0. 0/1/0 1 0/1/0. 1/ 1/ 1/1 1/ 1 1. b5 0 1 1/ 1/ 1/1 1 1/. 0/ 1 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 1 1/ 1/ 1/1 1 1/. 0 1 1/ 0/1 1/0 0/ 1/1/1 1/1 1 1/1/1. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1 1/ 1 1. b2 0. 0/ 1 0/ 11/0 1/ 0. b1 0. 0/ 1/ 0/ 1 1/01 1/0 /1 1/ /0 0. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 1 /10 1/ 1/ /01/1 /0 1 1 1/ 1/. a7 0. WS2019/20.

(79) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 27/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. t 0. 10 0 /1 1/ /1 1/ 1/01 1/0 / 1/ 1. a6 0. 1/1/0 1/1 1/1/0. 0/1/0 1 0/1/0. 0 1/ 0 1/ 1/ 1/. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 0 1/ 1/ 1/0 1/. a3 0. 0/1/0 1 0/1/0. 1/ 1/ 1/10 1/ 0. b5 0 0 1/ 1/ 1/0 1/. 0/ 0/ 11/0 1/ 0. b4 0 0 1/ 0/1 1/0 0/. a2 0. 0/1/0 1 0/1/0. 0 1/ 1/ 1/0 1/. 0 1/ 0/1 1/0 0/ 1/1/0 1/1 1/1/0. a1 0. b3 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. b2 0. 0/ 0/ 11/0 1/ 0. b1 0. 0/ 1/ 0/ 1 1/01 1/0 /1 1/ /0 0. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 1 /10 1/ 1/ /01/1 /0 1 1 1/ 1/. a7 0. WS2019/20.

(80) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 28/32. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s. b5 0. 1 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 0 /0 1/ /1 1/ 1/01 1/0 / 1/ 1. 1. t 0. 1. 1/1/0 1/1/0. 0/1/01 0/1/0. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/ 1/0 0/. 0 1/ 1/ 1/0 1/. a4 0. 0 1/ 1/ /0 1 1/1 0/1/0 1 0/1/0. 1. a3 0 0 1/ 0 1/ / 1 1/1. 1. 0 1 1/ 0/ 1/0 0/ 0/1/0 1 0/1/0. 0 1/ 1/ 1/0 1/. a2 1 0. b6 0 1 0 / 0/ 1/0 1/ 0. b4 0. 1. 0 1 1/ 0/ 1/0 0/ 1/1/0 1/1/0. a1 0. b3 0. 1 0/ 1/ 0/ 1/01 1/0 /1 1/ / 0 1 0. 1. 1/ 1/ 1/ 1/ 0 1 0. b2 0 1/ 1/ 1/0 1/ 0 1. b1 0. 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 1 0 /0 1/ 1/ /01/1 /0 1 1 1/ 1/. a6 0. 1. a7 0. WS2019/20.

(81) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 29/32. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s. b5 0. 1 1 0 / 0/ 1/0 1/ 0. 1 0 / 0/ 1/0 1/ 0. 1 1 0 / 0/ 11/1 1/ 1. 1 0 / 0/ 11/1 1/ 1. 1/ 1/ 1/ 1/ 0 1 0. 0 /0 1/ /1 1/ 1/01 1/0 / 1/ 1. 1. t 0. 1. 1/1/0 1/1/0. 0/1/1 1 1 0/1/1. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/ 1/0 0/. 0 1/ 1/ 1 /0 1/. a4 0. 0 1/ 1 / /0 1 1/1 0/1/0 1 0/1/0. 1. a3 0 0 1/ 0 1/ / 1 1/1. 1. 1 1 1/ 0/ 11/1 0/ 0/1/0 1 0/1/0. 0 1/ 1/ 1 /0 1/. a2 1 0. b6 0 1 0 / 0/ 11/1 1/ 1. b4 0. 1. 1 1 1/ 0/ 11/1 0/ 1/1/0 1 1/1/0. a1 0. b3 0. 1 0/ 1/ 0/ 11/11 1/0 /1 1/ / 1 1 0. 1. 1/ 1/ 1/ 1/ 0 1 0. b2 0 1/ 1/ 1/0 1/ 0 1. b1 0. 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 1 0 /0 1/ 1/ /01/1 /0 1 1 1/ 1/. a6 0. 1. a7 0. WS2019/20.

(82) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 30/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/1 1/ 1 1. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. t 0. 10 0 /1 1/ /1 1/ 1/01 1/0 / 1/ 1. a6 0. 1/1/0 1/1 1/1/0. 1/1/1 1/1 1 1/1/1. 1/ 1/ 1/ 1/ 10 0 0 1/ 0 1/ 1/ 1/. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 0 1/ 1/ 1/0 1/. a3 0. 0/1/0 1 0/1/0. 0/ 1 0/ 11/0 1/ 0. b5 0 0 1 1/ 0/1 1/0 0/. 1/ 1/ 1/1 1/ 1 1. b4 0 1 1/ 1/ 1/1 1 1/. a2 0. 0/1/0 1 0/1/0. 1. b3 0 0 1 1/ 0/1 1/0 0/. 1 1/ 1/ 1/1 1 1/. 0/1/0 1 0/1/0 a1 0. b2 0. 1/ 1/ 1/1 1/ 1 1. b1 0. 1/ 1/ 1/1 1/11 1/0 /1 1/ /0 1. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 1 /10 1/ 1/ /01/1 /0 1 1 1/ 1/. a7 0. WS2019/20.

(83) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 31/32. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 0/ 0/ 11/0 1/ 0. 1/ 1/ 1/ 1/ 10 0. t 0. 10 0 /1 1/ /1 1/ 1/01 1/0 / 1/ 1. a6 0. 1/1/0 1/1 1/1/0. 1/1/0 1/1 1/1/0. 0 1/ 0 1/ 1/ 1/. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. a5 0. b7 0 0 1/ 0/1 1/0 0/. a4 0. b6 0 0 1/ 1/ 1/0 1/. a3 0. 0/1/0 1 0/1/0. 0 1/ 0/1 1/0 0/. 1/ 1/ 1/10 1/ 0. b5 0. 0 1/ 1/ 1/0 1/. 0/1/0 1 0/1/0. a2 0. b4 0. 1/ 1/ 1/10 1/ 0. 1/ 1/ 1/ 1/ 10 0. b3 0 0 1/ 0/1 1/0 0/. 0 1/ 1/ 1/0 1/. 0/1/0 1 0/1/0 a1 0. b2 0. 1/ 1/ 1/10 1/ 0. b1 0. 1/ 1/ 1/ 1/01 1/0 /1 1/ /0 0. 0 1/ 0 1/ 1/ 1/ 1/1/0 1/1 1/1/0. 0 1 /10 1/ 1/ /01/1 /0 1 1 1/ 1/. a7 0. WS2019/20.

(84) Einleitung 3:8. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 32/32. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Bipartites Matching und Flüsse s. 1/ 1/ 1/0 1/ 0 1. 0 /0 1/ /1 1/ 1/01 1/0 / 1/ 1. 1 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 1. 1 0 / 0/ 1/0 1/ 0. 1/ 1/ 1/ 1/ 0 1 0. 1. t 0. 1. 1. 1/1/0 1/1/0. 1/ 1/ 1 1 1/ /01/1 /0 1/ /0 0. a5 0. b7 0 1/1/0 1/1/0. a4 0. b6 0 0 1/ 0/ 1/0 0/. a3 0. b5 0 0 1/ 1 / /0 1 1/1 0/1/0 1 0/1/0. 1 0 / 0/ 1/0 1/ 0. 1 1/ 1/ 1/ 1/01 1/0 /1 1/ /0 0. 0 1 1/ 0/ 1/0 0/. 1. 0 1/ 0 1/ / 1 1/1. a2 1 0. 1. b4 0. 0 1/ 1/ /0 1 1/1 0/1/0 1 0/1/0 1. 0 1/ 0/ 1/0 0/. 0 1/ 1/ /0 1 1/1 0/1/0 1 0/1/0. a1 0. b3 0 1/ 1/ 1/0 1/ 0 1. b2 0 1/ 1/ 1/0 1/ 0 1. b1 0. 0. 0 1/ 0 1/ / 1 1/1 1/1/0 1/1/0. 1 1 0 /0 1/ 1/ /01/1 /0 1 1 1/ 1/. a6 0. 1. a7 0. WS2019/20.

(85) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 1/11. Formale Transformation Sei G = (V , W , E ) bipartiter Graph.. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(86) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 2/11. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit:. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(87) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 3/11. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(88) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 4/11. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W }. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(89) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 5/11. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V }. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(90) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 6/11. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } Et = {(w , t) | w ∈ W }. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(91) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 7/11. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } Et = {(w , t) | w ∈ W }. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1.. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(92) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 8/11. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } Et = {(w , t) | w ∈ W }. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1.. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(93) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 9/11. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } Et = {(w , t) | w ∈ W }. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1. Lemma Das bipartite Matchingproblem kann in Zeit O(n + m) auf das Flussproblem transformiert werden. G hat Matching der Größe α genau dann, wenn w (G 0 ) = α..

(94) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 10/11. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } Et = {(w , t) | w ∈ W }. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1. Lemma Das bipartite Matchingproblem kann in Zeit O(n + m) auf das Flussproblem transformiert werden. G hat Matching der Größe α genau dann, wenn w (G 0 ) = α..

(95) Einleitung 3:9. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 11/11. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Formale Transformation Sei G = (V , W , E ) bipartiter Graph. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } Et = {(w , t) | w ∈ W }. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1. Lemma Das bipartite Matchingproblem kann in Zeit O(n + m) auf das Flussproblem transformiert werden. G hat Matching der Größe α genau dann, wenn w (G 0 ) = α. Theorem Das maximum Matching Problem ist auf bipartiten Graphen in Zeit O(n3 ) lösbar..

(96) Einleitung 3:10. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 1/12. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z.. WS2019/20.

(97) Einleitung 3:10. m.Fl. Transformation. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 2/12. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit:. WS2019/20.

(98) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 3/12. Blüten. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(99) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 4/12. Blüten. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W }. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(100) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 5/12. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } und Et = {(w , t) | w ∈ W }.. WS2019/20.

(101) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 6/12. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } und Et = {(w , t) | w ∈ W }. ∀(v , w ) ∈ E 00 : l 0 (v , w ) = l(v , w ).. WS2019/20.

(102) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 7/12. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } und Et = {(w , t) | w ∈ W }. ∀(v , w ) ∈ E 00 : l 0 (v , w ) = l(v , w ). ∀e ∈ Es ∪ Et : l 0 (e) = 0.. WS2019/20.

(103) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 8/12. Blüten. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } und Et = {(w , t) | w ∈ W }. ∀(v , w ) ∈ E 00 : l 0 (v , w ) = l(v , w ). ∀e ∈ Es ∪ Et : l 0 (e) = 0.. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1.. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(104) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 9/12. Blüten. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } und Et = {(w , t) | w ∈ W }. ∀(v , w ) ∈ E 00 : l 0 (v , w ) = l(v , w ). ∀e ∈ Es ∪ Et : l 0 (e) = 0.. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1.. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(105) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 10/12. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } und Et = {(w , t) | w ∈ W }. ∀(v , w ) ∈ E 00 : l 0 (v , w ) = l(v , w ). ∀e ∈ Es ∪ Et : l 0 (e) = 0.. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1. Lemma Das bipartite Matchingproblem mit Kosten kann in Zeit O(n + m) auf das Flussproblem mit Kosten transformiert werden.. WS2019/20.

(106) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 11/12. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } und Et = {(w , t) | w ∈ W }. ∀(v , w ) ∈ E 00 : l 0 (v , w ) = l(v , w ). ∀e ∈ Es ∪ Et : l 0 (e) = 0.. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1. Lemma Das bipartite Matchingproblem mit Kosten kann in Zeit O(n + m) auf das Flussproblem mit Kosten transformiert werden.. WS2019/20.

(107) Einleitung 3:10. m.Fl. Altern. Pfade. Transformation. verbesserte Laufzeit. mit Kosten. 12/12. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Formale Transformation mit Kostenfunktion Sei G = (V , W , E ) bipartiter Graph und l : E 7→ Z. Bestimme G 0 = (V ∪ W ∪ {s, t}, E 0 ) und l 0 : E 0 7→ Z mit: E 0 = E 00 ∪ Es ∪ Et E 00 = {(v , w ) | {v , w } ∈ E ∧ v ∈ V ∧ w ∈ W } Es = {(s, v ) | v ∈ V } und Et = {(w , t) | w ∈ W }. ∀(v , w ) ∈ E 00 : l 0 (v , w ) = l(v , w ). ∀e ∈ Es ∪ Et : l 0 (e) = 0.. Setze c : E 0 7→ N mit ∀e ∈ E 0 : c(e) = 1. Lemma Das bipartite Matchingproblem mit Kosten kann in Zeit O(n + m) auf das Flussproblem mit Kosten transformiert werden. Theorem G hat Matching der Größe α mit Kosten β genau dann, wenn w (G 0 ) = α und die Kosten des Flusses sind β..

(108) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 1/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante.. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(109) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 2/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante.. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(110) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 3/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante.. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(111) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 4/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante.. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(112) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 5/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante.. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(113) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 6/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante.. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(114) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 7/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante. Damit ein Fluss über eine Rückwärtskante fließt, muss er vorher und hinterher eine Vorwärtskante passieren. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(115) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 8/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante. Damit ein Fluss über eine Rückwärtskante fließt, muss er vorher und hinterher eine Vorwärtskante passieren. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(116) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 9/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante. Damit ein Fluss über eine Rückwärtskante fließt, muss er vorher und hinterher eine Vorwärtskante passieren. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(117) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 10/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante. Damit ein Fluss über eine Rückwärtskante fließt, muss er vorher und hinterher eine Vorwärtskante passieren. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(118) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 11/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante. Damit ein Fluss über eine Rückwärtskante fließt, muss er vorher und hinterher eine Vorwärtskante passieren. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(119) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 12/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante. Damit ein Fluss über eine Rückwärtskante fließt, muss er vorher und hinterher eine Vorwärtskante passieren. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(120) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 13/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante. Damit ein Fluss über eine Rückwärtskante fließt, muss er vorher und hinterher eine Vorwärtskante passieren. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(121) Einleitung 3:11. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 14/14. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Nochmal das Beispiel Betrachte das Beispiel ohne die Knoten s und t: Ein Fluss über eine Kante entspricht einer Matchingkante. Das Löschen einer Matchingkante entspricht einem Fluss über eine Rückwärtskante. Damit ein Fluss über eine Rückwärtskante fließt, muss er vorher und hinterher eine Vorwärtskante passieren. b1. b2. b3. b4. b5. b6. b7. a1. a2. a3. a4. a5. a6. a7. WS2019/20.

(122) Einleitung 3:12. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 1/8. Idee der alternierende Pfade Damit arbeitet der Flussalgorithmus wie folgt:. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(123) Einleitung 3:12. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 2/8. Idee der alternierende Pfade Damit arbeitet der Flussalgorithmus wie folgt: Bestimme “erweiternden Pfad”:. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20.

(124) Einleitung 3:12. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 3/8. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee der alternierende Pfade Damit arbeitet der Flussalgorithmus wie folgt: Bestimme “erweiternden Pfad”: Der Pfad startet an einem “freien” Knoten.. WS2019/20.

(125) Einleitung 3:12. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 4/8. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee der alternierende Pfade Damit arbeitet der Flussalgorithmus wie folgt: Bestimme “erweiternden Pfad”: Der Pfad startet an einem “freien” Knoten. Der Pfad startet mit einer Vorwärtskante.. WS2019/20.

(126) Einleitung 3:12. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 5/8. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee der alternierende Pfade Damit arbeitet der Flussalgorithmus wie folgt: Bestimme “erweiternden Pfad”: Der Pfad startet an einem “freien” Knoten. Der Pfad startet mit einer Vorwärtskante. Der Pfad geht alternierend über Vorwärts- und Rückwärtskanten.. WS2019/20.

(127) Einleitung 3:12. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 6/8. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee der alternierende Pfade Damit arbeitet der Flussalgorithmus wie folgt: Bestimme “erweiternden Pfad”: Der Der Der Der. Pfad Pfad Pfad Pfad. startet an einem “freien” Knoten. startet mit einer Vorwärtskante. geht alternierend über Vorwärts- und Rückwärtskanten. endet mit einer Vorwärtskante.. WS2019/20.

(128) Einleitung 3:12. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 7/8. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee der alternierende Pfade Damit arbeitet der Flussalgorithmus wie folgt: Bestimme “erweiternden Pfad”: Der Der Der Der Der. Pfad Pfad Pfad Pfad Pfad. startet an einem “freien” Knoten. startet mit einer Vorwärtskante. geht alternierend über Vorwärts- und Rückwärtskanten. endet mit einer Vorwärtskante. endet an einem “freien” Knoten.. WS2019/20.

(129) Einleitung 3:12. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 8/8. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. Idee der alternierende Pfade Damit arbeitet der Flussalgorithmus wie folgt: Bestimme “erweiternden Pfad”: Der Der Der Der Der. Pfad Pfad Pfad Pfad Pfad. startet an einem “freien” Knoten. startet mit einer Vorwärtskante. geht alternierend über Vorwärts- und Rückwärtskanten. endet mit einer Vorwärtskante. endet an einem “freien” Knoten.. Damit können wir einen weiteren Algorithmus angeben.. WS2019/20.

(130) Einleitung 3:13. Idee. m.Fl. Altern. Pfade. 1/9. verbesserte Laufzeit. mit Kosten. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Alternierende Pfade A ⊕ B = (A ∪ B) \ (A ∩ B). Sei G = (V , E ) ungerichteter Pfad und M ⊂ E ein Matching..

(131) Einleitung 3:13. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. 2/9. Blüten. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Alternierende Pfade A ⊕ B = (A ∪ B) \ (A ∩ B). Sei G = (V , E ) ungerichteter Pfad und M ⊂ E ein Matching. Ein Knoten v ∈ V heißt frei, falls v 6∈ ∪e∈M e..

(132) Einleitung 3:13. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 3/9. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Alternierende Pfade A ⊕ B = (A ∪ B) \ (A ∩ B). Sei G = (V , E ) ungerichteter Pfad und M ⊂ E ein Matching. Ein Knoten v ∈ V heißt frei, falls v 6∈ ∪e∈M e. Ein Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt alternierend, falls {vi−1 , vi } ∈ M ⇔ {vi , vi+1 } 6∈ M (0 < i < l). v0. v1. v2. v3. v4. v5. v6.

(133) Einleitung 3:13. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 4/9. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Alternierende Pfade A ⊕ B = (A ∪ B) \ (A ∩ B). Sei G = (V , E ) ungerichteter Pfad und M ⊂ E ein Matching. Ein Knoten v ∈ V heißt frei, falls v 6∈ ∪e∈M e. Ein Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt alternierend, falls {vi−1 , vi } ∈ M ⇔ {vi , vi+1 } 6∈ M (0 < i < l). v0. v1. v2. v3. v4. v5. v6. Ein alterniernder Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt erweiternd, falls v0 , vl frei sind. v0. v1. v2. v3. v4. v5.

(134) Einleitung 3:13. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 5/9. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Alternierende Pfade A ⊕ B = (A ∪ B) \ (A ∩ B). Sei G = (V , E ) ungerichteter Pfad und M ⊂ E ein Matching. Ein Knoten v ∈ V heißt frei, falls v 6∈ ∪e∈M e. Ein Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt alternierend, falls {vi−1 , vi } ∈ M ⇔ {vi , vi+1 } 6∈ M (0 < i < l). v0. v1. v2. v3. v4. v5. v6. Ein alterniernder Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt erweiternd, falls v0 , vl frei sind. v0. v1. v2. v3. v4. v5. Bemerkung: eine Kante zwischen freien Knoten ist ein verbessernder Pfad..

(135) Einleitung 3:13. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 6/9. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Alternierende Pfade A ⊕ B = (A ∪ B) \ (A ∩ B). Sei G = (V , E ) ungerichteter Pfad und M ⊂ E ein Matching. Ein Knoten v ∈ V heißt frei, falls v 6∈ ∪e∈M e. Ein Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt alternierend, falls {vi−1 , vi } ∈ M ⇔ {vi , vi+1 } 6∈ M (0 < i < l). v0. v1. v2. v3. v4. v5. v6. Ein alterniernder Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt erweiternd, falls v0 , vl frei sind. v0. v1. v2. v3. v4. v5. Bemerkung: eine Kante zwischen freien Knoten ist ein verbessernder Pfad. Damit arbeitet der Algorithmus wie folgt:.

(136) Einleitung 3:13. Idee. m.Fl. Altern. Pfade. verbesserte Laufzeit. mit Kosten. Blüten. 7/9. Zwei Anwendungen. Walter Unger 26.11.2019 14:33. WS2019/20. Alternierende Pfade A ⊕ B = (A ∪ B) \ (A ∩ B). Sei G = (V , E ) ungerichteter Pfad und M ⊂ E ein Matching. Ein Knoten v ∈ V heißt frei, falls v 6∈ ∪e∈M e. Ein Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt alternierend, falls {vi−1 , vi } ∈ M ⇔ {vi , vi+1 } 6∈ M (0 < i < l). v0. v1. v2. v3. v4. v5. v6. Ein alterniernder Pfad v0 , {v0 , v1 }, v1 , {v1 , v2 }, v2 , {v2 , v3 }, v3 , . . . , vl−1 , {vl−1 , vl }, vl heißt erweiternd, falls v0 , vl frei sind. v0. v1. v2. v3. v4. v5. Bemerkung: eine Kante zwischen freien Knoten ist ein verbessernder Pfad. Damit arbeitet der Algorithmus wie folgt: 1. Setze M = ∅..

Referenzen

ÄHNLICHE DOKUMENTE

Dazu muss das Durchlaufen der ungeraden Kreise bei der Suche nach alternierenden Pfade betrachtet werden: Wird bei der Suche ein gematcher Knoten über eine Kanten, die nicht im

Daher kann der Kreis durch einen Knoten ersetzt werden.... Probleme bei

Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld

Untersuche für jede d-elementige Teilmenge der m Ungleichungen den jeweiligen Schnittpunkt (Basislösung).. Hier nun Algorithmus mit erwarteter linearer

Falls es einen polynomiellen Algorithmus gibt, der entscheidet, ob ein Ungleichungssystem eine Lösung hat, so gibt es einen polynomiellen Algorithmus, der das LP

Daher wird beim Algorithmus von Seidel eine kleine Menge von Nebenbedingungen zufällig aus- gewählt und für dieses vereinfachte System dann eine Lösung bestimmt.. Danach werden

Kann bei schweren Problemen mit ausreichender Wahrscheinlichkeit ein gutes Ergebnis erreicht werden?... 4 Inhaltsverzeichnis Walter Unger 5.12.2019

Motivation und Anwendungen vielfältige Zuordnungsprobleme: Kunden auf Kundenberater Anrufe im Callcenter auf Servicemitarbeiter Heiratsvermittlung Jobs auf Maschinen Schwarzgeld