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.
7.3 Der Netzwerk-Simplex-Algorithmus<br />
Beweis. Folgt aus dem zweiten Teil <strong>des</strong> Beweises von Satz (7.24). ✷<br />
Der Netzwerk-Simplex-Algorithmus nutzt Folgerung (7.25) aus, indem ausschließlich<br />
zulässige Baum-Lösungen erzeugt werden.<br />
Noch offen ist die Konstruktion einer ersten zulässigen Baum-Lösung. Anders als beim<br />
Maximalflussproblem ist dies für das Minimalkosten-Flussproblems nicht trivial, da der<br />
Nullfluss nicht notwendig zulässig ist. Wir können jedoch aus jeder Instanz <strong>des</strong> Minimalkosten-Flussproblems<br />
I = (D = (V, A), c, l, u) eine abgeleitete Instanz I ′ = (D ′ =<br />
(V ′ , A ′ ), c ′ , l ′ , u ′ ) konstruieren,<br />
• für die wir einen zulässigen Fluss angeben können und<br />
• deren optimale Lösungen im Falle der Zulässigkeit von I denen von I entsprechen.<br />
Dazu definieren wir den „Nettobedarf“ ˜ b(i) für Knoten in V als<br />
˜ bi := bi + l(δ + (i)) − l(δ − (i)), (7.26)<br />
also als Bedarfsplus der Differenz der Min<strong>des</strong>tabgabe und der Min<strong>des</strong>tzulieferung. Ein<br />
Knoten i ∈ V ist „unterversorgt“, wenn sein Bedarf bi nicht durch die eingehenden Bögen<br />
gedeckt werden kann, d. h. wenn ˜ bi < 0 und „überversorgt“ sonst. Wir setzen<br />
V + := {i ∈ V | ˜ bi < 0},<br />
V − := {i ∈ V | ˜ bi ≥ 0}.<br />
Der Digraph D ′ = (V ′ , A ′ ) enthält einen zusätzlichen Knoten k mit Bedarf b ′ k<br />
sowie einen Bogen (k, i) für jeden Knoten i ∈ V − und einen Bogen (i, k) für jeden<br />
Knoten i ∈ V + . Die Kosten für diese zusätzlichen Bögen werden so hoch gesetzt, dass<br />
sie in keiner Optimallösung für I ′ gewählt werden, falls I zulässig ist, also z. B.<br />
M := 1 + 1<br />
2 |V | max{|ca| | a ∈ A}.<br />
Die erweiterte Instanz I ′ ist dann gegeben durch:<br />
V ′ := V ∪ {k}<br />
A ′ := A ∪ {(k, i) | i ∈ V − } ∪ {(i, k) | i ∈ V + }<br />
c ′ a :=<br />
b ′ i :=<br />
l ′ a :=<br />
u ′ a :=<br />
<br />
ca a ∈ A<br />
M a ∈ A ′ <br />
\ A<br />
bi i ∈ V<br />
0 i ∈ V ′ <br />
\ V<br />
la a ∈ A<br />
0 a ∈ A ′ <br />
\ A<br />
ua a ∈ A<br />
∞ a ∈ A ′ \ A<br />
= 0<br />
(7.27)<br />
143