Max Flow Application: Precedence Relations

Slides:



Advertisements
Similar presentations
Maximum Flow and Minimum Cut Problems In this handout: Duality theory Upper bounds for maximum flow value Minimum Cut Problem Relationship between Maximum.
Advertisements

Max Flow Min Cut. Theorem The maximum value of an st-flow in a digraph equals the minimum capacity of an st-cut. Theorem If every arc has integer capacity,
Outline LP formulation of minimal cost flow problem
1 Material to Cover  relationship between different types of models  incorrect to round real to integer variables  logical relationship: site selection.
Max Flow Problem Given network N=(V,A), two nodes s,t of V, and capacities on the arcs: uij is the capacity on arc (i,j). Find non-negative flow fij for.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
1 Maximum flow sender receiver Capacity constraint Lecture 6: Jan 25.
Chapter 6 Maximum Flow Problems Flows and Cuts Augmenting Path Algorithm.
Lecture 5 Set Packing Problems Set Partitioning Problems
Network Optimization Models: Maximum Flow Problems
MAXIMUM FLOW Max-Flow Min-Cut Theorem (Ford Fukerson’s Algorithm)
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.
Modelling with Max Flow 1. 2 The Max Flow Problem.
Section 4.2 Network Flows By Christina Touhey. The flow out of a equals the flow into z. Algorithm 1.Make vertex a: (0, ). 2.Scan the first vertex and.
Network Optimization Models: Maximum Flow Problems In this handout: The problem statement Solving by linear programming Augmenting path algorithm.
Chapter 7 Network Flow Models.
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.
A network is shown, with a flow f. v u 6,2 2,2 4,1 5,3 2,1 3,2 5,1 4,1 3,3 Is f a maximum flow? (a) Yes (b) No (c) I have absolutely no idea a b c d.
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
NetworkModel-1 Network Optimization Models. NetworkModel-2 Network Terminology A network consists of a set of nodes and arcs. The arcs may have some flow.
1 Lecture 4 Maximal Flow Problems Set Covering Problems.
9/23/2015ACM-ICPC1 Maximum Flow Problem Source t fg e 42 Target (sink) flow capacity b s c a de 2/3/ actual flow 1/2/ 1/ 2/ 1.Actual flow  capacity.
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
Applications of the Max-Flow Min-Cut Theorem. S-T Cuts SF D H C A NY S = {SF, D, H}, T={C,A,NY} [S,T] = {(D,A),(D,C),(H,A)}, Cap [S,T] =
Maximization of Network Survivability against Intelligent and Malicious Attacks (Cont’d) Presented by Erion Lin.
EMIS 8373: Integer Programming “Easy” Integer Programming Problems: Network Flow Problems updated 11 February 2007.
Kramer’s (a.k.a Cramer’s) Rule Component j of x = A -1 b is Form B j by replacing column j of A with b.
Network Flow. Network flow formulation A network G = (V, E). Capacity c(u, v)  0 for edge (u, v). Assume c(u, v) = 0 if (u, v)  E. Source s and sink.
Maximum Flow Problem (Thanks to Jim Orlin & MIT OCW)
EMIS 8374 Network Flow Models updated 29 January 2008.
& 6.855J & ESD.78J Algorithm Visualization The Ford-Fulkerson Augmenting Path Algorithm for the Maximum Flow Problem.
The Ford-Fulkerson Augmenting Path Algorithm for the Maximum Flow Problem Thanks to Jim Orlin & MIT OCW.
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.
and 6.855J March 6, 2003 Maximum Flows 2. 2 Network Reliability u Communication Network u What is the maximum number of arc disjoint paths from.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Management Science 461 Lecture 4a – P center September 30, 2008.
Problems in Combinatorial Optimization. Linear Programming.
CS 312: Algorithm Design & Analysis Lecture #29: Network Flow and Cuts This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported.
ENGM 631 Maximum Flow Solutions. Maximum Flow Models (Flow, Capacity) (0,3) (2,2) (5,7) (0,8) (3,6) (6,8) (3,3) (4,4) (4,10)
Basic Project Scheduling
Basic Project Scheduling
ENGM 535 Optimization Networks
Max Flow min Cut.
Maximum Flow Solutions
3.3 Applications of Maximum Flow and Minimum Cut
Integer Programming (정수계획법)
Introduction to Maximum Flows
Introduction Basic formulations Applications
3.4 Push-Relabel(Preflow-Push) Maximum Flow Alg.
Vertex Covers, Matchings, and Independent Sets
Not Always Feasible 2 (3,5) 1 s (0,2) 3 (, u) t.
Max Flow Application: Precedence Relations
Primal-Dual Algorithm
Integer Programming (정수계획법)
Project Selection Bin Li 10/29/2008.
EE5900 Advanced Embedded System For Smart Infrastructure
and 6.855J March 6, 2003 Maximum Flows 2
Flow Feasibility Problems
X y y = x2 - 3x Solutions of y = x2 - 3x y x –1 5 –2 –3 6 y = x2-3x.
Min Global Cut Animation
Introduction to Maximum Flows
Introduction to Maximum Flows
Chapter 1. Formulations.
Kramer’s (a.k.a Cramer’s) Rule
Not Always Feasible 2 (3,5) 1 s (0,2) 3 (, u) t.
Maximum Flow Problems in 2005.
Vertex Covers and Matchings
EMIS 8374 Max-Flow in Undirected Networks Updated 18 March 2008
EMIS The Maximum Flow Problem: Flows and Cuts Updated 6 March 2008
Presentation transcript:

