113
Algorithmen II – Wintersemester 2013/2014 Institut f ¨ ur Theoretische Informatik Prof. Dr. Dorothea Wagner Algorithmen II ¨ Ubung am 12.11.2013 www.kit.edu KIT – Universit¨ at des Landes Baden-W ¨ urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft I NSTITUT F ¨ UR T HEORETISCHE I NFORMATIK · PROF .DR.DOROTHEA WAGNER Fl¨ usse und Schnitte

Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Algorithmen IIUbung am 12.11.2013

www.kit.eduKIT – Universitat des Landes Baden-Wurttemberg undnationales Forschungszentrum in der Helmholtz-Gemeinschaft

INSTITUT FUR THEORETISCHE INFORMATIK · PROF. DR. DOROTHEA WAGNER

Flusse und Schnitte

Page 2: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Algorithmus von Goldberg & Tarjan

Page 3: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

0 / 4 0 / 7

0 / 10 / 5

0 / 3 0 / 1

0 / 3

Aktiv

a

c

b

Page 4: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

0 / 4

Fuhre Gegenkanten ein

0 / 7

0 / 10 / 5

0 / 3 0 / 1

0 / 0 0 / 0

0 / 0 0 / 0

0 / 30 / 0

Aktiv

a

c

b

Page 5: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s[5]−9

t[0]0

[0]5

[0]0

[0]4

Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv4 / 4 0 / 7

0 / 15 / 5

0 / 3 0 / 1

0 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

a

c

b

Page 6: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s[5]−9

t[0]0

[0]5

[0]0

[0]4

Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

4

35 1 3

7

1

Residualnetzwerk Df :

4 / 4 0 / 7

0 / 15 / 5

0 / 3 0 / 1

0 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

a

c

b

Page 7: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s[5]−9

t[0]0

[0]5

[0]0

[0]4

Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

4

35 1 3

7

1

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

4 / 4 0 / 7

0 / 15 / 5

0 / 3 0 / 1

0 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

a

c

b

Page 8: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s[5]−9

t[0]0

[0]5

[0]0

[0]4

Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

4

35 1 3

7

1

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

Bedingungen zum Ausfuhren von RELABEL fur a:Fur alle Kanten (a, v ) in Df gilt: dist(a) ≤ dist(v )

Setze Label dist(a) auf. . .∞, falls es in Df keine Kante (a, v ) gibt.

Minimum von dist(v ) + 1 uber alle Kanten (a, v ) in Df .

4 / 4 0 / 7

0 / 15 / 5

0 / 3 0 / 1

0 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

a

c

b

Page 9: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

4

35 1 3

7

1

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

Bedingungen zum Ausfuhren von RELABEL fur a:Fur alle Kanten (a, v ) in Df gilt: dist(a) ≤ dist(v )

Setze Label dist(a) auf. . .∞, falls es in Df keine Kante (a, v ) gibt.

Minimum von dist(v ) + 1 uber alle Kanten (a, v ) in Df .

[5]−9

[0]0

[1]5

[0]0

[0]4

4 / 4 0 / 7

0 / 15 / 5

0 / 3 0 / 1

0 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

a

c

b

Page 10: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

4

35 1 3

7

1

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

[5]−9

[0]0

[1]5

[0]0

[0]4

Bedingungen zum Ausfuhren von PUSH fur a:Df enthalt Kante (a, v ) mit dist(a) = dist(v ) + 1

Erhohe Fluss auf dieser Kante (a, v ) moglichst stark.

4 / 4 0 / 7

0 / 15 / 5

0 / 3 0 / 1

0 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

a

c

b

Page 11: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

Bedingungen zum Ausfuhren von PUSH fur a:Df enthalt Kante (a, v ) mit dist(a) = dist(v ) + 1

Erhohe Fluss auf dieser Kante (a, v ) moglichst stark.

4 / 4 0 / 7

0 / 15 / 5

3 / 3 0 / 1

−3 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

4

3

5 1 3

7

1

[5]−9

[0]0

[1]2

[0]3

[0]4

a

c

b

Page 12: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

4 / 4 0 / 7

0 / 15 / 5

3 / 3 0 / 1

−3 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

4

3

5 1 3

7

1

[5]−9

[0]0

[1]2

[0]3

[0]4

a

c

RELABEL(a)

b

Page 13: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

4 / 4 0 / 7

0 / 15 / 5

3 / 3 0 / 1

−3 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

4

3

5 1 3

7

1

a

c

RELABEL(a)

[5]−9

[0]0

[6]2

[0]3

[0]4

b

Page 14: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

4 / 4 0 / 7

0 / 15 / 5

3 / 3 0 / 1

−3 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

4

3

5 1 3

7

1

a

c[5]−9

[0]0

[6]2

[0]3

[0]4

RELABEL(b)

b

Page 15: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

4 / 4 0 / 7

0 / 15 / 5

3 / 3 0 / 1

−3 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

4

3

5 1 3

7

1

a

c

RELABEL(b)

[5]−9

[0]0

[6]2

[1]3

[0]4

b

Page 16: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

4 / 4 0 / 7

0 / 15 / 5

3 / 3 0 / 1

−3 / 0 0 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

4

3

5 1 3

7

1

a

c[5]−9

[0]0

[6]2

[1]3

[0]4

PUSH(b, t )

b

Page 17: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

PUSH(b, t )4

3

5 1 3

7

1

4 / 4 0 / 7

0 / 15 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

[5]−9

[0]1

[6]2

[1]2

[0]4

b

Page 18: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

4

3

5 1 3

7

1

4 / 4 0 / 7

0 / 15 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 0 / 0

0 / 3−5 / 0

[5]−9

[0]1

[6]2

[1]2

[0]4

b

PUSH(b, c)

Page 19: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

b

PUSH(b, c)4

3

5 3 1

7

1

4 / 4 0 / 7

−2 / 15 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 0 / 0

2 / 3−5 / 0

[5]−9

[0]1

[6]2

[1]0

[0]6

Page 20: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

b

4

3

5 3 1

7

1

4 / 4 0 / 7

−2 / 15 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 0 / 0

2 / 3−5 / 0

[5]−9

[0]1

[6]2

[1]0

[0]6

PUSH(a, s)

Page 21: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

b

PUSH(a, s)

