Local Algorithms: Past, Present, Future

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

Transcript of Local Algorithms: Past, Present, Future

Page 1: Local Algorithms: Past, Present, Future

Jukka SuomelaHelsinki Institute for Information Technology HIIT

University of Helsinki

Wireless Networks and Mobile ComputingCarleton University

26–27 April 2011

www.hiit.fi/jukka.suomela/tut-2011

Local Algorithms:Past, Present, Future

Page 2: Local Algorithms: Past, Present, Future

About This Tutorial

• Two parts:• Part A, Tuesday 11:00–12:30

• Part B, Wednesday 11:00–12:30

• www.iki.fi/suo/tut• Slides, additional material, further reading

2

Page 3: Local Algorithms: Past, Present, Future

Background

3

Page 4: Local Algorithms: Past, Present, Future

Setting

• Graphs

4

Page 5: Local Algorithms: Past, Present, Future

Setting

• Graphs

• Algorithms forgraph problems

• Independent sets

5

Page 6: Local Algorithms: Past, Present, Future

Setting

• Graphs

• Algorithms forgraph problems

• Independent sets,matchings

6

Page 7: Local Algorithms: Past, Present, Future

Setting

• Graphs

• Algorithms forgraph problems

• Independent sets,matchings,vertex covers

7

Page 8: Local Algorithms: Past, Present, Future

Setting

• Graphs

• Algorithms forgraph problems

• Independent sets,matchings,vertex covers,dominating sets

8

Page 9: Local Algorithms: Past, Present, Future

Setting

• Graphs

• Algorithms forgraph problems

• Independent sets,matchings,vertex covers,dominating sets,edge dominating sets

9

Page 10: Local Algorithms: Past, Present, Future

Setting

• Graphs

• Algorithms forgraph problems

• Independent sets,matchings,vertex covers,dominating sets,edge dominating sets,graph colourings

10

Page 11: Local Algorithms: Past, Present, Future

Setting

• Graphs

• Algorithms forgraph problems

• Independent sets,matchings,vertex covers,dominating sets,edge dominating sets,graph colourings, …

11

Page 12: Local Algorithms: Past, Present, Future

Local Algorithms

• Local neighbourhood:nodes at distance r

• Here r = O(1),independent ofnumber of nodes

• Shortest-path distance,number of edges

12

Page 13: Local Algorithms: Past, Present, Future

Local Algorithms

• Local algorithm:each node operatesbased on its localneighbourhood only

• Output is a functionof local neighbourhood

13

Page 14: Local Algorithms: Past, Present, Future

Local Algorithms

• Same neighbourhood,same output

14

Page 15: Local Algorithms: Past, Present, Future

Local Algorithms

• Equivalently:• Constant-time

distributed algorithm

• Time = numberof synchronouscommunicationrounds

15

Page 16: Local Algorithms: Past, Present, Future

Advantages

• Fast and scalable distributed algorithm• By definition…

• Fault-tolerant and robust• Changes in input (or network structure):

only local changes in output

• We can quickly recover from any failures

• But do these exist?

16

Page 17: Local Algorithms: Past, Present, Future

Past

17

Page 18: Local Algorithms: Past, Present, Future

Bad News

• Long history of very strong negative results• Linial (1992)

• Naor & Stockmeyer (1995)

• Czygrinow, Hańćkowiak & Wawrzyniak (2008)

• Lenzen & Wattenhofer (2008)

• using, e.g., results that date back to Ramsey (1930)

18

Page 19: Local Algorithms: Past, Present, Future

Bad News

• Even if your graph is a cycle…

19

Page 20: Local Algorithms: Past, Present, Future

Bad News

• Even if your graph is a cycle…

• And even if you haveunique node identifiers…

20

193012

5

72

4

18

34

2 68

77

15

19

Page 21: Local Algorithms: Past, Present, Future

Bad News

• Even if your graph is a cycle…

• And even if you haveunique node identifiers…

• And orientation…

21

193012

5

72

4

18

34

2 68

77

15

19

Page 22: Local Algorithms: Past, Present, Future

Bad News

• Even if your graph is a cycle…

• And even if you haveunique node identifiers…

• And orientation…

• Then no matter whichlocal algorithm you use,there is a “bad input”

22

