finale Version des Vorlesungsskripts - ZIB
finale Version des Vorlesungsskripts - ZIB
finale Version des Vorlesungsskripts - ZIB
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
s<br />
1/3/5<br />
3/3/4<br />
1<br />
0/1/6 2/2/4 t s 2/-4<br />
1/6<br />
2<br />
(a)<br />
3/3/7<br />
1/4/3<br />
2/5<br />
3/-4<br />
7.1 Flüsse mit minimalen Kosten<br />
Abbildung 7.1: Ein Digraph D mit Fluss x und ein augmentieren<strong>des</strong> Netzwerk bzgl. x.<br />
Um die umgekehrte Richtung zu beweisen, müssen wir etwas mehr Aufwand treiben,<br />
den wir allerdings direkt bei der Darstellung <strong>des</strong> Algorithmus benutzen können. Ist x<br />
ein zulässiger (s, t)-Fluss mit Wert f, dann definieren wir einen Digraphen (genannt<br />
augmentieren<strong>des</strong> Netzwerk bezüglich x) N = (V, A, c, w) wie folgt: Es sei<br />
A1 := {(u, v) ∈ A | xuv < cuv}, A2 := {(v, u) | (u, v) ∈ A und xuv > 0}.<br />
Ist a ∈ A, so schreiben wir a1 bzw. a2 um den zugehörigen Bogen aus A1 bzw. A2 zu<br />
bezeichnen. Schreiben wir für a ∈ A eine Formel wie etwa x ′ (a) = x(a)+x(a1)−x(a2) und<br />
ist einer der Bögen a1 bzw. a2 nicht definiert (d. h. es gilt entweder xa = ca oder xa = 0),<br />
dann ist der Wert x(a1) bzw. x(a2) als Null zu betrachten. Wir setzen A := A1 ˙∪A2 (man<br />
beachte, dass A parallele Bögen enthalten kann). Ferner sei für a ∈ A<br />
<br />
c(a) − x(a) falls a = a1,<br />
c(a) :=<br />
x(a) falls a = a2,<br />
<br />
w(a) falls a = a1,<br />
w(a) :=<br />
−w(a) falls a = a2.<br />
In Abbildung 7.1(a) ist ein Digraph mit einem (s, t)-Fluss x <strong>des</strong> Wertes 4 dargestellt.<br />
Die drei Zahlen bei einem Bogen a geben an: Fluss durch a / Kapazität von a / Kosten<br />
von a. Das augmentierende Netzwerk N bezüglich D und x ist in 7.1(b) gezeichnet. Die<br />
beiden Zahlen bei einem Bogen a in 7.1(b) geben an: Kapazität von a / Kosten von a.<br />
Der (ungerichtete) Kreis {(2, t), (1, t), (2, 1)} in Abb. 7.1(a) ist ein augmentierender<br />
Kreis mit Kosten 3 − 7 − 4 = −8. Dieser Kreis entspricht in (b) dem gerichteten Kreis<br />
{(2, t), (t, 1), (1, 2)}, wobei von den beiden zwischen 1 und 2 parallel verlaufenden Bögen<br />
natürlich der mit negativen Kosten zu wählen ist. Aufgrund der Konstruktion von N ist<br />
folgende Beziehung offensichtlich:<br />
(7.5) Lemma. Ist D = (V, A) ein Digraph mit Kapazitäten c ∈ R A + und Kosten w ∈ R A ,<br />
ist x ein zulässiger (s, t)-Fluss in D, und ist N = (V, A, c, w) das zu D und x gehörige<br />
augmentierende Netzwerk, dann entspricht jeder augmentierende Kreis in D genau einem<br />
gerichteten Kreis in N. Die Kosten eines augmentierenden Kreises in D stimmen überein<br />
mit der Summe der Kostenkoeffizienten <strong>des</strong> zugehörigen gerichteten Kreises in N. △<br />
1/-5<br />
1<br />
2<br />
(b)<br />
3/-7<br />
1/-3<br />
3/3<br />
t<br />
131