Propädeutikum Diskrete Mathematik (MA 1503) - Flüsse und ...€¦ · Propädeutikum Diskrete...

Preview:

Citation preview

Propädeutikum Diskrete Mathematik (MA 1503)Flüsse und der Algorithmus von Ford und Fulkerson

Tina Janne Schmidt

Technische Universität München

Wintersemester 2012/2013

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 1

Gerichtete Graphen

Definition gerichteter GraphG = (V,A) ist ein gerichteter Graph, wenn A ⊂ V × V (und nicht E ⊂

(V2

)).

Definiere N−(x) = {y ∈ V : (y, x) ∈ A} und N+(x) = {y ∈ V : (x, y) ∈ A}.

In A sind Tupel, deren Elemente eineReihenfolge haben, enthalten, in EMengen. D.h. eine Kante einesgerichteten Graphen hat einen Anfangs-und einen Endknoten, z.B. wird dieKante (a, b) durch einen Pfeil von a nachb dargestellt.In gerichteten Graphen ist (a, b) 6= (b, a);in ungerichteten Graphen ist{v, w} = {w, v}. In gerichteten Graphensind Kanten von einem Knoten zu sichselbst möglich, z.B. (a, a); inungerichteten Graphen gibt es keineKanten der Form {v, v}.

e

a

d

b

c

A = {(a, b), (a, e), (b, c), (b, e),(c, c), (c, d), (e, b), (e, d)}

N+(a) = {b, e}, N−(d) = {e, c}

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 2

Netzwerke und Flüsse

Definition NetzwerkEin Netzwerk ist ein Tupel N = (V,A, s, t, c), wobei (V,A, c) ein gerichteterGraph mit Kapazitätsfunktion c : A→ R≥0 ist, s ∈ V Quelle und t ∈ V Senkezwei ausgezeichnete Knoten sind.

Definition FlussSei N = (V,A, s, t, c) ein Netzwerk. Eine Abbildung f : A→ R≥0 heißt s, t-Fluss(flow) in N , wenn

1 Flusserhaltung∑y∈N−(x)

f((y, x)) =∑

y∈N+(x)

f((x, y)) ∀ x ∈ V \ {s, t}

2 Zulässigkeitf((x, y)) ≤ c((x, y)) ∀ (x, y) ∈ A.

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 3

Netzwerke und Flüsse

Definition NetzwerkEin Netzwerk ist ein Tupel N = (V,A, s, t, c), wobei (V,A, c) ein gerichteterGraph mit Kapazitätsfunktion c : A→ R≥0 ist, s ∈ V Quelle und t ∈ V Senkezwei ausgezeichnete Knoten sind.

Definition FlussSei N = (V,A, s, t, c) ein Netzwerk. Eine Abbildung f : A→ R≥0 heißt s, t-Fluss(flow) in N , wenn

1 Flusserhaltung∑y∈N−(x)

f((y, x)) =∑

y∈N+(x)

f((x, y)) ∀ x ∈ V \ {s, t}

2 Zulässigkeitf((x, y)) ≤ c((x, y)) ∀ (x, y) ∈ A.

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 3

Netzwerke und Flüsse - Beispiel

gerichteter Graph mit zwei ausgezeichneten Knoten

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

a b

c d

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 4

Netzwerke und Flüsse - Beispiel

gerichteter Graph mit zwei ausgezeichneten Knoten

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

a b

c d

1

4

2

3

2

4

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 4

Netzwerke und Flüsse - Beispiel

gerichteter Graph mit zwei ausgezeichneten Knoten

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

a b

c d

1

4

2

3

2

4

1

1/

3/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 4

Netzwerke und Flüsse - Beispiel

gerichteter Graph mit zwei ausgezeichneten Knoten

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

a b

c d

1

4

2

3

2

4

1

1/

3/1/

2/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 4

Netzwerke und Flüsse - Beispiel

gerichteter Graph mit zwei ausgezeichneten Knoten

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

a b

c d

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 4

Netzwerke und Flüsse - Beispiel

gerichteter Graph mit zwei ausgezeichneten Knoten

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

a b

c d

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

1/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 4

Netzwerke und Flüsse - Beispiel

gerichteter Graph mit zwei ausgezeichneten Knoten

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

a b

c d

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

3/

1/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 4

FlüsseVereinbarung:Schreibe f(x, y) statt f((x, y)) und c(x, y) statt c((x, y)).

Bemerkung:In Zukunft gehen wir davon aus, dass für alle x, y ∈ V gilt

f(x, y) > 0 ⇒ f(y, x) = 0.

a b c d

4

3

a b c d

1

0

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 5

