2.1 Gerichtete Graphen

84
Kapitel 2: Netzwerke Inhalt: 2.1 Gerichtete Graphen 2.2 Netzwerke und Flüsse 2.3 Trennende Mengen

description

Kapitel 2: Netzwerke Inhalt: 2.1 Gerichtete Graphen 2.2 Netzwerke und Flüsse 2.3 Trennende Mengen. 2.1 Gerichtete Graphen. - PowerPoint PPT Presentation

Transcript of 2.1 Gerichtete Graphen

Page 1: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke

Inhalt: 2.1 Gerichtete Graphen

2.2 Netzwerke und Flüsse

2.3 Trennende Mengen

Kapitel 2: Netzwerke

Inhalt: 2.1 Gerichtete Graphen

2.2 Netzwerke und Flüsse

2.3 Trennende Mengen

Page 2: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 2

2.1 Gerichtete Graphen2.1 Gerichtete Graphen

Ein gerichteter Graph besteht aus einer Menge

von Ecken und einer Menge von gerichteten

Kanten. Die gerichteten Kanten zeigen von einer

Ecke zu einer anderen oder zur gleichen Ecke.

D.h.: Zu jeder Kante k gibt es eine Anfangs-

ecke e1 und eine Endecke e2, so dass Beispiel

k von e1 nach e2 zeigt.

Bemerkungen. Gerichtete Graphen heißen auch Digraphen (von engl.

“directed graph”). Eine gerichtete Kante wird oft auch Bogen genannt.

Ein gerichteter Graph besteht aus einer Menge

von Ecken und einer Menge von gerichteten

Kanten. Die gerichteten Kanten zeigen von einer

Ecke zu einer anderen oder zur gleichen Ecke.

D.h.: Zu jeder Kante k gibt es eine Anfangs-

ecke e1 und eine Endecke e2, so dass Beispiel

k von e1 nach e2 zeigt.

Bemerkungen. Gerichtete Graphen heißen auch Digraphen (von engl.

“directed graph”). Eine gerichtete Kante wird oft auch Bogen genannt.

Page 3: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 3

Quelle und SenkeQuelle und Senke

Meistens werden wir die Eckenmenge mit E und die Kantenmenge mit

K bezeichnen. Für den gerichteten Graphen schreiben wir dann

(E, K) oder einfach .

Die Anzahl der gerichteten Kanten, deren Anfangsecke e ist (das

heißt, die von e wegzeigen), heißt Ausgangsgrad deg+(e) von e.

Entsprechend heißt die Anzahl der gerichteten Kanten mit Endecke e

(die also zu e hinzeigen) Eingangsgrad deg(e) von e.

Eine Ecke e heißt Quelle, wenn deg(e) = 0 ist; sie heißt Senke,

wenn deg+(e) = 0 ist. Aus einer Quelle zeigen also nur gerichtete

Kanten heraus, während sie in eine Senke nur hineinzeigen.

Meistens werden wir die Eckenmenge mit E und die Kantenmenge mit

K bezeichnen. Für den gerichteten Graphen schreiben wir dann

(E, K) oder einfach .

Die Anzahl der gerichteten Kanten, deren Anfangsecke e ist (das

heißt, die von e wegzeigen), heißt Ausgangsgrad deg+(e) von e.

Entsprechend heißt die Anzahl der gerichteten Kanten mit Endecke e

(die also zu e hinzeigen) Eingangsgrad deg(e) von e.

Eine Ecke e heißt Quelle, wenn deg(e) = 0 ist; sie heißt Senke,

wenn deg+(e) = 0 ist. Aus einer Quelle zeigen also nur gerichtete

Kanten heraus, während sie in eine Senke nur hineinzeigen.

G

G

Page 4: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 4

AnwendungsbeispieleAnwendungsbeispiele

Wasserkreislauf: Kanten = Rohre, Richtung der Kanten = Richtung des

fließenden Wassers. Aus einer Quelle fließt nur Wasser heraus, in eine

Senke nur hinein.

Stromkreislauf: Kanten = elektrische Verbindungen, Ecken = Verzwei-

gungspunkte oder Verbraucher, Richtung der Kanten = Stromrichtung.

Quelle und Senke = zwei Pole einer Stromquelle.

Straßensysteme: Ecken = Kreuzungen, Kanten = Straßen. Mit Hilfe

gerichteter Graphen können auch Einbahnstraßen dargestellt werden.

Handelswege: Der Weg von Produkten, der vom Produzenten über

einige Zwischenhändler hin zum Fachgeschäft führt, kann modelliert

und optimiert werden. Produzent = Quelle, Fachgeschäft = Senke.

Wasserkreislauf: Kanten = Rohre, Richtung der Kanten = Richtung des

fließenden Wassers. Aus einer Quelle fließt nur Wasser heraus, in eine

Senke nur hinein.

Stromkreislauf: Kanten = elektrische Verbindungen, Ecken = Verzwei-

gungspunkte oder Verbraucher, Richtung der Kanten = Stromrichtung.

Quelle und Senke = zwei Pole einer Stromquelle.

Straßensysteme: Ecken = Kreuzungen, Kanten = Straßen. Mit Hilfe

gerichteter Graphen können auch Einbahnstraßen dargestellt werden.

Handelswege: Der Weg von Produkten, der vom Produzenten über

einige Zwischenhändler hin zum Fachgeschäft führt, kann modelliert

und optimiert werden. Produzent = Quelle, Fachgeschäft = Senke.

Page 5: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 5

Zusammenhang mit RelationenZusammenhang mit Relationen

Wir betrachten nur einfache gerichtete Graphen: Bei ihnen sind keine

zwei Ecken durch mehrere gleichgerichtete Kanten verbunden.

Während die Kanten bei ungerichteten einfachen Graphen sich als

zweielementige (ungeordnete) Teilmengen der Eckenmenge auffassen

lassen, können wir gerichtete Kanten als (geordnete) Paare von Ecken

beschreiben: Die gerichtete Kante, die von der Anfangsecke e1 zur

Endecke e2 zeigt, können wir als Paar (e1, e2) schreiben.

Die gesamte Kantenmenge K ist daher eine Teilmenge des kartesi-

schen Produkts EE, also eine Relation auf der Eckenmenge.

Einfache gerichtete Graphen veranschaulichen also Relationen.

Wir betrachten nur einfache gerichtete Graphen: Bei ihnen sind keine

zwei Ecken durch mehrere gleichgerichtete Kanten verbunden.

Während die Kanten bei ungerichteten einfachen Graphen sich als

zweielementige (ungeordnete) Teilmengen der Eckenmenge auffassen

lassen, können wir gerichtete Kanten als (geordnete) Paare von Ecken

beschreiben: Die gerichtete Kante, die von der Anfangsecke e1 zur

Endecke e2 zeigt, können wir als Paar (e1, e2) schreiben.

Die gesamte Kantenmenge K ist daher eine Teilmenge des kartesi-

schen Produkts EE, also eine Relation auf der Eckenmenge.

Einfache gerichtete Graphen veranschaulichen also Relationen.

Page 6: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 6

Gerichtete Kantenzüge & Co.Gerichtete Kantenzüge & Co.

Ein gerichteter Kantenzug ist eine Folge k1, k2, ..., ks von gerichteten

Kanten, zu denen es Ecken e0, e1, e2, ..., es gibt, so dass

- k1 von e0 nach e1 zeigt,

- k2 von e1 nach e2 zeigt,

- ..., ks von ks–1 nach es zeigt.

Ein gerichteter Kantenzug heißt geschlossen, wenn es = e0 ist.

Ein gerichteter Kantenzug heißt gerichteter Weg, falls alle Kanten

verschieden sind.

Ein gerichteter Weg heißt gerichteter Pfad, falls die Ecken seiner

gerichteten Kanten alle paarweise verschieden sind.

Ein geschlossener gerichteter Pfad heißt gerichteter Kreis.

Ein gerichteter Kantenzug ist eine Folge k1, k2, ..., ks von gerichteten

Kanten, zu denen es Ecken e0, e1, e2, ..., es gibt, so dass

- k1 von e0 nach e1 zeigt,

- k2 von e1 nach e2 zeigt,

- ..., ks von ks–1 nach es zeigt.

Ein gerichteter Kantenzug heißt geschlossen, wenn es = e0 ist.

Ein gerichteter Kantenzug heißt gerichteter Weg, falls alle Kanten

verschieden sind.

Ein gerichteter Weg heißt gerichteter Pfad, falls die Ecken seiner

gerichteten Kanten alle paarweise verschieden sind.

Ein geschlossener gerichteter Pfad heißt gerichteter Kreis.

Page 7: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 7

Zugrundeliegender GraphZugrundeliegender Graph

Zu jedem gerichteten Graphen können wir einen ungerichteten

Graphen G konstruieren:

Wir ersetzen einfach jede gerichtete Kante von durch eine

ungerichtete Kante mit den gleichen Ecken. Dieser Graph G heißt

zugrundeliegender Graph von .

Kurz: Der zugrundeliegende Graph von entsteht, wenn wir uns die

Pfeilspitzen von wegdenken.

Zu jedem gerichteten Graphen können wir einen ungerichteten

Graphen G konstruieren:

Wir ersetzen einfach jede gerichtete Kante von durch eine

ungerichtete Kante mit den gleichen Ecken. Dieser Graph G heißt

zugrundeliegender Graph von .

Kurz: Der zugrundeliegende Graph von entsteht, wenn wir uns die

Pfeilspitzen von wegdenken.

G

G

G

G G

Page 8: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 8

Anwendung: TurniereAnwendung: Turniere

Wir betrachten ein Turnier (z.B. ein Skatturnier), für das gilt:

Jeder Teilnehmer spielt gegen jeden anderen und bei jedem Spiel gibt

es einen Gewinner (kein “Unentschieden”).

Modellierung der Spielergebnisse durch einen gerichteten Graphen:

- Ecken: Spieler,

- Kante von x nach y: Spieler x gewinnt gegen Spieler y.

Dann gibt es zwischen je zwei Ecken x und y entweder eine Kante

von x nach y oder eine Kante von y nach x. Dann sind im

zugrundeliegenden Graphen je zwei Ecken durch genau eine Kante

verbunden, er ist also ein vollständiger Graph.

Wir betrachten ein Turnier (z.B. ein Skatturnier), für das gilt:

Jeder Teilnehmer spielt gegen jeden anderen und bei jedem Spiel gibt

es einen Gewinner (kein “Unentschieden”).

Modellierung der Spielergebnisse durch einen gerichteten Graphen:

- Ecken: Spieler,

- Kante von x nach y: Spieler x gewinnt gegen Spieler y.

Dann gibt es zwischen je zwei Ecken x und y entweder eine Kante

von x nach y oder eine Kante von y nach x. Dann sind im

zugrundeliegenden Graphen je zwei Ecken durch genau eine Kante

verbunden, er ist also ein vollständiger Graph.

Page 9: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 9

TurniereTurniere

Ein gerichteter Graphen, dessen zugrundeliegender Graph vollständig

ist, heißt Turnier.

Beispiel: Alle Turniere mit vier Ecken (bzw. vier Teilnehmern):

Ein gerichteter Graphen, dessen zugrundeliegender Graph vollständig

ist, heißt Turnier.

Beispiel: Alle Turniere mit vier Ecken (bzw. vier Teilnehmern):

Page 10: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 10

Gerichtete hamiltonsche PfadeGerichtete hamiltonsche Pfade

2.1.1 Satz. In jedem Turnier gibt es einen gerichteten Pfad, der alle

Ecken enthält.

Bemerkung: Einen gerichteten Pfad, der alle Ecken enthält, nennt man

auch gerichteten hamiltonschen Pfad.

Beweis. Wir konstruieren einen gerichteten hamiltonschen Pfad:

Wir wählen eine beliebige gerichtete Kante (e1, e2) des Turniers und

beginnen mit dem gerichteten Pfad von e1 nach e2.

Angenommen, wir haben bereits einen gerichteten Pfad durch die

Ecken e1, ..., es konstruiert und wollen eine weitere Ecke e* einfügen.

In einem Turnier gibt es für e* nur zwei Möglichkeiten.

2.1.1 Satz. In jedem Turnier gibt es einen gerichteten Pfad, der alle

Ecken enthält.

Bemerkung: Einen gerichteten Pfad, der alle Ecken enthält, nennt man

auch gerichteten hamiltonschen Pfad.

Beweis. Wir konstruieren einen gerichteten hamiltonschen Pfad:

Wir wählen eine beliebige gerichtete Kante (e1, e2) des Turniers und

