• Keine Ergebnisse gefunden

Graphen und Algorithmen

N/A
N/A
Protected

Academic year: 2022

Aktie "Graphen und Algorithmen"

Copied!
898
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Graphen und Algorithmen

Vorlesung #4: Maximale Flüsse

WS 2007/2008

Dr. Armin Fügenschuh

Technische Universität Darmstadt

(2)

Übersicht

2

(3)

Übersicht

Definition des Maximalfluss- und des Minimalschnitt-Problems

2

(4)

Übersicht

Definition des Maximalfluss- und des Minimalschnitt-Problems Anwendungen

2

(5)

Übersicht

Definition des Maximalfluss- und des Minimalschnitt-Problems Anwendungen

Residualgraphen und augmentierende Wege

2

(6)

Übersicht

Definition des Maximalfluss- und des Minimalschnitt-Problems Anwendungen

Residualgraphen und augmentierende Wege Der Maximalfluss-Minimalschnitt-Satz

2

(7)

Übersicht

Definition des Maximalfluss- und des Minimalschnitt-Problems Anwendungen

Residualgraphen und augmentierende Wege Der Maximalfluss-Minimalschnitt-Satz

Algorithmus von Ford und Fulkerson

2

(8)

Übersicht

Definition des Maximalfluss- und des Minimalschnitt-Problems Anwendungen

Residualgraphen und augmentierende Wege Der Maximalfluss-Minimalschnitt-Satz

Algorithmus von Ford und Fulkerson Eine Variante von Edmonds und Karp

2

(9)

Übersicht

Definition des Maximalfluss- und des Minimalschnitt-Problems Anwendungen

Residualgraphen und augmentierende Wege Der Maximalfluss-Minimalschnitt-Satz

Algorithmus von Ford und Fulkerson Eine Variante von Edmonds und Karp Eine weitere Variante von Dinits

2

(10)

Übersicht

Definition des Maximalfluss- und des Minimalschnitt-Problems Anwendungen

Residualgraphen und augmentierende Wege Der Maximalfluss-Minimalschnitt-Satz

Algorithmus von Ford und Fulkerson Eine Variante von Edmonds und Karp Eine weitere Variante von Dinits

Algorithmus von Goldberg und Tarjan

2

(11)

Das Problem des maximalen Fluss

3

(12)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(13)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit .

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

(14)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn .

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) ! f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(15)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(16)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(17)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als .

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(18)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(19)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(20)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t

7

4

3

2 1

6

9

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(21)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t

7

4

3

2 1

6

9

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(22)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t

(3,7) 7

4

3

2 1

6

9

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(23)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t

(3,7)

(2,4)

(1,3) 7

4

3

2 1

6

9

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(24)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t

(3,7)

(2,4)

(1,3) 7

4

3

2 1

6

9 (1,1)

(1,2)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(25)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t

(3,7)

(2,4)

(1,3) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(26)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t

(3,7)

(2,4)

(1,3) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(27)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(28)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(29)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3

(6,7) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(30)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3

(6,7) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

(3,3) (3,4)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(31)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3

(6,7) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

(1,1) (2,2)

(3,3) (3,4)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(32)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3

(6,7) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

(1,1) (2,2)

(3,3) (3,4)

(4,6)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(33)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3

(6,7) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

(1,1) (2,2)

(3,3) (3,4)

(4,6)

(6,9)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(34)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

s t s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3 val(f) = 6

(6,7) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

(1,1) (2,2)

(3,3) (3,4)

(4,6)

(6,9)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(35)

Das Problem des maximalen Fluss

Definition 1:

Sei ein zusammenhängender Digraph mit Kapazitäten und zwei

ausgezeichneten Knoten , Quelle und Senke genannt. Das Quadrupel wird als Flussnetz bezeichnet.

Definition 2:

Sei ein Flussnetz. Ein Fluss ist eine Abbildung mit . erfüllt die Flusserhaltung am Knoten , wenn . Eine Zirkulation ist ein Fluss, der an jedem Knoten die Flusserhaltung erfüllt.

Ein - -Fluss erfüllt die Flusserhaltung an jedem Knoten .

Der Wert eines - -Flusses ist definiert als . Beispiel:

Definition 3:

Gegeben sei ein Flussnetz . Die Aufgabe, einen - -Fluss mit maximalem Wert zu finden, wird als Maximalfluss-Problem (engl. max-flow problem) bezeichnet.