FlüsseVereinbarung:Schreibe f(x, y) statt f((x, y)) und c(x, y) statt c((x, y)).

Bemerkung:In Zukunft gehen wir davon aus, dass für alle x, y ∈ V gilt

f(x, y) > 0 ⇒ f(y, x) = 0.

a b c d

4

3

a b c d

1

0

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 5

FlüsseVereinbarung:Schreibe f(x, y) statt f((x, y)) und c(x, y) statt c((x, y)).

Bemerkung:In Zukunft gehen wir davon aus, dass für alle x, y ∈ V gilt

f(x, y) > 0 ⇒ f(y, x) = 0.

a b c d

4

3

a b c d

1

0

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 5

Wert eines Flusses

Definition WertDer Wert eines Flusses f ist definiert als

val(f) =∑

y∈N+(s)

f(s, y) −∑

y∈N−(s)

f(y, s).

Der Fluss f hat maximalen Wert im Netzwerk N , wenn val(f) ≥ val(f ′) für alleFlüsse f ′ in N gilt.

s t

a b

c d

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

3/

1/

val(f) = (3 + 1)− 0 = 4

PropositionJedes Netzwerk besitzt einenFluss maximalen Werts.

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 6

Wert eines Flusses

Definition WertDer Wert eines Flusses f ist definiert als

val(f) =∑

y∈N+(s)

f(s, y) −∑

y∈N−(s)

f(y, s).

Der Fluss f hat maximalen Wert im Netzwerk N , wenn val(f) ≥ val(f ′) für alleFlüsse f ′ in N gilt.

s t

a b

c d

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

3/

1/

val(f) = (3 + 1)− 0 = 4

PropositionJedes Netzwerk besitzt einenFluss maximalen Werts.

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 6

Wert eines Flusses

Definition WertDer Wert eines Flusses f ist definiert als

val(f) =∑

y∈N+(s)

f(s, y) −∑

y∈N−(s)

f(y, s).

Der Fluss f hat maximalen Wert im Netzwerk N , wenn val(f) ≥ val(f ′) für alleFlüsse f ′ in N gilt.

s t

a b

c d

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

3/

1/

val(f) = (3 + 1)− 0 = 4

PropositionJedes Netzwerk besitzt einenFluss maximalen Werts.

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 6

Restnetzwerk

Definition RestnetzwerkSei N = (V,A, s, t, c) ein Netzwerk und f ein Fluss in N . Wir erweitern zunächstdie Kapazitätsfunktion zu c : V × V → R≥0 durch c(x, y) = 0 für alle (x, y) /∈ A.Das Restnetzwerk Nf = (V,Af , s, t, cf ) ist definiert durchAf = {(x, y) : cf (x, y) > 0} und

cf (x, y) =

c(x, y)− f(x, y), falls f(x, y) > 0c(x, y) + f(y, x), falls f(y, x) > 0c(x, y), sonst.

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 7

Restnetzwerk - Beispiel

cf (x, y) =

c(x, y)− f(x, y), falls f(x, y) > 0c(x, y) + f(y, x), falls f(y, x) > 0c(x, y), sonst.

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

x

y

5

5

1

55

5

2

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 8

Restnetzwerk - Beispiel

cf (x, y) =

c(x, y)− f(x, y), falls f(x, y) > 0c(x, y) + f(y, x), falls f(y, x) > 0c(x, y), sonst.

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

x

y

5

5

1

55

5

2

4/

0/

1/

3/0/

1/

2/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 8

Restnetzwerk - Beispiel

cf (x, y) =

c(x, y)− f(x, y), falls f(x, y) > 0c(x, y) + f(y, x), falls f(y, x) > 0c(x, y), sonst.

Kapazitätsobergrenze c : A→ R≥0

s, t- Fluss f : A→ R≥0

s t

x

y

5

5

1

55

5

2

4/

0/

1/

3/0/

1/

2/

Restkapazitäten cf : A→ R≥ 0

s, t- Fluss f : A→ R≥0

s t

x

y

1

4

6

28

4

1

2

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 8

Wege im Restnetzwerk

Definition gerichteter WegSei G = (V,A) ein gerichteter Graph. Dann heißt (v1, v2, v3, . . . , vl) gerichteterWeg in G falls (vi, vi+1) ∈ A für alle i ∈ [l − 1].

s t

x

y

1

4

6

28

4

1

2

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 9

Fluss erhöhen - BeispielFluss

s t

x

y

5

5

1

55

5

2

4/

0/

1/

3/0/

1/

2/

Restnetzwerk

s t

x

y

1

4

6

28

4

1

2

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 10

Fluss erhöhen - BeispielFluss

s t

x

y

5

5

1

55

5

2

4/

0/

