Network Flow CS494/594 – Graph Theory Alexander Sayers.

Slides:



Advertisements
Similar presentations
Maximum flow Main goals of the lecture:
Advertisements

COMP 482: Design and Analysis of Algorithms
1 Maximum flow sender receiver Capacity constraint Lecture 6: Jan 25.
R. Johnsonbaugh Discrete Mathematics 5 th edition, 2001 Chapter 8 Network models.
CSE 421 Algorithms Richard Anderson Lecture 23 Network Flow Applications.
Piyush Kumar (Lecture 6: MaxFlow MinCut Applications)
Introduction To Algorithms CS 445 Discussion Session 8 Instructor: Dr Alon Efrat TA : Pooja Vaswani 04/04/2005.
Prof. Swarat Chaudhuri COMP 482: Design and Analysis of Algorithms Spring 2012 Lecture 19.
CSCI 256 Data Structures and Algorithm Analysis Lecture 18 Some slides by Kevin Wayne copyright 2005, Pearson Addison Wesley all rights reserved, and some.
The Maximum Network Flow Problem. CSE Network Flows.
1 Chapter 7 Network Flow Slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved.
1 Chapter 7 Network Flow Slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved.
1 The Max Flow Problem. 2 Flow networks Flow networks are the problem instances of the max flow problem. A flow network is given by 1) a directed graph.
Advanced Algorithms Piyush Kumar (Lecture 2: Max Flows) Welcome to COT5405 Slides based on Kevin Wayne’s slides.
CSE 421 Algorithms Richard Anderson Lecture 22 Network Flow.
The max flow problem
Maximum Flows Lecture 4: Jan 19. Network transmission Given a directed graph G A source node s A sink node t Goal: To send as much information from s.
CSE 421 Algorithms Richard Anderson Lecture 22 Network Flow.
CSE 421 Algorithms Richard Anderson Lecture 24 Network Flow Applications.
CSEP 521 Applied Algorithms
Daniel Baldwin COSC 494 – Graph Theory 4/9/2014 Definitions History Examplse (graphs, sample problems, etc) Applications State of the art, open problems.
Maximum Flow Chapter 26.
Advanced Algorithms Piyush Kumar (Lecture 4: MaxFlow MinCut Applications) Welcome to COT5405.
Theory of Computing Lecture 13 MAS 714 Hartmut Klauck.
Announcements Network Flow today, depending on how far we get, we will do String Matching on Wednesday Then Review for Final next Monday This week’s lab.
Maximum Flow Problem (Thanks to Jim Orlin & MIT OCW)
CS223 Advanced Data Structures and Algorithms 1 Maximum Flow Neil Tang 3/30/2010.
Chapter 7 April 28 Network Flow.
15.082J and 6.855J March 4, 2003 Introduction to Maximum Flows.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 25.
Chapter 7 May 3 Ford-Fulkerson algorithm Step-by-step walk through of an example Worst-case number of augmentations Edmunds-Karp modification Time complexity.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
CSCI-256 Data Structures & Algorithm Analysis Lecture Note: Some slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. 23.
CSEP 521 Applied Algorithms Richard Anderson Lecture 8 Network Flow.
CSE 421 Algorithms Richard Anderson Lecture 22 Network Flow.
Prof. Swarat Chaudhuri COMP 382: Reasoning about Algorithms Fall 2015.
1 Chapter 7 Network Flow Slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 14, 2014.
CSE 421 Algorithms Richard Anderson Lecture 24 Network Flow Applications.
Markov Random Fields in Vision
TU/e Algorithms (2IL15) – Lecture 8 1 MAXIMUM FLOW (part II)
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Max-flow, Min-cut Network flow.
Algorithm Design and Analysis
Richard Anderson Lecture 23 Network Flow
Maximum Flow 9/13/2018 6:12 PM Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015.
CSCI 3160 Design and Analysis of Algorithms Tutorial 8
COMP 382: Reasoning about Algorithms
Max-flow, Min-cut Network flow.
Edmonds-Karp Algorithm
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Chapter 7 Network Flow Slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved.
Lecture 10 Network flow Max-flow and Min-cut Ford-Fulkerson method
Richard Anderson Lecture 23 Network Flow Applications
Flow Networks General Characteristics Applications
Flow Networks and Bipartite Matching
Piyush Kumar (Lecture 6: MaxFlow MinCut Applications)
Chapter 7 Network Flow Slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved.
EE5900 Advanced Embedded System For Smart Infrastructure
離散數學 DISCRETE and COMBINATORIAL MATHEMATICS
Maximum Flow c v 3/3 4/6 1/1 4/7 t s 3/3 w 1/9 3/5 1/1 3/5 u z 2/2
Network Flow.
Maximum Flow Neil Tang 4/8/2008
Richard Anderson Lecture 23 Network Flow Applications
Lecture 22 Network Flow, Part 2
Richard Anderson Lecture 24 Network Flow Applications
Network Flow.
Richard Anderson Lecture 22 Network Flow
Presentation transcript:

Network Flow CS494/594 – Graph Theory Alexander Sayers

Contents  Definitions  History  Examples/Algorithms  Applications  Open Problems  References  Homework

Definitions

Maximum Flow Image from West

Min Cut Image from West

