network flow vi min cost flow applications
play

Network Flow VI - Min-Cost Flow Applications Lecture 17 October - PowerPoint PPT Presentation

CS 573: Algorithms, Fall 2013 Network Flow VI - Min-Cost Flow Applications Lecture 17 October 24, 2013 Sariel (UIUC) CS573 1 Fall 2013 1 / 27 Lemma decomposing flow into cycles . Lemma . f :a circulation in G . Then, f can be


  1. CS 573: Algorithms, Fall 2013 Network Flow VI - Min-Cost Flow Applications Lecture 17 October 24, 2013 Sariel (UIUC) CS573 1 Fall 2013 1 / 27

  2. Lemma – decomposing flow into cycles . Lemma . f :a circulation in G . Then, f can be decomposed into m cycles, C 1 , . . . , C m , such that, ∀ e ∈ E ( G ) : f ( e ) = ∑ t i =1 λ i · χ C i ( e ) , λ 1 , . . . , λ t > 0 and t ≤ m , m = | E ( G ) | . . . Proof . . By conservation of flow, if f is not zero, then there is a cycle in f . 1 (i) ... v : vertex non-zero flow into it. (ii) walk on an adjacent edge that has positive flow on it. (iii) Repeat, till visit a vertex that was already visited. (iv) Extract cycle contained in this walk. . Sariel (UIUC) CS573 2 Fall 2013 2 / 27

  3. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  4. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  5. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  6. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  7. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  8. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  9. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  10. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  11. Proof continued... . Proof continued: . . C 1 : such a cycle. 1 . . every edge of C 1 has positive flow. 2 . . λ 1 : smallest amount of flow on any edge of C 1 . 3 e 1 this edge. . . g = f − λ 1 · χ C 1 . 4 g has zero flow on e 1 . It is a (weak) circulation. . . Removed e 1 from G . H : new graph. 5 . . By induction on g on H ... 6 . . = ⇒ g can be decomposed into m − 1 cycles with positive 7 coefficients. . . These cycles + C 1 (with λ 1 ) implies the claim. 8 . Sariel (UIUC) CS573 3 Fall 2013 3 / 27

  12. Result . Theorem . A flow f is a minimum cost feasible circulation ⇐ ⇒ each directed cycle of G f has nonnegative cost. . . Proof . . C : a negative cost cycle in G f . 1 . . Circulate more flow on C and reduce price. 2 . . ε > 0 : sufficiently small constant: 3 g = f + ε ∗ χ C is feasible circulation . . cost( g ) = cost( f ) + ∑ e ∈ C κ ( e ) ∗ ε 4 = cost( f ) + ε ∗ ∑ e ∈ C κ ( e ) = cost( f ) + ε ∗ κ ( C ) < cost( f ) , since κ ( C ) < 0 . A contradiction. . Sariel (UIUC) CS573 4 Fall 2013 4 / 27

  13. Result . Theorem . A flow f is a minimum cost feasible circulation ⇐ ⇒ each directed cycle of G f has nonnegative cost. . . Proof . . C : a negative cost cycle in G f . 1 . . Circulate more flow on C and reduce price. 2 . . ε > 0 : sufficiently small constant: 3 g = f + ε ∗ χ C is feasible circulation . . cost( g ) = cost( f ) + ∑ e ∈ C κ ( e ) ∗ ε 4 = cost( f ) + ε ∗ ∑ e ∈ C κ ( e ) = cost( f ) + ε ∗ κ ( C ) < cost( f ) , since κ ( C ) < 0 . A contradiction. . Sariel (UIUC) CS573 4 Fall 2013 4 / 27

  14. Result . Theorem . A flow f is a minimum cost feasible circulation ⇐ ⇒ each directed cycle of G f has nonnegative cost. . . Proof . . C : a negative cost cycle in G f . 1 . . Circulate more flow on C and reduce price. 2 . . ε > 0 : sufficiently small constant: 3 g = f + ε ∗ χ C is feasible circulation . . cost( g ) = cost( f ) + ∑ e ∈ C κ ( e ) ∗ ε 4 = cost( f ) + ε ∗ ∑ e ∈ C κ ( e ) = cost( f ) + ε ∗ κ ( C ) < cost( f ) , since κ ( C ) < 0 . A contradiction. . Sariel (UIUC) CS573 4 Fall 2013 4 / 27

  15. Result . Theorem . A flow f is a minimum cost feasible circulation ⇐ ⇒ each directed cycle of G f has nonnegative cost. . . Proof . . C : a negative cost cycle in G f . 1 . . Circulate more flow on C and reduce price. 2 . . ε > 0 : sufficiently small constant: 3 g = f + ε ∗ χ C is feasible circulation . . cost( g ) = cost( f ) + ∑ e ∈ C κ ( e ) ∗ ε 4 = cost( f ) + ε ∗ ∑ e ∈ C κ ( e ) = cost( f ) + ε ∗ κ ( C ) < cost( f ) , since κ ( C ) < 0 . A contradiction. . Sariel (UIUC) CS573 4 Fall 2013 4 / 27

  16. Result . Theorem . A flow f is a minimum cost feasible circulation ⇐ ⇒ each directed cycle of G f has nonnegative cost. . . Proof . . C : a negative cost cycle in G f . 1 . . Circulate more flow on C and reduce price. 2 . . ε > 0 : sufficiently small constant: 3 g = f + ε ∗ χ C is feasible circulation . . cost( g ) = cost( f ) + ∑ e ∈ C κ ( e ) ∗ ε 4 = cost( f ) + ε ∗ ∑ e ∈ C κ ( e ) = cost( f ) + ε ∗ κ ( C ) < cost( f ) , since κ ( C ) < 0 . A contradiction. . Sariel (UIUC) CS573 4 Fall 2013 4 / 27

  17. Proof of other direction... . Proof of other direction . . Assume all cycles in G f have non-negative cost. 1 . . g any feasible circulation. 2 . . Weak circulation: h = g − f . 3 . . By lemma: all edges used by h are in G f . 4 . . By other lemma: ∃ t ≤ | E ( G f ) | cycles C 1 , . . . , C t in G f , and 5 coefficients λ 1 , . . . , λ t : h ( e ) = ∑ t i =1 λ i χ C i ( e ) . . . (∑ t ) cost( g ) − cost( f ) = cost( h ) = cost i =1 λ i χ C i = 6 ∑ t i =1 λ i cost( χ C i ) = ∑ t i =1 λ i κ ( C i ) ≥ 0 , as κ ( C i ) ≥ 0 , since there are no negative cycles in G f . . . = ⇒ cost( g ) ≥ cost( f ) . = ⇒ f minimum-cost circulation. 7 . Sariel (UIUC) CS573 5 Fall 2013 5 / 27

Recommend


More recommend