Flow Feasibility Problems

Slides:



Advertisements
Similar presentations
1 LP Duality Lecture 13: Feb Min-Max Theorems In bipartite graph, Maximum matching = Minimum Vertex Cover In every graph, Maximum Flow = Minimum.
Advertisements

Transportation Problem (TP) and Assignment Problem (AP)
Introduction to Algorithms
1 Introduction to Linear Programming. 2 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. X1X2X3X4X1X2X3X4.
Basic Feasible Solutions: Recap MS&E 211. WILL FOLLOW A CELEBRATED INTELLECTUAL TEACHING TRADITION.
Trees and BFSs Page 1 The Network Simplex Method Spanning Trees and Basic Feasible Solutions.
Approximation Algorithms
MIT and James Orlin © Chapter 3. The simplex algorithm Putting Linear Programs into standard form Introduction to Simplex Algorithm.
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
Decision Procedures An Algorithmic Point of View
Simplex method (algebraic interpretation)
Modeling and Evaluation with Graph Mohammad Khalily Dermany Islamic Azad University, Khomein branch.
Minimum Cost Flows. 2 The Minimum Cost Flow Problem u ij = capacity of arc (i,j). c ij = unit cost of shipping flow from node i to node j on (i,j). x.
Hon Wai Leong, NUS (CS6234, Spring 2009) Page 1 Copyright © 2009 by Leong Hon Wai CS6234: Lecture 4  Linear Programming  LP and Simplex Algorithm [PS82]-Ch2.
Chapter 4 Linear Programming: The Simplex Method
1 Network Models Transportation Problem (TP) Distributing any commodity from any group of supply centers, called sources, to any group of receiving.
Hon Wai Leong, NUS (CS6234, Spring 2009) Page 1 Copyright © 2009 by Leong Hon Wai CS6234: Lecture 4  Linear Programming  LP and Simplex Algorithm [PS82]-Ch2.
OR Chapter 8. General LP Problems Converting other forms to general LP problem : min c’x  - max (-c)’x   = by adding a nonnegative slack variable.
OR Chapter 7. The Revised Simplex Method  Recall Theorem 3.1, same basis  same dictionary Entire dictionary can be constructed as long as we.
Chapter 2. Optimal Trees and Paths Combinatorial Optimization
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
Supplementary: Feasible Labels and Linear Programming  Consider the LP formulation of the shortest s-t path problem: (P) Minimize  (i, j)  A c ij x.
C&O 355 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A.
Linear Programming Chap 2. The Geometry of LP  In the text, polyhedron is defined as P = { x  R n : Ax  b }. So some of our earlier results should.
Approximation Algorithms Duality My T. UF.
Tuesday, March 19 The Network Simplex Method for Solving the Minimum Cost Flow Problem Handouts: Lecture Notes Warning: there is a lot to the network.
Minimum Cost Flow Algorithms and Networks. Algorithms and Networks: Minimum Cost Flow2 This lecture The minimum cost flow problem: statement and applications.
EMGT 6412/MATH 6665 Mathematical Programming Spring 2016
Part 3 Linear Programming
Lap Chi Lau we will only use slides 4 to 19
Chap 10. Sensitivity Analysis
Topics in Algorithms Lap Chi Lau.
The minimum cost flow problem
6.5 Stochastic Prog. and Benders’ decomposition
Algorithms and Networks
Chapter 1. Introduction Mathematical Programming (Optimization) Problem: min/max
Chapter 5. Optimal Matchings
1.3 Modeling with exponentially many constr.
Chapter 4 Linear Programming: The Simplex Method
Chap 9. General LP problems: Duality and Infeasibility
3.3 Applications of Maximum Flow and Minimum Cut
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Part 3 Linear Programming
Chapter 6. Large Scale Optimization
Chapter 5. Sensitivity Analysis
Chap 3. The simplex method
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
3.4 Push-Relabel(Preflow-Push) Maximum Flow Alg.
2. Generating All Valid Inequalities
András Sebő and Anke van Zuylen
Chapter 8. General LP Problems
2.2 Shortest Paths Def: directed graph or digraph
1.3 Modeling with exponentially many constr.
Chapter 5. The Duality Theorem
I.4 Polyhedral Theory (NW)
Algorithms and Networks
I.4 Polyhedral Theory.
Chapter 8. General LP Problems
Part 3 Linear Programming
6.5 Stochastic Prog. and Benders’ decomposition
Chapter 2. Simplex method
Simplex method (algebraic interpretation)
Chapter 8. General LP Problems
Chapter 1. Formulations.
Branch-and-Bound Algorithm for Integer Program
Prepared by Po-Chuan on 2016/05/24
1.2 Guidelines for strong formulations
Chapter 6. Large Scale Optimization
Chapter 2. Simplex method
1.2 Guidelines for strong formulations
Presentation transcript:

Flow Feasibility Problems Flow feasibility problem: Given (𝐺, 𝑢, 𝑟, 𝑠, 𝑘), determine whether there exists a feasible flow from 𝑟 to 𝑠 of value at least 𝑘. algorithm and good characterization with max-flow min-cut thm. Other types of flow feasibility problems? Transportation Problem Given 𝐺=(𝑉,𝐸) with partition {𝑃,𝑄} of nodes and vectors 𝑎∈ 𝑍 + 𝑃 , 𝑏∈ 𝑍 + 𝑄 , find 𝑥∈ 𝑅 𝐸 satisfying ( 𝑥 𝑝𝑞 :𝑞∈𝑄, 𝑝𝑞∈𝐸 )≤ 𝑎 𝑝 , for all 𝑝∈𝑃 ( 𝑥 𝑝𝑞 :𝑝∈𝑃, 𝑝𝑞∈𝐸 )= 𝑏 𝑞 , for all 𝑞∈𝑄 𝑥𝑝𝑞≥0, for all 𝑝𝑞∈𝐸 𝑥𝑝𝑞 integral, for all 𝑝𝑞∈𝐸.  1 3 1 3 𝑟 𝑠 2 1 𝑃 2 1 𝑄 4 2 4 2 Combinatorial Optimization 2016

For any finite cut ′(𝐴∪𝐵∪{𝑟}), where 𝐴⊆𝑃, 𝐵⊆𝑄, the capacity is There exists integral feasible flow in TP iff there exists an integral feasible flow in 𝐺′ from 𝑟 to 𝑠 of value (𝑏𝑞 :𝑞∈𝑄) For any finite cut ′(𝐴∪𝐵∪{𝑟}), where 𝐴⊆𝑃, 𝐵⊆𝑄, the capacity is ( 𝑎 𝑖 :𝑖∈𝑃∖𝐴)+ ( 𝑏 𝑗 :𝑗∈𝐵) 𝑃∖𝐴 𝑄∖𝐵 𝑟 𝑠 𝐴 𝐵 (𝐴∪𝐵∪{𝑟}) Cut capacity is at least (𝑏𝑗 :𝑗∈𝑄) iff (𝑎𝑖 :𝑖∈𝑃\A)≥(𝑏𝑗 :𝑗∈𝑄\B) Check this condition for the sets 𝐴 s.t. every node in 𝑃\A is adjacent to a node in 𝑄\B, since any node violating this could be added to 𝐴. ( Define Neighborset 𝑁(𝐶) of 𝐶⊆𝑉 : {𝑤: 𝑣𝑤∈𝐸 𝑓𝑜𝑟 𝑠𝑜𝑚𝑒 𝑣∈𝐶}. Then 𝑁(𝑄\B)=𝑃\A ) Necessary and sufficient conditions for existence of solution: 𝑎(𝑁(𝐶))≥𝑏(𝐶) , for all 𝐶⊆𝑄. Combinatorial Optimization 2016