3

D = (V, A) u : A → R+

s, t ∈ V, s "= t (D, u, s, t)

(D, u, s, t) f : A → R+ f(a) ≤ u(a) ∀ a ∈ A

v ∈ V

v ∈ V \{s, t} s t

s t val(f) := !

v:(s,v)∈A f(s, v) −

!

v:(v,s)∈A f(v, s)

(D, u, s, t) s t

s t s t s t

(3,7)

(2,4)

(1,3)

val(f) = 3 val(f) = 6

(6,7) 7

4

3

2 1

6

9 (1,1)

(2,6) (1,2)

(3,9)

(1,1) (2,2)

(3,3) (3,4)

(4,6)

(6,9)

!

w:(w,v)A f(w, v) = !

w:(v,w)A f(v, w)

f v V

(36)

Existenz von Optimallösungen des Maximalfluss-Problems

4

(37)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

4 (D, u, s, t)

(38)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

4 (D, u, s, t)

(39)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

4 (D, u, s, t)

f f = (fij) ∈ RA+(D)

(40)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

Sei die Menge der zulässigen Flussvektoren. Diese ist beschrieben durch

4 (D, u, s, t)

f f = (fij) ∈ RA+(D) F

(41)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

Sei die Menge der zulässigen Flussvektoren. Diese ist beschrieben durch

4 (D, u, s, t)

f f = (fij) ∈ RA+(D) F

0 ≤ fi,j ≤ ui,j ∀ (i, j) ∈ A(D)

(42)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

Sei die Menge der zulässigen Flussvektoren. Diese ist beschrieben durch

4 (D, u, s, t)

f f = (fij) ∈ RA+(D) F

0 ≤ fi,j ≤ ui,j ∀ (i, j) ∈ A(D)

∀v ∈ V (D)\{s, t}

!

w:(v,w)A(D) fv,w =

!

w:(w,v)A(D) fw,v

(43)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

Sei die Menge der zulässigen Flussvektoren. Diese ist beschrieben durch

ist eine beschränkte, abgeschlossene Teilmenge des .

4 (D, u, s, t)

f f = (fij) ∈ RA+(D) F

0 ≤ fi,j ≤ ui,j ∀ (i, j) ∈ A(D)

∀v ∈ V (D)\{s, t}

!

w:(v,w)A(D) fv,w =

!

w:(w,v)A(D) fw,v

F RA(D)

(44)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

Sei die Menge der zulässigen Flussvektoren. Diese ist beschrieben durch

ist eine beschränkte, abgeschlossene Teilmenge des . Also ist kompakt (Satz von Weierstraß).

4 (D, u, s, t)

f f = (fij) ∈ RA+(D) F

0 ≤ fi,j ≤ ui,j ∀ (i, j) ∈ A(D)

∀v ∈ V (D)\{s, t}

!

w:(v,w)A(D) fv,w =

!

w:(w,v)A(D) fw,v

F RA(D)

F

(45)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

Sei die Menge der zulässigen Flussvektoren. Diese ist beschrieben durch

ist eine beschränkte, abgeschlossene Teilmenge des . Also ist kompakt (Satz von Weierstraß).

Ferner ist , da zumindest .

4 (D, u, s, t)

f f = (fij) ∈ RA+(D) F

0 ≤ fi,j ≤ ui,j ∀ (i, j) ∈ A(D)

∀v ∈ V (D)\{s, t}

!

w:(v,w)A(D) fv,w =

!

w:(w,v)A(D) fw,v

F RA(D)

F

F != ∅ 0 ∈ F

(46)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

Sei die Menge der zulässigen Flussvektoren. Diese ist beschrieben durch

ist eine beschränkte, abgeschlossene Teilmenge des . Also ist kompakt (Satz von Weierstraß).

Ferner ist , da zumindest . Die Funktion ist stetig.

4 (D, u, s, t)

f f = (fij) ∈ RA+(D) F

0 ≤ fi,j ≤ ui,j ∀ (i, j) ∈ A(D)

∀v ∈ V (D)\{s, t}

!

w:(v,w)A(D) fv,w =

!

w:(w,v)A(D) fw,v

F RA(D)

F

F != ∅ 0 ∈ F

val : RA(D) → R

(47)

Existenz von Optimallösungen des Maximalfluss-Problems

Satz 4:

