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

Slides:



Advertisements
Similar presentations
Lower Bounds for Local Search by Quantum Arguments Scott Aaronson.
Advertisements

Chapter 5: Tree Constructions
The Cover Time of Random Walks Uriel Feige Weizmann Institute.
Benjamin Doerr MPII Saarbrücken joint work with Quasi-Random Rumor Spreading Tobias Friedrich U Berkeley Anna Huber MPII Saarbrücken Thomas Sauerwald U.
Quasirandom Rumor Spreading Tobias Friedrich Max-Planck-Institut für Informatik Saarbrücken.
QuickSort Average Case Analysis An Incompressibility Approach Brendan Lucier August 2, 2005.
Graph Isomorphism Algorithms and networks. Graph Isomorphism 2 Today Graph isomorphism: definition Complexity: isomorphism completeness The refinement.
Wavelength Assignment in Optical Network Design Team 6: Lisa Zhang (Mentor) Brendan Farrell, Yi Huang, Mark Iwen, Ting Wang, Jintong Zheng Progress Report.
Lecture 12: Revision Lecture Dr John Levine Algorithms and Complexity March 27th 2006.
Fabian Kuhn, Microsoft Research, Silicon Valley
Visibility Graphs May Shmuel Wimer Bar-Ilan Univ., Eng. Faculty Technion, EE Faculty.
Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Quasirandomness.
Gossip Algorithms and Implementing a Cluster/Grid Information service MsSys Course Amar Lior and Barak Amnon.
Low Randomness Rumor Spreading via Hashing He Sun Max Planck Institute for Informatics Joint work with George Giakkoupis, Thomas Sauerwald and Philipp.
Tight Analysis of Randomized Rumor Spreading in Complete Graphs Benjamin Doerr (LIX) joint work with Marvin Künnemann (MPI Informatics)
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
CHAPTER 7 Sampling Distributions
Analysis of Network Diffusion and Distributed Network Algorithms Rajmohan Rajaraman Northeastern University, Boston May 2012 Chennai Network Optimization.
Planning under Uncertainty
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Tirgul 5 AVL trees.
Benjamin Doerr Max-Planck-Institut für Informatik Saarbrücken Component-by-Component Construction of Low-Discrepancy Point Sets joint work with Michael.
1 Mazes In The Theory of Computer Science Dana Moshkovitz.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Distributed Coloring in Õ(  log n) Bit Rounds COST 293 GRAAL and.
1 Analyzing Kleinberg’s (and other) Small-world Models Chip Martel and Van Nguyen Computer Science Department; University of California at Davis.
Dynamic Hypercube Topology Stefan Schmid URAW 2005 Upper Rhine Algorithms Workshop University of Tübingen, Germany.
ETH Zurich – Distributed Computing Group Roger Wattenhofer 1ETH Zurich – Distributed Computing – Christoph Lenzen Roger Wattenhofer Minimum.
Joshua Cooper Benjamin Doerr Joel Spencer Gábor Tardos Deterministic Random Walks UCSD (SC soon!) MPI Saarbrücken Courant Institute Simon Fraser.
An Introduction to Black-Box Complexity
Complexity 1 Mazes And Random Walks. Complexity 2 Can You Solve This Maze?
1 Analyzing Kleinberg’s (and other) Small-world Models Chip Martel and Van Nguyen Computer Science Department; University of California at Davis.
Finding a maximum independent set in a sparse random graph Uriel Feige and Eran Ofek.
The Practice of Statistics, 5th Edition Starnes, Tabor, Yates, Moore Bedford Freeman Worth Publishers CHAPTER 7 Sampling Distributions 7.1 What Is A Sampling.
Efficient and Robust Query Processing in Dynamic Environments Using Random Walk Techniques Chen Avin Carlos Brito.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Yossi Azar Tel Aviv University Joint work with Ilan Cohen Serving in the Dark 1.
Distributed Coloring Discrete Mathematics and Algorithms Seminar Melih Onus November
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Advanced Algorithm Design and Analysis (Lecture 13) SW5 fall 2004 Simonas Šaltenis E1-215b
Distributed Algorithms Rajmohan Rajaraman Northeastern University, Boston May 2012 Chennai Network Optimization WorkshopDistributed Algorithms1.
DATA MINING LECTURE 13 Pagerank, Absorbing Random Walks Coverage Problems.
Many random walks are faster than one Noga AlonTel Aviv University Chen AvinBen Gurion University Michal KouckyCzech Academy of Sciences Gady KozmaWeizmann.
PODC Distributed Computation of the Mode Fabian Kuhn Thomas Locher ETH Zurich, Switzerland Stefan Schmid TU Munich, Germany TexPoint fonts used in.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Online Social Networks and Media
CS 484 Load Balancing. Goal: All processors working all the time Efficiency of 1 Distribute the load (work) to meet the goal Two types of load balancing.
Sampling and estimation Petter Mostad
Spatial Indexing Techniques Introduction to Spatial Computing CSE 5ISC Some slides adapted from Spatial Databases: A Tour by Shashi Shekhar Prentice Hall.
Artur Czumaj DIMAP DIMAP (Centre for Discrete Maths and it Applications) Computer Science & Department of Computer Science University of Warwick Testing.
Vertex Coloring Distributed Algorithms for Multi-Agent Networks
Data Structures Haim Kaplan & Uri Zwick December 2013 Sorting 1.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
The NP class. NP-completeness
Introduction to Approximation Algorithms
Stochastic Streams: Sample Complexity vs. Space Complexity
Minimum Dominating Set Approximation in Graphs of Bounded Arboricity
Case Study 2- Parallel Breadth-First Search Using OpenMP
Peer-to-Peer and Social Networks
Randomized Algorithms: Data Structures
Benjamin Doerr Partial Colorings of Unimodular Hypergraphs.
Coverage Approximation Algorithms
Chapter 9: Sampling Distributions
On the effect of randomness on planted 3-coloring models
Introduction Wireless Ad-Hoc Network
Packet Classification with Evolvable Hardware Hash Functions
Test Drop Rules: If not:
Chapter 9: Sampling Distributions
Biologically Inspired Computing: Operators for Evolutionary Algorithms
Sampling Plans.
Presentation transcript:

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