Does there exist 𝑥∈ 𝑅 𝐸 (or 𝑍 𝐸 ) such that 𝑎𝑣≤𝑓𝑥(𝑣)≤𝑏𝑣 , for all 𝑣∈𝑉 General problem: Does there exist 𝑥∈ 𝑅 𝐸 (or 𝑍 𝐸 ) such that 𝑎𝑣≤𝑓𝑥(𝑣)≤𝑏𝑣 , for all 𝑣∈𝑉 𝑙𝑒≤𝑥𝑒≤𝑢𝑒, for all 𝑒∈𝐸 Special case: 𝑙=0, 𝑎=𝑏: want 𝑥∈ 𝑅 𝐸 such that 𝑓𝑥(𝑣)=𝑏𝑣 , for all 𝑣∈𝑉 (3.8) 0≤𝑥𝑒≤𝑢𝑒 , for all 𝑒∈𝐸 Note that 𝑏(𝑉)=0 Form 𝐺′ with 𝑉′=𝑉∪{𝑟, 𝑠} 𝑣𝑤∈𝐸 ⇒ capacity 𝑢𝑣𝑤 𝑣∈𝑉, 𝑏𝑣<0 ⇒ arc 𝑟𝑣 with 𝑢𝑟𝑣=− 𝑏𝑣 (𝑏𝑣<0: supply node) 𝑣∈𝑉, 𝑏𝑣>0 ⇒ arc 𝑣𝑠 with 𝑢𝑣𝑠=𝑏𝑣 (𝑏𝑣>0: demand node) Then 𝐺 has a feasible flow ⇔ There is an (𝑟,𝑠)-flow in 𝐺′ of value ( 𝑏 𝑣 :𝑣∈𝑉, 𝑏 𝑣 >0) Combinatorial Optimization 2016

(3.8) has a solution ⇔ there exists no 𝐴⊆𝑉 s.t. 𝑢(𝛿′(𝐴∪{𝑟}))<(𝑏𝑣: 𝑣∈𝑉, 𝑏𝑣>0) (from max-flow min-cut theorem) ⇔ (−𝑏𝑣:𝑣∉𝐴, 𝑏𝑣<0)+(𝑏𝑣:𝑣∈𝐴, 𝑏𝑣>0)+𝑢((𝐴))<(𝑏𝑣:𝑣∈𝑉, 𝑏𝑣>0) ⇔ (−𝑏𝑣:𝑣∉𝐴, 𝑏𝑣<0)+(𝑏𝑣:𝑣∈𝐴, 𝑏𝑣>0)+𝑢((𝐴))< (𝑏𝑣:𝑣∈𝐴, 𝑏𝑣>0)+(𝑏𝑣:𝑣∉𝐴, 𝑏𝑣>0) ⇔ no 𝐴 with 𝑢((𝐴))<(𝑏𝑣:𝑣∉𝐴) ⇔ for all 𝐴, have 𝑢((𝐴))≥(𝑏𝑣:𝑣∉𝐴) { or 𝑢(( 𝐴 ))≥(𝑏𝑣:𝑣∈𝐴) } 𝑉\A 𝑉\A 𝑟 𝑏𝑣 𝑠 −𝑏𝑣 𝐴 𝐴 {𝑣:𝑏𝑣<0} {𝑣:𝑏𝑣>0} There cannot be a subset of nodes whose total demand exceeds its “import capacity”. Combinatorial Optimization 2016