beginnen mit dem gerichteten Pfad von e1 nach e2.

Angenommen, wir haben bereits einen gerichteten Pfad durch die

Ecken e1, ..., es konstruiert und wollen eine weitere Ecke e* einfügen.

In einem Turnier gibt es für e* nur zwei Möglichkeiten.

Page 11: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 11

Beweis (I)Beweis (I)

Entweder es zeigt eine Kante von e* zu e1. Dann können wir e* vorne

an unseren Pfad anhängen und erhalten den Pfad durch e*, e1, ..., es.

Oder es zeigt eine Kante von e1 zu e*. Dann zeigen eventuell auch

noch Kanten von weiteren Ecken des Pfades zu e*. Daher unterschei-

den wir zwei weitere Fälle. Wenn von allen Ecken e1, e2, ..., es Kanten

zu e* zeigen, dann hängen wir e* hinten an unseren Pfad an und

erhalten den Pfad durch e1, ..., es, e*.

Entweder es zeigt eine Kante von e* zu e1. Dann können wir e* vorne

an unseren Pfad anhängen und erhalten den Pfad durch e*, e1, ..., es.

Oder es zeigt eine Kante von e1 zu e*. Dann zeigen eventuell auch

noch Kanten von weiteren Ecken des Pfades zu e*. Daher unterschei-

den wir zwei weitere Fälle. Wenn von allen Ecken e1, e2, ..., es Kanten

zu e* zeigen, dann hängen wir e* hinten an unseren Pfad an und

erhalten den Pfad durch e1, ..., es, e*.

e1 e2 es

e*

Page 12: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 12

Beweis (II)Beweis (II)

Wenn nicht von allen Ecken e1, e2, ..., es Kanten zu e* zeigen, dann

gibt es einen Index r (mit 1 < r < s), so dass von allen Ecken e1, ..., er

Kanten zu e* zeigen, von er+1 jedoch nicht. Dann können wir e* zwi-

schen er und er+1 einfügen und erhalten den Pfad durch e1, ..., er, e*,

er+1, ..., es.

Dieses Verfahren führen wir solange durch, bis wir einen gerichteten

Pfad erhalten haben, der jede Ecke enthält.

Wenn nicht von allen Ecken e1, e2, ..., es Kanten zu e* zeigen, dann

gibt es einen Index r (mit 1 < r < s), so dass von allen Ecken e1, ..., er

Kanten zu e* zeigen, von er+1 jedoch nicht. Dann können wir e* zwi-

schen er und er+1 einfügen und erhalten den Pfad durch e1, ..., er, e*,

er+1, ..., es.

Dieses Verfahren führen wir solange durch, bis wir einen gerichteten

Pfad erhalten haben, der jede Ecke enthält.

e1 e2 es

e*

er er+1

Page 13: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 13

BeispielBeispiel

Beispiel: In folgendem Turnier mit fünf Ecken können wir folgenden

gerichteten Pfad durch alle Ecken finden: 1 4 2 5 3.

Beispiel: In folgendem Turnier mit fünf Ecken können wir folgenden

gerichteten Pfad durch alle Ecken finden: 1 4 2 5 3.

2

34

5

1

Page 14: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 14

Das Problem der „eindeutigen Anordnung“Das Problem der „eindeutigen Anordnung“

Ein gerichteter hamiltonscher Pfad ist nicht ohne Weiteres geeignet,

um den besten Spieler festzustellen bzw. um die Teilnehmer zu

„ordnen”.

Obiges Beispiel: Obwohl Spieler 3 in der „Rangfolge” des obigen

Pfades weit hinter Spieler 1 kommt, gewinnt er gegen diesen.

Außerdem gibt es in einem Turnier im Allgemeinen nicht nur einen

sondern mehrere gerichtete hamiltonsche Pfade.

Obiges Beispiel: Der Pfad durch die Ecken 4 3 1 2 5 ist ein

weiterer gerichteter hamiltonscher Pfad.

Ein gerichteter hamiltonscher Pfad ist nicht ohne Weiteres geeignet,

um den besten Spieler festzustellen bzw. um die Teilnehmer zu

„ordnen”.

Obiges Beispiel: Obwohl Spieler 3 in der „Rangfolge” des obigen

Pfades weit hinter Spieler 1 kommt, gewinnt er gegen diesen.

Außerdem gibt es in einem Turnier im Allgemeinen nicht nur einen

sondern mehrere gerichtete hamiltonsche Pfade.

Obiges Beispiel: Der Pfad durch die Ecken 4 3 1 2 5 ist ein

weiterer gerichteter hamiltonscher Pfad.

Page 15: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 15

Transitive gerichtete GraphenTransitive gerichtete Graphen

Bei gewissen Turnieren kann man eine eindeutige Rangfolge der

Spieler angeben.

Ein gerichteter Graph heißt transitiv, wenn für alle Ecken ei, ej, ek gilt:

Wenn (ei, ej) und (ej, ek) Kanten sind, dann ist auch (ei, ek) eine

Kante.

Einfache gerichtete Graphen sind also genau dann transitiv, wenn die

zugehörige Relation auf der Eckenmenge transitiv ist.

Beispiel: Der folgende gerichtete Graph ist transitiv:

Bei gewissen Turnieren kann man eine eindeutige Rangfolge der

Spieler angeben.

Ein gerichteter Graph heißt transitiv, wenn für alle Ecken ei, ej, ek gilt:

Wenn (ei, ej) und (ej, ek) Kanten sind, dann ist auch (ei, ek) eine

Kante.

Einfache gerichtete Graphen sind also genau dann transitiv, wenn die

zugehörige Relation auf der Eckenmenge transitiv ist.

Beispiel: Der folgende gerichtete Graph ist transitiv:

Page 16: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 16

Transitive Turniere enthalten keine KreiseTransitive Turniere enthalten keine Kreise

2.1.2. Korollar. Ein transitives Turnier enthält keinen gerichteten Kreis.

Beweis. Sei (e0, e1), (e1, e2), ..., (es1, es) ein gerichteter Pfad in einem

transitiven Turnier . Da transitiv ist, ist

mit (e0, e1) und (e1, e2) auch (e0, e2) eine gerichtete Kante,

mit (e0, e2) und (e2, e3) auch (e0, e3), ...,

mit (e0, es1) und (es1, es) auch (e0, es).

Da der zugrundeliegende Graph von

einfach ist, ist dann (es, e0) keine Kante.

Also ist der gerichtete Pfad nicht zu

einem gerichteten Kreis erweiterbar.

2.1.2. Korollar. Ein transitives Turnier enthält keinen gerichteten Kreis.

Beweis. Sei (e0, e1), (e1, e2), ..., (es1, es) ein gerichteter Pfad in einem

transitiven Turnier . Da transitiv ist, ist

mit (e0, e1) und (e1, e2) auch (e0, e2) eine gerichtete Kante,

mit (e0, e2) und (e2, e3) auch (e0, e3), ...,

mit (e0, es1) und (es1, es) auch (e0, es).

Da der zugrundeliegende Graph von

einfach ist, ist dann (es, e0) keine Kante.

Also ist der gerichtete Pfad nicht zu

einem gerichteten Kreis erweiterbar.

G

G

es

es1

e2

e1

e0

G

Page 17: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 17

Transitive Turniere kann man anordnenTransitive Turniere kann man anordnen

Bei transitiven Turnieren kann man die „Spieler” in eine eindeutige

Rangfolge bringen:

10.1.3 Satz. Ein transitives Turnier enthält genau einen gerichteten

hamiltonschen Pfad.

Beispiel: Folgendes Turnier ist transitiv

und besitzt nur den gerichteten hamilton-

schen Pfad 2 – 1 – 3 – 4.

Bei transitiven Turnieren kann man die „Spieler” in eine eindeutige

Rangfolge bringen:

10.1.3 Satz. Ein transitives Turnier enthält genau einen gerichteten

hamiltonschen Pfad.

Beispiel: Folgendes Turnier ist transitiv

und besitzt nur den gerichteten hamilton-

schen Pfad 2 – 1 – 3 – 4.

1 2

4 3

Page 18: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 18

Beweis (I)Beweis (I)

Beweis. Angenommen, es gibt zwei verschiedene hamiltonsche Pfade

P1 und P2. Dann gibt es eine gerichtete Kante k, die in P1 aber nicht

in P2 enthalten ist. Diese Kante k zeige von der Ecke e zur Ecke

e*. Da auch P2 die Ecken e und e* enthält, muss P2 einen Teilpfad

P2‘ enthalten, der e und e* verbindet aber k nicht enthält. Würde

der Pfad P2‘ von e* nach e führen, so könnte man ihn mit k zu

einem gerichteten Kreis ergänzen. Dies wäre ein Widerspruch zu

10.1.2.

Beweis. Angenommen, es gibt zwei verschiedene hamiltonsche Pfade

P1 und P2. Dann gibt es eine gerichtete Kante k, die in P1 aber nicht

in P2 enthalten ist. Diese Kante k zeige von der Ecke e zur Ecke

e*. Da auch P2 die Ecken e und e* enthält, muss P2 einen Teilpfad

P2‘ enthalten, der e und e* verbindet aber k nicht enthält. Würde

der Pfad P2‘ von e* nach e führen, so könnte man ihn mit k zu

einem gerichteten Kreis ergänzen. Dies wäre ein Widerspruch zu

10.1.2.

e*e

P2‘

k

Page 19: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 19

Beweis (II)Beweis (II)

Also muss P2‘ von e nach e* führen. Da Turniere einfache Graphen

sind, enthält P2‘ mindestens zwei Kanten, durchquert also mindestens

eine weitere Ecke e‘. Diese Ecke e‘ wird auch von P1 durchlaufen:

Entweder führt ein Pfad von e‘ zu e oder einer von e* zu e‘.

In beiden Fällen ergibt sich ein gerichteter Kreis:

Im ersten Fall von e‘ über P1 zu e und

dann über P2‘ wieder zu e‘; im zweiten

Fall von e‘ über P2‘ zu e* und dann

über P1 wieder zu e‘.

Dies ist ein Widerspruch zu 2.1.2.

Also muss P2‘ von e nach e* führen. Da Turniere einfache Graphen

sind, enthält P2‘ mindestens zwei Kanten, durchquert also mindestens

eine weitere Ecke e‘. Diese Ecke e‘ wird auch von P1 durchlaufen:

Entweder führt ein Pfad von e‘ zu e oder einer von e* zu e‘.

In beiden Fällen ergibt sich ein gerichteter Kreis:

Im ersten Fall von e‘ über P1 zu e und

dann über P2‘ wieder zu e‘; im zweiten

Fall von e‘ über P2‘ zu e* und dann

über P1 wieder zu e‘.

Dies ist ein Widerspruch zu 2.1.2.

e*

e‘

e

P1P2‘

k

Page 20: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 20

2.2 Netzwerke und Flüsse2.2 Netzwerke und Flüsse

In vielen praktischen Anwendungen ist es hilfreich, die Kanten eines

gerichteten Graphen mit Zahlen zu bezeichnen.

Beispiele: Diese Zahlen können je nach Situation Produktzahlen,

Kosten, Zeiten, Entfernungen usw. repräsentieren.

Im Allgemeinen sind diese Zahlen nach oben begrenzt.

Beispiel: Durch eine Wasserleitung kann nur eine gewisse Menge

Wasser fließen, Straßen haben nur eine gewisse Fahrzeugkapazität

oder es können auf einem bestimmten Handelsweg nur eine gewisse

Anzahl Produkte transportiert werden.

In vielen praktischen Anwendungen ist es hilfreich, die Kanten eines

gerichteten Graphen mit Zahlen zu bezeichnen.

Beispiele: Diese Zahlen können je nach Situation Produktzahlen,

Kosten, Zeiten, Entfernungen usw. repräsentieren.

Im Allgemeinen sind diese Zahlen nach oben begrenzt.

Beispiel: Durch eine Wasserleitung kann nur eine gewisse Menge

Wasser fließen, Straßen haben nur eine gewisse Fahrzeugkapazität

oder es können auf einem bestimmten Handelsweg nur eine gewisse

Anzahl Produkte transportiert werden.

Page 21: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 21

NetzwerkeNetzwerke

Mathematisch können wir derartige Anwendungen durch ein Netzwerk

modellieren.

Ein Netzwerk besteht aus

einem gerichteten Graphen (E, K),

einer Quelle und einer Senke,

einer Kapazitätsfunktion c: K N.

Die Kapazitätsfunktion ordnet jeder Kante eine natürliche Zahl zu, die