Max Flow Application: Precedence Relations

Precedence Relations Given a finite set of elements B we define a precedence relation as relation  between pairs of elements of S such that: i not  i for all i in B i  j implies j  i for all i, j in B i  j and j  k implies i  k for all i, j, k in B

Examples of Precedence Relations Let B be the set of integers. The < relation is a precedence relation on B. Let B be a set of jobs and let i  j mean that job j cannot start until job i is complete.

Network Representation of Precedence Relations a  e, a  f, d  e, d  c, d  b, f  c a e c d b

Minimum Chain Covering Problem A chain i1, i2, …, ik is a sequence of elements in B such that i1  i2  …  ik. The minimum chain covering problem is to find a minimum number of chains that covers all the elements of B.

Example: Aircraft Scheduling Given a set of flight legs that must be serviced, determine the minimum number of planes required. Example Flight 1: SFO -> LAX Flight 2: LAX -> DFW Flight 3: OAK -> MSP Flight 4: LAX -> CVG

Aircraft Scheduling Example Four-Chain Solution: {{F1},{F2},{F3},{F4}} Three-Chain Solution: {{F1,F2},{F3},{F4}} F1 F2 F3 F4

Max Flow Formulation  a a' 1 1 b b' 1 1 1 c c' 1 s t 1 1 d d' 1 1 e

Finding Chains from a Feasible Flow Chose i' such that the flow from i' to t = 0. Let k = 1. chain[k] = i. If the flow from s to i = 0, stop. {chain[1], chain[2], …, chain[k]} is a chain. If the flow from s to i = 1 then find j' such that the flow from i to j' = 1. Let k = k+1, chain[k] = j. Let i = j. Go to step 2.

A Feasible Flow v = 2 a a’ 1 b b’ c c’ 1 1 s t d d’ e e’ 1 1 1 f f’

Finding a Chain Step 1: i’ = a’, k=1, chain[1] = a Step 2: xsa=1 Step 3: j’=f’, k=2, chain[2] = f, i=f Step 2: xsf=1 Step 3: j’=c’, k=3, chain[3] = c, i=c Step 2: xsc=0. Chain: a, f, c

Finding a Feasible Chain 1 1 b b’ c c’ s 1 t d d’ 1 e e’ f f’

A Cover with 4 chains f a e c d b a  e, a  f, d  e, d  c, d  b, f  c a Chain 1: a, f, c Chain 2: e Chain 3: d Chain 4: b e c d b

Interpretation of Network Flow Solution: Sink Side Each node i’ such that xi’t = 0 starts a chain. Note that there are |B| nodes adjacent to the sink. Each with unit capacity. The number of chains determined by a feasible flow is |B| - v. Maximizing the flow minimizes the number of chains.

Interpretation of Network Flow Solution: Source Side Each node j such that xsj = 0 ends a chain. Observe that S = {s, 1, 2, …, |B|}, T = N \{S} is a cut with finite capacity. Only arcs of the form (s,j) or (i’,t) can be in a minimum cut. If xsj = 0 in a maximum flow, then node j will be reachable from the source in the residual network. If Node j is in S, then (s, j) contributes one unit to u[S,T].

Interpretation of Network Flow Solution: Source Side Each node j such that xsj = 0 ends a chain. The capacity of a minimum cut is equal to the number of source-adjacent nodes that don’t receive flow in a maximum flow. The capacity of a minimum cut is equal to the number of chains. Maximizing the flow, minimizes the cut capacity which minimizes the number of chains.

A Maximum Flow v = 3 a a’ 1 b b’ c c’ 1 1 s t 1 d d’ 1 1 e e’ 1 1 1 f b b’ c c’ 1 1 s t 1 d d’ 1 1 e e’ 1 1 1 f f’

A Cover with 3 chains f a e c d b a  e, a  f, d  e, d  c, d  b, f  c a Chain 1: a, f, c Chain 2: d, e Chain 3: b e c d b