A circulation is a vector 𝑥∈ 𝑅 𝐸 with 𝑓𝑥(𝑣)=0 for all 𝑣∈𝑉. Thm 3.15(Gale, 1957) : There exists a solution to (3.8) ⇔ 𝑏(𝑉)=0 and, for every 𝐴⊆𝑉, 𝑏(𝐴)≤𝑢(( 𝐴 )). If 𝑏 and 𝑢 integral, then (3.8) has an integral solution iff the same conditions hold. A circulation is a vector 𝑥∈ 𝑅 𝐸 with 𝑓𝑥(𝑣)=0 for all 𝑣∈𝑉. Thm 3.17 (Hoffman’s Circulation Theorem, 1960): Given a digraph 𝐺, 𝑙∈(𝑅∪{−})𝐸, and 𝑢∈(𝑅∪{})𝐸, with 𝑙≤𝑢, There is a circulation 𝑥 with 𝑙≤𝑥≤𝑢 ⇔ every 𝐴⊆𝑉 satisfies 𝑢(( 𝐴 ))≥𝑙((𝐴)). Also for integral version. (pf) 𝑙=− ⇒ 𝑙=−𝑀 (𝑀 large integer) Let 𝑙≡0, 𝑢′≡𝑢−𝑙, 𝑥′≡𝑥−𝑙. Then 𝑓 𝑥 ′ 𝑣 =𝑓𝑥(𝑣)−𝑓𝑙(𝑣) Hence 𝑥 is a circulation ⇔ 𝑓 𝑥 ′ 𝑣 =−𝑓𝑙(𝑣) Apply Thm 3.15 with demands −𝑓𝑙(𝑣) and capacities 𝑢−𝑙 Note that (−𝑓𝑙(𝑣) :𝑣∈𝑉)=0 (nec condition for feasible flow)(why true?) So there exists a feasible circulation ⇔ for every 𝐴⊆𝑉 we have 𝑢−𝑙  𝐴 ≥−(𝑓𝑙(𝑣) :𝑣∈𝐴)=𝑙((𝐴))−𝑙( 𝐴 ) ⇒ 𝑢(( 𝐴 ))≥𝑙((𝐴))  Combinatorial Optimization 2016

Generalization of Thm 3.15 and 3.17 Thm 3.18: Given a digraph 𝐺, 𝑏∈ 𝑅 𝑉 such that 𝑏(𝑉)=0, 𝑙∈(𝑅∪{−})𝐸, and 𝑢∈(𝑅∪{})𝐸, with 𝑙≤𝑢, there exists 𝑥∈ 𝑅 𝐸 such that 𝑓𝑥(𝑣)=𝑏𝑣 , for all 𝑣∈𝑉 𝑙𝑒 ≤𝑥𝑒 ≤𝑢𝑒 , for all 𝑒∈𝐸 ⇔ every 𝐴⊆𝑉 satisfies 𝑢(( 𝐴 ))≥𝑏(𝐴)+𝑙((𝐴)) Min (𝑟, 𝑠) flow subject to lower bounds on the arcs min 𝑓𝑥(𝑠) (3.9) subject to 𝑓𝑥(𝑣)=0, for all 𝑣∈𝑉∖{𝑟, 𝑠} 𝑥𝑒≥𝑙𝑒, for all 𝑒∈𝐸. ( 𝑙≥0 ) Assume every arc 𝑒 having 𝑙𝑒>0 is in an (𝑟, 𝑠)-dipath ( o.w. there may be no feasible solution) and there is no (𝑠, 𝑟)-dipath ( o.w. may be unbounded) ⇒ There exists 𝑅, 𝑟∈𝑅, 𝑅⊆𝑉∖{𝑠} such that ( 𝑅 )=∅ ⇒ for any solution 𝑥 of (3.9), have 𝑓𝑥(𝑠)=𝑥  𝑅 −{𝑥(( 𝑅 ))}≥𝑙((𝑅)) for any 𝑅 with ( 𝑅 )=∅. (The bound can be made tight) Combinatorial Optimization 2016

Thm 3.19: (Min-Flow Max-Cut Theorem) There exists a solution to (3.9) having 𝑓𝑥(𝑠)≤𝑘 ⇔ There does not exist 𝑅⊆𝑉 with 𝑟∈𝑅, 𝑠∉𝑅, ( 𝑅 )=∅, and 𝑙  𝑅 >𝑘. Also for integral version. (pf) Add arc 𝑠𝑟 to 𝐺 with 𝑙𝑠𝑟=0, 𝑢𝑠𝑟=𝑘 and put 𝑢𝑒=∞ for all 𝑒∈𝐸. Then new 𝐺′ has a circulation ⇔ (3.9) has solution of value at most 𝑘. ⇔ There does not exist 𝐴⊆𝑉 with 𝑢(′(𝐴))<𝑙(′( 𝐴 )). Since 𝑢𝑒=∞ for all 𝑒∈𝐸, such 𝐴 satisfies (𝐴)=∅. Since 𝑙(( 𝐴 ))>0, there exists 𝑒∈( 𝐴 ) with 𝑙𝑒>0 ⇒ since there must exist an (𝑟, 𝑠)-dipath using 𝑒, we have 𝑟∈ 𝐴 , 𝑠∈𝐴. ⇒ 𝑠𝑟∈′(𝐴) ⇒ 𝑘=𝑢(′(𝐴))<𝑙(′( 𝐴 ))=𝑙(( 𝐴 )). So take 𝑅= 𝐴 .  𝑙=0, 𝑢=𝑘 𝐴( 𝑅 ) 𝐴 (𝑅) 𝑟 𝑠 Combinatorial Optimization 2016