4 / 4 0 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 0 / 0

2 / 3−3 / 0

4

3

3 3 1

7

1

[5]−7

[0]1

[6]0

[1]0

[0]6

2

Page 22: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

b

4 / 4 0 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 0 / 0

2 / 3−3 / 0

4

3

3 3 1

7

1

[5]−7

[0]1

[6]0

[1]0

[0]6

2

RELABEL(c)

Page 23: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

b

4 / 4 0 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 0 / 0

2 / 3−3 / 0

4

3

3 3 1

7

1

2

RELABEL(c)

[5]−7

[0]1

[6]0

[1]0

[1]6

Page 24: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

b

4 / 4 0 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 0 / 0

2 / 3−3 / 0

4

3

3 3 1

7

1

2

[5]−7

[0]1

[6]0

[1]0

[1]6

PUSH(c, t )

Page 25: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Ein Beispiel

s t Namedist

Uberschuss e

Fluss f / Kapazitat c

Fuhre Gegenkanten ein

Initialisiere dist und f

Aktiv

Betrachte Residualnetzwerk

s

a

c t

b

Wahle aktiven Knoten und fuhre PUSH / RELABEL aus:Residualnetzwerk Df :

a

c

b

PUSH(c, t )

4 / 4 6 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 −6 / 0

2 / 3−3 / 0

4

3

3 3 1

1

1

2

[5]−7

[0]7

[6]0

[1]0

[1]0

6

Page 26: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Gegeben sei ein Flussnetzwerk zusammen mit dem Ergebnis des Push-Relabel-Algorithmus. D.h. es stehen folgende Informationen zur Verfugung:

Ein maximaler Fluss f .Residualnetzwerk zu f .Uberschusse aller Knoten.Label dist(v ) fur alle Knoten.

s t

a

c

b

4 / 4 6 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 −6 / 0

2 / 3−3 / 0

[5]−7

[0]7

[6]0

[1]0

[1]0

Gesucht: Algorithmus der einen minimalen s-t-Schnitt (S, V \ S) berechnet.

s

a

c t

b

4

3

3 3 1

1

1

2

6

Page 27: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Gegeben sei ein Flussnetzwerk zusammen mit dem Ergebnis des Push-Relabel-Algorithmus. D.h. es stehen folgende Informationen zur Verfugung:

Ein maximaler Fluss f .Residualnetzwerk zu f .Uberschusse aller Knoten.Label dist(v ) fur alle Knoten.

s t

a

c

b

4 / 4 6 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 −6 / 0

2 / 3−3 / 0

[5]−7

[0]7

[6]0

[1]0

[1]0

Gesucht: Algorithmus der einen minimalen s-t-Schnitt (S, V \ S) berechnet.

s

a

c t

b

4

3

3 3 1

1

1

2

6

Eine Partition (S, V \ S) tut das richtige genau dann wenns ∈ S und t ∈ V \ SDas Residualnetzwerk Df enthalt keine Kante von S nach V \ S.

S V \ S

Page 28: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Gegeben sei ein Flussnetzwerk zusammen mit dem Ergebnis des Push-Relabel-Algorithmus. D.h. es stehen folgende Informationen zur Verfugung:

Ein maximaler Fluss f .Residualnetzwerk zu f .Uberschusse aller Knoten.Label dist(v ) fur alle Knoten.

s t

a

c

b

4 / 4 6 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 −6 / 0

2 / 3−3 / 0

[5]−7

[0]7

[6]0

[1]0

[1]0

Gesucht: Algorithmus der einen minimalen s-t-Schnitt (S, V \ S) berechnet.

s

a

c t

b

4

3

3 3 1

1

1

2

6

Eine Partition (S, V \ S) tut das richtige genau dann wenns ∈ S und t ∈ V \ SDas Residualnetzwerk Df enthalt keine Kante von S nach V \ S.

S V \ S

Ermittle mittels Breitensuche in Df alle von s aus erreichbaren Knoten.⇒ O(|E |) Zeit.

Page 29: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Gegeben sei ein Flussnetzwerk zusammen mit dem Ergebnis des Push-Relabel-Algorithmus. D.h. es stehen folgende Informationen zur Verfugung:

Ein maximaler Fluss f .Residualnetzwerk zu f .Uberschusse aller Knoten.Label dist(v ) fur alle Knoten.

s t

a

c

b

4 / 4 6 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 −6 / 0

2 / 3−3 / 0

[5]−7

[0]7

[6]0

[1]0

[1]0

Gesucht: Algorithmus der einen minimalen s-t-Schnitt (S, V \ S) berechnet.

s

a

c t

b

4

3

3 3 1

1

1

2

6

Eine Partition (S, V \ S) tut das richtige genau dann wenns ∈ S und t ∈ V \ SDas Residualnetzwerk Df enthalt keine Kante von S nach V \ S.

S V \ S

Ermittle mittels Breitensuche in Df alle von s aus erreichbaren Knoten.⇒ O(|E |) Zeit.

Hinweis: Es gibt einen Algorithmus Laufzeit O(|V |).

Page 30: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Gegeben sei ein Flussnetzwerk zusammen mit dem Ergebnis des Push-Relabel-Algorithmus. D.h. es stehen folgende Informationen zur Verfugung:

Ein maximaler Fluss f .Residualnetzwerk zu f .Uberschusse aller Knoten.Label dist(v ) fur alle Knoten.

s t

a

c

b

4 / 4 6 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 −6 / 0

2 / 3−3 / 0

[5]−7

[0]7

[6]0

[1]0

[1]0

Gesucht: Algorithmus der einen minimalen s-t-Schnitt (S, V \ S) berechnet.

s

a

c t

b

4

3

3 3 1

1

1

2

6

S V \ S

Behauptung 1: Es gibt eine Zahl 0 < x < |V |, sodass kein Knoten x als Label hat.

Page 31: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Gegeben sei ein Flussnetzwerk zusammen mit dem Ergebnis des Push-Relabel-Algorithmus. D.h. es stehen folgende Informationen zur Verfugung:

Ein maximaler Fluss f .Residualnetzwerk zu f .Uberschusse aller Knoten.Label dist(v ) fur alle Knoten.

s t

a

c

b

4 / 4 6 / 7

−2 / 13 / 5

3 / 3 1 / 1