193012

5

72

4

18

34

2 68

77

15

19

Page 23: Local Algorithms: Past, Present, Future

Bad News

• “Bad input”:• Almost all nodes will

produce the same output

• Graph colouringnot possible

• You can find only trivialindependent sets,matchings, vertex covers,dominating sets, …

23

193012

5

72

4

18

34

2 68

77

15

19

Page 24: Local Algorithms: Past, Present, Future

Bad News

• Example: A is a local algorithm with r = 2,outputs from {1, 2, …, k}

• Focus on oriented cycles

• A maps 5-tuples ofidentifiers to local outputs

• A(15, 72, 5, 12, 30) = …

24

193012

5

72

4

18

34

2 68

77

15

19

Page 25: Local Algorithms: Past, Present, Future

Bad News

• Example: A is a local algorithm with r = 2,outputs from {1, 2, …, k}

• Set of identifiers: I = {1, 2, …, N}

• Let X = {a, b, c, d, e} ⊆ I,a < b < c < d < e

• Define the colour C(X) of X:C(X) = A(a, b, c, d, e)

25

?ed

c

b

?

?

?

? ?

?

a

?

Page 26: Local Algorithms: Past, Present, Future

Bad News

• Example: A is a local algorithm with r = 2,outputs from {1, 2, …, k}

• Set of identifiers: I = {1, 2, …, N}

• Let X = {a, b, c, d, e} ⊆ I,a < b < c < d < e

• Define the colour C(X) of X:C(X) = A(a, b, c, d, e)

• We will colour all 5-subsets of I

26

?ed

c

b

?

?

?

? ?

?

a

?

Page 27: Local Algorithms: Past, Present, Future

Bad News

• Example: A is a local algorithm with r = 2,outputs from {1, 2, …, k}

• Set of identifiers: I = {1, 2, …, N},colouring C(X) of 5-subsets

• Ramsey: if N is large enough,there exists a largemonochromatic subset M ⊆ I

• All 5-subsets X ⊆ M havethe same colour C(X)

27

?ed

c

b

?

?

?

? ?

?

a

?

Page 28: Local Algorithms: Past, Present, Future

Bad News

• Example: A is a local algorithm with r = 2,outputs from {1, 2, …, k}

• Assume that M = {a, b, c, d, e, f}is a monochromatic subset,a < b < c < d < e < f

• C({a, b, c, d, e}) =C({b, c, d, e, f})

• A(a, b, c, d, e) = A(b, c, d, e, f)

28

fed

c

b

?

?

?

? ?

?

a

?

Page 29: Local Algorithms: Past, Present, Future

Bad News

• Example: A is a local algorithm with r = 2,outputs from {1, 2, …, k}

• We have found a “bad input”:nodes with identifiers c and dare adjacent and they producethe same output

• We already proved thatA cannot producea valid graph colouring!

29

fed

c

b

?

?

?

? ?

?

a

?

Page 30: Local Algorithms: Past, Present, Future

Bad News

• Example: A is a local algorithm with r = 2,outputs from {1, 2, …, k}

• We can apply the same ideafor any value of r

• And we can “boost”the argument and showthat almost all nodes willproduce the same output

30

fed

c

b

?

?

?

? ?

?

a

?

Page 31: Local Algorithms: Past, Present, Future

Bad News

• For• any local algorithm A that finds an independent set,

• any constant ε > 0, and

• sufficiently large n,

we can choose unique identifiersin an n-cycle so that A outputsan independent set with only εn nodes

31

Page 32: Local Algorithms: Past, Present, Future

Bad News

• For• any local algorithm A that finds a vertex cover,

• any constant ε > 0, and

• sufficiently large n,

we can choose unique identifiersin an n-cycle so that A outputsa vertex cover with at least (1 − ε)n nodes

32

Page 33: Local Algorithms: Past, Present, Future

Dealing with Bad News

• Three traditional escapes:• Randomised algorithms

• Geometric information

• “Almost local” algorithms

33

Page 34: Local Algorithms: Past, Present, Future

Dealing with Bad News

• Three traditional escapes:• Randomised algorithms

• Geometric information

• “Almost local” algorithms

34

Page 35: Local Algorithms: Past, Present, Future

Randomised Algorithms

