finale Version des Vorlesungsskripts - ZIB
finale Version des Vorlesungsskripts - ZIB
finale Version des Vorlesungsskripts - ZIB
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
6 Maximale Flüsse in Netzwerken<br />
Algorithmik und zu den Anwendungen von Netzwerken. Gerade ist die vierte Auflage<br />
<strong>des</strong> Buches von Jungnickel (2013) erschienen, welches ebenfalls empfehlenswert ist. Und<br />
natürlich gibt es eine hoch kondensierte Zusammenfassung der Netzwerkflusstheorie und<br />
-algorithmik in Schrijver (2003).<br />
6.1 Das Max-Flow-Min-Cut-Theorem<br />
Im Folgenden sei D = (V, A) ein Digraph mit Bogenkapazitäten c(a) ∈ R, c(a) ≥ 0 für<br />
alle a ∈ A. Ferner seien s und t zwei voneinander verschiedene Knoten aus V . Der Knoten<br />
s heißt Quelle (englisch: source), und t heißt Senke (englisch: sink). Eine Funktion<br />
x: A → R (bzw. ein Vektor x ∈ R A ) heißt (s, t)-Fluss, wenn die folgenden Flusserhaltungsbedingungen<br />
erfüllt sind:<br />
<br />
a∈δ − (v)<br />
xa = <br />
a∈δ + (v)<br />
Erfüllt x zusätzlich die Kapazitätsbedingungen<br />
xa ∀v ∈ V \ {s, t}. (6.1)<br />
0 ≤ xa ≤ ca ∀a ∈ A, (6.2)<br />
so ist x ein zulässiger (s, t)-Fluss. Für einen (s, t)-Fluss x ∈ R A heißt<br />
val(x) := <br />
a∈δ + (s)<br />
xa − <br />
a∈δ − (s)<br />
xa<br />
(6.3)<br />
der Wert <strong>des</strong> (s, t)-Flusses x. Wenn nicht extra darauf hingewiesen wird, ist mit „Fluss“<br />
stets ein zulässiger Fluss gemeint.<br />
Wir werden uns in diesem Abschnitt damit beschäftigen, eine Charakterisierung <strong>des</strong><br />
maximalen Wertes eines (s, t)-Flusses zu finden. In den nächsten beiden Abschnitten<br />
werden wir Algorithmen zur Bestimmung eines maximalen zulässigen Flusses angeben.<br />
Wir erinnern daran, dass ein (s, t)-Schnitt in D eine Bogenmenge der Form δ + (W ) =<br />
δ − (V \ W ) = {(i, j) ∈ A | i ∈ W, j ∈ V \ W } mit s ∈ W ⊆ V und t ∈ V \ W ist. Die<br />
Kapazität eines Schnittes δ + (W ) ist wie üblich mit c(δ + (W )) = <br />
a∈δ + (W ) ca definiert.<br />
Aus der „Rohrleitungsanwendung“ wird der Name „Schnitt“ klar. Durchschneiden wir alle<br />
Rohre irgendeines Schnittes, d. h. entfernen wir alle Bögen eines (s, t)-Schnittes aus dem<br />
Digraphen, dann kann kein Fluss mehr von s nach t „fließen“. Diese triviale Beobachtung<br />
liefert:<br />
(6.4) Lemma.<br />
(a) Seien s ∈ W , t ∈ W , dann gilt für jeden zulässigen (s, t)-Fluss x:<br />
116<br />
val(x) = <br />
a∈δ + (W )<br />
xa − <br />
a∈δ − (W )<br />
xa.