local algorithms past present future
play

Local Algorithms: Past, Present, Future Jukka Suomela Helsinki - PowerPoint PPT Presentation

Local Algorithms: Past, Present, Future Jukka Suomela Helsinki Institute for Information Technology HIIT University of Helsinki Wireless Networks and Mobile Computing Carleton University 2627 April 2011 www.hiit.fi/jukka.suomela/tut-2011


  1. Geometric Graphs • Exploit coordinates • each tile defines a constant-size subproblem • solve the subproblem locally within each tile (in parallel for all tiles) 50

  2. Geometric Graphs • Exploit coordinates • each tile defines a constant-size subproblem • solve the subproblem locally within each tile • merge the solutions of the subproblems 51

  3. Geometric Graphs • Graph colouring: • f = 3-colouring of tiles • all edges are short • there is no edge that joins e.g. a blue tile and another blue tile 52

  4. Geometric Graphs • Graph colouring: • f = 3-colouring of tiles • g = k -colouring that is valid inside each tile • can be solved by brute force 53

  5. Geometric Graphs • Graph colouring: • f = 3-colouring of tiles • g = k -colouring that is valid inside each tile • Output: ( f , g ) • Valid 3 k -colouring! 54

  6. Geometric Graphs • Simple local algorithms: • maximal matchings, independent sets, … • approximation algorithms for vertex covers, dominating sets, colourings, … 55

  7. Dealing with Bad News • Three traditional escapes: • Randomised algorithms • Geometric information • “Almost local” algorithms 56

  8. Almost Local Algorithms • We cannot find non-trivial solutions in a cycle in O (1) rounds • But we can do it in O (log* n ) rounds! • log* n = iterated logarithm • 0 ≤ log* n ≤ 7 for all real-world values of n • Good enough? 57

  9. Almost Local Algorithms • Main tool: colour reduction • Cole & Vishkin (1986) • Goldberg, Plotkin & Shannon (1988) • Bit manipulation trick: • From k colours to O (log k ) colours in one step • Initially poly( n ) colours: unique identifiers • Iterate O (log* n ) times until O (1) colours 58

  10. Almost Local Algorithms 1029 13348 13573 9252 5443 3108 7491 15715 3139 9315 Initial colouring 7523 15683 3427 59

  11. Almost Local Algorithms 1029 13348 13573 9252 5443 3108 Key idea: inspect 7491 the binary encodings 15715 of old colours 3139 9315 110001000011 7523 15683 11110101000011 3427 60

  12. Almost Local Algorithms 1029 13348 13573 9252 5443 3108 7491 15715 Bit number 8 differs 3139 9315 110 0 01000011 7523 15683 (8, 1) 10001 11110 1 01000011 3427 61

  13. Almost Local Algorithms 1029 13348 13573 9252 5443 3108 Bit number 8 differs 7491 15715 3139 1110 1 01000011 9315 (8, 0) 10000 110 0 01000011 7523 15683 (8, 1) 10001 11110 1 01000011 3427 62

  14. Almost Local Algorithms 1029 13348 13573 9252 5443 3108 Bit number 11 differs 7491 15715 1 0 10101000011 (11, 1) 10111 3139 1 1 10 1 01000011 9315 (8, 0) 10000 110 0 01000011 7523 15683 (8, 1) 10001 11110 1 01000011 3427 63

  15. Almost Local Algorithms 1029 13348 13573 9252 1 17 25 5443 3108 3 22 23 7491 0 15715 16 17 3139 9315 17 16 A proper colouring! 7523 15683 25 3427 64

  16. Almost Local Algorithms 1 25 17 22 1 17 25 3 0 3 22 23 23 17 0 16 17 16 16 17 16 25 17 Update colours… 25 … 65

  17. Almost Local Algorithms 1 25 17 22 3 0 23 17 16 16 25 17 After one round … 66

  18. Almost Local Algorithms 6 1 9 3 3 0 5 1 0 0 … 1 After two rounds … 67

  19. Almost Local Algorithms 0 2 1 1 3 0 2 1 0 … … 1 After three rounds … 68

  20. Almost Local Algorithms • Graph colouring in O (log* n ) rounds • Paths or cycles, 3-colouring • Generalisations: • Trees, bounded-degree graphs, … • Graphs of maximum degree ∆ : ( ∆ +1)-colouring in O ( ∆ + log* n ) rounds 69

  21. Almost Local Algorithms • Graph colouring in O (log* n ) rounds • Many applications: • Maximal independent set: first try to add nodes of colour 0 (in parallel), then try to add nodes of colour 1 (in parallel), … • Maximal matching • Greedy algorithm for dominating sets 70

  22. Almost Local Algorithms • Graph colouring in O (log* n ) rounds • Many applications • Fast, but not strictly local • And inherently depends on the existence of small, unique, numerical identifiers 71

  23. Past: Summary • Bad news: • Cannot break symmetry in cycles • Three traditional escapes: • Randomised algorithms • Geometric information • “Almost local” algorithms 72

  24. Present ! ! ! ! ! ! ! ! ! ! ! ! ! 73

  25. Dealing with Bad News • You cannot break symmetry in cycles… • Which problems do not require symmetry breaking in cycles? 74

  26. Tractable Problems • Linear programs (LPs) • Many resource-allocation problems can be modelled ! ! as LPs ! ! ! ! • If the input is symmetric, a trivial solution is ! ! an optimal solution! ! ! • Only non-symmetric ! ! ! inputs are challenging … 75

  27. Tractable Problems • Linear programs (LPs) • Approximation scheme for packing and covering LPs ! ! ! ! • Local algorithm ! ! • Kuhn, Moscibroda & ! ! Wattenhofer (2006) ! ! ! ! ! 76

  28. Tractable Problems • Vertex covers • 2-approximation is the best that we can find with centralised polynomial-time algorithms • Nobody knows how to find 1.9999-approximation efficiently • Hence if we could find a 2-approximation with local algorithms , it would be amazing! 77

  29. Tractable Problems • Vertex covers • 2-approximation does not require symmetry breaking • In a regular graph, trivial solution (all nodes) is 2-approximation • Again, only non-symmetric inputs are challenging … 78

  30. Tractable Problems • Vertex covers • 2-approximation of vertex cover in bounded-degree graphs • Local algorithm • Åstrand & Suomela (2010) 79

  31. Tractable Problems • Vertex covers • 2-approximation of vertex cover in bounded-degree graphs • Local algorithm • A bit complicated… • Let’s have a look at a simpler local algorithm: 3-approximation of vertex cover 80

  32. Vertex Cover A simple local algorithm: 3-approximation of minimum vertex cover 81

  33. Vertex Cover Construct a virtual graph : two copies of each node; edges across 82

  34. Vertex Cover The virtual graph is 2 -coloured : all edges are from white to black 83

  35. Vertex Cover The virtual graph is 2-coloured – therefore we can find a maximal matching ! 84

  36. Vertex Cover White nodes send proposals to their black neighbours 85

  37. Vertex Cover Black nodes accept one of the proposals 86

  38. Vertex Cover White nodes send proposals to another black neighbour if they were rejected 87

  39. Vertex Cover Again, black nodes accept one proposal – unless they were already matched 88

  40. Vertex Cover Continue until all white nodes are matched – or they are rejected by all black neighbours 89

  41. Vertex Cover End result: a maximal matching in the virtual graph 90

  42. Vertex Cover Take all original nodes that were matched – 3-approximation of minimum vertex cover ! 91

  43. Present: Summary • You cannot break symmetry in cycles… • But we can study problems that do not require symmetry breaking! • Linear programs : local approximation schemes • Vertex covers : local 2-approximation algorithm • Edge dominating sets : local approximation algorithm • … 92

  44. Future 93

  45. Dealing with Bad News • Let’s have a fresh look at the lower bounds! • Exactly what was proved? 94

  46. Lower Bounds • Only trivial solutions in cycles • Assumption : constant-size output 12 30 5 19 • Each node outputs 72 34 constant number of bits 15 4 • Innocuous? 77 18 19 68 2 95

  47. Output Size • Vertex cover, independent set, dominating set, cut: 1 bit per node • Matching, edge dominating set, edge cover: 1 bit per edge • In a cycle, this is O (1) bits per node 96

  48. Output Size • Graph colouring: • O (1) colours should be enough in a cycle • Hence O (1) bits per node is enough to encode the solution • Linear programs: • For a near-optimal solution, we can use finite-precision rational numbers 97

  49. Output Size • Natural problems seem to have constant-size output • Hence the negative results apply • Unique identifiers do not help in cycles • We can only produce trivial solutions in cycles • We can only solve problems that do not require symmetry-breaking 98

  50. Output Size • Natural problems seem to have constant-size output • Hence the negative results apply • Did we miss anything? 99

  51. Scheduling Problems • Neighbours not working simultaneously, everyone must get 3 units of work done time: 0 1 2 3 4 5 6 7 node 1: node 2: node 3: node 4: node 5: node 6: 100

Recommend


More recommend