• Nodes can roll dice

35

Page 36: Local Algorithms: Past, Present, Future

Randomised Algorithms

• Nodes can roll dice or toss coins

36

Page 37: Local Algorithms: Past, Present, Future

Randomised Algorithms

• Nodes can roll dice or toss coins

• We cannot guarantee that we finda good solution

• Worst case: all coin tosses equal, no new information

• But we can find a good solutionwith high probability or in expectation

37

Page 38: Local Algorithms: Past, Present, Future

Randomised Algorithms

• Example: finding an independent set I• Each node v picks

uniformly at randomX(v) = ⚀, ⚁, ⚂, ⚃, ⚄, ⚅

38

⚃⚀⚁

⚅⚂

⚀⚁

⚄ ⚄⚂

Page 39: Local Algorithms: Past, Present, Future

Randomised Algorithms

• Example: finding an independent set I• Each node v picks

uniformly at randomX(v) = ⚀, ⚁, ⚂, ⚃, ⚄, ⚅

• Node v joins I if X(v) is(strict) local maximum

39

⚃⚀⚁

⚅⚂

⚀⚁

⚄ ⚄⚂

Page 40: Local Algorithms: Past, Present, Future

Randomised Algorithms

• Example: finding an independent set I• Each node v picks

uniformly at randomX(v) = ⚀, ⚁, ⚂, ⚃, ⚄, ⚅

• Node v joins I if X(v) is(strict) local maximum

• By construction,I is an independent set

40

⚃⚀⚁

⚅⚂

⚀⚁

⚄ ⚄⚂

Page 41: Local Algorithms: Past, Present, Future

Randomised Algorithms

• Example: finding an independent set I• Each node v picks

uniformly at randomX(v) = ⚀, ⚁, ⚂, ⚃, ⚄, ⚅

• Node v joins I if X(v) is(strict) local maximum

• Expected size of Iis reasonably large

41

⚃⚀⚁

⚅⚂

⚀⚁

⚄ ⚄⚂

Page 42: Local Algorithms: Past, Present, Future

Randomised Algorithms

• Example: finding an independent set I• A local randomised

algorithm can finda large independent set

• Approximation algorithm(in expectation)

• However, we cannot findmaximum independent set ormaximal independent set

42

⚃⚀⚁

⚅⚂

⚀⚁

⚄ ⚄⚂

Page 43: Local Algorithms: Past, Present, Future

Dealing with Bad News

• Three traditional escapes:• Randomised algorithms

• Geometric information

• “Almost local” algorithms

43

Page 44: Local Algorithms: Past, Present, Future

Geometric Graphs

• Assume that nodes arepoints in the plane

• Assume “reasonable”embedding

44

Page 45: Local Algorithms: Past, Present, Future

Geometric Graphs

• Assume that nodes arepoints in the plane

• Assume “reasonable”embedding

• Civilised graph

45

Page 46: Local Algorithms: Past, Present, Future

Geometric Graphs

• Assume that nodes arepoints in the plane

• Assume “reasonable”embedding

• Civilised graph:edges not too long…

46

no!

Page 47: Local Algorithms: Past, Present, Future

Geometric Graphs

• Assume that nodes arepoints in the plane

• Assume “reasonable”embedding

• Civilised graph:edges not too long,nodes not in too dense

47

no!

Page 48: Local Algorithms: Past, Present, Future

Geometric Graphs

• Assume that nodes arepoints in the plane

• Assume “reasonable”embedding

• Civilised graph

• Unit disk graph

• Quasi unit disk graph…

48

Page 49: Local Algorithms: Past, Present, Future

Geometric Graphs

• Exploit coordinates• a simple approach:

divide-and-conquer

• e.g., partition the planein rectangular tiles

49

Page 50: Local Algorithms: Past, Present, Future

Geometric Graphs

• Exploit coordinates• each tile defines

a constant-sizesubproblem

• solve the subproblemlocally within each tile(in parallel for all tiles)

50

Page 51: Local Algorithms: Past, Present, Future

Geometric Graphs

• Exploit coordinates• each tile defines

a constant-sizesubproblem

• solve the subproblemlocally within each tile

• merge the solutionsof the subproblems

51

Page 52: Local Algorithms: Past, Present, Future

