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 www.hiit.fi / jukka.suomela / Hebrew University of Jerusalem, 23 November 2011 Background 2 Setting Graphs


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

  2. 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 50

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

  4. 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! 52

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

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

  7. 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? 55

  8. 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 56

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

  10. 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 58

  11. 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 59

  12. 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 60

  13. 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 61

  14. 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 62

  15. 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 … 63

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

  17. Almost Local Algorithms 6 1 9 3 3 0 5 1 0 0 … 1 After two rounds … 65

  18. Almost Local Algorithms 0 2 1 1 3 0 2 1 0 … … 1 After three rounds … 66

  19. 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 67

  20. 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 68

  21. 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 69

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

  23. Present ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ 71

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

  25. 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 … 73

  26. Tractable Problems • Linear programs (LPs) • Approximation scheme for packing and covering LPs ½ ½ ½ ½ • Local algorithm ½ ½ • Kuhn, Moscibroda & ½ ½ Wattenhofer (2006) ½ ½ ½ ½ ½ 74

  27. 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! 75

  28. 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 … 76

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

  30. 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 78

  31. Vertex Cover A simple local algorithm: 3-approximation of minimum vertex cover 79

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

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

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

  35. Vertex Cover White nodes send proposals to their black neighbours 83

  36. Vertex Cover Black nodes accept one of the proposals 84

  37. Vertex Cover White nodes send proposals to another black neighbour if they were rejected 85

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

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

  40. Vertex Cover End result: a maximal matching in the virtual graph 88

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

  42. 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 • … 90

  43. Future 91

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

  45. 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 93

  46. 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 94

  47. 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 95

  48. 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 96

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

  50. Scheduling Problems • Local approximation algorithms • Scheduling problems: fractional graph colouring, fractional domatic partition, … • First example of a local algorithm that actually requires unique numerical identifiers • Hasemann, Hirvonen, Rybicki & Suomela (work in progress) 98

  51. More New Directions • Deterministic local algorithm • cf. deterministic Turing machine – class P • Randomised local algorithm • cf. probabilistic Turing machine – class BPP, etc. • Nondeterministic local algorithm • cf. nondeterministic Turing machine – class NP 99

  52. Decision Problems • Back to very basics: decision problems • Is this graph bipartite? Acyclic? Hamiltonian? Eulerian? Connected? 3-colourable? Symmetric? • Decision problems form the foundation of classical complexity theory… 100

Recommend


More recommend