Download presentation
Presentation is loading. Please wait.
1
Applications of Maximum Flow and Minimum Cut Problems In this handout Transshipment problem Assignment Problem
2
Transshipment Problem Given: Directed network G=(V, E) Supply (source) nodes S i with supply amounts s i, i=1,…,p Demand (sink) nodes D i with demand amounts d i, i=1,…,q Total supply ≥ total demand Capacity function u: E R Goal: Find a feasible flow through the network which satisfies the total demand (if such a flow exists). Ex.: A D1D1 B C S1S1 D2D2 S2S2 11 16 17 8 2 2 19 4 2 4 5 15 5 9 5 5
3
Solving the Transshipment Problem via Maximum Flow The transshipment problem can be solved by creating and solving a related instance of maximum flow problem: –Create a supersource O. For each supply node S i, add an arc O S i with capacity equal to the supply amount of S i. –Create a supersink T. For each demand node D i, add an arc D i T with capacity equal to the supply amount of D i. –Find the maximum flow from O to T in the resulting auxiliary network. –If maximum flow value = total demand then the current maximum flow is a feasible flow for the transshipment problem, else the transshipment problem is infeasible. A D1D1 B C S1S1 D2D2 S2S2 2 2 19 4 2 4 5 15 5 9 5 5 11 16 17 8 O T 11 16 17 8
4
Solving the Transshipment Problem via Maximum Flow In our example, –The maximum flow from O to T is obtained by applying the Augmenting Path algorithm. The maximum flow value is 25. The bold red numbers on the arcs show the flow values. –Since the maximum flow value = 25 = 17+8 = total demand, the current maximum flow is a feasible flow for the transshipment problem. 2 2 19 4 2 4 5 15 A D1D1 B C S1S1 D2D2 S2S2 5 9 5 5 11 16 17 8 O T 11 16 17 8 8 13 18 1 2 4 5 2 2 17 8 9 16
5
Assignment Problem Given: n people and n jobs Each person can be assigned to exactly one job Each job should be assigned to exactly one person Person-job compatibility is given by a directed network (e.g., having a link A x means “person A can do job x ”) Goal: Find an assignment of n jobs to n people (if such an assignment exists). Example: A CB people D E jobs xy zu v
6
Solving the Assignment Problem via Maximum Flow The assignment problem can be solved by creating and solving a related instance of the transshipment problem: –Each person-node is considered as a supply node with supply amount 1. –Each job-node is considered as a demand node with demand amount 1. –Assign capacity 1 to each arc. –Solve the resulting transshipment problem by finding maximum flow in the auxiliary network. – If maximum flow value = n then the current maximum flow gives a feasible assignment, else the assignment problem is infeasible. A CB people D E jobs xy zu v 11 11 1 11 11 1
7
Solving the Assignment Problem via Maximum Flow In our example, the red numbers on the arcs show the optimal flow values. Since the maximum flow value is 5, the assignment problem is feasible. The feasible assignment is A x, B y, C u, D z, E v. A CB people D E jobs xy zu v 11 11 1 11 11 1 O T 1 1 1 1 1 1 1 1 1 1 11 1 1 1
8
Showing the infeasibility of an assignment problem using maximum-flow-based arguments Let’s solve the assignment problem below via maximum flow. The red numbers on the arcs show the optimal flow values. Since the maximum flow value = 5 < 6 = number of jobs, the assignment problem is infeasible. O T 1 1 1 1 1 1 1 1 1 1 A CB people D EF jobs xy zu vw 1 11 1 1
9
Showing the infeasibility of an assignment problem using minimum-cut-based arguments The O-side of the minimum cut is {O, A, B, D, x, y, z} (the set of the nodes that are reachable from O via augmenting paths) Return to the original network (delete nodes O and T and the arcs incident to them). O T 1 1 1 1 1 1 1 1 1 1 A CB people D EF jobs xy zu vw 1 11 1 1
10
Showing the infeasibility of an assignment problem using minimum-cut-based arguments The capacity of the modified cut is 0 (since there are no arcs going from O-side to T-side). There are 2 people (E, F) and 3 jobs (u, v, w) on T-side. Thus, one of the 3 jobs should be assigned to a person from O-side (A, B, C, D). But there are no arcs going from O-side to T-side. ( A, B, C, D can’t do the jobs u, v, w). Thus, there is no way to assign the T-side jobs, and the assignment problem is infeasible. A CB people D EF jobs xy zu vw
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.