Geometric Graphs

• Graph colouring:• f = 3-colouring of tiles

• all edges are short

• there is no edgethat joins e.g.a blue tile andanother blue tile

52

Page 53: Local Algorithms: Past, Present, Future

Geometric Graphs

• Graph colouring:• f = 3-colouring of tiles

• g = k-colouring thatis valid inside each tile

• can be solvedby brute force

53

Page 54: Local Algorithms: Past, Present, Future

Geometric Graphs

• Graph colouring:• f = 3-colouring of tiles

• g = k-colouring thatis valid inside each tile

• Output: (f, g)

• Valid 3k-colouring!

54

Page 55: Local Algorithms: Past, Present, Future

Geometric Graphs

• Simple localalgorithms:

• maximal matchings,independent sets, …

• approximationalgorithms forvertex covers,dominating sets,colourings, …

55

Page 56: Local Algorithms: Past, Present, Future

Dealing with Bad News

• Three traditional escapes:• Randomised algorithms

• Geometric information

• “Almost local” algorithms

56

Page 57: Local Algorithms: Past, Present, Future

Almost Local Algorithms

• We cannot find non-trivial solutionsin 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

Page 58: Local Algorithms: Past, Present, Future

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

Page 59: Local Algorithms: Past, Present, Future

Almost Local Algorithms

59

13573102913348

9252

3108

7491

3139

5443

3427

15683

9315

15715

7523 Initial colouring

Page 60: Local Algorithms: Past, Present, Future

Almost Local Algorithms

60

13573102913348

9252

3108

7491

3139

5443

3427

15683

9315

15715

7523110001000011

11110101000011

Key idea: inspectthe binary encodingsof old colours

Page 61: Local Algorithms: Past, Present, Future

Almost Local Algorithms

61

13573102913348

9252

3108

7491

3139

5443

3427

15683

9315

15715

7523110001000011

11110101000011

Bit number 8 differs

(8, 1)10001

Page 62: Local Algorithms: Past, Present, Future

Almost Local Algorithms

62

13573102913348

9252

3108

7491

3139

5443

3427

15683

9315

15715

7523

1110101000011

110001000011

11110101000011

Bit number 8 differs

(8, 0)

(8, 1)

10000

10001

Page 63: Local Algorithms: Past, Present, Future

Almost Local Algorithms

63

13573102913348

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

Page 64: Local Algorithms: Past, Present, Future

Almost Local Algorithms

64

13573102913348

9252

3108

7491

3139

5443

3427

15683

9315

15715

7523

1712522

0 23

16

3

1716

17

25A proper colouring!

Page 65: Local Algorithms: Past, Present, Future

Almost Local Algorithms

65

17125

22

0

23

16

3

17

16

17

25

1712522

0 23

16

3

1716

17

25Update colours…

Page 66: Local Algorithms: Past, Present, Future

Almost Local Algorithms

66

17125

22

0

23

16

3

17

16

17

25 After one round

Page 67: Local Algorithms: Past, Present, Future

Almost Local Algorithms

67

961

3

0

5

0

3

1

0

1

… After two rounds

Page 68: Local Algorithms: Past, Present, Future

Almost Local Algorithms

68

102

1

0

2

0

3

1

1

… After three rounds

Page 69: Local Algorithms: Past, Present, Future

Almost Local Algorithms

69

• 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

Page 70: Local Algorithms: Past, Present, Future

Almost Local Algorithms

70

• 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

Page 71: Local Algorithms: Past, Present, Future

Almost Local Algorithms

71

• 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

Page 72: Local Algorithms: Past, Present, Future

Past: Summary

• Bad news:• Cannot break symmetry in cycles

• Three traditional escapes:• Randomised algorithms

• Geometric information

• “Almost local” algorithms

72

Page 73: Local Algorithms: Past, Present, Future

Present

73

!!!

!

!

!

!

!

! !

!

!

!

Page 74: Local Algorithms: Past, Present, Future

Dealing with Bad News

• You cannot break symmetry in cycles…

• Which problems do not requiresymmetry breaking in cycles?

74

Page 75: Local Algorithms: Past, Present, Future

Tractable Problems

• Linear programs (LPs)• Many resource-allocation

problems can be modelledas LPs

