Ü K L ̈ P I Prof. Dr. U. Brandes / C. Pich Seminar Methoden der Netzwerkanalyse WS 2005 / 2006 Ausarbeitung zum Seminarvortrag Max Flow-Zentralität Marina Herbst basierend auf Centrality in Valued Graphs: A Measure of Betweenness Based on Network Flow von L. C. Freeman, S. P. Borgatti, D. R. White (1991) Max Flow-Zentralität Marina Herbst Inhaltsverzeichnis 1 Einführung 3 2 Begriffe und Grundlagen 2.1 Graphentheorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Netzwerkanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Betweenness-Zentralität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Max Flow-Zentralität 7 3 3.1 3.2 3.3 4 5 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Beispiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Kritische Bemerkung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 5 6 7 9 10 Analogie zwischen Betweenness und Max Flow 11 4.1 4.2 11 12 Normalisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Beispiel: Sterngraph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zusammenfassung 14 2 Max Flow-Zentralität Marina Herbst Alles fließt. Heraklit In Analogie zu Betweenness-Zentralität wird hier ein neues Zentralitätsmaß, das sogenannte Max Flow-Zentralitätsmaß eingeführt, das auf der Idee des maximalen Flusses im Netzwerk basiert. Dabei wird es auf zwei wesentliche Unterschiede eingegangen. Erstens basiert das Max Flow-Maß auf maximalem Fluss zwischen jeweils zwei Knoten und nicht auf den kürzesten Wegen, wie dies bei Betweenness der Fall ist. Zweitens ist das Max Flow-Maß im Gegensatz zur klassischen“ ” Betweenness-Zentralität auf gewichteten Graphen definiert. 1 Einführung Die Frage nach der Zentralität bzw. relativen Wichtigkeit der Knoten im Graphen ist eine wichtige Frage bei der Analyse von Graphen. Wir betrachten den abgebildeten Graphen und versuchen die folgenden Fragen zunächst mal intuitiv zu beantworten. Welcher Knoten ist zentral in diesem Graphen? Mit welcher Begründung? Es gibt verschiedene Sichtweisen, was unter Zentralität eines Knoten verstanden werden kann, und daher auch verschiedene Ansätze für die Definition von Zentralität. An dieser Stelle möchten wir bewusst vermeiden gleich von sozialen Netzwerken zu sprechen und davon, auf welche Weise eine Person als zentral gesehen werden kann. Denn es soll nicht der Eindruck erweckt werden, dass der Zentralitätsbegriff nur in diesem Zusammenhang zu verstehen ist. Für uns spielt es keine Rolle, was die Graphen und Netzwerke konkret darstellen: ob es um Netzwerke mit Bahnhöfen als Knoten und Strecken als Kanten oder soziale Netzwerke mit Personen als Knoten und Freundschaftsbeziehungen als Kanten oder ein anderes System geht. (Dies sind die speziellen Anwendungsgebiete der Netzwerkanalyse.) Wir beschäftigen uns vor allem mit den Methoden, mithilfe deren wir die Netzwerke analysieren können. 3 Max Flow-Zentralität Marina Herbst 2 Begriffe und Grundlagen Dieses Kapitel enthält sehr viele Definitionen und dient vor allem der Wiederholung der Begriffe und Notationen. 2.1 Graphentheorie Zunächst werden wir einige zentrale Begriffe und Grundlagen aus der Graphentheorie wiederholen bzw. einführen. 2.1 Definition (ungerichteter Graph) Das Paar G = (V, E) bezeichnet einen ungerichteten Graphen, wobei V = {1, . . . , n}, n ∈ N, eine endliche Menge und E ⊆ V2 eine Menge von zweielementigen Teilmengen von V ist. Die Elemente v ∈ V nennen wir Knoten, die Elemente e ∈ E Kanten. 2.2 Definition (gerichteter Graph) Sind die Kanten geordnete Paare (u, v) ∈ V × V, so ist der Graph gerichtet. 2.3 Definition (einfacher Graph) Wir nennen einen Graphen einfach, wenn er keine Schleifen und keine Mehrfachkanten enthält. 2.4 Definition (gerichteter Multigraph) Das Paar G = (V, E) aus einer endlichen Menge V von Knoten und einer Multimenge E ⊆ V × V von Kanten (d.h. Menge E zusammen mit einer Vielfachheit # : E → N0 ihrer Elemente) bezeichnet einen gerichteten Multigraphen. 2.5 Bemerkung Ein Multigraph G = (V, E) ohne Mehrfachkanten (d.h. E ist eine gewöhnliche Menge), ist ein (gewöhnlicher) Graph. Auch wenn manche Begriffe nur kurz in Zukunft erwähnt werden, möchten wir sie erläutern. 2.6 Definition (Weg) Ein Weg ist eine Folge v1 , v2 , . . . , vk von Knoten vi ∈ V, 1 ≤ i ≤ k, k ∈ N, in der zwei aufeinander folgende Knoten durch eine Kante aus E verbunden sind. 2.7 Definition (Zykel) Ein Weg v1 , v2 , . . . , vk in einem Graphen heißt Zykel, falls gilt: v1 = vk . 2.8 Definition (Baum) Ein Graph T = (V(T ), E(T )) heißt Baum, wenn es zwischen je zwei Knoten aus V(T ) genau einen Weg in T gibt. 4 Max Flow-Zentralität Marina Herbst 2.9 Definition (gewichteter Graph) Ist G = (V, E) ein Graph und ist eine Kantengewichtsfunktion c : E → R+0 gegeben, so sprechen wir von einem gewichteten Graphen G. 2.10 Bemerkung Der Begriff Kantengewicht“ schließt andere Interpretationen von c nicht aus, etwa als Kapa” zität, Länge, Wahrscheinlichket, Gewinn, Kosten, Zeitdauer, Stärke usw. 2.2 Netzwerkanalyse Wir benötigen noch einige Begriffe aus der Netzwerkanalyse. 2.11 Definition (Netzwerk) Sei D = (V, E) ein einfacher gerichteter Graph mit Kantenkapazitäten c : E → R+0 und ausgezeichneten Knoten s, t ∈ V, s (source) Quelle und t (target) Senke. Das Tupel (D; s; t; c) nennen wir Netzwerk. 2.12 Definition (Fluss) Eine Abbildung f : E → R+0 heißt Fluss, falls sie die folgenden Bedingungen erfüllt: (i) Kapazitätsbedingung: für alle (i, j) ∈ E gilt 0 ≤ f (i, j) ≤ c(i, j) (ii) Flusserhaltungsbedingung: für alle i ∈ V \ {s, t} gilt X X f (i, j) − f ( j, i) = 0. { j|(i, j)∈E} { j|( j,i)∈E} Die Bedingung (i) besagt also, dass durch jede Kante ein nicht-negativer, durch die Kapazität der Kante beschränkter Fluss erfolgt. Die Bedingung (ii) besagt: In jeden Knoten (abgesehen von der Quelle s und der Senke t) fließt genauso viel hinein wie heraus. Es ist anschaulich klar, dass der Gesamtfluss aus s heraus gleich dem Gesamtfluss nach t sein sollte. 2.13 Definition (Wert des Flusses) Der Ausdruck X X w( f ) := f (s, i) − f (i, s) (s,i)∈E (i,s)∈E | heißt Wert des Flusses f . 5 {z =0 } Max Flow-Zentralität Marina Herbst 2.14 Definition (maximaler Fluss) Ein Fluss f heißt maximal, falls w( f ) ≥ w( f 0 ) für alle Flüsse f 0 im Netzwerk (D; s; t; c). (wird auch Max Flow genannt) Das Hauptproblem der Flusstheorie ist die Konstruktion eines maximalen Flusses auf einem gegebenen Netzwerk. 2.3 Betweenness-Zentralität In diesem Abschnitt befassen wir uns mit der Betweenness-Zentralität. Dieses Maß wird später zu einem neuen Zentralitätsmaß erweitert. Die Definition von Betweenness-Zentralität stammt von Anthonisse (1971) [1], Freeman (1977) [4]. 2.15 Definition (Betweenness-Zentralität) Sei G die Klasse aller Multigraphen und G = (V, E) ∈ G mit V = {1, . . . , n}. Weiter bezeichne σG (s, t) die Anzahl der kürzesten Wege von s nach t und σG (s, t|v) die Anzahl der kürzesten s-t-Wege, die v als inneren Knoten enthalten, d.h. v liegt auf dem Weg von s nach t, aber v , s, t. Wir definieren die Betweenness-Zentralität cB durch X σG (s, t|v) cB (G)v = σG (s, t) s,t ∈V (1) für alle G = (V, E) ∈ G. Außerdem definieren wir: 0 0 = 0. Bei der Definition von Betweenness-Zentralität sind insbesondere zwei wesentliche Aspekte festzuhalten. • Das Betweenness-Maß cB basiert auf der Annahme, dass die Informationen von einem Knoten zum anderen nur auf den kürzesten Wegen fließen. • Das Betweennes-Maß ist in dieser Form auf ungewichteten Graphen definiert. Für manche Anwendungen können diese Aspekte Einschränkungen darstellen, so beispielsweise bei der Analyse von sozialen Netzwerken, worauf Freeman/ Borgatti/ White [5] hinweisen. Die Annahme, dass der Informationfluss von einer Person zu der anderen nur entlang der kürzesten Wege, die diese zwei miteinander verbindet, erfolgt, sei unrealistisch und sogar irreführend bei der Charakterisierung der zwischenmenschlichen Kommunikation. Weiter ist das 6 Max Flow-Zentralität Marina Herbst so definierte Betweenness-Maß auf eine beschränkte Auswahl von Datensätzen anwendbar, also nur auf binäre Datensätze, da cB auf ungewichteten Graphen definiert ist. Durch mehr Daten könnten aber bei der Analyse eventuell neue Einsichten gewonnen werden. So kann die Kantengewichtsfunktion dazu benutzt werden, um ein Maß der sozialen Nähe, die Stärke der Verbundenheit zwischen zwei Personen zu zeigen. Dann wären die Methoden nötig, die dieses Maß bei der Analyse in Betracht ziehen. Deshalb wird eine Erweiterung des Betweenness-Maßes zu einem Maß ohne die genannten Einschränkungen unser Ziel sein. 3 Max Flow-Zentralität Die Möglichkeit des Bestimmens des maximalen Flusses zwischen zwei Knoten s und t eines Netzwerkes legt eine Erweiterung des Betweenness-Maßes unter der Benutzung des maximalen Flusses nahe. 3.1 Definition Im Folgenden definieren wir das Max Flow-Maß und zeigen später die Analogie zum BetweennessMaß. Die Idee und die Definition der Max Flow-Zentralität geht auf Freeman/ Borgatti/ White (1991) [5] zurück. 3.1 Definition (Max Flow-Zentralität) Sei G = (V, E) mit V = {1, . . . , n} und c : E → R+0 . Weiter bezeichne w( f st ) den Wert des maximalen Flusses von s nach t und w( f st |v) den Wert des maximalen Flusses von s nach t, der durch den Knoten v fließt, wobei v , s, t. Wir definieren die Max Flow-Zentralität cF durch X w( f st |v) s,t ∈V s<t cF (G)v = X . w( f st ) s,t ∈V s<t Dies ergibt ein Maß, das zwischen 0 und 1 variiert. 7 (2) Max Flow-Zentralität Marina Herbst Schnitte im Netzwerk Bevor wir zu einem Beispiel der Berechnung der Max Flow-Zentralität kommen, erinnern wir uns noch an Max Flow - Min Cut - Satz und ein paar Definitionen aus der Netzwerkanalyse. Diese sind zwar nicht entscheidend bei der obigen Definition des Max Flow-Maßes, werden uns aber bei dem nachfolgenden Beispiel hilfreich sein. 3.2 Satz (Max Flow - Min Cut - Theorem von Ford & Fulkerson (1956) [3]) In einem Netzwerk (D; s; t; c) ist der Wert eines Maximalflusses gleich der minimalen Kapazität eines s-t-Schnittes. 3.3 Definition (Schnitt) Eine Menge S ⊂ V induziert eine Partition (S , V \ S ) der Knotenmenge, die wir Schnitt im Graphen D = (V, E) nennen. 3.4 Definition (s-t-Schnitt) In einem Netzwerk (D; s; t; c) heißt (S , V \ S ) ein s-t-Schnitt, falls s ∈ S und t ∈ V \ S . 3.5 Definition (Kapazität eines Schnittes) Die Kapazität eines Schnittes (S , V \ S ) ist definiert durch: X c(S , V \ S ) = c(i, j). (i, j)∈E i∈S j∈V\S 3.6 Definition (minimaler Schnitt) Ein Schnitt heißt minimal, falls c(S , V \ S ) ≤ c(S 0 , V \ S 0 ) für alle Schnitte (S 0 , V \ S 0 ) im Netzwerk (D; s; t; c), wobei S 0 ⊂ V mit ∅ , S 0 , V. (wird auch Min Cut genannt) 3.7 Bemerkung Analog können wir den minimalen s-t-Schnitt definieren. Die Kapazität des minimalen s-t-Schnittes ist im Gegensatz zum Wert des maximalen Flusses von s nach t leichter zu sehen“ (in kleinen Graphen). Da es sich dabei nach Satz 3.2 um densel” ben Wert handelt, werden wir diese Tatsache in unserem Beispiel benutzen, wenn wir den Wert eines maximalen Flusses bestimmen wollen. 8 Max Flow-Zentralität Marina Herbst 3.2 Beispiel Nun betrachten wir folgendes Beispiel. Gegeben sei Graph G = (V, E) mit V = { a, b, c, d, e } und ganzzahligen Kantenkapazitäten. Aufgabe: Die Max Flow-Zentralitäten jedes Knotens aus G sollen berechnet werden. Zuerst wollen wir die Max Flow-Zentralität des Knotens b berechnen. Wir untersuchen die maximalen Flüsse zwischen je zwei Knoten des Graphs G und die maximalen Flüsse über den Knoten b (wobei b weder Quelle noch Senke ist) und halten die Ergebnisse in der folgenden Tabelle fest. Quelle a a a c c d Senke c d e d e e max. Fluss w( fac ) = 6 w( fad ) = 4 w( fae ) = 2 w( fcd ) = 4 w( fce ) = 2 w( fde ) = 2 max. Fluss über b w( fac |b) = 3 w( fad |b) = 1 w( fae |b) = 0 w( fcd |b) = 1 w( fce |b) = 0 w( fde |b) = 0 3.8 Bemerkung Bei der Untersuchung von Flüssen werden die Kanten als gerichtet aufgefasst. Hier ist nochmal die allgemeine Formel: X cF (G)v = w( f st |v) s,t ∈V, s<t X . w( f st ) s,t ∈V, s<t Die Max Flow-Zentralität des Knotens b ist demnach: cF (G)b = 3+1+0+1+0+0 5 = = 0, 25. 6 + 4 + 2 + 4 + 2 + 2 20 9 Max Flow-Zentralität Marina Herbst Analog berechnen wir die Max Flow-Zentralitäten der anderen Knoten des Graphs G und erhalten: cF (G)a = cF (G)b = cF (G)c = cF (G)d = cF (G)e = 7 20 5 20 13 20 6 24 0 30 = 0, 35 = 0, 25 = 0, 65 = 0, 25 =0 Wir vergleichen die berechneten Werte und stellen fest: Knoten c ist der zentralste Knoten in dem Graphen. 3.3 Kritische Bemerkung Bei der genaueren Betrachtung des obigen Beispiels fällt Folgendes auf: Untersucht man den maximalen Fluss von Quelle a zu Senke d, so kann man durch den Knoten b eine oder zwei Einheiten fließen lassen. Es gibt also zwei Möglichkeiten, wie der maximale Fluss in diesem Netzwerk erfolgen kann. (Man beachte, dass der Wert des maximalen Flusses dagegen eindeutig ist und beträgt in diesem Fall w( fad ) = 4.) Auf den folgenden Abbildungen sind nun die jeweiligen Flüsse zu sehen. Die zwei Zahlen an den Kanten stehen dabei für Folgendes: Die Zahl in Klammern gibt die Kantenkapazität an und die andere Zahl gibt an, wie viele Einheiten durch die Kante fließen. Die Zahl über dem Knoten b zeigt, wie viel Fluss muss im gegebenen Fall durch den Knoten b erfolgen. Fall 1 Fall 2 10 Max Flow-Zentralität Marina Herbst Es stellt sich logischerweise die folgende Frage: Welchen Wert nimmt man für die Berechnung: • das Minimum ? • das Maximum ? • den Mittelwert ? In dem obigen Beispiel haben wir jeweils mit minimalen Werten gerechnet, wie dies auch bei Freeman/ Borgatti/ White (1991) [5] der Fall ist. Allerdings gibt Freeman et al. es nicht explizit an, warum gerade dieser Wert genommen werden muss. An dieser Stelle ist es interessant zu überlegen, was beispielsweise dafür spricht, das Minimum zu nehmen. Die Idee, die möglicherweise dahinter steht, kann man sich so vorstellen: Wählen wir den minimalen Wert des Flusses, der über den einzelnen Knoten erfolgt, so gibt uns die Max Flow-Zentralität an, in welchem Ausmaß ein einzelner Knoten zum gesamten maximalen Fluss (mindestens) beiträgt. Dann wird dieser Knoten entfernt und maximaler Fluss neu berechnet. 4 Analogie zwischen Betweenness und Max Flow Untersucht man die Betweenness- und Max Flow-Zentralitäten, so fällt die gewisse Ähnlichkeit der beiden Maße zwar auf, aber direkte Analogie zwischen ihnen ist nicht sofort einzusehen. Um auf die Analogie beider Zentalitäten zu kommen, müssen wir noch auf die Normalisierung eingehen. 4.1 Normalisierung Es gibt insbesondere zwei verbreitete Sichtweisen, was die Definition der Normalisierung betrifft. 1. Ein (Knoten-)Zentralitätsmaß c heißt normiert, falls X c(G)v = 1 für G = (V, E). v∈V Zu jeder Zentralität c gibt es dann eine eindeutig bestimmte normierte Zentralität b c mit c(G) X v falls c(G) x > 0 für ein x ∈ V c(G) x x∈V b c(G)v = 1 sonst n 11 Max Flow-Zentralität Marina Herbst 2. Ein Zentralitätsmaß ist normiert, wenn es zwischen 0 und 1 variiert. Das Max Flow-Maß ist normiert im Sinne von 2, was aus der Definition 3.1 folgt und bereits erwähnt wurde, das Betweenness-Maß ist dagegen nicht normiert. Wenn wir also das Betweenness-Maß geeignet normieren, so werden wir dann tatsächlich die Analogie zwischen den beiden Zentralitätsmaßen feststellen können. Zu Erinnerung ist hier nochmal die Definition von Betweenness-Maß: cB (G)v = Sei weiter X σG (s, t|v) . σG (s, t) s,t ∈V (3) σG (s, t|v) =: δ st (v). Dann kann die Formel (3) wie folgt geschrieben werden: σG (s, t) X cB (G)v = δ st (v). (4) s,t ∈V Dividieren wir cB (G)v durch X cB (G) x , so erhalten wir ein normiertes Betweenness-Maßb cB (G)v . x∈V Und hier sind die Definitionen der beiden Zentralitätsmaßen zum Vergleich. X X δ st (v) s,t ∈V b cB (G)v = X cF (G)v = cB (G) x w( f st |v) s,t ∈V, s<t X w( f st ) s,t ∈V, s<t x∈V Betweennes-Maß Max Flow-Maß 4.2 Beispiel: Sterngraph Zur weiteren Veranschaulichung der Analogie der beiden Zentralitätsmaßen möchten wir noch ein Beispiel behandeln. Wir betrachten den folgenden Sterngraphen G = (V, E) mit V = {a, b, c, d, e}. und berechnen die Betweenness- und Max Flow-Zentralitäten jedes Knotens aus G. Um Max Flow-Zentralitäten berechnen zu können, muss noch die Kantengewichtsfunktion c gegeben sein. In diesem Fall definieren wir einfach c(e) = 1 für alle Kanten e ∈ E. 12 Max Flow-Zentralität Marina Herbst • Zuerst berechnen wir die Betweenness-Zentralität des Knotens a und erhalten: cB (G)a = σG (b, c|a) σG (b, d|a) σG (b, e|a) σG (c, d|a) σG (c, e|a) σG (d, e|a) + + + + + σG (b, c) σG (b, d) σG (b, e) σG (c, d) σG (c, e) σ (d, e) | {z } | {z } | {z } | {z } | {z } | G{z } =1 =1 =1 =1 =1 =1 = 6. Für die anderen Knoten ist es leicht zu sehen, dass sie Betweenness-Zentralität 0 haben, da sie nicht auf den (kürzesten) Wegen zwischen zwei anderen Knoten liegen. Normierte Betweenness-Zentralität des Knotens a ist dann cB (G)a 6 b cB (G)a = X = = 1. cB (G) x 6 x∈V • Nun wollen wir die Max Flow-Zentralität des Knotens a berechnen. Wir untersuchen die maximalen Flüsse und halten die Ergebnisse in der Tabelle fest. Quelle b b b c c d Senke c d e d e e max. Fluss w( fbc ) = 1 w( fbd ) = 1 w( fbe ) = 1 w( fcd ) = 1 w( fce ) = 1 w( fde ) = 1 max. Fluss über a w( fbc |a) = 1 w( fbd |a) = 1 w( fbe |a) = 1 w( fcd |a) = 1 w( fce |a) = 1 w( fde |a) = 1 Max Flow-Zentralität des Knotens a ist dann: cF (G)a = 6 = 1. 6 Max Flow-Zentralität der anderen Knoten ist gleich 0, denn es gibt keine Flüsse, die über diese erfolgen. 13 Max Flow-Zentralität Marina Herbst Es gilt also: cF (G)a = b cB (G)a = 1, sowie cF (G) x = b cB (G) x = 0 für alle x aus V \ {a} = {b, c, d, e}. Beide Zentralitätsmaße liefern in diesem Fall dasselbe Ergebnis. Es liegt an der Baumstruktur des Sterngraphs, denn in diesem Graphen gibt es zwischen je zwei Knoten genau einen Weg (dieser ist auch der kürzeste), und es ist klar, dass nur auf diesem Wege auch der Fluss erfolgen kann. 5 Zusammenfassung Am Schluss möchten wir nochmal festhalten, wovon wir ausgegangen sind, was die Motivation für die Erweiterung des bereits vorhandenen Zentralitätsmaßes war, und was die Unterschiede zwischen den hier behandelten Maßen sind. Hier sind nun die Antworten auf diese Fragen kurz zusammengefasst. • Ausgangspunkt war klassische“ Betweenness-Zentralität. ” • Betweenness-Maß – berücksichtigt nur die kürzesten Wege, – ist für ungewichtete Graphen definiert. Dies kann sich in manchen Anwendungsfällen als Einschränkung erweisen. • Max Flow-Maß – basiert auf maximalem Fluss, – kann auf gewichtete sowie ungewichtete Graphen angewandt werden (im Fall von ungewichteten Graphen setzt man alle Kantenkapazitäten gleich eins). Über die Ergebnisse lässt sich noch Folgendes sagen: • Bei der Analyse von Bäumen liefern beide Maße dasselbe Ergebnis. • Bei den zyklischen Graphen sind die Ergebnisse unterschiedlich. 5.1 Bemerkung Die Entscheidung, welches Maß in einem gegebenen Anwendungsfall die Erfordernisse am besten erfüllt, bedarf der Beurteilung des Benutzers. 14 Max Flow-Zentralität Marina Herbst Literatur [1] J. M. Anthonisse: The Rush in a Graph. Amsterdam: Mathematisch Centrum, 1971 [2] Ulrik Brandes: Methoden der Netzwerkanalyse. Skript zur Vorlesung, 2005 [3] L. R. Ford, Jr. and D. R. Fulkerson: Maximal Flow Through a Network. Canadian Journal of Math. 8, 1956, S. 399-404 [4] Linton C. Freeman: A Set of Measures of Centrality Based on Betweenness. Sociometry 40, 1977, S. 35-41 [5] Linton C. Freeman, Stephen P. Borgatti, Douglas R. White: Centrality in Valued Graphs: A Measure of Betweenness Based on Network Flow. Social Networks 13, 1991, S. 141-151 [6] Dieter Jungnickel: Graphen, Netzwerke und Algorithmen. BI-Wissenschaftsverlag, 1994 [7] Dorothea Wagner: Entwurf und Analyse von Algorithmen. Skript zur Vorlesung, 1999/2000 15