−3 / 0 −1 / 0

−4 / 0 −6 / 0

2 / 3−3 / 0

[5]−7

[0]7

[6]0

[1]0

[1]0

Gesucht: Algorithmus der einen minimalen s-t-Schnitt (S, V \ S) berechnet.

s

a

c t

b

4

3

3 3 1

1

1

2

6

S V \ S

Behauptung 1: Es gibt eine Zahl 0 < x < |V |, sodass kein Knoten x als Label hat.

Behauptung 2: Die Partitionierung S = {v ∈ V | dist(v ) > x} und V \ S = {v ∈V | dist(v ) < x} ist ein minimaler s-t-Schnitt.

Page 32: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Behauptung 1: Es gibt eine Zahl 0 < x < |V |, sodass kein Knoten x als Label hat.

Behauptung 2: Die Partitionierung S = {v ∈ V | dist(v ) > x} und V \ S = {v ∈V | dist(v ) < x} ist ein minimaler s-t-Schnitt.

dist(s) = |V | und dist(t) = 0

Die restlichen |V |−2 Knoten konnen nicht alle |V |−1 moglichen x mit 0 < x <|V | abdecken.

Page 33: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Behauptung 1: Es gibt eine Zahl 0 < x < |V |, sodass kein Knoten x als Label hat.

Behauptung 2: Die Partitionierung S = {v ∈ V | dist(v ) > x} und V \ S = {v ∈V | dist(v ) < x} ist ein minimaler s-t-Schnitt.

dist(s) = |V | und dist(t) = 0

Die restlichen |V |−2 Knoten konnen nicht alle |V |−1 moglichen x mit 0 < x <|V | abdecken.

Zeige: Es gibt keine Kante (u, v ) im Residualnetzwerk mit u ∈ S und v ∈ V \ S.

Page 34: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Behauptung 1: Es gibt eine Zahl 0 < x < |V |, sodass kein Knoten x als Label hat.

Behauptung 2: Die Partitionierung S = {v ∈ V | dist(v ) > x} und V \ S = {v ∈V | dist(v ) < x} ist ein minimaler s-t-Schnitt.

dist(s) = |V | und dist(t) = 0

Die restlichen |V |−2 Knoten konnen nicht alle |V |−1 moglichen x mit 0 < x <|V | abdecken.

Zeige: Es gibt keine Kante (u, v ) im Residualnetzwerk mit u ∈ S und v ∈ V \ S.

Angenommen (u, v ) ist eine solche Kante, dann gilt dist(u) ≥ dist(v ) + 2

Page 35: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 1

Behauptung 1: Es gibt eine Zahl 0 < x < |V |, sodass kein Knoten x als Label hat.

Behauptung 2: Die Partitionierung S = {v ∈ V | dist(v ) > x} und V \ S = {v ∈V | dist(v ) < x} ist ein minimaler s-t-Schnitt.

dist(s) = |V | und dist(t) = 0

Die restlichen |V |−2 Knoten konnen nicht alle |V |−1 moglichen x mit 0 < x <|V | abdecken.

Eine zulassige Markierung erfullt immer die folgende Eigenschaft: Wenn dasResidualnetzwerk die Kante (u, v ) enthalt, dann gilt dist(u) ≤ dist(v ) + 1.

Zeige: Es gibt keine Kante (u, v ) im Residualnetzwerk mit u ∈ S und v ∈ V \ S.

Angenommen (u, v ) ist eine solche Kante, dann gilt dist(u) ≥ dist(v ) + 2

Page 36: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Flusse mit komplizierten Kosten

Page 37: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (a)

In der Vorlesung:konstante Kosten pro Flusseinheit

Jetzt:bel. Kostenfunktion fur jede Kante

Fluss f

cost(f )

0 1 2 3012345 e1

e2cost(e2) = 1cost(e1) = 2

Fluss f

cost(f )

0 1 2 3012345

e1

e2 coste1 (0) = 0coste1 (1) = 2coste1 (2) = 2coste1 (3) = 4

coste2 (0) = 0coste2 (1) = 1coste2 (2) = 3coste2 (3) = 5

(a) Wenn coste fur alle e ∈ E konvex ist, dann kann MINCOSTFLOW effizient gelostwerden. (unter der Voraussetzung, dass die Kapazitaten polynomiell beschrankt sind).Hinweis: Modellieren sie ein aquivalentes Flussnetzwerk mit herkommlichen Kos-ten. Sie durfen Mehrfachkanten benutzen.

Page 38: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (a)

In der Vorlesung:konstante Kosten pro Flusseinheit

Jetzt:bel. Kostenfunktion fur jede Kante

Fluss f

cost(f )

0 1 2 3012345 e1

e2cost(e2) = 1cost(e1) = 2

Fluss f

cost(f )

0 1 2 3012345

e1

e2 coste1 (0) = 0coste1 (1) = 2coste1 (2) = 2coste1 (3) = 4

coste2 (0) = 0coste2 (1) = 1coste2 (2) = 3coste2 (3) = 5

(a) Wenn coste fur alle e ∈ E konvex ist, dann kann MINCOSTFLOW effizient gelostwerden. (unter der Voraussetzung, dass die Kapazitaten polynomiell beschrankt sind).Hinweis: Modellieren sie ein aquivalentes Flussnetzwerk mit herkommlichen Kos-ten. Sie durfen Mehrfachkanten benutzen.

Fluss f

cost(f )

0 1 2 3012345

e ee1

e2

cost(e1) = 1, c(e1) = 2

cost(e2) = 2, c(e2) = 1

Page 39: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

(b) Fur potentiell nicht konvexe Kostenfunktionen ist das Entscheidungsproblem vonMINCOSTFLOW NP-vollstandig.

Hinweis: 3-DIMENSIONAL-MATCHING ist NP-vollstandig.

(offensichtlich ist MINCOSTFLOW inNP)

Page 40: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

(b) Fur potentiell nicht konvexe Kostenfunktionen ist das Entscheidungsproblem vonMINCOSTFLOW NP-vollstandig.

3-DIMENSIONAL-MATCHING

Geg.: Endliche, disjunkte Mengen X , Y und Z mit einer Menge von Tripeln T ⊆X × Y × Z , sowie Zahl k ∈ N.Ges.: Teilmenge M ⊆ T mit |M| ≥ k , sodass jedes Element aus X , Y bzw. Z inmaximal einem Tripel in M auftaucht.