Minimum Cuts and Linear Programming LP interpretation of the min cut problem: max 𝑓𝑥(𝑠) s.t. (𝑥𝑤𝑣:𝑤∈𝑉, 𝑤𝑣∈𝐸)−(𝑥𝑣𝑤:𝑤∈𝑉, 𝑣𝑤∈𝐸)=0, for all 𝑣∈𝑉∖{𝑟, 𝑠} 0≤𝑥𝑣𝑤≤𝑢𝑣𝑤, for all 𝑣𝑤∈𝐸 Dual Problem: min (𝑢𝑒𝑧𝑒 :𝑒∈𝐸) (3.10) s.t. −𝑦𝑣+𝑦𝑤+𝑧𝑣𝑤 ≥0, for all 𝑣𝑤∈𝐸, 𝑣, 𝑤∈𝑉∖{𝑟, 𝑠} 𝑦𝑤+𝑧𝑣𝑤≥0, for all 𝑟𝑤∈𝐸 − 𝑦𝑣+𝑧𝑣𝑟 ≥0, for all 𝑣𝑟∈𝐸 − 𝑦𝑣+𝑧𝑣𝑠≥1, for all 𝑣𝑠∈𝐸 𝑦𝑤+𝑧𝑠𝑤≥−1, for all 𝑠𝑤∈𝐸 𝑧𝑒≥0, for all 𝑒∈𝐸 Define 𝑦𝑟=0, 𝑦𝑠=−1, we can unify the constraints as −𝑦𝑣+𝑦𝑤+𝑧𝑣𝑤≥0, for all 𝑣𝑤∈𝐸 Then add 1 to each 𝑦𝑣 (dual feasibility not changed) Combinatorial Optimization 2016

−𝑦𝑣+𝑦𝑤+𝑧𝑣𝑤≥0, for all 𝑣𝑤∈𝐸 𝑧𝑒 ≥0, for all 𝑒∈𝐸 min (𝑢𝑒𝑧𝑒 :𝑒∈𝐸) (3.11) s.t. 𝑦𝑟=1, 𝑦𝑠=0 −𝑦𝑣+𝑦𝑤+𝑧𝑣𝑤≥0, for all 𝑣𝑤∈𝐸 𝑧𝑒 ≥0, for all 𝑒∈𝐸 Thm 3.20: If (3.11) has an optimal solution, it has one of the form: For some (𝑟, 𝑠)-cut (𝑅), 𝑦 is the characteristic vector of 𝑅 and 𝑧 is the characteristic vector of (𝑅). (pf) Choose (𝑅) to be a min cut. Then (𝑦, 𝑧) feasible to (3.11) and objective value is  𝑢𝑒𝑧𝑒 :𝑒∈𝐸 =𝑢  𝑅 = max flow value By LP duality, this is optimal to (3.11) and (3.10)  (See a different proof in the text.) We may identify the cut using the bounded variable simplex method applied to a converted problem. Note that a spanning tree corresponds to a maximum linearly independent columns of the network matrix. Combinatorial Optimization 2016

