23.06.2013 Aufrufe

aktuelle Version des Vorlesungsskripts - ZIB

aktuelle Version des Vorlesungsskripts - ZIB

aktuelle Version des Vorlesungsskripts - ZIB

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.

7 Flüsse mit minimalen Kosten<br />

Erfüllt (x, T, L, U) außerdem alle Bedingungen l ≤ x ≤ u (d. h. auch für die Bögen in T ),<br />

so heißt (x, T, L, U) zulässige Baum-Lösung. △<br />

Wie wir später sehen werden (Satz (7.24)), genügt es, sich bei der Suche nach kostenminimalen<br />

Flüssen auf Baum-Lösungen zu beschränken. Baum-Lösungen haben die<br />

Eigenschaft, dass sich die Flusswerte auf den Nicht-Baum-Kanten über die Flusserhaltungsbedingungen<br />

aus den Flusswerten der Baum-Kanten eindeutig ergeben.<br />

(7.17) Lemma. Seien (T, L, U) eine Partition von A und T ein aufspannender Baum<br />

für D = (V, A). Dann existiert ein (nicht unbedingt zulässiger) eindeutiger Fluss x mit<br />

xa = la für alle a ∈ L und xa = ua für alle a ∈ U. △<br />

Beweis. Sei i ein Blatt von T und a ∈ T der mit i inzidente Bogen sowie M := L ∪ U<br />

die Menge der Bögen mit festem Flusswert. Da i ein Blatt ist, sind alle anderen mit i<br />

inzidenten Bögen in M enthalten. Auf der linken Seite der Flusserhaltungsbedingung<br />

x(δ − (i)) − x(δ + (i)) = bi sind daher alle Terme außer xa konstant, d. h. der Wert von xa<br />

ist durch diese Gleichung eindeutig bestimmt. Wenn wir nun xa auf diesen Wert festsetzen<br />

und a aus T entfernen und in die Menge M aufnehmen, können wir dieses Verfahren mit<br />

dem übrigen Baum T und der aktualisierten Menge M fortsetzen. Schließlich ergibt sich<br />

ein (nicht notwendig zulässiger) Fluss für jeden Bogen <strong>des</strong> ursprünglichen Baumes T . ✷<br />

Die Grundidee <strong>des</strong> Netzwerk-Simplex-Algorithmus ist, eine bekannte zulässige Baum-<br />

Lösung in eine andere, kostengünstigere Baum-Lösung „umzubauen“. Konkret passiert<br />

dies, indem wir einen Bogen e ∈ A\T (engl. „entering arc“) zu T hinzunehmen und einen<br />

Bogen f ∈ T (engl. „leaving arc“) aus T entfernen. Damit die Baum-Eigenschaft erhalten<br />

bleibt, sollte f natürlich auf dem eindeutigen Kreis C in T +e liegen. Wir wählen die Orientierung<br />

von C so, dass e ein Vorwärtsbogen auf C ist; F und B bezeichnen die Mengen<br />

der Vorwärts- bzw. Rückwärtsbögen in C. Damit die Aufnahme von e den Zielfunktionswert<br />

verbessert, müssen wir den Fluss auf e erhöhen (e ∈ L) oder verringern (e ∈ U).<br />

Wenn wir den Fluss auf e um ε verändern, erhalten wir einen neuen Fluss x ′ , indem wir<br />

alle Flüsse auf Bögen von C gemäß Gleichung (7.4) anpassen, sodass die Flusserhaltung<br />

weiter gewährleistet ist. Damit x ′ auch die Kapazitätsschranken einhält, dürfen wir ε nur<br />

so groß wählen, dass x ′ auf C eine Kapazitätsschranke erreicht, d. h. ε ist<br />

ε := min min{xa − la | a ∈ B}, min{ua − xa | a ∈ F } . (7.18)<br />

Es ist durchaus möglich, dass ε = 0 auftritt. Sei f einer der Bögen in T , der durch<br />

die Änderung <strong>des</strong> Flusses um ε seine Kapazitätsschranke erreicht (Achtung: hier kann<br />

auch e = f gelten). Die Baum-Lösung für den neuen Fluss x ′ ergibt sich als<br />

140<br />

T := (T − f) + e,<br />

<br />

(L − e) + f falls x<br />

L :=<br />

′ f = la,<br />

,<br />

(L − e) sonst,<br />

<br />

(U − e) + f falls x<br />

U :=<br />

′ f = ua,<br />

(U − e) sonst.<br />

(7.19)

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!