Benjamin Doerr Randomness in Computer Science  Revolutionary Discovery (~1970): –Algorithms making random decisions (“randomized algorithms”) are extremely powerful. –Often, making all decisions at random, suffices. –Such algorithms are  easy to find  easy to implement (  “algorithm engineering”)  often easy to analyse. –Numerous applications:  Quicksort  primality testing  randomized rounding,...

Benjamin Doerr Randomness in Computer Science  Example: Exploring unknown environment. –Environment:  Graph G = (V,E) –Task: Explore!  E.g.: “Is there a way from A to B?” –Simple randomized solution:  Do a random walk: Choose the next vertex to go to uniformly at random from your neighbors. –Analysis: For all graphs, the expected time to visit all vertices (“cover time”) is at most 2 |V| |E|.

Benjamin Doerr Beyond Randomness...  Pseudorandomness (not the topic of this talk): –Aim: Have something look completely random  Cope with the fact that true randomness is difficult to get. –Example: Pseudorandom numbers shall look random independent of the particular application.  Quasirandomness (topic of this talk): –Aim: Imitate a particular property of a random object.  Extract the good featrure from the random object. –Example: Quasi-Monte-Carlo Methods (numerics)  Monte-Carlo Integration: Use random sample points.  QMC Integration: Use evenly distributed sample points.

Benjamin Doerr Outline of the Talk  Part 0: From Randomness 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 Reminder Quasirandomness  Imitate a particular property of a random object!  Why study this? –Understanding randomness (basic research): Is it truely the randomness that makes a random object useful, or just a particular property it usually has? –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 Part 1: Quasirandom Random Walks  Random Walk  How to make it quasirandom?  Three results: –Cover times –Discrepancies: Massive parallel walks –Internal diffusion limited aggregation (physics)

Benjamin Doerr 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 steps 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: Same bound of 2|E|(|V|-1), independent of the particular set-up of the Propp machine.  Note: Same bound, but ‘sure’ instead of ‘expected’.  “Lesson to learn”: Not randomness yields the good cover time, but the fact that each vertex serves its neighbors evenly!

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

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

Benjamin Doerr Summary Quasirandom Walks  Model: –Follow the rotor and rotate it –Simulates: Balanced serving of neighbors  3 particular results: Surprising good simulation (“or better”) of many random walk aspects. –Graph exploration in 2|E|(|V|-1) steps –Many chips: For grids, 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.  Try a quasirandom walk instead of a random one !

Benjamin Doerr Part 2: Quasirandom Rumor Spreading  Classical: “Randomized Rumor Spreading” –protocol to distribute information in a network  How to make this quasirandom?  “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 replicated databases  Properties: –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) –Complete graphs: T(K n ) = O(log(n)) w.h.p. –Hypercubes: T({0,1} d ) = O(log(n)) w.h.p. –Random graphs: T(G n,p ) = O(log(n)) w.h.p., p > (1+eps)log(n)/n [Frieze&Grimmet (1985), Feige, Peleg, Raghavan, Upfal (1990), Karp, Schindelhauer, Shenker, Vöcking (2000)]

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 (starting at the top if done).  Simulates 2 “neighbor fairness” properties: –Within few rounds, a vertex informs distinct neighbors only. –Within many rounds, each neighbor is informed equally often [clearly the less useful property ]

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 (starting at the top if done).  Problem: Might take long...  Here: n-1 rounds .  No hope for quasirandomness here? 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

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, –hypercubes, –random graphs G n,p, p > (1+eps) log(n) 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, –hypercubes, –random graphs G n,p, p > (1+eps) log(n) still hold independent from the structure of the lists [D, Friedrich, Sauerwald] [2 good news: (a) results hold, (b) things can be analyzed]

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 Outlook: The Right Dose of Randomness?  Broadcasting results also 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?” Grazie!