distributed fractional packing and maximum weighted b
play

Distributed Fractional Packing and Maximum Weighted b-Matching via - PowerPoint PPT Presentation

Distributed Fractional Packing and Maximum Weighted b-Matching via Tail-Recursive Duality Christos Koufogiannakis and Neal E. Young University of California, Riverside Fractional Packing m max w x j j 1 j m


  1. Distributed Fractional Packing and Maximum Weighted b-Matching via Tail-Recursive Duality Christos Koufogiannakis and Neal E. Young University of California, Riverside

  2. Fractional Packing m  max w x j j  1 j m       subject to: 1 A x b i n ij j i  1 j  m x  Let δ be the maximum number of constraints in which a variable appears.

  3. Maximum Weighted b-Matching  max w x Hypergraph with e e  e E edge weights w,       subject to: x b u V vertex capacities b. e u  ( ) e E u  | | E x  Let δ be the maximum number of constraints in which a variable appears, so δ is the hyperedge degree ( δ = 2 for graphs).

  4. Distributed Computation • The problem instance is represented by a graph where edges are packing variables and nodes are packing constraints. • Computation takes place in rounds. • In each round: • Each node exchanges O(1) messages with immediate neighbors, • then does some computation. • goal: Finish in a poly-log number of rounds.

  5. Related Work Problem Approx. Running time Where ratio 2+ ε O(log( ε -1 ) log n ) Lotker et al. 2008 O( ε -4 log 2 n ) 1+ ε Lotker et al. 2008 Max Weighted O( ε -2 + ε -1 log( ε -1 n ) log n ) 1+ ε Matching on Nieberg 2008 Graphs O(log 2 n ) ( ε =1) 2 2 O(log n ) This work

  6. Related Work Problem Approx. Running time Where ratio 2+ ε O(log( ε -1 ) log n ) Lotker et al. 2008 O( ε -4 log 2 n ) 1+ ε Lotker et al. 2008 Max Weighted O( ε -2 + ε -1 log( ε -1 n ) log n ) 1+ ε Matching on Nieberg 2008 Graphs O(log 2 n ) ( ε =1) 2 2 O(log n ) This work O( δ ) (> δ ) Max Weighted Kuhn et al. 2006 O(log m ) Matching on O(log 2 m ) δ This work Hypergraphs

  7. Related Work Problem Approx. Running time Where ratio 2+ ε O(log( ε -1 ) log n ) Lotker et al. 2008 O( ε -4 log 2 n ) 1+ ε Lotker et al. 2008 Max Weighted O( ε -2 + ε -1 log( ε -1 n ) log n ) 1+ ε Matching on Nieberg 2008 Graphs O(log 2 n ) ( ε =1) 2 2 O(log n ) This work O( δ ) (> δ ) Max Weighted Kuhn et al. 2006 O(log m ) Matching on O(log 2 m ) δ This work Hypergraphs O(1) (>2) Kuhn et al. 2006 O(log m ) Fractional Packing δ = 2 2 O(log m ) This work

  8. Related Work Problem Approx. Running time Where ratio 2+ ε O(log( ε -1 ) log n ) Lotker et al. 2008 O( ε -4 log 2 n ) 1+ ε Lotker et al. 2008 Max Weighted O( ε -2 + ε -1 log( ε -1 n ) log n ) 1+ ε Matching on Nieberg 2008 Graphs O(log 2 n ) ( ε =1) 2 2 O(log n ) This work O( δ ) (> δ ) Max Weighted Kuhn et al. 2006 O(log m ) Matching on O(log 2 m ) δ This work Hypergraphs O(1) (>2) Kuhn et al. 2006 O(log m ) Fractional Packing δ = 2 2 O(log m ) This work O(1) >12 O(log m ) Kuhn et al. 2006 Fractional Packing general δ O(log 2 m ) δ This work

  9. Primal-Dual δ -approximation algorithm Packing Covering n m   min max b y w x i i j j   1 i 1 j subject to: subject to: n    m          1 A y w j m 1 A x b i n ij i j ij j i  1 i  1 j  n y  m x   ‣ Compute a solution for the dual Covering Problem. ‣ Use the dual solution to compute a solution for the primal Packing Problem.

  10. δ -approximation for Covering  1. Let 0. y n    2. While such that do: j A y w ij i j  1 i     n      3. Let min /   w A y b A j ij i i i ij    1 i cost to reduce slack by 1 using the cheapest variable slack OPT cost to satisfy the constraint given the current solution y   4. Raise each (with 0) by . y A b i ij i 5. Return . y n  min b y i i  1 i subject to: n       1 A y w j m ij i j  1 i  n y 

  11. Primal-Dual Attempt  1. Let , 0. x y n    2. While such that do: j A y w ij i j  1 i 3. Do a "step" to satisfy this covering constraint. 4. Raise maximally without violating any packing constraint. x j 5. Return , . x y n  m  min b y max w x i i j j   1 i 1 j subject to: subject to: n m             1 1 A y w j m A x b i n ij i j ij j i   1 1 j i   n m y x  

  12. Primal-Dual Attempt  1. Let , 0. x y n    2. While such that do: j A y w ij i j  1 i 3. Do a "step" to satisfy this covering constraint. 4. Raise maximally without violating any packing constraint. x j 5. Return , . x y n  m  min b y max w x i i j j   1 i 1 j subject to: subject to: n m             1 1 A y w j m A x b i n ij i j ij j i   1 1 j i   n m y x  

  13. Note δ = 2

  14. Note δ = 2

  15. Note δ = 2

  16. Note δ = 2

  17. Note δ = 2

  18. Note δ = 2

  19. Note δ = 2 Not 2-approximate

  20. Primal-Dual Algorithm  1. Let , 0. x y n    2. While such that do: j A y w ij i j  1 i 3. Do a "step" to satisfy this covering constraint.. 4. For each for which a step was done (line 2) in reverse order do: j 5. Raise maximally without violating any packing constraint. x j 6. Return , . x y n  m  min b y max w x i i j j   1 i 1 j subject to: subject to: n m             1 1 A y w j m A x b i n ij i j ij j i   1 1 j i   n m y x  

  21. Note δ = 2

  22. Note δ = 2

  23. Note δ = 2

  24. Note δ = 2

  25. Note δ = 2

  26. Note δ = 2

  27. Note δ = 2

  28. Note δ = 2

  29. Note δ = 2

  30. Note δ = 2

  31. Note δ = 2

  32. Note δ = 2

  33. Recap of the algorithm • Perform steps to satisfy covering constraints record the partial order of the covering constraints for which the algorithm performed a step. • Consider the corresponding packing variables in a valid reverse order , and raising them maximally.

  34. Partial order The order in which steps to satisfy covering constraints does not matter for covering constraints that do no share a variable. Since the order is partial, there might be more than one valid reverse orders. Any one of them works!

  35. Max Weighted b-matching   • Raise x j maximally m      min x b A x j i i ij j    1 j • If and then A    0 /1 b x   ij i j  max w x e e  e E       subject to: x b u V e u  ( ) e E u  | | E x 

  36. Distributed Computation • Compute solution for the covering problem [KY 2009]. • Start computing solution for the packing (matching) problem as soon as possible. (an edge can compute its packing variable as long as all of its adjacent edges are covered and they are not waiting for their adjacent edges)

  37. • Distributed covering: 6 5 2 3 1 6 7 3 1 2 3 9 1 3 17 5 7 10 4 4 4 20 13 5 2 10 2 11 1 1

  38. • Distributed covering: Create stars, where the roots have weight greater 1. than or equal to the weight of leaves. 6 6 7 2 3 9 1 3 10 4 4 5 5 2 11 1 1

  39. • Distributed covering: Create stars, where the roots have weight greater than 1. or equal to the weight of leaves. Roots perform steps to cover edges to leafs that 2. selected them. y  3 round 1, step 1 6 5 y  6 y  10 6 7 1 4 2 3 9 1 3 10 4 y  11 5 4 7 5 5 y  4 2 2 y  11 11 6 1 1

  40. • Distributed covering: Create stars, where the roots have weight greater than 1. or equal to the weight of leaves. Roots perform steps to cover edges to leafs that 2. selected them. y  7 round 1, step 2 6 5 y  6 y  10 6 7 1 4 y  0 8 2 3 9 1 3  10 6 y 4 10 y  11 5 4 7 5 5 y  4 2 2 y  11 11 y  0 6 9 1 1

  41. • Distributed covering: Create stars, where the roots have weight greater than 1. or equal to the weight of leaves. Roots perform steps to cover edges to leafs that 2. selected them. y  7 round 1, step 3 6 5 y  6 y  10 6 7 1 4 y  0 8 2 3 9 1 3 y  0 11  10 6 y 4 10 y  11 5 4 7 5 5 y  4 2 2 y  11 11 y  0 6 9 1 1

  42. • Distributed packing: For each edge record “when” a covering step was 1. performed. 6 round 1, step 1 no step round 1, step 2 2 3 1 3 round 1, step 1 no step 4 5 5 no step round 1, step 1 1 1

  43. • Distributed packing: For each edge record “when” a covering step was 1. performed. If an edge is covered but no step was performed for 2. it, set its packing variable to 0. 6 round 1, step 1 no step x  round 1, step 2 0 2 2 3 1 3 round 1, step 1 no step x  0 4 1 5 5 x  0 no step round 1, step 1 3 1 1

Recommend


More recommend