Hinweis: 3-DIMENSIONAL-MATCHING ist NP-vollstandig.

(offensichtlich ist MINCOSTFLOW inNP)

Page 41: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

(b) Fur potentiell nicht konvexe Kostenfunktionen ist das Entscheidungsproblem vonMINCOSTFLOW NP-vollstandig.

3-DIMENSIONAL-MATCHING

Geg.: Endliche, disjunkte Mengen X , Y und Z mit einer Menge von Tripeln T ⊆X × Y × Z , sowie Zahl k ∈ N.Ges.: Teilmenge M ⊆ T mit |M| ≥ k , sodass jedes Element aus X , Y bzw. Z inmaximal einem Tripel in M auftaucht.

Hinweis: 3-DIMENSIONAL-MATCHING ist NP-vollstandig.

Beispiel:

x1

x3

x2

y1

y2y3

z1

z2

z3

(x1, y1, z1) ∈ T

(x1, y3, z3) ∈ T

(x2, y3, z2) ∈ T (x3, y2, z2) ∈ T

Fur M ausgewahlte Tripel durfensich nicht uberlappen!

(offensichtlich ist MINCOSTFLOW inNP)

Page 42: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

(b) Fur potentiell nicht konvexe Kostenfunktionen ist das Entscheidungsproblem vonMINCOSTFLOW NP-vollstandig.

3-DIMENSIONAL-MATCHING

Geg.: Endliche, disjunkte Mengen X , Y und Z mit einer Menge von Tripeln T ⊆X × Y × Z , sowie Zahl k ∈ N.Ges.: Teilmenge M ⊆ T mit |M| ≥ k , sodass jedes Element aus X , Y bzw. Z inmaximal einem Tripel in M auftaucht.

Hinweis: 3-DIMENSIONAL-MATCHING ist NP-vollstandig.

Beispiel:

x1

x3

x2

y1

y2y3

z1

z2

z3

(x1, y1, z1) ∈ T

(x1, y3, z3) ∈ T

(x2, y3, z2) ∈ T (x3, y2, z2) ∈ T

Fur M ausgewahlte Tripel durfensich nicht uberlappen!

|M| ≥ 2 ist moglich.

|M ≥ 3 nicht.

(offensichtlich ist MINCOSTFLOW inNP)

Page 43: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

x3

y2

z3

Ziel: Konstruiere eine Flussnetzwerk D, sodass ein Fluss f mit cost(f ) ≤ k existiert,genau dann wenn es ein 3DM M mit |M| ≥ k gibt.

x1

z1y1

x2y3

z2

Page 44: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

x3

y2

z3

Ziel: Konstruiere eine Flussnetzwerk D, sodass ein Fluss f mit cost(f ) ≤ k existiert,genau dann wenn es ein 3DM M mit |M| ≥ k gibt.

Erstelle fur jedes Element einen Knoten.

x1

x3

x2

y1

y2

y3

z1

z2

z3

x1

z1y1

x2y3

z2

Page 45: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

x3

y2

z3

Ziel: Konstruiere eine Flussnetzwerk D, sodass ein Fluss f mit cost(f ) ≤ k existiert,genau dann wenn es ein 3DM M mit |M| ≥ k gibt.

Erstelle fur jedes Element einen Knoten.

x1

x3

x2

y1

y2

y3

z1

z2

z3

Erstelle fur jedes Tripel (x , y , z) einen Knoten mit Kantenzu x , y und z mit Kapazitat 1 und konstanten Kosten 0.

(x1, y3, z3)

(x3, y2, z2)

x1

z1y1

x2y3

z2

(x1, y1, z1)

(x2, y3, z2)

Page 46: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

x3

y2

z3

Ziel: Konstruiere eine Flussnetzwerk D, sodass ein Fluss f mit cost(f ) ≤ k existiert,genau dann wenn es ein 3DM M mit |M| ≥ k gibt.

Erstelle fur jedes Element einen Knoten.

x1

x3

x2

y1

y2

y3

z1

z2

z3

Erstelle fur jedes Tripel (x , y , z) einen Knoten mit Kantenzu x , y und z mit Kapazitat 1 und konstanten Kosten 0.

(x1, y3, z3)

(x3, y2, z2)

Erstelle eine Senke t mit Bedarf 3k und Kanten von den

”Elementknoten“ mit Kapazitat 1 und konstanten Kosten 0.

t

x1

z1y1

x2y3

z2

(x1, y1, z1)

(x2, y3, z2)

Page 47: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

x3

y2

z3

Ziel: Konstruiere eine Flussnetzwerk D, sodass ein Fluss f mit cost(f ) ≤ k existiert,genau dann wenn es ein 3DM M mit |M| ≥ k gibt.

Erstelle fur jedes Element einen Knoten.

x1

x3

x2

y1

y2

y3

z1

z2

z3

Erstelle fur jedes Tripel (x , y , z) einen Knoten mit Kantenzu x , y und z mit Kapazitat 1 und konstanten Kosten 0.

(x1, y3, z3)

(x3, y2, z2)

Erstelle eine Senke t mit Bedarf 3k und Kanten von den

”Elementknoten“ mit Kapazitat 1 und konstanten Kosten 0.

t

Erstelle Quelle s mit Uberschuss 3k und Kanten zu den ”Tripelknoten“ mitKapazitaten 3 und Kosten coste(0) = 0, coste(1) = coste(2) = coste(3) = 1.

s

x1

z1y1

x2y3

z2

(x1, y1, z1)

(x2, y3, z2)

Page 48: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

x3

y2

z3

Ziel: Konstruiere eine Flussnetzwerk D, sodass ein Fluss f mit cost(f ) ≤ k existiert,genau dann wenn es ein 3DM M mit |M| ≥ k gibt.

Erstelle fur jedes Element einen Knoten.

x1

x3

x2

y1

y2

y3

z1

z2

z3

Erstelle fur jedes Tripel (x , y , z) einen Knoten mit Kantenzu x , y und z mit Kapazitat 1 und konstanten Kosten 0.

(x1, y3, z3)

(x3, y2, z2)

Erstelle eine Senke t mit Bedarf 3k und Kanten von den

