use the edmonds-karp algorithm to find a maximum flow then...

27
1 Use the Edmonds-Karp algorithm to find a maximum flow then indicate the resulting minimum cut. 3

Upload: others

Post on 18-Jun-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

1

Use the Edmonds-Karp algorithm to find a maximum flow then indicate the resulting minimum cut.

3

Page 2: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

2

Soviet Rail Network, 1955

Reference: On the history of the transportation and maximum flow problems. Alexander Schrijver in Math Programming, 91: 3, 2002.

Taken from Kevin Wayne slides

Page 3: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

3

Maximum Flow and Minimum Cut

Max flow and min cut.

Two very rich algorithmic problems.

Cornerstone problems in combinatorial optimization.

Beautiful mathematical duality.

Nontrivial applications / reductions.

Data mining.

Open-pit mining.

Project selection.

Airline scheduling.

Bipartite matching.

Baseball elimination.

Image segmentation.

Network connectivity.

Network reliability.

Distributed computing.

Egalitarian stable matching.

Security of statistical data.

Network intrusion detection.

Multi-camera scene reconstruction.

Many many more …

Taken from Kevin Wayne slides

Page 4: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

4

An s,t-cut: subset S of the vertices not including s or t so that G-S has no directed paths from s to t.

Page 5: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

5

Some applications of the minimum-cut maximum-flow algorithm:

Vertex connectivity

Maximum matching in bipartite graphs

Minimum cut between each pair of nodes in an undirected graph

Page 6: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

6

An s,t-cut: subset S of the vertices not including s or t so that G-S has no directed paths from s to t.

Page 7: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

7

An s,t-cut: subset S of the vertices not including s or t so that G-S has no directed paths from s to t.

A minimal vertex cut:

Page 8: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

8

An s,t-cut: subset S of the vertices not including s or t so that G-S has no directed paths from s to t.

A minimal vertex cut:

Page 9: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

9

An s,t-cut: subset S of the vertices not including s or t so that G-S has no directed paths from s to t.

A minimal vertex cut:

Page 10: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

10

An s,t-cut: subset S of the vertices not including s or t so that G-S has no directed paths from s to t.

A minimal vertex cut:

Page 11: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

11

An s,t-cut: subset S of the vertices not including s or t so that G-S has no directed paths from s to t.

A MINIMUM vertex cut:

Page 12: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

12

Given a directed graph G, source s, and sink t, find a minimum vertex cut between s and t.

Undirected graph:

Vertex-connectivity= Minimum over all pairs s and t of the s,t-vertex connectivity in the corresponding directed graph.

Page 13: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

13

We can use min-cut max-flow to find a minumum vertex cut by first changing the network.

Page 14: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

14

Gadget to replace vertices (but not s or t)

Page 15: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

15

Page 16: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

16

Page 17: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

17

Page 18: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

18

Directed Graph for maximum flow.

All arcs have capacity 1.

Page 19: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

19

Maximum flow

Page 20: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

20

Auxillary graph.

Page 21: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

21

Green arcs are on BFS tree rooted at s.

Page 22: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

22

The cut in this network.

Page 23: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

23

For each pink edge in the cut, its corresponding vertices are in the vertex cut of the original graph.

Page 24: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

24

Page 25: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

25 http://www8.cs.umu.se/~jopsi/dinf504/chap14.shtml

Page 26: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

26

http://www8.cs.umu.se/~jopsi/dinf504/chap14.shtml

Page 27: Use the Edmonds-Karp algorithm to find a maximum flow then ...webhome.cs.uvic.ca/~wendym/courses/425/16/notes/425_21...Taken from Kevin Wayne slides 4 An s,t-cut: subset S of the vertices

27

The Gomory-Hu tree paper remains the most significant paper on multi-terminal flows since its publication in 1961.

Ralph Gomery T.C. Hu