• If the input is symmetric,a trivial solution isan optimal solution!

• Only non-symmetricinputs are challenging…

75

!!!

!

!

!

!

!

! !

!

!

!

Page 76: Local Algorithms: Past, Present, Future

Tractable Problems

• Linear programs (LPs)• Approximation scheme for

packing and covering LPs

• Local algorithm

• Kuhn, Moscibroda &Wattenhofer (2006)

76

!!!

!

!

!

!

!

! !

!

!

!

Page 77: Local Algorithms: Past, Present, Future

Tractable Problems

• Vertex covers• 2-approximation is the best that we can find

with centralised polynomial-time algorithms

• Nobody knows how to find1.9999-approximation efficiently

• Hence if we could find a 2-approximationwith local algorithms, it would be amazing!

77

Page 78: Local Algorithms: Past, Present, Future

Tractable Problems

• Vertex covers• 2-approximation does not

require symmetry breaking

• In a regular graph, trivialsolution (all nodes) is2-approximation

• Again, only non-symmetricinputs are challenging…

78

Page 79: Local Algorithms: Past, Present, Future

Tractable Problems

• Vertex covers• 2-approximation of vertex cover

in bounded-degree graphs

• Local algorithm

• Åstrand & Suomela (2010)

79

Page 80: Local Algorithms: Past, Present, Future

Tractable Problems

• Vertex covers• 2-approximation of vertex cover

in bounded-degree graphs

• Local algorithm

• A bit complicated…

• Let’s have a look ata simpler local algorithm:3-approximation of vertex cover

80

Page 81: Local Algorithms: Past, Present, Future

Vertex Cover

A simple local algorithm:3-approximation of minimum vertex cover

81

Page 82: Local Algorithms: Past, Present, Future

Vertex Cover

Construct a virtual graph:two copies of each node; edges across

82

Page 83: Local Algorithms: Past, Present, Future

Vertex Cover

The virtual graph is 2-coloured:all edges are from white to black

83

Page 84: Local Algorithms: Past, Present, Future

Vertex Cover

The virtual graph is 2-coloured –therefore we can find a maximal matching!

84

Page 85: Local Algorithms: Past, Present, Future

Vertex Cover

White nodes send proposals to theirblack neighbours

85

Page 86: Local Algorithms: Past, Present, Future

Vertex Cover

Black nodes accept one of the proposals

86

Page 87: Local Algorithms: Past, Present, Future

Vertex Cover

White nodes send proposals to anotherblack neighbour if they were rejected

87

Page 88: Local Algorithms: Past, Present, Future

Vertex Cover

Again, black nodes accept one proposal –unless they were already matched

88

Page 89: Local Algorithms: Past, Present, Future

Vertex Cover

Continue until all white nodes are matched –or they are rejected by all black neighbours

89

Page 90: Local Algorithms: Past, Present, Future

Vertex Cover

End result: a maximal matchingin the virtual graph

90

Page 91: Local Algorithms: Past, Present, Future

Vertex Cover

Take all original nodes that were matched –3-approximation of minimum vertex cover!

91

Page 92: Local Algorithms: Past, Present, Future

Present: Summary

• You cannot break symmetry in cycles…

• But we can study problemsthat do not require symmetry breaking!

• Linear programs: local approximation schemes

• Vertex covers: local 2-approximation algorithm

• Edge dominating sets: local approximation algorithm

• …

92

Page 93: Local Algorithms: Past, Present, Future

Future

93

Page 94: Local Algorithms: Past, Present, Future

Dealing with Bad News

• Let’s have a fresh look at the lower bounds!• Exactly what was proved?

94

Page 95: Local Algorithms: Past, Present, Future

Lower Bounds

• Only trivial solutions in cycles

• Assumption:constant-size output

• Each node outputsconstant number of bits

• Innocuous?

95

193012

5

72

4

18

34

2 68

77

15

19

Page 96: Local Algorithms: Past, Present, Future

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

Page 97: Local Algorithms: Past, Present, Future

Output Size

• Graph colouring:• O(1) colours should be enough in a cycle

• Hence O(1) bits per node is enough toencode the solution

• Linear programs:• For a near-optimal solution, we can use

finite-precision rational numbers

97

Page 98: Local Algorithms: Past, Present, Future