1/

3/0/

1/

2/

Weg im Restnetzwerk

s t

x

y6

8

4

4/

4/

4/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 10

Fluss erhöhen - BeispielFluss

s t

x

y

5

5

1

55

5

2

4/

0/

1/

3/0/

1/

2/

Weg im Restnetzwerk

s t

x

y6

8

4

4/

4/

4/

erhöhter Fluss

s t

x

y

5

5

1

55

5

2

4/

4/

1/

3/4/

5/

2/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 10

Fluss erhöhen - BeispielFluss

s t

x

y

5

5

1

55

5

2

4/

0/

1/

3/0/

1/

2/

Weg im Restnetzwerk

s t

x

y6

8

4

4/

4/

4/

erhöhter Fluss

s t

x

y

5

5

1

55

5

2

4/

3/

0/

0/1/

5/

2/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 10

Fluss erhöhen

SatzWenn f ein Fluss in N und W ein gerichteter s, t-Weg im Restnetzwerk Nf ist,dann kann f entlang W zu einem Fluss f ′ erhöht werden mit

val(f ′) = val(f) + δ,

wobei 0 < δ = min{cf (e) :W benutzt Kante e}.

SatzSei f Fluss in N . Wenn es in Nf keinen gerichteten s, t-Weg mehr gibt, dann hatf maximalen Wert.

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 11

Fluss erhöhen

SatzWenn f ein Fluss in N und W ein gerichteter s, t-Weg im Restnetzwerk Nf ist,dann kann f entlang W zu einem Fluss f ′ erhöht werden mit

val(f ′) = val(f) + δ,

wobei 0 < δ = min{cf (e) :W benutzt Kante e}.

SatzSei f Fluss in N . Wenn es in Nf keinen gerichteten s, t-Weg mehr gibt, dann hatf maximalen Wert.

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 11

Algorithmus 1 : Algorithmus von Ford und FulkersonInput : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile Es gibt einen s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 12

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

ends Quelle, t Senke

s t

v w

x y

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

ends Quelle, t Senkec Kapazitätsobergrenze

s t

v w

x y

1

4

2

3

2

4

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

0/

0/

0/

0/

0/

0/

0/

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

0/

0/

0/

0/

0/

0/

0/

cf Restkapazität

s t

v w

x y

1

4

2

3

2

4

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

0/

0/

0/

0/

0/

0/

0/

cf Restkapazität

s t

v w

x y

1

4

2

3

2

4

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

0/

0/

0/

0/

0/

0/

0/

cf Restkapazität

s t

w

x2

2

2

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

0/

2/

0/

0/

2/

2/

0/

cf Restkapazität

s t

w

x2

2

2

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

0/

2/

0/

0/

2/

2/

0/

cf Restkapazität

s t

v w

x y

1

2 2

2

3

2 22

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

0/

2/

0/

0/

2/

2/

0/

cf Restkapazität

s t

v w

x y

1

2 2

2

3

2 22

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

0/

2/

0/

0/

2/

2/

0/

cf Restkapazität

s t

v w

x y

1

1

1

1

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

1/

2/

1/

1/

1/

2/

1/

cf Restkapazität

s t

v w

x y

1

1

1

1

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

1/

2/

1/

1/

1/

2/

1/

cf Restkapazität

s t

v w

x y

1

2 2

1

1

21

11 2

2

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

1/

2/

1/

1/

1/

2/

1/

cf Restkapazität

s t

v w

x y

1

2 2

1

1

21

11 2

2

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

1/

2/

1/

1/

1/

2/

1/

cf Restkapazität

s t

w

x1

11

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

3/

1/

cf Restkapazität

s t

w

x1

11

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

3/

1/

cf Restkapazität

s t

v w

x y

1

1 3

1

1

21

2 13

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Fluss

s t

v w

x y

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

3/

1/

cf Restkapazität

s t

v w

x y

1

1 3

1

1

21

2 13

1

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Input : Netzwerk N = (V,A, s, t, c)Output : Fluss f mit maximalem Wert

in N

for (x, y) ∈ A do1

f(x, y)← 0;2

endwhile ∃ s, t-Weg W in Nf do3

Erhöhe f entlang von W ;4

end

s Quelle, t Senkec Kapazitätsobergrenzef Flussval(f) = 1 + 3− 0 = 4

s t

v w

x y

1

4

2

3

2

4

1

1/

3/

1/

1/

2/

3/

1/

cf Restkapazität

s t

v w

x y

1

1 3

1

1

21

2 13

1

val(f) = 1 + 3− 0 = 4

Tina Janne Schmidt (TU München) Diskrete Mathematik WS 12/13 Seite 13

Recommended