Jukka Suomela
Helsinki Institute for Information Technology HIIT University of Helsinki www.hiit.fi/jukka.suomela/ Hebrew University of Jerusalem, 23 November 2011
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
Jukka Suomela
Helsinki Institute for Information Technology HIIT University of Helsinki www.hiit.fi/jukka.suomela/ Hebrew University of Jerusalem, 23 November 2011
2
3
graph problems
4
graph problems
matchings
5
graph problems
matchings, vertex covers
6
graph problems
matchings, vertex covers, dominating sets
7
graph problems
matchings, vertex covers, dominating sets, edge dominating sets
8
graph problems
matchings, vertex covers, dominating sets, edge dominating sets, graph colourings
9
graph problems
matchings, vertex covers, dominating sets, edge dominating sets, graph colourings, …
10
nodes at distance r
independent of number of nodes
number of edges
11
each node operates based on its local neighbourhood only
12
same output
13
distributed algorithm
communication rounds
14
15
16
17
18
unique node identifiers…
19
19 30 12 5 72 4 18 34 2 68 77 15 19
unique node identifiers…
20
19 30 12 5 72 4 18 34 2 68 77 15 19
unique node identifiers…
local algorithm you use, there is a “bad input”
21
19 30 12 5 72 4 18 34 2 68 77 15 19
produce the same output
not possible
independent sets, matchings, vertex covers, dominating sets, …
22
19 30 12 5 72 4 18 34 2 68 77 15 19
identifiers to local outputs
23
19 30 12 5 72 4 18 34 2 68 77 15 19
a < b < c < d < e
C(X) = A(a, b, c, d, e)
24
? e d c b ? ? ? ? ? ? a ?
a < b < c < d < e
C(X) = A(a, b, c, d, e)
25
? e d c b ? ? ? ? ? ? a ?
colouring C(X) of 5-subsets
there exists a large monochromatic subset M ⊆ I
the same colour C(X)
26
? e d c b ? ? ? ? ? ? a ?
is a monochromatic subset, a < b < c < d < e < f
C({b, c, d, e, f})
27
f e d c b ? ? ? ? ? ? a ?
nodes with identifiers c and d are adjacent and they produce the same output
A cannot produce a valid graph colouring!
28
f e d c b ? ? ? ? ? ? a ?
for any value of r
the argument and show that almost all nodes will produce the same output
29
f e d c b ? ? ? ? ? ? a ?
we can choose unique identifiers in an n-cycle so that A outputs an independent set with only εn nodes
30
we can choose unique identifiers in an n-cycle so that A outputs a vertex cover with at least (1 − ε)n nodes
31
32
33
34
a good solution
with high probability or in expectation
35
uniformly at random X(v) = ⚀, ⚁, ⚂, ⚃, ⚄, ⚅
36
⚃ ⚀ ⚁ ⚅ ⚂ ⚀ ⚁ ⚂ ⚄ ⚄ ⚂ ⚃ ⚂
uniformly at random X(v) = ⚀, ⚁, ⚂, ⚃, ⚄, ⚅
(strict) local maximum
37
⚃ ⚀ ⚁ ⚅ ⚂ ⚀ ⚁ ⚂ ⚄ ⚄ ⚂ ⚃ ⚂
uniformly at random X(v) = ⚀, ⚁, ⚂, ⚃, ⚄, ⚅
(strict) local maximum
I is an independent set
38
⚃ ⚀ ⚁ ⚅ ⚂ ⚀ ⚁ ⚂ ⚄ ⚄ ⚂ ⚃ ⚂
uniformly at random X(v) = ⚀, ⚁, ⚂, ⚃, ⚄, ⚅
(strict) local maximum
is reasonably large
39
⚃ ⚀ ⚁ ⚅ ⚂ ⚀ ⚁ ⚂ ⚄ ⚄ ⚂ ⚃ ⚂
algorithm can find a large independent set
(in expectation)
maximum independent set or maximal independent set
40
⚃ ⚀ ⚁ ⚅ ⚂ ⚀ ⚁ ⚂ ⚄ ⚄ ⚂ ⚃ ⚂
41
points in the plane
embedding
42
points in the plane
embedding
43
points in the plane
embedding
edges not too long…
44
no!
points in the plane
embedding
edges not too long, nodes not in too dense
45
no!
points in the plane
embedding
46
divide-and-conquer
in rectangular tiles
47
a constant-size subproblem
locally within each tile (in parallel for all tiles)
48
a constant-size subproblem
locally within each tile
49
that joins e.g. a blue tile and another blue tile
50
is valid inside each tile
by brute force
51
is valid inside each tile
52
algorithms:
independent sets, …
algorithms for vertex covers, dominating sets, colourings, …
53
54
in a cycle in O(1) rounds
55
56
57
13573 1029 13348 9252 3108 7491 3139 5443 3427 15683 9315 15715 7523
Initial colouring
58
13573 1029 13348 9252 3108 7491 3139 5443 3427 15683 9315 15715 7523
110001000011 11110101000011 Key idea: inspect the binary encodings
59
13573 1029 13348 9252 3108 7491 3139 5443 3427 15683 9315 15715 7523
110001000011 11110101000011 Bit number 8 differs (8, 1) 10001
60
13573 1029 13348 9252 3108 7491 3139 5443 3427 15683 9315 15715 7523
1110101000011 110001000011 11110101000011 Bit number 8 differs (8, 0) (8, 1) 10000 10001
61
13573 1029 13348 9252 3108 7491 3139 5443 3427 15683 9315 15715 7523
1110101000011 110001000011 1010101000011 11110101000011 (11, 1) Bit number 11 differs (8, 0) (8, 1) 10111 10000 10001
62
13573 1029 13348 9252 3108 7491 3139 5443 3427 15683 9315 15715 7523
17 1 25 22 23 16 3 17 16 17 25
A proper colouring!
63
17 1 25 22 23 16 3 … 17 16 17 25 17 1 25 22 23 16 3 17 16 17 25
Update colours…
64
17 1 25 22 23 16 3 … 17 16 17 25
After one round
65
9 6 1 3 5 3 … 1 1 …
After two rounds
66
1 2 1 2 3 … 1 … 1 …
After three rounds
67
(∆+1)-colouring in O(∆ + log* n) rounds
68
first try to add nodes of colour 0 (in parallel), then try to add nodes of colour 1 (in parallel), …
69
small, unique, numerical identifiers
70
71
½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½
symmetry breaking in cycles?
72
problems can be modelled as LPs
a trivial solution is an optimal solution!
inputs are challenging…
73
½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½
packing and covering LPs
Wattenhofer (2006)
74
½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½ ½
with centralised polynomial-time algorithms
1.9999-approximation efficiently
with local algorithms, it would be amazing!
75
require symmetry breaking
solution (all nodes) is 2-approximation
inputs are challenging…
76
in bounded-degree graphs
77
in bounded-degree graphs
a simpler local algorithm: 3-approximation of vertex cover
78
A simple local algorithm: 3-approximation of minimum vertex cover
79
Construct a virtual graph: two copies of each node; edges across
80
The virtual graph is 2-coloured: all edges are from white to black
81
The virtual graph is 2-coloured – therefore we can find a maximal matching!
82
White nodes send proposals to their black neighbours
83
Black nodes accept one of the proposals
84
White nodes send proposals to another black neighbour if they were rejected
85
Again, black nodes accept one proposal – unless they were already matched
86
Continue until all white nodes are matched –
87
End result: a maximal matching in the virtual graph
88
Take all original nodes that were matched – 3-approximation of minimum vertex cover!
89
that do not require symmetry breaking!
90
91
92
constant-size output
constant number of bits
93
19 30 12 5 72 4 18 34 2 68 77 15 19
dominating set, cut: 1 bit per node
edge cover: 1 bit per edge
94
encode the solution
finite-precision rational numbers
95
constant-size output
do not require symmetry-breaking
96
constant-size output
97
fractional graph colouring, fractional domatic partition, …
actually requires unique numerical identifiers
(work in progress)
98
99
Eulerian? Connected? 3-colourable? Symmetric?
100
with deterministic local algorithms
101
that can be verified with a local algorithm
that can be verified in P
102
bipartite: just give a 2-colouring, 1 bit per node
103
bipartite: just give a 2-colouring, 1 bit per node
104
105
a lot of progress!
106