Output Size

• Natural problems seem to haveconstant-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 thatdo not require symmetry-breaking

98

Page 99: Local Algorithms: Past, Present, Future

Output Size

• Natural problems seem to haveconstant-size output

• Hence the negative results apply

• Did we miss anything?

99

Page 100: Local Algorithms: Past, Present, Future

Scheduling Problems

• Neighbours not working simultaneously,everyone must get 3 units of work done

100

time: 0 1 2 3 4 5 6 7node 1:node 2:node 3:node 4:node 5:node 6:

Page 101: Local Algorithms: Past, Present, Future

Scheduling Problems

• Time is continuous, we can usea more fine-grained schedule if it helps

101

time: 00 11 22 33 44 55 66 7node 1:node 2:node 3:node 4:node 5:node 6:

Page 102: Local Algorithms: Past, Present, Future

Scheduling Problems

• Time is continuous, we can usea more fine-grained schedule if it helps

• A good solution does not necessarilyhave a constant-size description

• Existing lower bounds do not apply

102

Page 103: Local Algorithms: Past, Present, Future

Scheduling Problems

• Time is continuous, we can usea more fine-grained schedule if it helps

• A good solution does not necessarilyhave a constant-size description

• Existing lower bounds do not apply

• Proof artefact? Uninteresting technicality?Just derive a bit stronger negative result?

103

Page 104: Local Algorithms: Past, Present, Future

Scheduling Problems

• Time is continuous, we can usea more fine-grained schedule if it helps

• A good solution does not necessarilyhave a constant-size description

• Existing lower bounds do not apply

• Proof artefact? Uninteresting technicality?Just derive a bit stronger negative result?

• Wrong! There is a local approximation algorithm!

104

Page 105: Local Algorithms: Past, Present, Future

Scheduling Problems

• Local approximation algorithms• Scheduling problems:

fractional graph colouring,fractional domatic partition, …

• First example of a local algorithm thatactually requires unique numerical identifiers

• Hasemann, Hirvonen, Rybicki & Suomela(work in progress)

105

Page 106: Local Algorithms: Past, Present, Future

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

106

Page 107: Local Algorithms: Past, Present, Future

Decision Problems

• Back to very basics: decision problems• Is this graph bipartite? Acyclic? Hamiltonian?

Eulerian? Connected? 3-colourable? Symmetric?

• Decision problems form the foundationof classical complexity theory…

107

Page 108: Local Algorithms: Past, Present, Future

Decision Problems

• Decision problems in distributed setting:• yes-instance: all nodes happy

• no-instance: at least one node raises alarm

• Few decision problems can be solvedwith deterministic local algorithms

• But now we have a very natural extension…

108

Page 109: Local Algorithms: Past, Present, Future

Decision Problems

• Nondeterministic local algorithms• Yes-instances have a compact certificate

that can be verified with a local algorithm

• “locally checkable proof”

• Cf. class NP:• Yes-instances have a compact certificate

that can be verified in P

109

Page 110: Local Algorithms: Past, Present, Future

Locally Checkable Proofs

• Key question: what is the size of the proof?• How many bits per node are needed?

• For example, it is easy to show that a graph isbipartite: just give a 2-colouring, 1 bit per node

• How do you prove that a graph is not bipartite?

110

Page 111: Local Algorithms: Past, Present, Future

Locally Checkable Proofs

• Key question: what is the size of the proof?• How many bits per node are needed?

• For example, it is easy to show that a graph isbipartite: just give a 2-colouring, 1 bit per node

• How do you prove that a graph is not bipartite?

• Find an odd cycle, and prove that it exists

• O(log n) bits is enough, Ω(log n) bits necessary

111

Page 112: Local Algorithms: Past, Present, Future

Locally Checkable Proofs

• Natural hierarchy of proof complexities:• 2-colourable graphs: Θ(1) bits per node

• Non-2-colourable graphs: Θ(log n) bits per node

• Non-3-colourable graphs: poly(n) bits per node

• Göös & Suomela (2011)

112

Page 113: Local Algorithms: Past, Present, Future

Summary

• Local algorithms

• Strong lower bounds• Nevertheless,

a lot of progress!

• Latest hot topics• Scheduling problems

• Nondeterministic models

113