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

## Presentation on theme: "Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness."— Presentation transcript:

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 \ R j ¡ vo l ( R ) j P j ¯ ¯ = O ( j P j 1 = 2 + " ) ¯ ¯ j P \ R j ¡ vo l ( R ) j P j ¯ ¯ = O ( l og ( j P j ))

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?

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?

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)

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

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(n 1/2 ) moves to each neighbor.  Quasirandomness: Ensure that neighbors are served evenly!

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

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(n 1/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)

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

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’.

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

Benjamin Doerr Example: Discrepancies on the Line 19 1095528639 9.5 4.75 9.52.375 7.125 0.5-0.5 0.25 -0.3750.875-1.1250.625 Random Walk (Expectation): Quasirandom: Difference: A discrepancy > 1!But: You’ll never have more than 2.29 [Cooper, D, Spencer, Tardos]

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

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]

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(n 1/6 ) [Lawler’95] –Experiment: outradius – inradius ≈ log 2 (n) [Moore, Machta’00]  With quasirandom walks: –Proof: outradius – inradius = O(n 1/4+eps ) [Levine, Peres] –Experiment: outradius – inradius < 2

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.

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”?

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 node Round 4: Each informed node informs a random node Round 5: Let‘s hope the remaining two get informed...

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

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(K n ) = O(log(n)) w.h.p. –Feige, Peleg, Raghavan, Upfal: T({0,1} d ) = O(log(n)) w.h.p. –Feige et al.: T(G n,p ) = O(log(n)) w.h.p., p > (1+eps)log(n)/n

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 . 134562 List: 2 3 4 5 63 4 5 6 14 5 6 1 25 6 1 2 36 1 2 3 41 2 3 4 5

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

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):

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 G n,p, p > (1+eps) log(n), –hypercubes still hold...

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 G n,p, p > (1+eps) log(n), –hypercubes still hold independent from the structure of the lists [D, Friedrich, Sauerwald (SODA ’ 08)]

Benjamin Doerr Semi-Deterministic Rumor Spreading  Results (2): –Random graphs G n,p, p = (log(n)+log(log(n)))/n:  fully randomized: T(G n,p ) = Θ(log(n) 2 ) w.h.p.  semi-deterministic: T(G n,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

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)

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!