28.11.2012 Aufrufe

Datenstrukturen und Algorithmen - Software Modeling and Verification

Datenstrukturen und Algorithmen - Software Modeling and Verification

Datenstrukturen und Algorithmen - Software Modeling and Verification

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Maximaler Fluss Flussnetzwerke<br />

Mehrere Quellen <strong>und</strong> Senken<br />

∞<br />

∞<br />

s3<br />

s s2<br />

t2 t<br />

∞<br />

s1<br />

3<br />

3<br />

10 5<br />

10 5<br />

10 5<br />

◮ Es kann auch Flussnetzwerke mit mehrere Quellen oder Senken geben.<br />

◮ Sie können durch eine neue „Superquelle“ <strong>und</strong> „Supersenke“ in ein<br />

St<strong>and</strong>ard-Flussnetzwerk überführt werden.<br />

Joost-Pieter Katoen <strong>Datenstrukturen</strong> <strong>und</strong> <strong>Algorithmen</strong> 9/27<br />

Maximaler Fluss Flussnetzwerke<br />

Beweis: f (X, X) = 0<br />

Beh.: f (X, X) = 0<br />

f (X, X) = 1<br />

�<br />

� �<br />

f (x1, x2) +<br />

2<br />

x1∈X x2∈X<br />

� �<br />

x1∈X x2∈X<br />

= 1<br />

�<br />

� �<br />

f (x1, x2) +<br />

2<br />

x1∈X x2∈X<br />

� �<br />

x1∈X x2∈X<br />

= 1 � � �<br />

�<br />

f (x1, x2) + f (x2, x1)<br />

2<br />

= 0<br />

x1∈X x2∈X<br />

6<br />

6<br />

t3<br />

t1<br />

∞<br />

∞<br />

∞<br />

�<br />

f (x1, x2)<br />

�<br />

f (x2, x1)<br />

Für den Beweis benötigen wir lediglich die Eigenschaft der Asymmetrie.<br />

Joost-Pieter Katoen <strong>Datenstrukturen</strong> <strong>und</strong> <strong>Algorithmen</strong> 11/27<br />

Maximaler Fluss Flussnetzwerke<br />

Flüsse zwischen Knotenmengen<br />

Notationen<br />

f (x, Y ) = �<br />

f (x, y) für Y ⊆ V<br />

y∈Y<br />

f (X, y) = �<br />

f (x, y) für X ⊆ V<br />

x∈X<br />

f (X, Y ) = �<br />

x∈X y∈Y<br />

�<br />

f (x, y) für X, Y ⊆ V<br />

Eigenschaften von Flüssen zwischen Mengen<br />

Falls f ein Fluss für G = (V , E, c) ist, dann gilt:<br />

1. f (X, X) = 0 für X ⊆ V<br />

2. f (X, Y ) = −f (Y , X) für X, Y ⊆ V<br />

3. f (X ∪ Y , Z) = f (X, Z) + f (Y , Z) für X, Y , Z ⊆ V : X ∩ Y = ∅<br />

4. f (Z, X ∪ Y ) = f (Z, X) + f (Z, Y ) für X, Y , Z ⊆ V : X ∩ Y = ∅<br />

Joost-Pieter Katoen <strong>Datenstrukturen</strong> <strong>und</strong> <strong>Algorithmen</strong> 10/27<br />

Maximaler Fluss Flussnetzwerke<br />

Eingehender Fluss in der Senke<br />

Wie groß ist der an der Senke eingehende Fluss?<br />

Aufgr<strong>und</strong> der Flusserhaltung ist zu erwarten, dass er dem austretenden<br />

Fluss an der Quelle entspricht:<br />

Beweis:<br />

f (s, V ) = f (V , t)<br />

f (s, V ) = f (V , V ) − f (V − {s}, V )<br />

= −f (V − {s}, V )<br />

= f (V , V − {s})<br />

= f (V , t) + f (V , V − {s, t}) | Flusserhaltung<br />

= f (V , t)<br />

Joost-Pieter Katoen <strong>Datenstrukturen</strong> <strong>und</strong> <strong>Algorithmen</strong> 12/27

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!