Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

29
Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness

Transcript of Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Page 1: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Max-Planck-Institut für Informatik Saarbrücken

Quasirandomness

Page 2: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Introduction to Quasirandomness Pseudorandomness:

– Aim: Have something look completely random– Example: Pseudorandom numbers shall look random

independent of the particular application.

Quasirandomness:– Aim: Imitate a particular property of a random object.– Example: Low-discrepancy point sets

A random point set P is evenly distributed in [0,1]2: For all axis-parallel rectangles R,

Quasirandom analogue: There are point sets P such that holds for all R

Leads to (Quasi)-Monte-Carlo methods

¯j̄P \ Rj ¡ vol(R)jP j

¯¯= O(jP j1=2+")

¯j̄P \ Rj ¡ vol(R)jP j

¯¯= O(log(jP j))

Page 3: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Why Study Quasirandomness? Basic research: Is it truely the randomness that

makes a random object useful, or something else?– Example numerical integration: Random sample points

are good because of their sublinear discrepancy (and ‘not’ because they are random)

Learn from the random object and make it better (custom it to your application) without randomness!

Combine random and quasirandom elements: What is the right dose of randomness?

Page 4: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Outline of the Talk Part 0: Introduction to Quasirandomness [done]

– Quasirandom: Imitate a particular aspect of randomness

Part 1: Quasirandom random walks– also called “Propp machine” or “rotor router model”

Part 2: Quasirandom rumor spreading– the right dose of randomness?

Page 5: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Part 1: Quasirandom Random Walks Reminder: Random Walk How to make it quasirandom? Three results:

– Cover times– Discrepancies: Massive parallel walks– Internal diffusion limited aggregation (physics)

Page 6: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Reminder: Random Walks Rule: Move to a neighbor chosen at random

Page 7: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Quasirandom Random Walks Simple observation: If the random walk visits a

vertex many times, then it leaves it to each neighbor approximately equally often– n visits to a vertex of constant degree d: n/d + O(n1/2)

moves to each neighbor.

Quasirandomness: Ensure that neighbors are served evenly!

Page 8: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Quasirandom Random Walks Rule: Follow the rotor. Rotor updates after each move.

Page 9: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Quasirandom Random Walks Simple observation: If the random walk visits a

vertex many times, then it leaves it to each neighbor approx. equally often– n visits to a vertex of constant degree d: n/d + O(n1/2)

moves to each neighbor.

Quasirandomness: Ensure that neighbors are served evenly!– Put a rotor on each vertex, pointing to its neighbors– The quasirandom walk moves in the rotor direction– After each step, the rotor turns and points to the next

neighbor (following a given permutation of the neighbors)

Page 10: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Quasirandom Random Walks Other names

– Propp machine (after Jim Propp)– Rotor router model– Deterministic random walk

Some freedom in the design– Initial rotor directions– Order, in which the rotors serve the neighbors– Also: Alternative ways to ensure fairness in serving

the neighbors

Fortunately: No real difference

Page 11: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Result 1: Cover Times Cover time: How many step does the (quasi)random

walk need to visit all vertices?

Classical result [AKLLR’79]: For all graphs G=(V,E) and all vertices v, the expected time a random walk started in v needs to visit all vertices, is at most 2 |E|(|V|-1).

Quasirandom [D]: For all graphs, starting vertices, initial rotor directions and rotor permutations, the quasirandom walk needs at most 2|E|(|V|-1) steps to visit all vertices.

Note: Same bound, but ‘sure’ instead of ‘expected’.

Page 12: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Result 2: Discrepancies Model: Many chips do a synchronized (quasi)random walk

Discrepancy: Difference between the number of chips on a vertex at a time in the quasirandom model and the expected number in the random model

Page 13: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Example: Discrepancies on the Line

19

19

1095 52 8 6 39

9.5 9.5 4.754.75 9.52.375 2.3757.1257.125

0.5-0.5 -0.5 0.250.25-0.375 0.875 -1.125 0.625

Random Walk (Expectation):

Quasirandom:

Difference: A discrepancy > 1!But: You’ll never have more than 2.29 [Cooper, D, Spencer, Tardos]

Page 14: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Result 2: Discrepancies Model: Many chips do a synchronized (quasi)random walk

Discrepancy: Difference between the number of chips on a vertex at a time in the quasirandom model and the expected number in the random model

Cooper, Spencer [CPC’06]: If the graph is an infinite d-dim. grid, then (under some mild conditions) the discrepancies on all vertices at all times can be bounded by a constant (independent of everything!)– Note: Again, we compare ‘sure’ with expected– Cooper, D, Friedrich, Spencer [SODA’08]: Fails for infinite trees– Open problem: Results for any other graphs

Page 15: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Result 3: Internal Diffusion Limited Aggregation

Model: – Start with an empty 2D grid.– Each round, insert a particle at ‘the center’ and let it do a

(quasi)random walk until it finds an empty grid cell, which it then occupies.

– What is the shape of the occupied cells after n rounds?

100, 1600 and 25600 particles in the random walk model:

[Moore, Machta]

Page 16: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Result 3: Internal Diffusion Limited Aggregation

Model: – Start with an empty 2D grid.– Each round, insert a particle at ‘the center’ and let it do a

(quasi)random walk until it finds an empty grid cell, which it then occupies.

– What is the shape of the occupied cells after n rounds?

With random walks:– Proof: outradius – inradius = O(n1/6) [Lawler’95]– Experiment: outradius – inradius ≈ log2(n) [Moore, Machta’00]

With quasirandom walks:– Proof: outradius – inradius = O(n1/4+eps) [Levine, Peres]– Experiment: outradius – inradius < 2

Page 17: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Summary Quasirandom Walks

Model:– Follow the rotor and rotate it– Simulates: Random walks leave each vertex in each

direction roughly equally often

Results: Surprising good simulation (or “better”)– Graph exploration in 2|E|(|V|-1) steps– Many chips: For grids (but not trees), we have the same

number of chips on each vertex at all times as expected in the random walk (apart from constant discrepancy)

– IDLA: Almost perfect circle.

Page 18: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Part 2: Quasirandom Rumor Spreading

Reminder: Randomized Rumor Spreading– same as in the talk by Thomas Sauerwald

Quasirandom Rumor Spreading– Purely deterministic: Poor– With a little bit of randomness: Great!

[simpler and better than randomized]

“The right dose of randomness”?

Page 19: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Randomized Rumor Spreading

Model (on a graph G):– Start: One node is informed– Each round, each informed node informs a neighbor chosen

uniformly at random– Broadcast time T(G): Number of rounds necessary to inform all

nodes (maximum taken over all starting nodes)

Round 0: Starting node is informedRound 1: Starting node informs random nodeRound 2: Each informed node informs a random nodeRound 3: Each informed node informs a random nodeRound 4: Each informed node informs a random nodeRound 5: Let‘s hope the remaining two get informed...

Page 20: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Randomized Rumor Spreading

Model (on a graph G):– Start: One node is informed– Each round, each informed node informs a neighbor

chosen uniformly at random– Broadcast time T(G): Number of rounds necessary to

inform all nodes (maximum taken over all starting nodes)

Application:– Broadcasting updates in distributed databases

simple robust self-organized

Page 21: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Randomized Rumor Spreading

Model (on a graph G):– Start: One node is informed– Each round, each informed node informs a neighbor

chosen uniformly at random– Broadcast time T(G): Number of rounds necessary to

inform all nodes (maximum taken over all starting nodes)

Results [n: Number of nodes]:– Easy: For all graphs G, T(G) ≥ log(n)

– Frieze, Grimmet: T(Kn) = O(log(n)) w.h.p.

– Feige, Peleg, Raghavan, Upfal: T({0,1}d) = O(log(n)) w.h.p.

– Feige et al.: T(Gn,p) = O(log(n)) w.h.p., p > (1+eps)log(n)/n

Page 22: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Deterministic Rumor Spreading?

As above except:– Each node has a list of its neighbors.– Informed nodes inform their neighbors in the order of

this list.

Problem: Might take long...

Here: n-1 rounds .

1 3 4 5 62

List: 2 3 4 5 6 3 4 5 6 1 4 5 6 1 2 5 6 1 2 3 6 1 2 3 4 1 2 3 4 5

Page 23: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Semi-Deterministic Rumor Spreading

As above except:– Each node has a list of its neighbors.– Informed nodes inform their neighbors in the order of

this list, but start at a random position in the list

Page 24: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Semi-Deterministic Rumor Spreading

As above except:– Each node has a list of its neighbors.– Informed nodes inform their neighbors in the order of

this list, but start at a random position in the list

Results (1):

Page 25: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Semi-Deterministic Rumor Spreading

As above except:– Each node has a list of its neighbors.– Informed nodes inform their neighbors in the order of

this list, but start at a random position in the list

Results (1): The log(n) bounds for – complete graphs,

– random graphs Gn,p, p > (1+eps) log(n),

– hypercubes

still hold...

Page 26: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Semi-Deterministic Rumor Spreading

As above except:– Each node has a list of its neighbors.– Informed nodes inform their neighbors in the order of

this list, but start at a random position in the list

Results (1): The log(n) bounds for – complete graphs,

– random graphs Gn,p, p > (1+eps) log(n),

– hypercubes

still hold independent from the structure of the lists[D, Friedrich, Sauerwald (SODA’08)]

Page 27: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Semi-Deterministic Rumor Spreading

Results (2):– Random graphs Gn,p, p = (log(n)+log(log(n)))/n:

fully randomized: T(Gn,p) = Θ(log(n)2) w.h.p.

semi-deterministic: T(Gn,p) = Θ(log(n)) w.h.p.

– Complete k-regular trees: fully randomized: T(G) = Θ(k log(n)) w.h.p. semi-deterministic: T(G) = Θ(k log(n)/log(k)) w.p.1

Algorithm Engineering Perspective:– need fewer random bits– easy to implement: Any implicitly existing permutation of

the neighbors can be used for the lists

Page 28: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

The Right Dose of Randomness? Results indicate that the right dose of randomness can be

important!– Alternative to the classical “everything independent at random”– May-be an interesting direction for future research?

Related:– Dependent randomization, e.g., dependent randomized rounding:

Gandhi, Khuller, Partharasathy, Srinivasan (FOCS’01+02) D. (STACS’06+07)

– Randomized search heuristics: Combine random and other techniques, e.g., greedy Example: Evolutionary algorithms

– Mutation: Randomized– Selection: Greedy (survival of the fittest)

Page 29: Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.

Benjamin Doerr

Summary

Quasirandomness: – Simulate a particular aspect of a random object

Surprising results:– Quasirandom walks– Quasirandom rumor spreading

For future research:– Good news: Quasirandomness can be analyzed (in spite

of ‘nasty’ dependencies)– Many open problems– “What is the right dose of randomness?” Thanks!