”Elementknoten“ mit Kapazitat 1 und konstanten Kosten 0.

t

Erstelle Quelle s mit Uberschuss 3k und Kanten zu den ”Tripelknoten“ mitKapazitaten 3 und Kosten coste(0) = 0, coste(1) = coste(2) = coste(3) = 1.

s

x1

z1y1

x2y3

z2

(x1, y1, z1)

(x2, y3, z2)

Page 49: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 2 (b)

x3

y2

z3

Ziel: Konstruiere eine Flussnetzwerk D, sodass ein Fluss f mit cost(f ) ≤ k existiert,genau dann wenn es ein 3DM M mit |M| ≥ k gibt.

Erstelle fur jedes Element einen Knoten.

x1

x3

x2

y1

y2

y3

z1

z2

z3

Erstelle fur jedes Tripel (x , y , z) einen Knoten mit Kantenzu x , y und z mit Kapazitat 1 und konstanten Kosten 0.

(x1, y3, z3)

(x3, y2, z2)

Erstelle eine Senke t mit Bedarf 3k und Kanten von den

”Elementknoten“ mit Kapazitat 1 und konstanten Kosten 0.

t

Erstelle Quelle s mit Uberschuss 3k und Kanten zu den ”Tripelknoten“ mitKapazitaten 3 und Kosten coste(0) = 0, coste(1) = coste(2) = coste(3) = 1.

s

Nachrechnen!

x1

z1y1

x2y3

z2

(x1, y1, z1)

(x2, y3, z2)

Page 50: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Flusse mit Mindestfluss

Page 51: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 3

Sei D = (V , E) ein Flussnetzwerk wobei zusatzlich auf jeder Kante ein Mindestflussgefordert ist. Das heißt, gegeben ist eine Abbildung ` : E → R+

0 und ein Flussf muss zusatzlich zur Kapazitats- und Flusserhaltungsbedingung die Ungleichung`(e) ≤ f (e) (fur alle e ∈ E) erfullen.Zeigen Sie, dass ein Flussproblem mit gefordertem Mindestfluss in ein Flusspro-blem ohne diese zusatzliche Bedingung transformiert werden kann.

Page 52: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 3

Sei D = (V , E) ein Flussnetzwerk wobei zusatzlich auf jeder Kante ein Mindestflussgefordert ist. Das heißt, gegeben ist eine Abbildung ` : E → R+

0 und ein Flussf muss zusatzlich zur Kapazitats- und Flusserhaltungsbedingung die Ungleichung`(e) ≤ f (e) (fur alle e ∈ E) erfullen.Zeigen Sie, dass ein Flussproblem mit gefordertem Mindestfluss in ein Flusspro-blem ohne diese zusatzliche Bedingung transformiert werden kann.

Betrachte eine einzelne Kanten e(u, v ) mit Mindestfluss `(e) und Kapazitat c(e).

u v`(e)c(e)

Page 53: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 3

Sei D = (V , E) ein Flussnetzwerk wobei zusatzlich auf jeder Kante ein Mindestflussgefordert ist. Das heißt, gegeben ist eine Abbildung ` : E → R+

0 und ein Flussf muss zusatzlich zur Kapazitats- und Flusserhaltungsbedingung die Ungleichung`(e) ≤ f (e) (fur alle e ∈ E) erfullen.Zeigen Sie, dass ein Flussproblem mit gefordertem Mindestfluss in ein Flusspro-blem ohne diese zusatzliche Bedingung transformiert werden kann.

Betrachte eine einzelne Kanten e(u, v ) mit Mindestfluss `(e) und Kapazitat c(e).

u v`(e)

Konstruktion des Flussnetzwerks D′:Setze den Mindestfluss von e auf 0 und die Kapazitat von e auf c(e)− `(e).

die Bedarfe von u und v auf b(u) = `(e) bzw. b(v ) = −`(e)

u v0

`(e) −`(e)c(e) c(e)− `(e)

Page 54: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 3

Sei D = (V , E) ein Flussnetzwerk wobei zusatzlich auf jeder Kante ein Mindestflussgefordert ist. Das heißt, gegeben ist eine Abbildung ` : E → R+

0 und ein Flussf muss zusatzlich zur Kapazitats- und Flusserhaltungsbedingung die Ungleichung`(e) ≤ f (e) (fur alle e ∈ E) erfullen.Zeigen Sie, dass ein Flussproblem mit gefordertem Mindestfluss in ein Flusspro-blem ohne diese zusatzliche Bedingung transformiert werden kann.

Betrachte eine einzelne Kanten e(u, v ) mit Mindestfluss `(e) und Kapazitat c(e).

u v`(e)

Konstruktion des Flussnetzwerks D′:Setze den Mindestfluss von e auf 0 und die Kapazitat von e auf c(e)− `(e).

die Bedarfe von u und v auf b(u) = `(e) bzw. b(v ) = −`(e)

u v0

`(e) −`(e)c(e) c(e)− `(e)