𝑙=0, 𝑢=∞ Basic arcs 𝑟 𝑠 𝑦𝑣=1 𝑦𝑣=0 𝑅 Add arc 𝑠𝑟 with 𝑙𝑠𝑟=0, 𝑢𝑠𝑟=∞, and max 𝑥𝑠𝑟 subject to 𝑓𝑥(𝑣)=0 for all 𝑣∈𝑉. Add artificial variable 𝑥𝑎 with 𝑙=𝑢=0 and objective coefficient 0 to the constraint corresponding to node 𝑠. As explained earlier, the artificial variable is always in the basis, hence dual variable 𝑦𝑠=0 in a b.f.s. (from 𝑦′𝐴𝑗= 𝑐 𝑗 for basic variables) If flow value is positive 𝑥𝑠𝑟 is always in the basis, hence the spanning tree basis can be divided into two parts. Assigning 𝑦𝑣=1 for 𝑣∈𝑅, 0 for 𝑣∈ 𝑅 satisfies 𝑦′𝐴𝑗=𝑐𝑗 for basic arcs (We have −𝑦𝑣+𝑦𝑤=0 ) If current LP solution is optimal, the arcs in (𝑅) are at their upper bounds and the arcs in ( 𝑅 ) at 0 (and nonbasic). (at opt sol, have 𝑥 𝑒 = 𝑢 𝑒 when 𝑐 𝑒 −𝑦′ 𝐴 𝑒 >0, and 𝑥 𝑒 =0 when 𝑐 𝑒 −𝑦′ 𝐴 𝑒 <0 for nonbasic 𝑥 𝑒 ) Combinatorial Optimization 2016

Different interpretation: min (𝑢𝑒𝑧𝑒 :𝑒∈𝐸) (3.12) subject to (𝑧𝑒 :𝑒∈𝑃)≥1, for all arc-sets P of simple (𝑟, 𝑠)-dipaths 𝑧𝑒≥0, for all 𝑒∈𝐸 Thm 3.21: If (3.12) has an optimal solution, then it has one that is the characteristic vector of an (𝑟, 𝑠)-cut (pf) (3.12) has a feasible solution and it is unbounded if some 𝑢𝑒<0, so assume that 𝑢≥0. Choose 𝑧′ to be the characteristic vector of min cut (𝑅). Dual of (3.12) is max (𝑤𝑃 :𝑃 a simple (𝑟, 𝑠)-dipath) (3.13) s.t. (𝑤𝑃 :𝑒 an arc of 𝑃)≤𝑢𝑒, for all 𝑒∈𝐸 𝑤𝑃≥0 , for all 𝑃 a simple (𝑟, 𝑠)-dipath Let 𝑥 be a max flow. Find simple (𝑟, 𝑠)-dipath 𝑃 such that 𝑥𝑒>0 for each arc of 𝑃, put 𝑤𝑃= min value of 𝑥𝑒 on 𝑃, subtract 𝑤𝑃 from 𝑥𝑒 for each arc 𝑒 of 𝑃. Repeat until 𝑓𝑥(𝑠)=0, at which point 𝑤𝑃= max flow value. Then, 𝑤 is feasible to (3.13) and since 𝑤𝑃=(𝑢𝑒𝑧𝑒′), 𝑧′ is optimal to (3.12).  Combinatorial Optimization 2016

Thm 3.21 implies that the cut polyhedron defined by (3.12) is integral Similar result also holds for path polyhedron. For the polyhedron (𝑥𝑒 :𝑒∈𝐶)≥1, for all arc-sets 𝐶 of (𝑟, 𝑠)-cuts 𝑥𝑒≥0, for all 𝑒∈𝐸 Extreme points are incidence vectors of simple (𝑟, 𝑠)-dipaths (may be seen from results for blocking polyhedron) Let 𝑃={𝑥∈ 𝑅 + 𝑛 :𝐴𝑥≥1}, where 𝐴 is a nonnegative matrix. Then the blocking polyhedron of 𝑃 is defined as 𝑃 𝐵 ={𝜋∈ 𝑅 + 𝑛 : 𝜋𝑥≥1 ∀𝑥∈𝑃} Then 𝑃 𝐵 ={𝜋∈ 𝑅 + 𝑛 :𝐵𝜋≥1}, where rows of 𝐵 are extreme points of 𝑃. Also 𝑃 𝐵 𝐵 =𝑃. Here, each row of 𝐴 is the incidence vector of a simple 𝑟, 𝑠 −dipath. Each row of 𝐵 is the incidence vector of a 𝑟,𝑠 −cut. (no more details here.) Combinatorial Optimization 2016