fast distributed approximation algorithms for vertex
play

Fast distributed approximation algorithms for vertex cover and set - PowerPoint PPT Presentation

Fast distributed approximation algorithms for vertex cover and set cover in anonymous networks Jukka Suomela Helsinki Institute for Information Technology HIIT University of Helsinki, Finland Braunschweig, 29 November 2010 3 1378 Joint


  1. Fast distributed approximation algorithms for vertex cover and set cover in anonymous networks Jukka Suomela Helsinki Institute for Information Technology HIIT University of Helsinki, Finland Braunschweig, 29 November 2010 3 1378 Joint work with Matti Åstrand 2 2789

  2. Vertex cover problem • Vertex cover C for a graph G : • Subset C of nodes that “covers” all edges of the graph • Each edge has at least one endpoint in C • Can we find a small vertex cover? 2

  3. Vertex cover problem • Classical NP-hard optimisation problem • Simple 2-approximation algorithm: endpoints of a maximal matching • No polynomial-time algorithm with approximation factor 1.999 known 3

  4. Research question • Distributed approximation algorithms for vertex cover • Find a small vertex cover in any communication network • Best possible approximation ratio • As fast as possible: running time independent of n • Weakest possible models: no randomness, no unique node identifiers • Let’s first define the models... 4

  5. Distributed algorithms • Communication graph G G • Node = computer • Edge = communication Edge = link • Computers exchange messages and finally decide whether they are in vertex cover C • “Local output”, 0 or 1 5

  6. Distributed algorithms • All nodes are identical, run the same algorithm G • We can choose the algorithm • An adversary chooses the structure of G • Our algorithm must produce a valid vertex cover in any graph G 6

  7. Model 1: Unique identifiers • The “standard model” • Node identifiers 1 are a subset of 1, 2, ..., poly( n ) 6 2 • Subset chosen 3 by adversary 7

  8. Model 2: Port-numbering model • No unique identifiers 1 1 2 • A node of degree d can 3 1 refer to its neighbours 2 2 by integers 1, 2, ..., d 1 • Port-numbering chosen 1 by adversary 2 2 1 1 3 1 2 8

  9. Model 3: Broadcast model • No identifiers, Send “A” no port numbers Send “A” • A node has to send the same message to each neighbour • A node does not know Receives: which message was 2 × “A” Send “B” received from which 1 × “B” neighbour ( multiset ) 9

  10. Deterministic distributed algorithms for vertex cover • Guaranteed approximation ratios? • E.g., 2-approximation of minimum vertex cover = at most 2 times as large as the smallest vertex cover • Fast? • Time = number of communication rounds • n = number of nodes • Δ = maximum degree • In weak models of distributed computing? 10

  11. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 1 f ( Δ ) + polylog( n ) Trivial f ( Δ ) + O (log* n ) algorithm f ( Δ ) Broadca Broadcast Po Port Unique Unique model model numbering number identif identifiers 11

  12. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 1 f ( Δ ) + polylog( n ) 2 Maximal matching f ( Δ ) + O (log* n ) 2 (Panconesi & Rizzi 2001) f ( Δ ) Broadcast Broadca Po Port Unique Unique model model numbering number identif identifiers 12

  13. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 1 Near-maximal f ( Δ ) + polylog( n ) 2 2 edge packing f ( Δ ) + O (log* n ) 2 (Khuller et al. 1994) f ( Δ ) Broadcast Broadca Po Port Unique Unique model model number numbering identif identifiers 13

  14. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 1 Deterministic f ( Δ ) + polylog( n ) 2 2 LP rounding f ( Δ ) + O (log* n ) 2 + ε 2 (Kuhn et al. 2006) f ( Δ ) 2 + ε 2 + ε Broadca Broadcast Po Port Unique Unique model model number numbering identif identifiers 14

  15. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 1 f ( Δ ) + polylog( n ) 2 2 Czygrinow et al. 2008 f ( Δ ) + O (log* n ) 2 + ε 2 Lenzen & Wattenhofer 2008 f ( Δ ) 2 2 2 + ε 2 2 + ε Broadca Broadcast Port Po Unique Unique model model numbering number identif identifiers 15

  16. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 2 2 1 f ( Δ ) + polylog( n ) 2 2 2 2 Trivial f ( Δ ) + O (log* n ) 2 2 2 + ε 2 (cycles) f ( Δ ) 2 2 2 + ε 2 2 + ε Broadcast Broadca Po Port Unique Unique model model numbering number identif identifiers 16

  17. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 2 2 1 f ( Δ ) + polylog( n ) 2 2 2 2 f ( Δ ) + O (log* n ) 2 2 2 + ε 2 f ( Δ ) 2 2 2 + ε 2 2 + ε Broadcast Broadca Po Port Unique Unique model model number numbering identif identifiers 17

  18. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 ? 2 2 1 Anything Could we here? f ( Δ ) + polylog( n ) 2 ? 2 2 2 have 2? f ( Δ ) + O (log* n ) 2 ? 2 2 + ε 2 f ( Δ ) 2 ? 2 2 + ε 2 2 + ε Broadca Broadcast Po Port Unique Unique model model number numbering identif identifiers 18

  19. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 ? 2 2 1 DISC f ( Δ ) + polylog( n ) 2 ? 2 2 2 2009 f ( Δ ) + O (log* n ) 2 ? 2 2 2 f ( Δ ) 2 ? 2 2 2 2 Broadca Broadcast Port Po Unique Unique model model number numbering identif identifiers 19

  20. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 2 2 2 1 Latest + faster and results f ( Δ ) + polylog( n ) 2 2 2 2 2 more general solution here f ( Δ ) + O (log* n ) 2 2 2 2 2 f ( Δ ) 2 2 2 2 2 2 Broadca Broadcast Port Po Unique Unique model model number numbering identif identifiers 20

  21. Deterministic distributed algorithms for vertex cover: approximation ratios Time lower upper lower upper lower upper O ( n ) 2 2 2 2 1 Let’s study f ( Δ ) + polylog( n ) 2 2 2 2 2 this case first... f ( Δ ) + O (log* n ) 2 2 2 2 2 f ( Δ ) 2 2 2 2 2 2 Broadcast Broadca Po Port Unique Unique model model number numbering identif identifiers 21

  22. Vertex cover in the port-numbering model • Convenient to study a more general problem: minimum-weight vertex cover • More general problems are sometimes 1 5 easier to solve? 9 6 6 9 Notation: 6 w ( v ) = weight of v 3 22

  23. Edge packings and vertex covers • Edge packing : weight y ( e ) ≥ 0 for each edge e • Packing constraint: y [ v ] ≤ w ( v ) for each node v , where y [ v ] = total weight of edges incident to v 1 5 0 4 0 9 6 6 6 3 0 edge packing 9 ≈ fractional 0 0 2 matching (LP relaxation) 6 3 23

  24. Edge packings and vertex covers • Node v is saturated if y [ v ] = w ( v ) • Total weight of edges incident to v is equal to w ( v ), i.e., the packing constraint holds with equality 1 5 0 4 0 9 6 6 6 3 0 9 0 0 2 y [ v ] = w ( v ) y [ v ] < w ( v ) 6 3 24

  25. Edge packings and vertex covers • Edge e is saturated if at least one endpoint of e is saturated • Equivalently: edge weight y ( e ) can’t be increased 1 5 0 4 0 9 6 6 6 3 0 9 2 + ε would violate 0 0 2 a packing constraint 6 3 25

  26. Edge packings and vertex covers • Maximal edge packing : all edges saturated ⇐ ⇒ none of the edge weights y ( e ) can be increased ⇐ ⇒ saturated nodes form a vertex cover 1 5 0 4 0 9 6 6 6 3 0 9 0 0 2 6 3 26

  27. Edge packings and vertex covers • Maximal edge packing : all edges saturated ⇐ ⇒ saturated nodes form a vertex cover • ... and saturated nodes are 2-approximation of minimum-weight vertex cover (Bar-Yehuda & Even 1981) • How to find a maximal edge packing...? • Phase I: “ greedy but safe ”, cf. Khuller et al. (1994), Papadimitriou & Yannakakis (1993) • Phase II: if phase I fails to saturate an edge e = { u , v }, we can break symmetry between u and v ; exploit it! 27

  28. Finding a maximal edge packing: phase I • y [ v ] = total weight of edges incident to node v • Residual capacity of node v : r ( v ) = w ( v ) − y [ v ] • Saturated node: 1 1 1 5 r ( v ) = 0 0 4 0 0 0 0 9 6 6 6 3 0 r ( v ): 6 w ( v ): 9 2 0 0 6 3 4 3 28

  29. Finding a maximal edge packing: phase I Start with a trivial edge packing y ( e ) = 0 1 5 1 5 0 0 0 9 6 6 9 6 6 0 0 0 r ( v ): 9 w ( v ): 9 0 0 0 6 3 6 3 29

  30. Finding a maximal edge packing: phase I Each node v offers r ( v )/deg( v ) units to 1 5/2 1 5 each incident edge 1 5 3/2 3/2 6 0 0 0 9 6 6 9 6 6 offer: 9 0 0 0 r ( v ): 9 w ( v ): 9 0 0 0 6 3 6 3 6 3/2 30

  31. Finding a maximal edge packing: phase I Each edge accepts the smallest of the 1 5/2 1 5 2 offers it received 1 5 3/2 3/2 6 9 6 6 1 3/2 3/2 9 6 6 9 3/2 3/2 9 3/2 Increase y ( e ) 9 3/2 3/2 3/2 by this amount • Safe, can’t violate 6 3 6 3 packing constraints 6 3/2 31

Recommend


More recommend