Zeige: Gultiger Fluss f in D liefert gultigen Fluss f ′ in D′ und umgekehrt, wobeif (e) = f ′(e) + `(e).

Page 55: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Matchings – Erhohende Wege

Page 56: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Wiederholung: Motivation

FlugPilot

Pilot darf Flugzeug fliegen

Page 57: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Wiederholung: Motivation

FlugPilot

Pilot darf Flugzeug fliegen

Zuordnung der Piloten

Page 58: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Wiederholung: Motivation

FlugPilot

Pilot darf Flugzeug fliegen

Zuordnung der Piloten

Page 59: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Wiederholung: Motivation

FlugPilot

Pilot darf Flugzeug fliegen

Zuordnung der Piloten

Ziel: Finde eine Zuordnung, sodass:Jeder Pilot maximal ein Flugzeug fliegt, jedes Flugzeug von maxi-mal einem Pilot geflogen wird.Moglichst viele Flugzeuge besetzt (bzw. Piloten beschaftigt) sind.

Page 60: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Wiederholung: Motivation

FlugPilot

Pilot darf Flugzeug fliegen

Zuordnung der Piloten

Ziel: Finde eine Zuordnung, sodass:Jeder Pilot maximal ein Flugzeug fliegt, jedes Flugzeug von maxi-mal einem Pilot geflogen wird.Moglichst viele Flugzeuge besetzt (bzw. Piloten beschaftigt) sind.

maximalesMatching

Page 61: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Berechnung mithilfe eines Flusses

bipartiter Graph G zugehoriges Flussnetzwerk G′

s t

(Kapazitaten sind 1)

Page 62: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Berechnung mithilfe eines Flusses

bipartiter Graph G zugehoriges Flussnetzwerk G′

s t

mit maximalem Matching mit maximalem Fluss

(Kapazitaten sind 1)

Page 63: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Berechnung mithilfe eines Flusses

bipartiter Graph G zugehoriges Flussnetzwerk G′

s t

mit maximalem Matching mit maximalem Fluss

(Kapazitaten sind 1)

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

Problem 4

Page 64: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

s t

Residualnetzwerk

s t

Page 65: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

Residualnetzwerk

s t

s t

Page 66: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

Residualnetzwerk

s t

s t

Page 67: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

Residualnetzwerk

s t

s t

Page 68: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

Residualnetzwerk

s t

s t

Page 69: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

Residualnetzwerk

s t

s t

Page 70: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

Residualnetzwerk

s t

s t

Page 71: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

Residualnetzwerk

s t

s t

Page 72: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Der maximale Fluss kann schrittweise mithilfe von erhohenden Wegen berechnetwerden (Ford-Fulkerson-Algorithmus). In jedem dieser Schritte induziert der aktu-elle Fluss f ein (nicht notwendigerweise maximales) Matching.Erklaren Sie inwiefern dieses Matching sich im Verlauf der Berechnung von fandert. Gehen Sie hierzu insbesondere auf die Rolle der erhohenden Wege ein.

bipartiter Graph G zugehoriges Flussnetzwerk G′

Residualnetzwerk

s t

s t

Page 73: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Page 74: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Ein erhohender Pfad im Residualnetzwerk entspricht einem Pfad Π im Graph, so-dass . . .

Page 75: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Ein erhohender Pfad im Residualnetzwerk entspricht einem Pfad Π im Graph, so-dass . . .

der erste und letzte Knoten in Π nicht gematched sind (d.h. sie sind zu keinerMatchingkante inzident)

und Π aus abwechselnd ungematchten und gematchten Kanten besteht.

Page 76: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 4

Ein erhohender Pfad im Residualnetzwerk entspricht einem Pfad Π im Graph, so-dass . . .

der erste und letzte Knoten in Π nicht gematched sind (d.h. sie sind zu keinerMatchingkante inzident)

und Π aus abwechselnd ungematchten und gematchten Kanten besteht.

Man konnte auch iterativ nach solchen Pfaden suchen, statt nach erhohenden Pfa-den im Residualnetzwerk.

Page 77: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Schnitte in Graphen

Page 78: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(a) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende s-t-Schnitte mit s ∈ S und

t ∈ T . Zeigen Sie: Es gilt s ∈ B und t ∈ C.

S V \ S

TV \ T

A

B D

C

Page 79: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(a) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende s-t-Schnitte mit s ∈ S und

t ∈ T . Zeigen Sie: Es gilt s ∈ B und t ∈ C.

S V \ S

TV \ T

A

B D

C

s liegt in S = A ∪ B und t in T = A ∪ C⇒ Es gibt vier mogliche Kombinationen:

s ∈ A, t ∈ Cs ∈ A, t ∈ As ∈ B, t ∈ Cs ∈ B, t ∈ A

Page 80: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(a) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende s-t-Schnitte mit s ∈ S und

t ∈ T . Zeigen Sie: Es gilt s ∈ B und t ∈ C.

S V \ S

TV \ T

A

B D

C

s liegt in S = A ∪ B und t in T = A ∪ C⇒ Es gibt vier mogliche Kombinationen:

s ∈ A, t ∈ Cs ∈ A, t ∈ As ∈ B, t ∈ Cs ∈ B, t ∈ A

T ist kein s-t-Schnitt

s

t

Page 81: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(a) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende s-t-Schnitte mit s ∈ S und

t ∈ T . Zeigen Sie: Es gilt s ∈ B und t ∈ C.

S V \ S

TV \ T

A

B D

C

s liegt in S = A ∪ B und t in T = A ∪ C⇒ Es gibt vier mogliche Kombinationen:

s ∈ A, t ∈ Cs ∈ A, t ∈ As ∈ B, t ∈ Cs ∈ B, t ∈ A

T ist kein s-t-Schnitt

s

t

T & S keine s-t-Schnitte

Page 82: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(a) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende s-t-Schnitte mit s ∈ S und

t ∈ T . Zeigen Sie: Es gilt s ∈ B und t ∈ C.

S V \ S

TV \ T

A

B D

C

s liegt in S = A ∪ B und t in T = A ∪ C⇒ Es gibt vier mogliche Kombinationen:

s ∈ A, t ∈ Cs ∈ A, t ∈ As ∈ B, t ∈ Cs ∈ B, t ∈ A

T ist kein s-t-SchnittT & S keine s-t-Schnittes

t

S ist kein s-t-Schnitt

Page 83: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(a) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende s-t-Schnitte mit s ∈ S und

t ∈ T . Zeigen Sie: Es gilt s ∈ B und t ∈ C.

S V \ S

TV \ T

A

B D

C

s liegt in S = A ∪ B und t in T = A ∪ C⇒ Es gibt vier mogliche Kombinationen:

s ∈ A, t ∈ Cs ∈ A, t ∈ As ∈ B, t ∈ Cs ∈ B, t ∈ A

T ist kein s-t-SchnittT & S keine s-t-Schnitte

S ist kein s-t-Schnitt

s

t

Page 84: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(b) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende minimale s-t-Schnitte mit

s ∈ S und t ∈ T . Zeigen Sie: (B, V \B) und (C, V \C) sind zwei kreuzungsfreieminimale s-t-Schnitte.

S V \ S

TV \ T

A

B D

C

s

t

Page 85: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(b) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende minimale s-t-Schnitte mit

s ∈ S und t ∈ T . Zeigen Sie: (B, V \B) und (C, V \C) sind zwei kreuzungsfreieminimale s-t-Schnitte.

S V \ S

TV \ T

A

B D

C

s

t

Offensichtlich: (B, V \ B) und (C, V \ C)sind kreuzungsfreie s-t-Schnitte.

Zeige:c(B, V \B) = c(C, V \C) = c(S, V \S) = c(T , V \T )

Page 86: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(b) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende minimale s-t-Schnitte mit

s ∈ S und t ∈ T . Zeigen Sie: (B, V \B) und (C, V \C) sind zwei kreuzungsfreieminimale s-t-Schnitte.

S V \ S

TV \ T

A

B D

C

s

t

Offensichtlich: (B, V \ B) und (C, V \ C)sind kreuzungsfreie s-t-Schnitte.

Zeige:c(B, V \B) = c(C, V \C) = c(S, V \S) = c(T , V \T )

Page 87: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(b) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende minimale s-t-Schnitte mit

s ∈ S und t ∈ T . Zeigen Sie: (B, V \B) und (C, V \C) sind zwei kreuzungsfreieminimale s-t-Schnitte.

S V \ S

TV \ T

A

B D

C

s

t

Offensichtlich: (B, V \ B) und (C, V \ C)sind kreuzungsfreie s-t-Schnitte.

Zeige:c(B, V \B) = c(C, V \C) = c(S, V \S) = c(T , V \T )

c(B, V \ B) = c(B, A) + c(B, C) + c(B, D)

c(C, V \ C) = c(C, A) + c(C, B) + c(C, D)

c(S, V \ S) = c(A, C) + c(A, D) + c(B, C) + c(B, D)

c(T , V \ T ) = c(A, B) + c(A, D) + c(C, B) + c(C, D)

Page 88: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(b) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende minimale s-t-Schnitte mit

s ∈ S und t ∈ T . Zeigen Sie: (B, V \B) und (C, V \C) sind zwei kreuzungsfreieminimale s-t-Schnitte.

S V \ S

TV \ T

A

B D

C

s

t

Offensichtlich: (B, V \ B) und (C, V \ C)sind kreuzungsfreie s-t-Schnitte.

Zeige:c(B, V \B) = c(C, V \C) = c(S, V \S) = c(T , V \T )

⇒ c(B, V \ B) + c(C, V \ C) ≤ c(S, V \ S) + c(T , V \ S)

c(B, V \ B) = c(B, A) + c(B, C) + c(B, D)

c(C, V \ C) = c(C, A) + c(C, B) + c(C, D)

c(S, V \ S) = c(A, C) + c(A, D) + c(B, C) + c(B, D)

c(T , V \ T ) = c(A, B) + c(A, D) + c(C, B) + c(C, D)

Page 89: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 5

Zwei Schnitte (S, V \S) und (T , V \T ) in einem (ungerichteten) Graphen G = (V , E)kreuzen sich, wenn keine der Mengen A = S ∩ T , B = S \ T , C = T \ S undD = V \ (S ∪ T ) leer ist. Sei c : E → R+

0 eine Kantengewichtsfunktion auf G.(b) Seien (S, V \ S) und (T , V \ T ) zwei sich kreuzende minimale s-t-Schnitte mit

s ∈ S und t ∈ T . Zeigen Sie: (B, V \B) und (C, V \C) sind zwei kreuzungsfreieminimale s-t-Schnitte.

S V \ S

TV \ T

A

B D

C

s

t

Offensichtlich: (B, V \ B) und (C, V \ C)sind kreuzungsfreie s-t-Schnitte.

Zeige:c(B, V \B) = c(C, V \C) = c(S, V \S) = c(T , V \T )

⇒ c(B, V \ B) + c(C, V \ C) ≤ c(S, V \ S) + c(T , V \ S)

c(B, V \ B) = c(B, A) + c(B, C) + c(B, D)

c(C, V \ C) = c(C, A) + c(C, B) + c(C, D)

c(S, V \ S) = c(A, C) + c(A, D) + c(B, C) + c(B, D)

c(T , V \ T ) = c(A, B) + c(A, D) + c(C, B) + c(C, D)

⇒ c(B, V \ B) = c(C, V \ C) = c(S, V \ S) = c(T , V \ S) (da c(S, V \ S) und c(T , V \ T ) minimal)

Page 90: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 1G1 = GS1 = {1} (Startknoten 1)

1

3

2

4

5

33

2

2

111

Page 91: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 1G1 = GS1 = {1} (Startknoten 1)

1

3

2

4

5

33

2

2

111S1 = {1, 2} (2 am starksten zu {1} verbunden)

Page 92: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 1G1 = GS1 = {1} (Startknoten 1)

1

3

2

4

5

33

2

2

111S1 = {1, 2} (2 am starksten zu {1} verbunden)

S1 = {1, 2, 5}

Page 93: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 1G1 = GS1 = {1} (Startknoten 1)

1

3

2

4

5

33

2

2

111S1 = {1, 2} (2 am starksten zu {1} verbunden)

S1 = {1, 2, 5}S1 = {1, 2, 5, 4}

Page 94: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 1G1 = GS1 = {1} (Startknoten 1)

1

3

2

4

5

33

2

2

111S1 = {1, 2} (2 am starksten zu {1} verbunden)

S1 = {1, 2, 5}S1 = {1, 2, 5, 4}S1 = {1, 2, 5, 4, 3}

s tSchnitt der Phase: {V1 \ {3}, {3}}

→ Gewicht 4

Verschmelzen von s und t ergibt G2

1 2

5

33

3

11

3, 4

Page 95: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 2G2 = G1 mit 3 und 4 verschmolzenS2 = {2} (Startknoten 2)

2

5

3

3

11

31

3, 4

Page 96: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 2G2 = G1 mit 3 und 4 verschmolzenS2 = {2} (Startknoten 2)

2

5

3

3

11S2 = {2, 5}

31

3, 4

Page 97: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 2G2 = G1 mit 3 und 4 verschmolzenS2 = {2} (Startknoten 2)

2

5

3

3

11S2 = {2, 5}

3

S2 = {2, 5, {3, 4}}

1

3, 4

Page 98: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 2G2 = G1 mit 3 und 4 verschmolzenS2 = {2} (Startknoten 2)

2

5

3

3

11S2 = {2, 5}

3

S2 = {2, 5, {3, 4}}S2 = {2, 5, {3, 4}, 1}

s t

1

3, 4

Schnitt der Phase: {V2 \ {1}, {1}}→ Gewicht 4

Page 99: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 2G2 = G1 mit 3 und 4 verschmolzenS2 = {2} (Startknoten 2)

2

5

3

3

11S2 = {2, 5}

3

S2 = {2, 5, {3, 4}}S2 = {2, 5, {3, 4}, 1}

s t

1

3, 4

Schnitt der Phase: {V2 \ {1}, {1}}→ Gewicht 4

Verschmelzen von s und t ergibt G3

2

5

36

11, 3, 4

Page 100: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 3G3 = G2 mit 1 und {3, 4} verschmolzenS3 = {{1, 3, 4}} (Startknoten {1, 3, 4})

36

11, 3, 4

2

5

Page 101: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 3G3 = G2 mit 1 und {3, 4} verschmolzenS3 = {{1, 3, 4}} (Startknoten {1, 3, 4})

36

11, 3, 4S3 = {{1, 3, 4}, 2}

2

5

Page 102: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 3G3 = G2 mit 1 und {3, 4} verschmolzenS3 = {{1, 3, 4}} (Startknoten {1, 3, 4})

36

11, 3, 4S3 = {{1, 3, 4}, 2}S3 = {{1, 3, 4}, 2, 5}

s t

2

5

Schnitt der Phase: {V3 \ {5}, {5}}→ Gewicht 4

Verschmelzen von s und t ergibt G4

7

1, 3, 4

2, 5

Page 103: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 4G4 = G3 mit 2 und 5 verschmolzenS4 = {{1, 3, 4}} (Startknoten {1, 3, 4}) 7

1, 3, 4

2, 5

Page 104: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 4G4 = G3 mit 2 und 5 verschmolzenS4 = {{1, 3, 4}} (Startknoten {1, 3, 4}) 7

S3 = {{1, 3, 4}, {2, 5}}

s t

1, 3, 4

2, 5

Schnitt der Phase: {V3 \ {2, 5}, {2, 5}}→ Gewicht 7

Page 105: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6 – Algorithmus von Stoer & Wagner

Phase 4G4 = G3 mit 2 und 5 verschmolzenS4 = {{1, 3, 4}} (Startknoten {1, 3, 4}) 7

S3 = {{1, 3, 4}, {2, 5}}

s t

1, 3, 4

2, 5

Schnitt der Phase: {V3 \ {2, 5}, {2, 5}}→ Gewicht 7

Phase 1 Schnitt der Phase: {V \ {3}, {3}} → Gewicht 4Phase 2 Schnitt der Phase: {V \ {1}, {1}} → Gewicht 4Phase 3 Schnitt der Phase: {V \ {5}, {5}} → Gewicht 4Phase 4 Schnitt der Phase: {V \ {{2, 5}}, {{2, 5}}} → Gewicht 7

1

3

2

4

5

33

2

2

111

Zusammenfassung:Drei minimale Schnitte gefunden.

Page 106: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6

(b) Liefert der Algorithmus von Stoer & Wagner auch fur negative Kantengewichteeinen global minimalen, nichttrivialen Schnitt? Begrunden Sie Ihre Antwort.

Page 107: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6

(b) Liefert der Algorithmus von Stoer & Wagner auch fur negative Kantengewichteeinen global minimalen, nichttrivialen Schnitt? Begrunden Sie Ihre Antwort.

11 13

14

12

−9

−8−16

−16−16 −10

Startknoten 1

Nein, denn:

Page 108: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6

(b) Liefert der Algorithmus von Stoer & Wagner auch fur negative Kantengewichteeinen global minimalen, nichttrivialen Schnitt? Begrunden Sie Ihre Antwort.

11 13

14

12

−9

−8−16

−16−16 −10

Startknoten 1

Nein, denn:

Page 109: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6

(b) Liefert der Algorithmus von Stoer & Wagner auch fur negative Kantengewichteeinen global minimalen, nichttrivialen Schnitt? Begrunden Sie Ihre Antwort.

11 13

14

12

−9

−8−16

−16−16 −10

Startknoten 1

Nein, denn:

Page 110: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6

(b) Liefert der Algorithmus von Stoer & Wagner auch fur negative Kantengewichteeinen global minimalen, nichttrivialen Schnitt? Begrunden Sie Ihre Antwort.

11 13

14

12

−9

−8−16

−16−16 −10

Startknoten 1

Nein, denn:

⇒ Schnitt der Phase 1:(V \ {4}, {4})

Gewicht −42

Page 111: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6

(b) Liefert der Algorithmus von Stoer & Wagner auch fur negative Kantengewichteeinen global minimalen, nichttrivialen Schnitt? Begrunden Sie Ihre Antwort.

11 13

14

12

−9

−8−16

−16−16 −10

Startknoten 1

Nein, denn:

⇒ Schnitt der Phase 1:(V \ {4}, {4})

Gewicht −42

11

12

13, 4

−8

−25

−26

Page 112: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6

(b) Liefert der Algorithmus von Stoer & Wagner auch fur negative Kantengewichteeinen global minimalen, nichttrivialen Schnitt? Begrunden Sie Ihre Antwort.

11 13

14

12

−9

−8−16

−16−16 −10

Startknoten 1

Nein, denn:

⇒ Schnitt der Phase 1:(V \ {4}, {4})

Gewicht −42

11

12

13, 4

−8

−25

−26

minimaler Schnitt hat Gewicht −51

Page 113: Vorlesung Algorithmen II - KIT - ITI Algorithmik I · KIT – Universitat des Landes Baden-W¨urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft INSTITUT FUR¨

Algorithmen II – Wintersemester 2013/2014Institut fur Theoretische InformatikProf. Dr. Dorothea Wagner

Problem 6

(b) Liefert der Algorithmus von Stoer & Wagner auch fur negative Kantengewichteeinen global minimalen, nichttrivialen Schnitt? Begrunden Sie Ihre Antwort.

11 13

14

12

−9

−8−16

−16−16 −10

Startknoten 1

Nein, denn:

⇒ Schnitt der Phase 1:(V \ {4}, {4})

Gewicht −42

11

12

13, 4

−8

−25

−26

minimaler Schnitt hat Gewicht −51

Aber:

11 13

14

12

−9

−8−16

−16−16 −10

Schnitt mit Gewicht −56