maximaler Fluss & minimaler Schnitt Referat in angewandte Logistik Marcus Pottendorfer HTBLuVA Sankt Pölten
Inhalt Maximaler Fluss minimaler Schnitt... 2 Grundbegriffe... 2 Erklärung... 2 Minimaler Schnitt... 4 Persönliches Beispiel:... 6 Dateiname: referat_pottendorfer_max_fluss 1/8
Maximaler Fluss minimaler Schnitt Grundbegriffe Netzwerk: Ein Netzwerk N=(G, u, q, s) besteht aus einem gerichteten Graphen G=(V,E) mit zwei ausgezeichneten Knoten, einer Quelle q und einer Senke s aus V, sowie einer Kapazitätsfunktion u: E {R}+, die jeder Kante eine nichtnegative Kapazität zuweist, e u(e). Hat die Kapazitätsfunktion ausschließlich ganzzahlige Werte, so existiert eine maximale Flussfunktion, die ebenfalls nur ganzzahlige Werte hat. Fluss: Ist eine Funktion die jeder Kante im Netzwerk einen nichtnegativen Wert zuweist. Dabei muss folgende Bedingung erfüllt werden: o Kapazitätskonformität: Der Flusswert auf einer Kante ist höchstens so groß wie die Kapazität der Kante, das heißt es gilt: Ist zusätzlich die folgende Bedingung erfüllt, heißt der Fluss s-t-fluss: Flusserhalt: Der Input und der Autput jedes Knotens müssen gleich sein. Dabei ist die Menge der in v hineinführenden und die Menge der hinausführenden Einheiten. Gilt der Flusserhalt zusätzlich auch in q und s spricht man von einer Zirkulation. o Wert: Der Wert eines q-s-flusses f ist der Überschuss im Knoten q oder der Betrag des Überschusses im Knoten s. Für alle q-s-flüsse ist der Überschuss bis auf q, s für alle Knoten Null. Bei Zirkulationen ist er auch in q und s Null. Erklärung Maximaler Fluss Dateiname: referat_pottendorfer_max_fluss 2/8
Ein Südfrüchtekonzern hat Bananen von den mittelamerikanischen Plantagen zu den europäischen Märkten zu transportieren. Er möchte die freien Transportkapazitäten seiner Schifahrtslinien optimal nutzen. Dabei gibt es einen Ausgangshafen A (Quelle, q) und einen Zielhafen Z (Senke, s). Die Zahlen an den gerichteten Kanten geben die Transportkapazität an. Aufgabenstellung: Wie groß ist die maximale von A nach Z transportierbare Bananenmenge, wenn unterwegs keine Bananen verloren gehen, dazukommen oder gelagert werden? Dh. Es ist der maximale Fluss von der Quelle (A) zur Senke (Z) gesucht. Lösungsweg: Auf dem Weg A B E Z lassen sich maximal 5 Einheiten transportieren. Dies ergibt sich da die Kante AB bereits gesättigt ist. Auf dem Weg A C D Z lässt sich maximal eine Einheit transportieren, da die Kante CD bereits gesättigt ist. Im Folgenden wird die bisherige Auslastung graphisch notiert: Jedoch wurden bei dieser Ausarbeitung noch nicht die Kanten CD und BD berücksichtigt. Da eine Freikapazität der Kante EZ sowie der Kante AC vorhanden ist kann auf dieser Kante noch eine weitere Einheit transportiert werden. Somit entsteht ein maximaler Fluss von 7 Einheiten. Nun wird dies wieder graphisch veranschaulicht: Dateiname: referat_pottendorfer_max_fluss 3/8
Nun kann mit dem minimalen Schnitt überprüft werden ob das Ergebnis von 7 für den Fluss wirklich maximal ist. Minimaler Schnitt Der minimale Schnitt kann auf 2 verschiedene Arten definiert werden: Einerseits dieser durch den Schnitt durch die geringsten Kanten angegeben werden. Dies ist aber nur bei Graphen anzuwenden die keine Kantenkapazität besitzen. Bei Graphen mit Kantenkapazität ist der minimale Schnitt der Schnitt mit dem geringsten Kantengewicht zischen Quelle und Senke. Beim minimalen Schnitt addiert man die Kapazitäten die der Schnitt durchtrennt. In unserem Fall wäre dies 5 (Kante AB) + 3 (Kante CE) + 1 (Kante CD) =9 Dieses Ergebnis stimmt nicht mit dem vorher berechneten maximalen Fluss von 7 überein. Dies bedeutet, dass dieses Netz weiter optimiert werde kann. Diese wird im Graphen Optimierung folgenden dargestellt: Dateiname: referat_pottendorfer_max_fluss 4/8
Man sieht, dass nun die Kante AB, CE und CD voll ausgelastet ist. Dies ist wichtig da genau durch diese Kanten der Schnitt verläuft und der Schnitt nun minimal ist. Es ist offensichtlich, dass der maximale Fluss höchstens so groß sein kann wie ein Schnitt mit kleinster Kapazität (minimaler Schnitt). Es gilt: Der Wert eines maximalen Flusses ist gleich der Kapazität eines minimalen Schnittes. (Ford, Fulkerson, 1957) Dateiname: referat_pottendorfer_max_fluss 5/8
Persönliches Beispiel Aufgabenstellung Versuche im folgenden Graph den maximalen Fluss bzw. den minimalen Schnitt zu finden. Der Graf soll aus 10 Knoten (stehen für 10 Städte in Kolumbien), wobei ein Knoten die Quelle und ein Knoten die Senke ist. Ausarbeitung 1. Schritt: Erstellen eines Netzwerkes Quelle 15 9 A 6 10 6 5 C D 15 E 7 5 4 F G 9 6 H 11 6 Senke B Hier sieht man den fertigen Grafen. Es handelt sich hierbei um einen gerichteten Graphen da die Kanten Pfeile haben. Weiters ist die Kantenkapazität der einzelnen Kanten angegeben. Man sieht hier recht deutlich, dass es nicht mehr so klar wie im letzten Beispiel ist den maximalen Fluss zu bestimmen. Bei diesem Beispiel muss genau überlegt werden wo wieviel Güter transportiert werden um das Maximum herauszuholen. 2. Schritt: Finden des maximalen Flusses Nach dem das Netzwerk erstellt wurde kann überlegt werden wie bei diesem Netzwerk ein maximaler Fluss zustande kommen kann. Dateiname: referat_pottendorfer_max_fluss 6/8
Quelle 11/15 4/9 A 5/5 4/10 C D 15/15 6/7 E 4/4 5/5 F G 5/9 10/11 H 5/6 Senke B Man beginnt mit der Bestimmung der zu transportierenden Einheiten am Beginn des Graphen d.h. von der Quelle ausgehende. Hier versucht man natürlich so viele Einheiten wie irgendwie möglich abzutransportieren. Somit beansprucht man zu Beginn die volle Kapazität aller Kanten d.h. QA=15, QC=6 und QB=9. Im weiteren wird sich herausstellen, dass dies nicht ganz möglich ist. Problem 1:QA=15 Somit sind 15 Einheiten am Punkt A verfügbar. Jedoch kann dieser durch die Kanten AC und AD insgesamt maximal nur 11 Einheiten abtransportieren. Somit muss man die Transportmenge auf der Kante QA von 15 auf 11 reduzieren. Problem 2: QB=9 Dieses Mal sind somit 9 Einheiten am Knoten B vorhanden. Von diesem geht jedoch nur eine Kante aus, die die Kapazität von 4 hat. Dies bedeutet das man auch die Menge von QB auf 4 reduzieren muss. Dieses Verfahren unternimmt man so oft bis die Senke erreicht wurde. Somit wird der maximale Fluss von 21 Ermittelt. Dateiname: referat_pottendorfer_max_fluss 7/8
3. Schritt: Minimaler Schnitt Quelle 11/15 4/9 A 5/5 4/10 C D 15/15 6/7 E 4/4 5/5 F G 5/9 10/11 H 5/6 Senke B Das Ergebnis des minimalen Schnitts ergibt einen Wert von 21. Somit trifft die Aussage: Der Wert eines maximalen Flusses ist gleich der Kapazität eines minimalen Schnittes. zu. Der maximale Schnitt bzw. der minimale Schnitt wurde gefunden und Beträgt 21. Quellen: Wikipedia Diverse PDF Skriptums Dateiname: referat_pottendorfer_max_fluss 8/8