Sei ein Flussnetz. Dann hat das Maximalfluss-Problem eine optimale Lösung.

Beweis:

Jeder Fluss kann als Vektor gesehen werden.

Sei die Menge der zulässigen Flussvektoren. Diese ist beschrieben durch

ist eine beschränkte, abgeschlossene Teilmenge des . Also ist kompakt (Satz von Weierstraß).

Ferner ist , da zumindest . Die Funktion ist stetig.

Es folgt, dass auf ihr Maximum annimmt, was gleichbedeutend mit der Existenz einer optimal Lösung ist.

4 (D, u, s, t)

f f = (fij) ∈ RA+(D) F

0 ≤ fi,j ≤ ui,j ∀ (i, j) ∈ A(D)

∀v ∈ V (D)\{s, t}

!

w:(v,w)A(D) fv,w =

!

w:(w,v)A(D) fw,v

F RA(D)

F

F != ∅ 0 ∈ F

val : RA(D) → R val F

(48)

Das Problem des minimalen Schnitts

5

(49)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t

s X, t V (D)\X

(50)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t u(X)

s X, t V (D)\X

(51)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s X, t V (D)\X

(52)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s X, t V (D)\X

(53)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s X, t V (D)\X

(54)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s X, t V (D)\X

(55)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s X, t V (D)\X

(56)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s X, t V (D)\X

(57)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

u(X) = 10

s X, t V (D)\X

(58)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10

s X, t V (D)\X

(59)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10

s X, t V (D)\X

(60)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10

s X, t V (D)\X

(61)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10

s X, t V (D)\X

(62)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10 u(X) = 16

s X, t V (D)\X

(63)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10 u(X) = 16

s X, t V (D)\X

(64)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10 u(X) = 16

s X, t V (D)\X

(65)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10 u(X) = 16

s X, t V (D)\X

(66)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10 u(X) = 16

s X, t V (D)\X

(67)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10 u(X) = 16 u(X) = 6

s X, t V (D)\X

(68)

Das Problem des minimalen Schnitts

Definition 5:

Sei ein Flussnetz und eine Teilmenge der Knoten mit . Dann wird die Teilmenge der Bögen als - -Schnitt bezeichnet.

Die Schnittkapazität ist die Summe der Bogenkapazitäten des - -Schnitts.

Definition 6:

Sei ein Flussnetz. Die Aufgabe, einen - -Schnitt mit minimalem Gewicht zu finden, wird als Minimalschnitt-Problem (engl. min-cut problem) bezeichnet.

Beispiel:

Wir haben einen Fluss mit Wert 6 und einen Schnitt mit Kapazität 6.

5

(D, u, s, t) X ⊂ V

{(i, j) ∈ A : i ∈ X, j /∈ X} s t s t

(D, u, s, t) s t

u(X)

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

s t

7

4

3

2 1

6

9

u(X) = 10 u(X) = 16 u(X) = 6

s X, t V (D)\X

Referenzen

ÄHNLICHE DOKUMENTE

Für einen Knoten eines Graphen ist der Grad definiert als die Anzahl der mit inzidenten Kanten.. Für einen Knoten eines Digraphen definieren wir den Ausgangsgrad

Umgekehrt: ersetzt man in jede Kante durch die Kanten eines kürzesten - -Weges in , so erhält man einen Steinerbaum gleichen Gewichts für. Kantendopplungen und

Wir haben gezeigt (Satz 11), dass eine Abbildung genau dann ein maximaler - -Fluss im Flussnetz ist, wenn sie die folgenden Eigenschaften erfüllt:. es gibt keinen

Ein schlichter Graph ist genau dann -fach zusammenhängend, wenn für jedes Knotenpaar von , , mindestens paarweise innerlich disjunkte - -Wege

Bemerkung: Da in einem Weg die Kanten per Definition paarweise verschieden sind, enthält ein Eulerscher Weg damit jede Kante genau einmal.. G = (V, E)

Bemerkung: Da abgesehen vom Endknoten kein Knoten wiederholt wird, enthält auch ein Hamiltonscher Zyklus jeden Knoten von genau einmal.. Hamiltonsche Graphen sind benannt nach

Ist ein Knoten des Graphen ein Endknoten einer Kante im Matching , dann wird als -gesättigt bezeichnet...

Wenn die Nachbarn von weniger als Farben verbrauchen, dann kann mit einer nicht verbrauchten Farbe gefärbt werden... Satz von