History  A. N. Tolstoi (1930) – “Methods of finding the minimal total kilometrage in cargo-transportation planning in space.” – Soviet rail networks – Optimum solution does not have any negative-cost cycle in its residual graph.

History Image from Schrijver

History  T. E. Harris and General F. S. Ross (1955) – “Fundamentals of a Method for Evaluating Rail Net Capacities” – Formulated the network flow problem. – “Consider a rail network connecting two cities by way of a number of intermediate cities, where each link of the network has a number assigned to it representing its capacity. Assuming a steady state condition, find a maximal flow from one given city to the other.”

History  L. R. Ford and D. R. Fulkerson (1956) – “Maximal Flow through a Network” – Proposed the Ford-Fulkerson Algorithm that works in the “cases of most practical interest” by taking advantage of the network planarity.

Ford-Fulkerson Algorithm  Algorithm – Begin with edges initialized to a flow of 0. – While there is a path (no specific path choosing method) from source to sink with capacity remaining. Increase the flow on each edge, by the amount equal to the minimum of the residual capacities of the edges on the path. Establish edges in the reverse direction of equal flow. – Continue until there is no such path remaining. – The flow into the sink is the maximum flow.

Failures of FF Algorithm  Pathological scenarios  Failure to halt – Ford and Fulkerson gave as an example a network with 10 vertices and 48 edges on which their algorithm may fail to halt. – Zwick proved that the smallest possible example of failing to halt is a network that has only 6 vertices and 8 edges. Image from Wiki

Failures of FF Algorithm

StepAugment. pathSent Flowe1e2e Image from Wiki Residual Values

History  E. A. Dinitz (1970) – “Algorithm for solution of a problem of maximum flow in a network with power estimation.” – First publication of the Edmonds-Karp Algorithm. – Created Dinitz’s Algorithm. Image from

History  J. Edmonds and R. M. Karp (1972) – “Theoretical improvements in algorithmic efficiency for network flow problems.” – Independently published the Edmonds-Karp Algorithm. Image from UC BerkleyImage from

Edmonds-Karp/Dinitz’s Alg.

History  R. K. Ahuja, T. L. Magnanti and J. B. Orlin (1993) – “Network Flow: Theory, Algorithms, and Applications.” – Developed a faster algorithm (a strongly polynomial running time algorithm) to solve network problems.

History Image from Asano

Applications  Edge Disjoint Paths  Bipartite Matching  Baseball Elimination Problem  Project Selection  Image Segmentation  Open Pit Mining  Survey Design  And many more (Ahuja, Magnanti, Orlin and Reddy came up with a very complete list of applications).

Baseball Elimination Problem  Goal: – Calculate which teams can still win given all possible outcomes of remaining games. – Winning involves having won the most (or equal most) games at the conclusion of all games.

Baseball Elimination Problem  Example:  Based on the above information, which teams can still win (most, or tied most number of wins)? Atlanta83718 Philly80793 New York78 6 Montreal77823

Baseball Elimination Problem  Let’s add some information:  Based on the above new information, which teams can still win (most, or tied most number of wins)? Atl.PhillyNYMont. Atlanta Philly New York Montreal

Baseball Elimination Problem

 Calculating whether New York can win:  If all the games flow through, then they can. AP PM PAM M A st

Baseball Elimination Problem st

Project Selection  Goal: – Choose a feasible subset of projects to maximize revenue.

Project Selection

 Illustration of feasibility: Image from Wayne

Project Selection Image from Wayne

Project Selection Image from Wayne

Image Segmentation  Goal: – Identify foreground and background in a complex scene.

Image Segmentation

 Objective is to maximize the following:  Turn this into a minimization problem: Image from Wayne

Image Segmentation Image from Wayne

Open Problems

References  Ahuja, R. K.; Magnanti, T. L.; Orlin, J. B. (1993). “Network flow: theory, algorithms, and applications”. Prentice Hall.  Ahuja, R. K.; Magnanti, T. L.; Orlin, J. B.; Reddy, M.R. (June 1994). “Applications of network optimization”.  Asano, T.; Asano, Y. (2000) “Recent developments in maximum flow algorithms”. Journal of the Operations Research. Society of Japan 43 (2).  Biedl, T. C.; Brejova, B.; Vinar, T. (2000). “Simplifying flow networks”. Department of Computer Science, University of Waterloo.  Dinic, E. A. (1970). "Algorithm for solution of a problem of maximum flow in a network with power estimation". Soviet Math. Doklady (Doklady) 11: 1277–1280.  Edmonds, Jack; Karp, Richard M. (1972). "Theoretical improvements in algorithmic efficiency for network flow problems". Journal of the ACM (Association for Computing Machinery) 19 (2): 248–264.  Ford, L. R.; Fulkerson, D. R. (1956). "Maximal flow through a network". Canadian Journal of Mathematics 8: 399.  Schrijver, Alexander (2002). “On the history of the transportation and maximum flow problems.” [51] Schrijver,A.  West, Douglas B. (2001). “Introduction to Graph Theory (2 nd Edition).” Pearson Education.

References  Zwick, Uri (21 August 1995). "The smallest networks on which the Ford-Fulkerson maximum flow procedure may fail to terminate". Theoretical Computer Science 148 (1): 165–170.

Homework

 2)Given a directed graph where the vertices are assigned maximum capacities as well as the edges. Describe/illustrate how you would calculate maximum flow of this graph using established network flow theory/algorithms?

Questions