wir Kapazität dieser Kante nennen.

Jede Ecke des Graphen, die weder die Quelle noch die Senke ist, heißt

innere Ecke.

Mathematisch können wir derartige Anwendungen durch ein Netzwerk

modellieren.

Ein Netzwerk besteht aus

einem gerichteten Graphen (E, K),

einer Quelle und einer Senke,

einer Kapazitätsfunktion c: K N.

Die Kapazitätsfunktion ordnet jeder Kante eine natürliche Zahl zu, die

wir Kapazität dieser Kante nennen.

Jede Ecke des Graphen, die weder die Quelle noch die Senke ist, heißt

innere Ecke.

G

Page 22: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 22

Ein Beispiel-NetzwerkEin Beispiel-Netzwerk

Beispiel: Im folgenden Netzwerk ist die Ecke q die Quelle und s die

Senke. Die gerichteten Kanten sind mit ihren jeweiligen Kapazitäten

beschriftet.

Beispiel: Im folgenden Netzwerk ist die Ecke q die Quelle und s die

Senke. Die gerichteten Kanten sind mit ihren jeweiligen Kapazitäten

beschriftet.

q s

3

4

2

2

4

1

5

3

2

3

5

3

Page 23: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 23

AnwendungsszenarioAnwendungsszenario

Wir können uns die Quelle als Produzenten, die inneren Ecken als

Zwischenhändler und die Senke als Fachgeschäft vorstellen.

Die Kapazitäten geben an, wie viele Produkte auf einem Transportweg

maximal transportiert werden können.

Klar: Nicht auf jedem Weg kann die Kapazität voll ausgenutzt werden,

denn die Zwischenhändler können weder Waren selbst produzieren

noch sollen Waren bei ihnen liegen bleiben.

Ziel dieses Abschnitts: Optimierung des tatsächlichen Transports.

Wie kann man die Kapazitäten optimal ausnutzen, um möglichst viele

Waren zu transportieren?

Wir können uns die Quelle als Produzenten, die inneren Ecken als

Zwischenhändler und die Senke als Fachgeschäft vorstellen.

Die Kapazitäten geben an, wie viele Produkte auf einem Transportweg

maximal transportiert werden können.

Klar: Nicht auf jedem Weg kann die Kapazität voll ausgenutzt werden,

denn die Zwischenhändler können weder Waren selbst produzieren

noch sollen Waren bei ihnen liegen bleiben.

Ziel dieses Abschnitts: Optimierung des tatsächlichen Transports.

Wie kann man die Kapazitäten optimal ausnutzen, um möglichst viele

Waren zu transportieren?

Page 24: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 24

Einige SchreibweisenEinige Schreibweisen

Wir wollen zunächst einige Schreibweisen einführen, die wir im

Folgenden oft gebrauchen werden.

Sei N stets ein Netzwerk mit gerichtetem Graphen (E, K), Quelle q,

Senke s und Kapazitätsfunktion c.

Sind X1 und X2 Teilmengen der Eckenmenge E, so bezeichnen wir

mit (X1, X2) die Menge aller Kanten, die von X1 nach X2 zeigen.

Beispiel: Für eine einzelne Ecke e ist (e, E) die Menge aller von e

ausgehenden Kanten und (E, e) die Menge aller in e hineinlaufenden

Kanten.

Wir wollen zunächst einige Schreibweisen einführen, die wir im

Folgenden oft gebrauchen werden.

Sei N stets ein Netzwerk mit gerichtetem Graphen (E, K), Quelle q,

Senke s und Kapazitätsfunktion c.

Sind X1 und X2 Teilmengen der Eckenmenge E, so bezeichnen wir

mit (X1, X2) die Menge aller Kanten, die von X1 nach X2 zeigen.

Beispiel: Für eine einzelne Ecke e ist (e, E) die Menge aller von e

ausgehenden Kanten und (E, e) die Menge aller in e hineinlaufenden

Kanten.

G

Page 25: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 25

Aus X herauszeigende Kantenmenge Aus X herauszeigende Kantenmenge

Für eine Eckenmenge X besteht das Komplement von X aus

allen Ecken des Graphen, die nicht in X liegen; das heißt := E \ X.

Daher ist (X, ) die Menge aller Kanten, die aus X herauszeigen, die

also von einer Ecke in X zu einer Ecke außerhalb von X zeigen.

Für eine solche Kantenmenge (X, ) und eine beliebige Funktion

f: K N setzen wir zur Abkürzung

f(X, ) := ;

das heißt, die Funktion f wird über der Kantenmenge (X, ) gebildet,

indem die Funktionswerte aller Kanten von (X, ) aufsummiert werden.

Für eine Eckenmenge X besteht das Komplement von X aus

allen Ecken des Graphen, die nicht in X liegen; das heißt := E \ X.

Daher ist (X, ) die Menge aller Kanten, die aus X herauszeigen, die

also von einer Ecke in X zu einer Ecke außerhalb von X zeigen.

Für eine solche Kantenmenge (X, ) und eine beliebige Funktion

f: K N setzen wir zur Abkürzung

f(X, ) := ;

das heißt, die Funktion f wird über der Kantenmenge (X, ) gebildet,

indem die Funktionswerte aller Kanten von (X, ) aufsummiert werden.

XX

X

X

