Geometric Graphs • Exploit coordinates • each tile defines a constant-size subproblem • solve the subproblem locally within each tile (in parallel for all tiles) 50
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
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
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
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
Geometric Graphs • Simple local algorithms: • maximal matchings, independent sets, … • approximation algorithms for vertex covers, dominating sets, colourings, … 55
Dealing with Bad News • Three traditional escapes: • Randomised algorithms • Geometric information • “Almost local” algorithms 56
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
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
Almost Local Algorithms 1029 13348 13573 9252 5443 3108 7491 15715 3139 9315 Initial colouring 7523 15683 3427 59
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
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
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
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
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
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
Almost Local Algorithms 1 25 17 22 3 0 23 17 16 16 25 17 After one round … 66
Almost Local Algorithms 6 1 9 3 3 0 5 1 0 0 … 1 After two rounds … 67
Almost Local Algorithms 0 2 1 1 3 0 2 1 0 … … 1 After three rounds … 68
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
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
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
Past: Summary • Bad news: • Cannot break symmetry in cycles • Three traditional escapes: • Randomised algorithms • Geometric information • “Almost local” algorithms 72
Present ! ! ! ! ! ! ! ! ! ! ! ! ! 73
Dealing with Bad News • You cannot break symmetry in cycles… • Which problems do not require symmetry breaking in cycles? 74
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
Tractable Problems • Linear programs (LPs) • Approximation scheme for packing and covering LPs ! ! ! ! • Local algorithm ! ! • Kuhn, Moscibroda & ! ! Wattenhofer (2006) ! ! ! ! ! 76
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
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
Tractable Problems • Vertex covers • 2-approximation of vertex cover in bounded-degree graphs • Local algorithm • Åstrand & Suomela (2010) 79
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
Vertex Cover A simple local algorithm: 3-approximation of minimum vertex cover 81
Vertex Cover Construct a virtual graph : two copies of each node; edges across 82
Vertex Cover The virtual graph is 2 -coloured : all edges are from white to black 83
Vertex Cover The virtual graph is 2-coloured – therefore we can find a maximal matching ! 84
Vertex Cover White nodes send proposals to their black neighbours 85
Vertex Cover Black nodes accept one of the proposals 86
Vertex Cover White nodes send proposals to another black neighbour if they were rejected 87
Vertex Cover Again, black nodes accept one proposal – unless they were already matched 88
Vertex Cover Continue until all white nodes are matched – or they are rejected by all black neighbours 89
Vertex Cover End result: a maximal matching in the virtual graph 90
Vertex Cover Take all original nodes that were matched – 3-approximation of minimum vertex cover ! 91
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
Future 93
Dealing with Bad News • Let’s have a fresh look at the lower bounds! • Exactly what was proved? 94
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
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
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
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
Output Size • Natural problems seem to have constant-size output • Hence the negative results apply • Did we miss anything? 99
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