X )X (X,k

)k(f

XX

Page 26: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 26

Ausfluss und EinflussAusfluss und Einfluss

Außerdem schreiben wir

f +(X) := f(X, ),

f (X) := f( , X),

Dabei können wir uns unter f +(X) und f (X) die Summe der Werte von

f, die aus X “herausfließen” bzw. in X “hineinfließen” vorstellen.

Daher werden wir f +(X) auch als Ausfluss aus X und f (X) auch als

Einfluss in X bezeichnen.

Außerdem schreiben wir

f +(X) := f(X, ),

f (X) := f( , X),

Dabei können wir uns unter f +(X) und f (X) die Summe der Werte von

f, die aus X “herausfließen” bzw. in X “hineinfließen” vorstellen.

Daher werden wir f +(X) auch als Ausfluss aus X und f (X) auch als

Einfluss in X bezeichnen.

XX

Page 27: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 27

FlüsseFlüsse

Ein Fluss in einem Netzwerk ist eine Funktion f: K N, die die beiden

folgenden Bedingungen erfüllt:

Kapazitätsbeschränkung: Für alle Kanten k K gilt

f(k) c(k);

das heißt, der Fluss durch jede Kante kann nie größer als deren

Kapazität werden.

Flusserhaltung der inneren Ecken: Für alle inneren Ecken e E gilt

f (e) = f +(e);

d.h. in jede innere Ecke fließt genauso viel hinein wie aus ihr heraus.

Ein Fluss in einem Netzwerk ist eine Funktion f: K N, die die beiden

folgenden Bedingungen erfüllt:

Kapazitätsbeschränkung: Für alle Kanten k K gilt

f(k) c(k);

das heißt, der Fluss durch jede Kante kann nie größer als deren

Kapazität werden.

Flusserhaltung der inneren Ecken: Für alle inneren Ecken e E gilt

f (e) = f +(e);

d.h. in jede innere Ecke fließt genauso viel hinein wie aus ihr heraus.

Page 28: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 28

Beispiel-FlüsseBeispiel-Flüsse

Beispiele: (a) In jedem Netzwerk ist der Nullfluss, der jeder Kante k

den Wert f(k) = 0 zuordnet, ein (trivialer) Fluss.

(b) Für das vorige Beispiel-Netzwerk stellt folgende Abbildung einen

Fluss dar. Der Übersicht halber ist die Kapazitätsfunktion nicht darge-

stellt.

Beispiele: (a) In jedem Netzwerk ist der Nullfluss, der jeder Kante k

den Wert f(k) = 0 zuordnet, ein (trivialer) Fluss.

(b) Für das vorige Beispiel-Netzwerk stellt folgende Abbildung einen

Fluss dar. Der Übersicht halber ist die Kapazitätsfunktion nicht darge-

stellt.

q s

1

2

1

1

0

0

0

2

1

0

1

3

Page 29: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 29

Wert eines FlussesWert eines Flusses

Die Flusserhaltung wird nur für die inneren Ecken gefordert. Denn: Die

Quelle hat nur einen Ausfluss und die Senke nur einen Einfluss. Diese

beiden Werte sind gleich:

2.2.1 Satz. In jedem Netzwerk ist der Ausfluss f +(q) aus der Quelle

gleich dem Einfluss f (s) in die Senke.

Das heißt, aus der Quelle fließt genauso viel heraus wie in die Senke

hinein. Diesen gemeinsamen Wert

wf := f +(q) = f (s)

nennen wir den Wert des Flusses f.

Die Flusserhaltung wird nur für die inneren Ecken gefordert. Denn: Die

Quelle hat nur einen Ausfluss und die Senke nur einen Einfluss. Diese

beiden Werte sind gleich:

2.2.1 Satz. In jedem Netzwerk ist der Ausfluss f +(q) aus der Quelle

gleich dem Einfluss f (s) in die Senke.

Das heißt, aus der Quelle fließt genauso viel heraus wie in die Senke

hinein. Diesen gemeinsamen Wert

wf := f +(q) = f (s)

nennen wir den Wert des Flusses f.

Page 30: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 30

Beweis (I)Beweis (I)

Beweis. Wir summieren die Ausflüsse f +(e) über alle Ecken e. Dabei

wird der Wert f(k) jeder Kante k K genau einmal gezählt, denn jede

Kante hat genau eine Anfangsecke. Das bedeutet

= .

Da jede Kante auch genau eine Endecke hat, wird auch bei Summation

der Einflüsse f (e) über alle Ecken e der Wert jeder Kante genau

einmal gezählt:

= .

Beweis. Wir summieren die Ausflüsse f +(e) über alle Ecken e. Dabei

wird der Wert f(k) jeder Kante k K genau einmal gezählt, denn jede

Kante hat genau eine Anfangsecke. Das bedeutet

= .

Da jede Kante auch genau eine Endecke hat, wird auch bei Summation

der Einflüsse f (e) über alle Ecken e der Wert jeder Kante genau

einmal gezählt:

= .

Ee

)e(f Kk

)k(f

Ee

)e(f Kk

)k(f

Page 31: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 31

Beweis (II)Beweis (II)

Insgesamt folgt, dass die Summe der Ausflüsse gleich der Summe der

Einflüsse ist. Daher ergibt sich

0 = = .

Diese Summe teilen wir wie folgt auf:

0 = f +(q) f (q) + + f +(s) f (s).

Da für die Quelle f (q) = 0, für die Senke f +(s) = 0 und für alle inneren

Ecken f +(e) = f (e) gilt, vereinfacht sich diese Summe zu

0 = f +(q) f (s).

Daraus folgt die Behauptung f +(q) = f (s).

Insgesamt folgt, dass die Summe der Ausflüsse gleich der Summe der

Einflüsse ist. Daher ergibt sich

0 = = .

Diese Summe teilen wir wie folgt auf:

0 = f +(q) f (q) + + f +(s) f (s).

Da für die Quelle f (q) = 0, für die Senke f +(s) = 0 und für alle inneren

Ecken f +(e) = f (e) gilt, vereinfacht sich diese Summe zu

0 = f +(q) f (s).

Daraus folgt die Behauptung f +(q) = f (s).

Ee

)e(f

Ee

)e(f

Ee

))e(f)e(f(

}s,q{\Ee

))e(f)e(f(

Page 32: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 32

SchnitteSchnitte

Sei X eine Menge von Ecken. Dann heißt die Menge (X, ) ein

Schnitt, wenn die Quelle in X und die Senke in enthalten ist.

Beispiel: Die dick gedruckten Kanten

zeigen einen Schnitt. Die ausge-

füllten Kreise sind die Ecken

von X, die nichtausgefüllten

die Ecken des Komplements .

Wir können uns unter einem Schnitt eine Kantenmenge vorstellen, die

Quelle und Senke trennt („durchschneidet”).

Sei X eine Menge von Ecken. Dann heißt die Menge (X, ) ein

Schnitt, wenn die Quelle in X und die Senke in enthalten ist.

Beispiel: Die dick gedruckten Kanten

zeigen einen Schnitt. Die ausge-

füllten Kreise sind die Ecken

von X, die nichtausgefüllten

die Ecken des Komplements .

Wir können uns unter einem Schnitt eine Kantenmenge vorstellen, die

Quelle und Senke trennt („durchschneidet”).

XX

q s

3

4

2

2

4

1

5

3

2

3

5

3

X

Page 33: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 33

Kapazität eines SchnittsKapazität eines Schnitts

Jeder Schnitt begrenzt den Transport der Waren, denn jede Ware

muss über mindestens eine „Brücke” des Schnitts transportiert werden.

Genauer: Über jede Kante eines Schnitts können nur so viele Waren

transportiert werden, wie es die Kapazität dieser Kante zulässt. Also:

Anzahl der transportierten Waren

Summe der Kapazitäten der Kanten eines Schnitts.

Unter der Kapazität c(X, ) eines Schnitts (X, ) verstehen wir die

Summe der Kapazitäten aller Kanten des Schnitts:

c(X, ) = .

Der Schnitt im vorigen Beispiel hat die Kapazität c(X, ) = 2 + 3 + 2 = 7.

Jeder Schnitt begrenzt den Transport der Waren, denn jede Ware

muss über mindestens eine „Brücke” des Schnitts transportiert werden.

Genauer: Über jede Kante eines Schnitts können nur so viele Waren

transportiert werden, wie es die Kapazität dieser Kante zulässt. Also:

Anzahl der transportierten Waren

Summe der Kapazitäten der Kanten eines Schnitts.

Unter der Kapazität c(X, ) eines Schnitts (X, ) verstehen wir die

Summe der Kapazitäten aller Kanten des Schnitts:

c(X, ) = .

Der Schnitt im vorigen Beispiel hat die Kapazität c(X, ) = 2 + 3 + 2 = 7.

X X

X )X (X,k

)k(c

X

Page 34: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 34

NettoflussNettofluss

Einen ersten Zusammenhang zwischen Flüssen und Schnitten stellt

der folgende Hilfssatz her.

2.2.2 Hilfssatz. Sei f ein Fluss und (X, ) ein Schnitt in einem

Netzwerk. Dann ist

wf = f +(X) f (X).

Die Differenz f +(X) f (X) („Ausfluss minus Einfluss”) bezeichnet man

auch als Nettofluss aus X.

Einen ersten Zusammenhang zwischen Flüssen und Schnitten stellt

der folgende Hilfssatz her.

2.2.2 Hilfssatz. Sei f ein Fluss und (X, ) ein Schnitt in einem

Netzwerk. Dann ist

wf = f +(X) f (X).

Die Differenz f +(X) f (X) („Ausfluss minus Einfluss”) bezeichnet man

auch als Nettofluss aus X.

X

Page 35: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 35

BeweisBeweis

Beweis. Da (X, ) ein Schnitt ist, enthält die Eckenmenge X außer

der Quelle nur innere Ecken, jedoch nicht die Senke. Mit der Fluss-

erhaltung der inneren Ecken können wir daher folgern

= f +(q) f (q) + = f +(q) + 0 = wf.

Den Ausfluss f +(e) = f(e, ) aus der Ecke e können wir aufteilen in

einen Ausfluss f(e, X) nach X und einen Ausfluss f(e, ) nach .

Genauso gilt f (e) = f(X, e) + f( , e). Damit folgt

wf = =

= f(X, X) + f(X, ) f(X, X) f( , X)= f(X, ) f( , X)= f +(X) f (X)

Beweis. Da (X, ) ein Schnitt ist, enthält die Eckenmenge X außer

der Quelle nur innere Ecken, jedoch nicht die Senke. Mit der Fluss-

erhaltung der inneren Ecken können wir daher folgern

= f +(q) f (q) + = f +(q) + 0 = wf.

Den Ausfluss f +(e) = f(e, ) aus der Ecke e können wir aufteilen in

einen Ausfluss f(e, X) nach X und einen Ausfluss f(e, ) nach .

Genauso gilt f (e) = f(X, e) + f( , e). Damit folgt

wf = =

= f(X, X) + f(X, ) f(X, X) f( , X)= f(X, ) f( , X)= f +(X) f (X)

Xe

))e(f)e(f(

{q}\Xe

))e(f)e(f(

XeXe

)e(f)e(f

Xe Xe

)X,e(f)X,e(f

Xe Xe

)e,X(f)e,X(f

X

Xe

XX

X X X X

Page 36: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 36

Zusammenhang von Fluss und SchnittZusammenhang von Fluss und Schnitt

Wir haben bereits anschaulich überlegt, dass die Kapazität jedes

Schnittes die „Anzahl der transportierten Waren” begrenzt, da der

Transport über mindestens eine Kante des Schnittes erfolgen muss.

Das können wir nun exakt formulieren und beweisen.

2.2.3 Satz. Sei f ein Fluss. Dann gilt für jeden Schnitt (X, )

wf c(X, ).

Dabei gilt Gleichheit genau dann, wenn

- für alle Kanten k aus (X, ) gilt f(k) = c(k) und

- für alle Kanten k aus ( , X) gilt f(k) = 0.

Wir haben bereits anschaulich überlegt, dass die Kapazität jedes

Schnittes die „Anzahl der transportierten Waren” begrenzt, da der

Transport über mindestens eine Kante des Schnittes erfolgen muss.

Das können wir nun exakt formulieren und beweisen.

2.2.3 Satz. Sei f ein Fluss. Dann gilt für jeden Schnitt (X, )

wf c(X, ).

Dabei gilt Gleichheit genau dann, wenn

- für alle Kanten k aus (X, ) gilt f(k) = c(k) und

- für alle Kanten k aus ( , X) gilt f(k) = 0.

X

X

XX

Page 37: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 37

BeweisBeweis

Beweis. Die Kapazitätsbeschränkung f(k) c(k) gilt für alle Kanten k,

insbesondere auch für alle Kanten aus (X, ); also folgt f(X, )

c(X, ). Nach Hilfssatz 2.2.2 erhalten wir daher die folgende

Ungleichungskette (“Wert Ausfluss Kapazität”):

wf = f +(X) f (X) f +(X) = f(X, ) c(X, ).

Gleichheit gilt in dieser Kette offensichtlich genau dann, wenn

- sowohl f (X) = f( , X) = 0, d.h. f(k) = 0 für alle k ( , X),

- als auch f(X, ) = c(X, ) ist, d.h. = . Wegen f(k)

c(k) können diese beiden Summen nur dann gleich sein, wenn alle ihre

Summanden f(k) und c(k) gliedweise übereinstimmen.

Beweis. Die Kapazitätsbeschränkung f(k) c(k) gilt für alle Kanten k,

insbesondere auch für alle Kanten aus (X, ); also folgt f(X, )

c(X, ). Nach Hilfssatz 2.2.2 erhalten wir daher die folgende

Ungleichungskette (“Wert Ausfluss Kapazität”):

wf = f +(X) f (X) f +(X) = f(X, ) c(X, ).

Gleichheit gilt in dieser Kette offensichtlich genau dann, wenn

- sowohl f (X) = f( , X) = 0, d.h. f(k) = 0 für alle k ( , X),

- als auch f(X, ) = c(X, ) ist, d.h. = . Wegen f(k)

c(k) können diese beiden Summen nur dann gleich sein, wenn alle ihre

Summanden f(k) und c(k) gliedweise übereinstimmen.

)X,X(k

)k(f )X,X(k

)k(c

X X X

X X

X XX X

Page 38: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 38

Minimaler SchnittMinimaler Schnitt

Nach 2.2.3 ist der Wert eines jeden Flusses also durch die Kapazität

eines beliebigen Schnittes begrenzt.

Dann muss der Wert jedes Flusses auch kleiner oder gleich der

Kapazität eines Schnittes mit minimaler Kapazität sein:

wf min {c(X, ) | (X, ) ist Schnitt}.

Einen solchen Schnitt mit minimaler Kapazität bezeichnen wir als

minimalen Schnitt.

Nach 2.2.3 ist der Wert eines jeden Flusses also durch die Kapazität

eines beliebigen Schnittes begrenzt.

Dann muss der Wert jedes Flusses auch kleiner oder gleich der

Kapazität eines Schnittes mit minimaler Kapazität sein:

wf min {c(X, ) | (X, ) ist Schnitt}.

Einen solchen Schnitt mit minimaler Kapazität bezeichnen wir als

minimalen Schnitt.

X X

Page 39: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 39

Maximaler FlussMaximaler Fluss

Da der Wert eines Flusses nur natürliche Zahlen annehmen kann, folgt

aus dieser Begrenzung nach oben, dass er nur endlich viele verschie-

dene Werte haben kann.

Daher muss es in jedem Netzwerk einen Fluss mit maximalem Wert

geben. Ein solchen Fluss mit maximalem Wert heißt maximaler Fluss.

Obige Ungleichung muss für alle Flüsse f gelten, also auch für den

maximalen Fluss:

max {wf | f ist Fluss} min {c(X, ) | (X, ) ist Schnitt}.

Da der Wert eines Flusses nur natürliche Zahlen annehmen kann, folgt

aus dieser Begrenzung nach oben, dass er nur endlich viele verschie-

dene Werte haben kann.

Daher muss es in jedem Netzwerk einen Fluss mit maximalem Wert

geben. Ein solchen Fluss mit maximalem Wert heißt maximaler Fluss.

Obige Ungleichung muss für alle Flüsse f gelten, also auch für den

maximalen Fluss:

max {wf | f ist Fluss} min {c(X, ) | (X, ) ist Schnitt}.X X

Page 40: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 40

Zwei KorollareZwei Korollare

2.2.4 Korollar. In jedem Netzwerk ist der Wert des maximalen Flusses

kleiner oder gleich der Kapazität eines minimalen Schnittes.

2.2.5 Korollar. Sei f ein Fluss und (X, ) ein Schnitt.

Wenn wf = c(X, ) ist, dann ist f ein maximaler Fluss und (X, ) ein

minimaler Schnitt.

Beweis. Nach 2.2.4 gilt für jeden Fluss f und jeden Schnitt (X, )

wf max {wf | f ist Fluss} min {c(X, ) | (X, ) ist Schnitt} c(X, ).

Wenn wf = c(X, ) ist, dann gilt hier überall Gleichheit. Also ist dann f

ein maximaler Fluss und (X, ) ein minimaler Schnitt.

2.2.4 Korollar. In jedem Netzwerk ist der Wert des maximalen Flusses

kleiner oder gleich der Kapazität eines minimalen Schnittes.

2.2.5 Korollar. Sei f ein Fluss und (X, ) ein Schnitt.

Wenn wf = c(X, ) ist, dann ist f ein maximaler Fluss und (X, ) ein

minimaler Schnitt.

Beweis. Nach 2.2.4 gilt für jeden Fluss f und jeden Schnitt (X, )

wf max {wf | f ist Fluss} min {c(X, ) | (X, ) ist Schnitt} c(X, ).

Wenn wf = c(X, ) ist, dann gilt hier überall Gleichheit. Also ist dann f

ein maximaler Fluss und (X, ) ein minimaler Schnitt.

XX X

X

X X X

XX

Page 41: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 41

Ziel: Wert (max. Fluss) = Kapazität (min. Schnitt) !Ziel: Wert (max. Fluss) = Kapazität (min. Schnitt) !

Ziel: Wir wollen zeigen: In 2.2.4 gilt sogar Gleichheit bzw. in 2.2.5 gilt

auch die Umkehrung, d.h. z.z.: Der Wert eines maximalen Flusses ist

stets gleich der Kapazität eines minimalen Schnitts.

Diese wichtige Erkenntnis wird sich im Folgenden als „Nebenprodukt”

ergeben, wenn wir einen maximalen Fluss konstruieren wollen.

Wir gehen von einem beliebigen Netzwerk aus, in dem wir einen

maximalen Fluss finden wollen. Zunächst führen wir einige Begriffe ein.

Ziel: Wir wollen zeigen: In 2.2.4 gilt sogar Gleichheit bzw. in 2.2.5 gilt

auch die Umkehrung, d.h. z.z.: Der Wert eines maximalen Flusses ist

stets gleich der Kapazität eines minimalen Schnitts.

Diese wichtige Erkenntnis wird sich im Folgenden als „Nebenprodukt”

ergeben, wenn wir einen maximalen Fluss konstruieren wollen.

Wir gehen von einem beliebigen Netzwerk aus, in dem wir einen

maximalen Fluss finden wollen. Zunächst führen wir einige Begriffe ein.

Page 42: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 42

Vorwärts- und RückwärtskantenVorwärts- und Rückwärtskanten

Zunächst betrachten wir einen (ungerichteten) Pfad P, der von einer

Ecke e0 über die Ecken e1, e2, ... zu einer Ecke es führt. Dann sind

die zugehörigen gerichteten Kanten entweder von der Form (e i, ei+1)

oder von der Form (ei+1, ei). Erstere zeigen in Richtung des Pfades und

heißen Vorwärtskanten von P, letztere zeigen entgegen der

Pfadrichtung und heißen Rückwärtskanten von P.

Zunächst betrachten wir einen (ungerichteten) Pfad P, der von einer

Ecke e0 über die Ecken e1, e2, ... zu einer Ecke es führt. Dann sind

die zugehörigen gerichteten Kanten entweder von der Form (e i, ei+1)

oder von der Form (ei+1, ei). Erstere zeigen in Richtung des Pfades und

heißen Vorwärtskanten von P, letztere zeigen entgegen der

Pfadrichtung und heißen Rückwärtskanten von P.

Vorwärtskante

es

Rückwärtskante

e0

Page 43: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 43

Wie können wir den Fluss vergrößern?Wie können wir den Fluss vergrößern?

Sei f ein Fluss. Unser Ziel ist es, diesen Fluss Schritt für Schritt zu

vergrößern, bis wir einen maximalen Fluss erhalten haben. Dazu

suchen in jedem Schritt einen Pfad von der Quelle zur Senke, auf

dessen Kanten wir den Fluss vergrößern können. Diese Vergrößerung

ist nur möglich, wenn

- keine der Vorwärtskanten ihre volle Kapazität ausnutzt

(nur dann können wir dort den Fluss vergrößern) und

- alle Rückwärtskanten einen positiven Fluss haben

(nur dann können wir dort den “Rückfluss” verkleinern).

Sei f ein Fluss. Unser Ziel ist es, diesen Fluss Schritt für Schritt zu

vergrößern, bis wir einen maximalen Fluss erhalten haben. Dazu

suchen in jedem Schritt einen Pfad von der Quelle zur Senke, auf

dessen Kanten wir den Fluss vergrößern können. Diese Vergrößerung

ist nur möglich, wenn

- keine der Vorwärtskanten ihre volle Kapazität ausnutzt

(nur dann können wir dort den Fluss vergrößern) und

- alle Rückwärtskanten einen positiven Fluss haben

(nur dann können wir dort den “Rückfluss” verkleinern).

Page 44: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 44

Gesucht: f-ungesättigter Pfad von q nach sGesucht: f-ungesättigter Pfad von q nach s

Ein Pfad heißt f-ungesättigt, wenn

- für jede Vorwärtskante k gilt f(k) < c(k) und

- für jede Rückwärtskante k gilt f(k) > 0.

Andernfalls heißt er f-gesättigt.

Um den Fluss f zu erhöhen, müssen wir uns also auf die Suche nach

einem f-ungesättigten Pfad von der Quelle zur Senke machen.

Wenn wir einen solchen Pfad P gefunden haben, stellt sich gleich die

nächste Frage:

Um welchen Betrag können wir den Fluss auf P erhöhen?

Ein Pfad heißt f-ungesättigt, wenn

- für jede Vorwärtskante k gilt f(k) < c(k) und

- für jede Rückwärtskante k gilt f(k) > 0.

Andernfalls heißt er f-gesättigt.

Um den Fluss f zu erhöhen, müssen wir uns also auf die Suche nach

einem f-ungesättigten Pfad von der Quelle zur Senke machen.

Wenn wir einen solchen Pfad P gefunden haben, stellt sich gleich die

nächste Frage:

Um welchen Betrag können wir den Fluss auf P erhöhen?

Page 45: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 45

Bestimmung des InkrementsBestimmung des Inkrements

Um wie viel können wir f auf einem f-ungesättigten Pfad P erhöhen?

Bei jeder Vorwärtskante k dürfen wir höchstens c(k) f(k)

dazuaddieren, bei jeder Rückwärtskante k höchstens f(k) abziehen.

Daher bestimmen wir für alle Kanten k des Pfades die Zahlen

c(k) f(k), falls k eine Vorwärtskante ist,

f(k), falls k eine Rückwärtskante ist.

Da der Pfad f-ungesättigt ist, sind alle diese Zahlen positiv.

Die kleinste dieser Zahlen heißt Inkrement iP des Pfades P.

Sie gibt an, um welchen Betrag wir den Fluss auf allen Kanten des

Pfades verändern dürfen.

Um wie viel können wir f auf einem f-ungesättigten Pfad P erhöhen?

Bei jeder Vorwärtskante k dürfen wir höchstens c(k) f(k)

dazuaddieren, bei jeder Rückwärtskante k höchstens f(k) abziehen.

Daher bestimmen wir für alle Kanten k des Pfades die Zahlen

c(k) f(k), falls k eine Vorwärtskante ist,

f(k), falls k eine Rückwärtskante ist.

Da der Pfad f-ungesättigt ist, sind alle diese Zahlen positiv.

Die kleinste dieser Zahlen heißt Inkrement iP des Pfades P.

Sie gibt an, um welchen Betrag wir den Fluss auf allen Kanten des

Pfades verändern dürfen.

Page 46: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 46

Der revidierte FlussDer revidierte Fluss

Um das Inkrement iP des f-ungesättigten Pfades P können wir den

Fluss auf den Vorwärtskanten erhöhen und auf den Rückwärtskanten

erniedrigen. Auf diese Weise erhalten wir den revidierten Fluss

f’(k) :=

Der Wert des revidierten Flusses ist um iP größer als der Wert des

ursprünglichen Flusses:

wf’ = wf + iP.

Um das Inkrement iP des f-ungesättigten Pfades P können wir den

Fluss auf den Vorwärtskanten erhöhen und auf den Rückwärtskanten

erniedrigen. Auf diese Weise erhalten wir den revidierten Fluss

f’(k) :=

Der Wert des revidierten Flusses ist um iP größer als der Wert des

ursprünglichen Flusses:

wf’ = wf + iP.

.sonst),k(f

,istPinanteRückwärtskkfalls,i)k(f

,istPinnteVorwärtskakfalls,i)k(f

P

P

Page 47: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 47

Wenn kein f-ungesättigter Pfad existiert, ...Wenn kein f-ungesättigter Pfad existiert, ...

Wenn es also einen f-ungesättigten Pfad von der Quelle zur Senke

gibt, dann können wir den Fluss vergrößern.

Was ist aber, wenn kein derartiger Pfad existiert? Die Antwort ist

verblüffend einfach: Dann ist der Fluss bereits maximal!

Um das nachzuweisen, benötigen wir vorab einen Hilfssatz.

2.2.6 Hilfssatz. Sei f ein Fluss. Wenn kein f-ungesättigter Pfad von

der Quelle zur Senke existiert, dann gibt es einen Schnitt (X, ) mit:

(a) Für jede Kante k aus (X, ) gilt f(k) = c(k).

(b) Für jede Kante k aus ( , X) gilt f(k) = 0.

Wenn es also einen f-ungesättigten Pfad von der Quelle zur Senke

gibt, dann können wir den Fluss vergrößern.

Was ist aber, wenn kein derartiger Pfad existiert? Die Antwort ist

verblüffend einfach: Dann ist der Fluss bereits maximal!

Um das nachzuweisen, benötigen wir vorab einen Hilfssatz.

2.2.6 Hilfssatz. Sei f ein Fluss. Wenn kein f-ungesättigter Pfad von

der Quelle zur Senke existiert, dann gibt es einen Schnitt (X, ) mit:

(a) Für jede Kante k aus (X, ) gilt f(k) = c(k).

(b) Für jede Kante k aus ( , X) gilt f(k) = 0.

XX

X

Page 48: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 48

Beweis (I)Beweis (I)

Beweis. Wir betrachten die Eckenmenge X, die aus der Quelle und

allen Ecken besteht, die mit der Quelle über einen f-ungesättigten Pfad

verbunden sind:

X := {q} {e E | es gibt einen f-ungesättigten Pfad von q nach e}.

Da kein f-ungesättigter Pfad von der Quelle zur Senke existiert, ist die

Senke nicht in X enthalten. Also ist (X, ) ein Schnitt.

Beweis. Wir betrachten die Eckenmenge X, die aus der Quelle und

allen Ecken besteht, die mit der Quelle über einen f-ungesättigten Pfad

verbunden sind:

X := {q} {e E | es gibt einen f-ungesättigten Pfad von q nach e}.

Da kein f-ungesättigter Pfad von der Quelle zur Senke existiert, ist die

Senke nicht in X enthalten. Also ist (X, ) ein Schnitt.X

Page 49: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 49

Beweis (II)Beweis (II)

(a) Sei k = (e1, e2) eine Kante aus (X, ). Dann liegt die Anfangsecke

e1 in X und die Endecke e2 in . Nach der Konstruktion von X gibt

es dann einen f-ungesättigten Pfad von der Quelle nach e1. Angenom-

men, es gälte f(k) < c(k). Dann könnten wir den f-ungesättigten Pfad nach e1 zu einem f-ungesättigten Pfad nach e2 verlängern. Damit

läge auch e2 in X. Dies wäre jedoch ein Widerspruch zu e2 .

(a) Sei k = (e1, e2) eine Kante aus (X, ). Dann liegt die Anfangsecke

e1 in X und die Endecke e2 in . Nach der Konstruktion von X gibt

es dann einen f-ungesättigten Pfad von der Quelle nach e1. Angenom-

men, es gälte f(k) < c(k). Dann könnten wir den f-ungesättigten Pfad nach e1 zu einem f-ungesättigten Pfad nach e2 verlängern. Damit

läge auch e2 in X. Dies wäre jedoch ein Widerspruch zu e2 .

qe1

X

ke2

XX

X

X

Page 50: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 50

Beweis (III)Beweis (III)

(b). Sei k = (e1, e2) eine Kante aus ( , X). Dann gibt es einen f-unge-

sättigten Pfad von der Quelle nach e2. Angenommen, es wäre f(k) > 0.

Dann könnten wir den f-ungesättigten Pfad nach e2 mit k als Rück-

wärtskante zu einem f-ungesättigten Pfad nach e1 verlängern. Dann

läge e1 in X, was im Widerspruch zu e1 stände.

(b). Sei k = (e1, e2) eine Kante aus ( , X). Dann gibt es einen f-unge-

sättigten Pfad von der Quelle nach e2. Angenommen, es wäre f(k) > 0.

Dann könnten wir den f-ungesättigten Pfad nach e2 mit k als Rück-

wärtskante zu einem f-ungesättigten Pfad nach e1 verlängern. Dann

läge e1 in X, was im Widerspruch zu e1 stände.

X

X

X

qe2

X

ke1

Page 51: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 51

..., dann ist der Fluss maximal!..., dann ist der Fluss maximal!

2.2.7 Korollar. Sei f ein Fluss. Wenn kein f-ungesättigter Pfad von der

Quelle zur Senke existiert, dann ist f ein maximaler Fluss.

Beweis. Nach Satz 2.2.3 gilt wf = c(X, ) und aus Korollar 2.2.5 folgt,

dass f maximal ist.

Nach diesen Vorarbeiten ist es kein großes Problem mehr, das

Hauptergebnis dieses Kapitels zu zeigen: Den Maximum-Fluss-

Minimum-Schnitt-Satz.

2.2.7 Korollar. Sei f ein Fluss. Wenn kein f-ungesättigter Pfad von der

Quelle zur Senke existiert, dann ist f ein maximaler Fluss.

Beweis. Nach Satz 2.2.3 gilt wf = c(X, ) und aus Korollar 2.2.5 folgt,

dass f maximal ist.

Nach diesen Vorarbeiten ist es kein großes Problem mehr, das

Hauptergebnis dieses Kapitels zu zeigen: Den Maximum-Fluss-

Minimum-Schnitt-Satz.

X

Page 52: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 52

Maximum-Fluss-Minimum-Schnitt-SatzMaximum-Fluss-Minimum-Schnitt-Satz

2.2.8 Maximum-Fluss-Minimum-Schnitt-Satz (Ford und Fulkerson,

1956). In jedem Netzwerk ist der Wert eines maximalen Flusses gleich

der Kapazität eines minimalen Schnittes.

Beweis. Der Beweis besteht darin, einen maximalen Fluss zu

konstruieren und von diesem zu zeigen, dass er die behauptete

Eigenschaft besitzt.

Sei f ein beliebiger Fluss. Wenn es einen f-ungesättigten Pfad P von

der Quelle zur Senke gibt, dann können wir das Inkrement iP dieses

Pfades bestimmen und den revidierten Fluss f’ bilden, dessen Wert

um iP größer ist als der von f.

2.2.8 Maximum-Fluss-Minimum-Schnitt-Satz (Ford und Fulkerson,

1956). In jedem Netzwerk ist der Wert eines maximalen Flusses gleich

der Kapazität eines minimalen Schnittes.

Beweis. Der Beweis besteht darin, einen maximalen Fluss zu

konstruieren und von diesem zu zeigen, dass er die behauptete

Eigenschaft besitzt.

Sei f ein beliebiger Fluss. Wenn es einen f-ungesättigten Pfad P von

der Quelle zur Senke gibt, dann können wir das Inkrement iP dieses

Pfades bestimmen und den revidierten Fluss f’ bilden, dessen Wert

um iP größer ist als der von f.

Page 53: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 53

Beweis (I): Konstruktion eines max. FlussesBeweis (I): Konstruktion eines max. Flusses

Mit dem neuen Fluss f’ können wir das gleiche Spiel spielen: Wir

suchen einen f’-ungesättigten Pfad P’ von der Quelle zur Senke. Falls

auch dieser existiert, bilden wir einen weiteren revidierten Fluss f’’,

dessen Wert wiederum größer ist als der von f’. Usw. Auf diese Weise

können wir den Wert des Flusses sukzessive erhöhen.

Da der Wert des Flusses nur natürliche Zahlen annehmen kann und

nach oben durch die Kapazität eines minimalen Schnitts begrenzt ist,

muss diese Prozedur irgendwann abbrechen. Das heißt, irgendwann

erreichen wir einen Fluss f*, so dass es keinen f*-ungesättigten Pfad

von der Quelle zur Senke gibt.

Mit dem neuen Fluss f’ können wir das gleiche Spiel spielen: Wir

suchen einen f’-ungesättigten Pfad P’ von der Quelle zur Senke. Falls

auch dieser existiert, bilden wir einen weiteren revidierten Fluss f’’,

dessen Wert wiederum größer ist als der von f’. Usw. Auf diese Weise

können wir den Wert des Flusses sukzessive erhöhen.

Da der Wert des Flusses nur natürliche Zahlen annehmen kann und

nach oben durch die Kapazität eines minimalen Schnitts begrenzt ist,

muss diese Prozedur irgendwann abbrechen. Das heißt, irgendwann

erreichen wir einen Fluss f*, so dass es keinen f*-ungesättigten Pfad

von der Quelle zur Senke gibt.

Page 54: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 54

Beweis (II): Eigenschaften des max. FlussesBeweis (II): Eigenschaften des max. Flusses

Wenn es keinen f*-ungesättigten Pfad von der Quelle zur Senke gibt,

dann gibt es nach Hilfssatz 2.2.6 einen Schnitt (X, ) mit den Eigen-

schaften:

- Für jede Kante k aus (X, ) gilt f*(k) = c(k).

- Für jede Kante k aus ( , X) gilt f*(k) = 0.

Dann folgt nach Satz 2.2.3, dass

wf* = c(X, )

ist. Nach Korollar 2.2.5 folgt dann, dass f* ein maximaler Fluss und

(X, ) ein minimaler Schnitt ist.

Wenn es keinen f*-ungesättigten Pfad von der Quelle zur Senke gibt,

dann gibt es nach Hilfssatz 2.2.6 einen Schnitt (X, ) mit den Eigen-

schaften:

- Für jede Kante k aus (X, ) gilt f*(k) = c(k).

- Für jede Kante k aus ( , X) gilt f*(k) = 0.

Dann folgt nach Satz 2.2.3, dass

wf* = c(X, )

ist. Nach Korollar 2.2.5 folgt dann, dass f* ein maximaler Fluss und

(X, ) ein minimaler Schnitt ist. X

X

XX

X

Page 55: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 55

Algorithmus zur Konstruktion eines max. FlussesAlgorithmus zur Konstruktion eines max. Flusses

2.2.9 Algorithmus zum Finden eines maximalen Flusses. Sei ein

beliebiges Netzwerk gegeben. Dann kann man einen maximalen Fluss

wie folgt konstruieren.

1. Schritt: Man beginnt mit einem beliebigen Fluss, zum Beispiel dem

Nullfluss.

2. Schritt: Man sucht einen f-ungesättigten Pfad von der Quelle zur

Senke.

- Falls ein solcher Pfad existiert, bildet man den revidierten Fluss und

wendet auf diesen wieder den 2. Schritt an.

- Falls kein solcher Pfad existiert, hat man einen maximalen Fluss

erreicht.

2.2.9 Algorithmus zum Finden eines maximalen Flusses. Sei ein

beliebiges Netzwerk gegeben. Dann kann man einen maximalen Fluss

wie folgt konstruieren.

1. Schritt: Man beginnt mit einem beliebigen Fluss, zum Beispiel dem

Nullfluss.

2. Schritt: Man sucht einen f-ungesättigten Pfad von der Quelle zur

Senke.

- Falls ein solcher Pfad existiert, bildet man den revidierten Fluss und

wendet auf diesen wieder den 2. Schritt an.

- Falls kein solcher Pfad existiert, hat man einen maximalen Fluss

erreicht.

Page 56: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 56

Suche nach einem f-ungesättigten PfadSuche nach einem f-ungesättigten Pfad

Bemerkung. Zur Suche nach dem f-ungesättigten Pfad von der Quelle

zur Senke kann man einen f-ungesättigten Baum wachsen lassen:

1. Man startet mit der Quelle als Wurzel.

2. Man lässt einen Baum nach folgenden Regeln wachsen:

Vorwärtskanten k werden hinzugefügt, wenn f(k) < c(k) ist.

Rückwärtskanten k werden hinzugefügt, wenn f(k) > 0 ist.

Dann ist jeder von der Quelle ausgehende Pfad f-ungesättigt.

3. Wenn dieser Baum die Senke erreicht, so ist der (eindeutige) Pfad

von der Quelle zur Senke ein f-ungesättigter Pfad.

Wenn der Baum nicht mehr weiter wachsen kann und die Senke

nicht erreichen kann, dann ist der Fluss maximal.

Bemerkung. Zur Suche nach dem f-ungesättigten Pfad von der Quelle

zur Senke kann man einen f-ungesättigten Baum wachsen lassen:

1. Man startet mit der Quelle als Wurzel.

2. Man lässt einen Baum nach folgenden Regeln wachsen:

Vorwärtskanten k werden hinzugefügt, wenn f(k) < c(k) ist.

Rückwärtskanten k werden hinzugefügt, wenn f(k) > 0 ist.

Dann ist jeder von der Quelle ausgehende Pfad f-ungesättigt.

3. Wenn dieser Baum die Senke erreicht, so ist der (eindeutige) Pfad

von der Quelle zur Senke ein f-ungesättigter Pfad.

Wenn der Baum nicht mehr weiter wachsen kann und die Senke

nicht erreichen kann, dann ist der Fluss maximal.

Page 57: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 57

Wo ist der minimale Schnitt?Wo ist der minimale Schnitt?

Wenn der maximale Fluss erreicht ist, wie können wir dann den

zugehörigen minimalen Schnitt finden? Ganz einfach:

Wir bezeichnen die Ecken des Baumes mit X. Dann besteht X aus

der Quelle und allen Ecken, die mit der Quelle über einen f-ungesät-

tigten Pfad verbunden sind.

Genau wie im Beweis von Hilfssatz 2.2.6 folgt, dass (X, ) ein

minimaler Schnitt ist.

Das bedeutet, der minimale Schnitt besteht aus allen Kanten, die von

Blättern des Baumes wegzeigen.

Wenn der maximale Fluss erreicht ist, wie können wir dann den

zugehörigen minimalen Schnitt finden? Ganz einfach:

Wir bezeichnen die Ecken des Baumes mit X. Dann besteht X aus

der Quelle und allen Ecken, die mit der Quelle über einen f-ungesät-

tigten Pfad verbunden sind.

Genau wie im Beweis von Hilfssatz 2.2.6 folgt, dass (X, ) ein

minimaler Schnitt ist.

Das bedeutet, der minimale Schnitt besteht aus allen Kanten, die von

Blättern des Baumes wegzeigen.

X

Page 58: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 58

Beispiel zur Konstruktion eines max. Flusses (I)Beispiel zur Konstruktion eines max. Flusses (I)

Wir wollen für unser Netzwerk von Folie 22 einen maximalen Fluss

konstruieren. Dazu beginnen wir mit dem Nullfluss.

Wir stellen den Fluss jeder Kante jeweils als eingekreiste Zahl dar, um

ihn von der Kapazität der Kante zu unterscheiden.

Nun suchen wir einen f-ungesättigten Pfad von der Quelle zur Senke

(fett gedruckt):

Wir wollen für unser Netzwerk von Folie 22 einen maximalen Fluss

konstruieren. Dazu beginnen wir mit dem Nullfluss.

Wir stellen den Fluss jeder Kante jeweils als eingekreiste Zahl dar, um

ihn von der Kapazität der Kante zu unterscheiden.

Nun suchen wir einen f-ungesättigten Pfad von der Quelle zur Senke

(fett gedruckt):

q s

3

4

2

2

4

1

5

3

2

3

5

3

Page 59: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 59

Beispiel (II)Beispiel (II)

Das Inkrement dieses Pfades ist gleich 2. Daher können wir auf allen

(Vorwärts-) Kanten dieses Pfades den Fluss um 2 erhöhen.

Anschließend suchen wir einen f-ungesättigten Pfad von der Quelle zur

Senke, indem wir von der Quelle aus einen f-ungesättigten Baum

wachsen lassen (fett gedruckt):

Das Inkrement dieses Pfades ist gleich 2. Daher können wir auf allen

(Vorwärts-) Kanten dieses Pfades den Fluss um 2 erhöhen.

Anschließend suchen wir einen f-ungesättigten Pfad von der Quelle zur

Senke, indem wir von der Quelle aus einen f-ungesättigten Baum

wachsen lassen (fett gedruckt):

q s

3

4

2

2

4

1

5

3

2

35

3

Page 60: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 60

Beispiel (III)Beispiel (III)

Dieser Baum enthält einen f-ungesättigten Pfad von der Quelle zur

Senke mit dem Inkrement 1. Auf diesem Pfad erhöhen wir daher den

Fluss um 1 und suchen einen neuen f-ungesättigten Pfad wie folgt:

Dieser Baum enthält einen f-ungesättigten Pfad von der Quelle zur

Senke mit dem Inkrement 1. Auf diesem Pfad erhöhen wir daher den

Fluss um 1 und suchen einen neuen f-ungesättigten Pfad wie folgt:

q s

3

4

2

2

4

1

5

3

2

35

3

Page 61: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 61

Beispiel (IV)Beispiel (IV)

Auch dieser Pfad hat das Inkrement 1. Wir erhöhen auf ihm also den

Fluss um 1 und suchen einen f-ungesättigten Pfad von q nach s. Ein

möglicher Pfad ist der folgende:

Auch dieser Pfad hat das Inkrement 1. Wir erhöhen auf ihm also den

Fluss um 1 und suchen einen f-ungesättigten Pfad von q nach s. Ein

möglicher Pfad ist der folgende:

sq

3

4

2

2

4

1

5

3

2

3

5

3

Page 62: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 62

Beispiel (V)Beispiel (V)

Dieser Pfad enthält eine Rückwärtskante. Von ihr müssen wir das

Inkrement 1 abziehen, um den Gesamtfluss zu erhöhen.

Den neuen Fluss und einen nächsten f-ungesättigten Baum zeigt die

folgende Abbildung:

Dieser Pfad enthält eine Rückwärtskante. Von ihr müssen wir das

Inkrement 1 abziehen, um den Gesamtfluss zu erhöhen.

Den neuen Fluss und einen nächsten f-ungesättigten Baum zeigt die

folgende Abbildung:

sq

3

4

2

2

4

1

5

3

2

3

5

3

Page 63: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 63

Beispiel (VI)Beispiel (VI)

Das Inkrement des obigen Pfades von der Quelle zur Senke beträgt 2.

Der um 2 erhöhte Fluss und ein weiterer f-ungesättigter Baum

ergeben sich folgendermaßen:

Dieser f-ungesättigte Baum kann nicht weiterwachsen, insbesondere

kann er die Senke nicht erreichen.

Das Inkrement des obigen Pfades von der Quelle zur Senke beträgt 2.

Der um 2 erhöhte Fluss und ein weiterer f-ungesättigter Baum

ergeben sich folgendermaßen:

Dieser f-ungesättigte Baum kann nicht weiterwachsen, insbesondere

kann er die Senke nicht erreichen.

sq

3

4

2

2

4

1

5

3

2

3

5

3

Page 64: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 64

Beispiel (VII)Beispiel (VII)

Es gibt also keinen f-ungesättigten Pfad von der Quelle zur Senke.

Das heißt, wir sind am Ziel! Der abgebildete Fluss ist maximal. Er hat

den Wert wf = 2 + 3 + 2 = 7.

Der zugehörige minimale Schnitt besteht aus allen Kanten, die von

Blättern des Baumes wegzeigen. Die Kanten dieses minimalen Schnitts

sind in der vorigen Abbildung gestrichelt eingezeichnet.

Die Kapazität dieses Schnitts ist 2 + 3 + 2 = 7.

Die Kapazität des minimalen Schnitts stimmt also mit dem Wert des

maximalen Flusses überein wie es der Maximum-Fluss-Minimum-

Schnitt-Satz vorhersagt.

Es gibt also keinen f-ungesättigten Pfad von der Quelle zur Senke.

Das heißt, wir sind am Ziel! Der abgebildete Fluss ist maximal. Er hat

den Wert wf = 2 + 3 + 2 = 7.

Der zugehörige minimale Schnitt besteht aus allen Kanten, die von

Blättern des Baumes wegzeigen. Die Kanten dieses minimalen Schnitts

sind in der vorigen Abbildung gestrichelt eingezeichnet.

Die Kapazität dieses Schnitts ist 2 + 3 + 2 = 7.

Die Kapazität des minimalen Schnitts stimmt also mit dem Wert des

maximalen Flusses überein wie es der Maximum-Fluss-Minimum-

Schnitt-Satz vorhersagt.

Page 65: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 65

2.3 Trennende Mengen2.3 Trennende Mengen

In diesem Abschnitt beweisen wir eine wichtige Folgerung aus dem

Maximum-Fluss-Minimum-Schnitt-Satz.

Sei ein gerichteter Graph. Für eine Teilmenge T der Kantenmenge

von bezeichnen wir mit \ T den Teilgraphen, der aus entsteht,

wenn man alle Kanten aus T entfernt.

Seien e und e* zwei Ecken von . Wir sagen, dass eine Kanten-

menge T die Ecken e und e* trennt, wenn der Teilgraph \ T

keinen gerichteten Weg von e nach e* enthält. Die Menge T heißt

dann auch e und e* trennende Kantenmenge.

In diesem Abschnitt beweisen wir eine wichtige Folgerung aus dem

Maximum-Fluss-Minimum-Schnitt-Satz.

Sei ein gerichteter Graph. Für eine Teilmenge T der Kantenmenge

von bezeichnen wir mit \ T den Teilgraphen, der aus entsteht,

wenn man alle Kanten aus T entfernt.

Seien e und e* zwei Ecken von . Wir sagen, dass eine Kanten-

menge T die Ecken e und e* trennt, wenn der Teilgraph \ T

keinen gerichteten Weg von e nach e* enthält. Die Menge T heißt

dann auch e und e* trennende Kantenmenge.

G

G

G

G

G

G

Page 66: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 66

BeispielBeispiel

Wenn man im folgenden Graphen die gestrichelt eingezeichneten Kanten k1 und k2 entfernt, so gibt es keinen Weg mehr von e nach

e*. Daher bildet {k1, k2} eine e und e* trennende Kantenmenge.

Wenn man im folgenden Graphen die gestrichelt eingezeichneten Kanten k1 und k2 entfernt, so gibt es keinen Weg mehr von e nach

e*. Daher bildet {k1, k2} eine e und e* trennende Kantenmenge.

e e*

k2

k1

Page 67: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 67

Minimale trennende KantenmengeMinimale trennende Kantenmenge

Klar: Zu zwei Ecken e und e* kann man immer eine trennende

Kantenmenge finden: Die Menge aller Kanten des Graphen trennt in

jedem Fall e und e*. Das ist keine Kunst.

Interessanter: Wie viele Kanten muss man mindestens entfernen, damit

kein Weg mehr von e nach e* existiert? Mit anderen Worten: Wie

viele Elemente hat eine minimale Kantenmenge, die e und e* trennt?

Bevor wir dieser Frage nachgehen, führen wir einen weiteren Begriff

ein, der eng damit zusammenhängt.

Klar: Zu zwei Ecken e und e* kann man immer eine trennende

Kantenmenge finden: Die Menge aller Kanten des Graphen trennt in

jedem Fall e und e*. Das ist keine Kunst.

Interessanter: Wie viele Kanten muss man mindestens entfernen, damit

kein Weg mehr von e nach e* existiert? Mit anderen Worten: Wie

viele Elemente hat eine minimale Kantenmenge, die e und e* trennt?

Bevor wir dieser Frage nachgehen, führen wir einen weiteren Begriff

ein, der eng damit zusammenhängt.

Page 68: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 68

WegesystemWegesystem

Seien e und e* zwei Ecken eines gerichteten Graphen. Ein Wege-

system von e nach e* ist eine Menge von paarweise disjunkten

gerichteten Wegen von e nach e*. Dabei bedeutet disjunkt, dass die

Wege keine Kanten gemeinsam haben.

Beispiel: Die beiden dick

eingezeichneten gerichteten

Wege bilden ein Wegesystem

von e nach e*.

Seien e und e* zwei Ecken eines gerichteten Graphen. Ein Wege-

system von e nach e* ist eine Menge von paarweise disjunkten

gerichteten Wegen von e nach e*. Dabei bedeutet disjunkt, dass die

Wege keine Kanten gemeinsam haben.

Beispiel: Die beiden dick

eingezeichneten gerichteten

Wege bilden ein Wegesystem

von e nach e*.

e e*

Page 69: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 69

Maximales WegesystemMaximales Wegesystem

Durch wie viele disjunkte Wege sind zwei Ecken eines Graphen

höchstens verbunden? Anders ausgedrückt: Wie viele Elemente

enthält ein maximales Wegesystem?

2.3.1 Hilfssatz. Sei N ein Netzwerk mit Quelle q, Senke s und der

folgendermaßen definierten Kapazitätsfunktion c: c(k) = 1 für alle

Kanten k. Sei Wmax ein maximales Wegesystem von q nach s und

Tmin eine minimale q und s trennende Kantenmenge. Dann gilt

wf |Wmax| |Tmin| c(X, )

für alle Flüsse f und alle Schnitte (X, ) in N.

Durch wie viele disjunkte Wege sind zwei Ecken eines Graphen

höchstens verbunden? Anders ausgedrückt: Wie viele Elemente

enthält ein maximales Wegesystem?

2.3.1 Hilfssatz. Sei N ein Netzwerk mit Quelle q, Senke s und der

folgendermaßen definierten Kapazitätsfunktion c: c(k) = 1 für alle

Kanten k. Sei Wmax ein maximales Wegesystem von q nach s und

Tmin eine minimale q und s trennende Kantenmenge. Dann gilt

wf |Wmax| |Tmin| c(X, )

für alle Flüsse f und alle Schnitte (X, ) in N. X

X

Page 70: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 70

Beweis (I)Beweis (I)

Wir zeigen zunächst, dass wf |Wmax| ist.

Auf allen |Wmax| disjunkten Wegen von Wmax kann auf Grund der

Kapazität höchstens der Fluss 1 transportiert werden. Der Wert des

Flusses ist also höchstens |Wmax|1 = |Wmax|.

Wir zeigen zunächst, dass wf |Wmax| ist.

Auf allen |Wmax| disjunkten Wegen von Wmax kann auf Grund der

Kapazität höchstens der Fluss 1 transportiert werden. Der Wert des

Flusses ist also höchstens |Wmax|1 = |Wmax|.

Wmax

1

1

1

1

1q s

Page 71: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 71

Beweis (II)Beweis (II)

Nun zeigen wir |Wmax| |Tmin|:

Jeder Weg aus Wmax enthält eine Kante aus Tmin. Denn gäbe es einen

Weg von q nach s, der keine Kante aus Tmin enthält, dann wäre Tmin

keine trennende Menge. Da die Wege aus Wmax paarweise disjunkt

sind, kann insbesondere keine Kante

aus Tmin mehrfach vorkommen.

Insgesamt enthält also Tmin mindes-

tens so viele Kanten wie Wmax

Wege enthält, das heißt |Tmin| |Wmax|.

Nun zeigen wir |Wmax| |Tmin|:

Jeder Weg aus Wmax enthält eine Kante aus Tmin. Denn gäbe es einen

Weg von q nach s, der keine Kante aus Tmin enthält, dann wäre Tmin

keine trennende Menge. Da die Wege aus Wmax paarweise disjunkt

sind, kann insbesondere keine Kante

aus Tmin mehrfach vorkommen.

Insgesamt enthält also Tmin mindes-

tens so viele Kanten wie Wmax

Wege enthält, das heißt |Tmin| |Wmax|.

q s

Wmax

Tmin

Page 72: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 72

Beweis (III)Beweis (III)

Es bleibt noch zu zeigen, dass |Tmin| c(X, ) ist.

Jeder Schnitt (X, ) ist auch eine q und s trennende Kantenmenge;

denn jeder Weg von q X nach s muss eine Kante aus (X, )

enthalten. Die Mächtigkeit einer minimalen trennenden Menge ist

kleiner oder gleich der Mächtigkeit jeder trennenden Menge. Das gilt

insbesondere für die trennenden Menge (X, ). Also: |Tmin| |(X, )|.

Da alle Kanten die Kapazität 1 haben, gilt

c(X, ) = = = |(X, )|.

Zusammen folgt |Tmin| c(X, ).

Es bleibt noch zu zeigen, dass |Tmin| c(X, ) ist.

Jeder Schnitt (X, ) ist auch eine q und s trennende Kantenmenge;

denn jeder Weg von q X nach s muss eine Kante aus (X, )

enthalten. Die Mächtigkeit einer minimalen trennenden Menge ist

kleiner oder gleich der Mächtigkeit jeder trennenden Menge. Das gilt

insbesondere für die trennenden Menge (X, ). Also: |Tmin| |(X, )|.

Da alle Kanten die Kapazität 1 haben, gilt

c(X, ) = = = |(X, )|.

Zusammen folgt |Tmin| c(X, ).

X

XX

X

X X

X )X,X(k

)k(c )X,X(k

1 X

X

Page 73: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 73

Satz von MengerSatz von Menger

Wir werden nun sogar zeigen, dass in jedem gerichteten Graphen

minimale trennende Mengen und maximale Wegesysteme gleich-

mächtig sind.

2.3.2 Satz von Menger (K. Menger, 1902 1985). Seien e und e*

Ecken eines gerichteten Graphen. Dann ist die Mächtigkeit eines

maximalen Wegesystems von e nach e* gleich der Mächtigkeit einer

minimalen e und e* trennenden Kantenmenge.

Beweis. Wir machen aus dem gerichteten Graphen ein Netzwerk,

indem wir e als Quelle und e* als Senke wählen und allen Kanten die

Kapazität 1 zuordnen.

Wir werden nun sogar zeigen, dass in jedem gerichteten Graphen

minimale trennende Mengen und maximale Wegesysteme gleich-

mächtig sind.

2.3.2 Satz von Menger (K. Menger, 1902 1985). Seien e und e*

Ecken eines gerichteten Graphen. Dann ist die Mächtigkeit eines

maximalen Wegesystems von e nach e* gleich der Mächtigkeit einer

minimalen e und e* trennenden Kantenmenge.

Beweis. Wir machen aus dem gerichteten Graphen ein Netzwerk,

indem wir e als Quelle und e* als Senke wählen und allen Kanten die

Kapazität 1 zuordnen.

Page 74: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 74

BeweisBeweis

Sei f ein maximaler Fluss und (X, ) ein minimaler Schnitt in diesem

Netzwerk. Nach Hilfssatz 2.3.1 gilt dann für jedes maximale Wege-

system Wmax von e nach e* und jede minimale e und e* trennen-

de Kantenmenge Tmin:

wf |Wmax| |Tmin| c(X, ).

Da f maximal und (X, ) minimal ist, gilt nach dem Maximum-Fluss-

Minimum-Schnitt-Satz wf = c(X, ). Daher gilt oben überall Gleichheit:

wf = |Wmax| = |Tmin| = c(X, ).

Insbesondere sind das maximale Wegesystem und die minimale

trennende Menge gleichmächtig.

Sei f ein maximaler Fluss und (X, ) ein minimaler Schnitt in diesem

Netzwerk. Nach Hilfssatz 2.3.1 gilt dann für jedes maximale Wege-

system Wmax von e nach e* und jede minimale e und e* trennen-

de Kantenmenge Tmin:

wf |Wmax| |Tmin| c(X, ).

Da f maximal und (X, ) minimal ist, gilt nach dem Maximum-Fluss-

Minimum-Schnitt-Satz wf = c(X, ). Daher gilt oben überall Gleichheit:

wf = |Wmax| = |Tmin| = c(X, ).

Insbesondere sind das maximale Wegesystem und die minimale

trennende Menge gleichmächtig.

X

X

XX

X

Page 75: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 75

KantenzusammenhangszahlKantenzusammenhangszahl

Wenn man Wegesysteme und trennende Mengen über ungerichtete

Wege definiert, dann gilt der Satz von Menger auch für ungerichtete

Graphen. Die folgenden Überlegungen beschränken sich daher nicht

mehr auf gerichtete Graphen.

Wir definieren die Kantenzusammenhangszahl K eines (ungerichte-

ten) Graphen als die Mindestanzahl von Kanten, die man entfernen

muss, um einen nichtzusammenhängenden Graphen zu erhalten.

Ein Graph heißt k-fach kantenzusammenhängend, wenn k K ist.

Beispiele: (a) Bäume haben die Kantenzusammenhangszahl K = 1.

(b) Für Kreise gilt K = 2.

Wenn man Wegesysteme und trennende Mengen über ungerichtete

Wege definiert, dann gilt der Satz von Menger auch für ungerichtete

Graphen. Die folgenden Überlegungen beschränken sich daher nicht

mehr auf gerichtete Graphen.

Wir definieren die Kantenzusammenhangszahl K eines (ungerichte-

ten) Graphen als die Mindestanzahl von Kanten, die man entfernen

muss, um einen nichtzusammenhängenden Graphen zu erhalten.

Ein Graph heißt k-fach kantenzusammenhängend, wenn k K ist.

Beispiele: (a) Bäume haben die Kantenzusammenhangszahl K = 1.

(b) Für Kreise gilt K = 2.

Page 76: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 76

KorollarKorollar

2.3.3 Korollar. Ein Graph ist genau dann k-fach

kantenzusammenhän-gend, wenn es für je zwei Ecken e und e*

mindestens k disjunkte Wege von e nach e* gibt.

Beweis. „“: Sei k K. Da man mindestens K Kanten entfernen

muss, um einen nichtzusammenhängenden Graphen zu erhalten,

muss jede zwei Ecken trennende Menge mindestens K Kanten

enthalten, auch jede minimale trennende Menge. Nach dem Satz von

Menger muss dann auch jedes maximale Wegesystem zwischen zwei

Ecken mindestens K Elemente enthalten. Also gibt es für jeweils zwei

Ecken e und e* ein Wegesystem von e nach e*, das mindestens

K k disjunkte Wege von e nach e* enthält.

2.3.3 Korollar. Ein Graph ist genau dann k-fach

kantenzusammenhän-gend, wenn es für je zwei Ecken e und e*

mindestens k disjunkte Wege von e nach e* gibt.

Beweis. „“: Sei k K. Da man mindestens K Kanten entfernen

muss, um einen nichtzusammenhängenden Graphen zu erhalten,

muss jede zwei Ecken trennende Menge mindestens K Kanten

enthalten, auch jede minimale trennende Menge. Nach dem Satz von

Menger muss dann auch jedes maximale Wegesystem zwischen zwei

Ecken mindestens K Elemente enthalten. Also gibt es für jeweils zwei

Ecken e und e* ein Wegesystem von e nach e*, das mindestens

K k disjunkte Wege von e nach e* enthält.

Page 77: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 77

BeweisBeweis

„“: Umgekehrt gelte nun für jeweils zwei Ecken e und e*, dass es

mindestens k disjunkte Wege von e nach e* gibt. Das bedeutet,

dass das maximale Wegesystem von e nach e* mindestens k Ele-

mente hat. Da dies für beliebige Ecken gilt, hat jedes maximale Wege-

system des Graphen mindestens k Elemente. Nach dem Satz von

Menger hat dann auch jede minimale trennende Menge mindestens k

Elemente. Das heißt, man muss mindestens k Kanten entfernen, um

einen nichtzusammenhängenden Graphen zu erhalten. Also gilt K

k.

„“: Umgekehrt gelte nun für jeweils zwei Ecken e und e*, dass es

mindestens k disjunkte Wege von e nach e* gibt. Das bedeutet,

dass das maximale Wegesystem von e nach e* mindestens k Ele-

mente hat. Da dies für beliebige Ecken gilt, hat jedes maximale Wege-

system des Graphen mindestens k Elemente. Nach dem Satz von

Menger hat dann auch jede minimale trennende Menge mindestens k

Elemente. Das heißt, man muss mindestens k Kanten entfernen, um

einen nichtzusammenhängenden Graphen zu erhalten. Also gilt K

k.

Page 78: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 78

Trennende EckenmengeTrennende Eckenmenge

Man kann den Satz von Menger auch in einer Eckenversion formulie-

ren und beweisen. Dazu übertragen wir zunächst die Begriffe „trennen-

de Menge” und „Wegesystem” auf Ecken.

Sei ein gerichteter Graph. Für eine Teilmenge T der Eckenmenge

von sei \ T der Teilgraph, der aus entsteht, wenn man alle

Ecken aus T und alle Kanten, die an Ecken aus T angrenzen,

entfernt.

Seien e und e* zwei Ecken von . Eine Menge T von Ecken heißt

e und e* trennende Eckenmenge, wenn der Teilgraph \ T keinen

gerichteten Weg von e nach e* enthält.

Man kann den Satz von Menger auch in einer Eckenversion formulie-

ren und beweisen. Dazu übertragen wir zunächst die Begriffe „trennen-

de Menge” und „Wegesystem” auf Ecken.

Sei ein gerichteter Graph. Für eine Teilmenge T der Eckenmenge

von sei \ T der Teilgraph, der aus entsteht, wenn man alle

Ecken aus T und alle Kanten, die an Ecken aus T angrenzen,

entfernt.

Seien e und e* zwei Ecken von . Eine Menge T von Ecken heißt

e und e* trennende Eckenmenge, wenn der Teilgraph \ T keinen

gerichteten Weg von e nach e* enthält.

G

G

G

G

G

G

Page 79: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 79

Eckenversion des Satzes von MengerEckenversion des Satzes von Menger

Ein innerlich disjunktes Wegesystem von e nach e* ist Wegesystem

von e nach e* mit der Eigenschaft, dass je zwei Wege bis auf e und

e* keine Ecken gemeinsam haben.

2.3.4 Satz von Menger (Eckenversion). Seien e und e* nicht-

benachbarte Ecken eines gerichteten Graphen . Dann ist die Mäch-

tigkeit eines maximalen innerlich disjunkten Wegesystems von e nach

e* gleich der Mächtigkeit einer minimalen e und e* trennenden

Eckenmenge.

Ein innerlich disjunktes Wegesystem von e nach e* ist Wegesystem

von e nach e* mit der Eigenschaft, dass je zwei Wege bis auf e und

e* keine Ecken gemeinsam haben.

2.3.4 Satz von Menger (Eckenversion). Seien e und e* nicht-

benachbarte Ecken eines gerichteten Graphen . Dann ist die Mäch-

tigkeit eines maximalen innerlich disjunkten Wegesystems von e nach

e* gleich der Mächtigkeit einer minimalen e und e* trennenden

Eckenmenge.

G

Page 80: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 80

Beweis (I)Beweis (I)

Beweis. Wir führen die Eckenversion des Satzes von Menger auf die

Kantenversion zurück. Die Idee dabei ist, aus den Ecken von Kanten

zu machen. Dazu konstruieren wir aus einen gerichteten Graphen

nach den folgenden Regeln:

Aus jeder Ecke e e, e* werden zwei Ecken e(1) und e(2) und eine

gerichtete Kante (e(1), e(2)) dazwischen.

Jede gerichtete Kante nach e wird durch eine gerichtete Kante nach

e(1) ersetzt.

Jede gerichtete Kante von e wird durch eine gerichtete Kante von

e(2) ersetzt.

Beweis. Wir führen die Eckenversion des Satzes von Menger auf die

Kantenversion zurück. Die Idee dabei ist, aus den Ecken von Kanten

zu machen. Dazu konstruieren wir aus einen gerichteten Graphen

nach den folgenden Regeln:

Aus jeder Ecke e e, e* werden zwei Ecken e(1) und e(2) und eine

gerichtete Kante (e(1), e(2)) dazwischen.

Jede gerichtete Kante nach e wird durch eine gerichtete Kante nach

e(1) ersetzt.

Jede gerichtete Kante von e wird durch eine gerichtete Kante von

e(2) ersetzt.

G

G

G

Page 81: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 81

Beweis (II)Beweis (II)

Dies sieht beispielsweise so aus:

Dann entspricht jeder gerichtete Weg von e nach e* in genau

einem gerichteten Weg von e nach e* in . Ferner sind zwei Wege

in genau dann (kanten-) disjunkt, wenn die entsprechenden Wege

in innerlich disjunkt sind.

Dies sieht beispielsweise so aus:

Dann entspricht jeder gerichtete Weg von e nach e* in genau

einem gerichteten Weg von e nach e* in . Ferner sind zwei Wege

in genau dann (kanten-) disjunkt, wenn die entsprechenden Wege

in innerlich disjunkt sind.

e*ey

z

x

e*e

x(1) x(2)

y(1)

z(1) z(2)

y(2)

G

G

G

G

G

G

Page 82: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 82

Beweis (III)Beweis (III)

Folglich ist die maximale Anzahl disjunkter Wege in gleich der

maximalen Anzahl innerlich disjunkter Wege in . Daher ist die

Mächtigkeit eines maximalen Wegesystems von e nach e* in

gleich der Mächtigkeit eines maximalen innerlich disjunkten Wege-systems Wmax von e nach e* in .

Analog kann man zeigen, dass die Mächtigkeiten einer minimalen e und

e* trennenden Kantenmenge in und einer minimalen e und e*

trennenden Eckenmenge Tmin in übereinstimmen.

Nach der Kantenversion des Satzes von Menger gilt | | = | |.

Insgesamt folgt |Wmax| = | | = | | = |Tmin|.

Folglich ist die maximale Anzahl disjunkter Wege in gleich der

maximalen Anzahl innerlich disjunkter Wege in . Daher ist die

Mächtigkeit eines maximalen Wegesystems von e nach e* in

gleich der Mächtigkeit eines maximalen innerlich disjunkten Wege-systems Wmax von e nach e* in .

Analog kann man zeigen, dass die Mächtigkeiten einer minimalen e und

e* trennenden Kantenmenge in und einer minimalen e und e*

trennenden Eckenmenge Tmin in übereinstimmen.

Nach der Kantenversion des Satzes von Menger gilt | | = | |.

Insgesamt folgt |Wmax| = | | = | | = |Tmin|.

G

G

G

G

G

G

maxW

maxW

maxW

minT

minT

minT

Page 83: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 83

EckenzusammenhangszahlEckenzusammenhangszahl

Die Eckenversion des Satzes von Menger gilt auch für ungerichtete

Graphen. Daher können wir auch aus ihr Aussagen über ungerichtete

Graphen ableiten.

Die Eckenzusammenhangszahl E eines Graphen ist die Mindest-

anzahl von Ecken, die man entfernen muss, um einen nichtzusammen-

hängenden Graphen zu erhalten.

Ein Graph heißt k-fach eckenzusammenhängend, wenn k E ist.

Die Eckenversion des Satzes von Menger gilt auch für ungerichtete

Graphen. Daher können wir auch aus ihr Aussagen über ungerichtete

Graphen ableiten.

Die Eckenzusammenhangszahl E eines Graphen ist die Mindest-

anzahl von Ecken, die man entfernen muss, um einen nichtzusammen-

hängenden Graphen zu erhalten.

Ein Graph heißt k-fach eckenzusammenhängend, wenn k E ist.

Page 84: 2.1 Gerichtete Graphen

Kapitel 2: Netzwerke © Zschiegner

Mai 2002Seite 84

KorollarKorollar

2.3.5 Korollar. Ein Graph ist genau dann k-fach eckenzusammen-

hängend, wenn es für jeweils zwei Ecken e und e* mindestens k

innerlich disjunkte Wege von e nach e* gibt.

Beweis. Der Beweis kann völlig analog zum Beweis von 2.3.3 geführt

werden.

2.3.5 Korollar. Ein Graph ist genau dann k-fach eckenzusammen-

hängend, wenn es für jeweils zwei Ecken e und e* mindestens k

innerlich disjunkte Wege von e nach e* gibt.

Beweis. Der Beweis kann völlig analog zum Beweis von 2.3.3 geführt

werden.