Randomized Rumor Spreading in Social Networks Benjamin Doerr (MPI Informatics / Saarland U) Summary: We study how fast rumors spread in social networks. For the preferential attachment network model and the classic push-pull randomized rumor spreading process, we show that all nodes learn the rumor within a logarithmic number of rounds. This is the first such bound for a real-world network model. Surprisingly, rumors spread significantly faster (i) when avoiding to call the same person twice in a row or (ii) in the asynchronous rumor spreading process. [joint work with Mahmoud Fouz (Saarland U) and Tobias Friedrich (MPI-INF, now U Jena)]
We do THEORY 2
Make assumptions (mathematically precise) Social network = preferential attachment graph on n nodes rumor spreading = in theoretical computer science We do THEORY = rigorously prove results by mathematical methods Rigorously prove a result: For all n, the expected first time when all nodes heard the rumor, is at most K log(n) Why do we do this? Gives results as true as possible gives results for arbitrary large networks a proof also reveals why the statement is true Price to pay: Difficult, time-consuming, less info for concrete problems 3
Overview of What Follows Rumor spreading: Why a computer science topic? Define the push-pull rumor spreading process Social network: Preferential attachment (PA) graph [Barabási, Albert (1999)] Result: Rumor spreading in PA graphs is fast and faster, if you don t call the same neighbor twice in a row Some proof ideas Why faster without double-contacts Why faster than in other graphs Some more results: asynchronous rumor spreading is even faster 4
Randomized Rumor Spreading Randomized rumor spreading Any random process in a network where nodes call random neighbors and send/retrieve information Question: How long does it take until a piece of information ( rumor ) is known to all nodes? Example: Complete graph (edges not drawn), push process Frieze&Grimmett Round Round 4: 5: 2: 3: Each Let s 1: hope informed Starting 85: Round the Θ(log remaining vertex 0: n) Starting rounds calls two a vertex suffice random get informed... is vertex with vertex high prob. 5
Why Study Rumor Spreading? Can be used as simple distributed algorithm Maintaining replicated databases: Name servers in the Xerox corporate internet [Dehmers et al. (1987)] communication protocol for unreliable/unknown/dynamic... networks (wireless sensor networks, mobile ad-hoc networks) buzz words: Epidemic algorithms, gossip-based algorithms Model for existing processes Rumors, computer viruses, diseases, influence processes, An early motivation: Technical tool in a mathematical analysis of an all-pairs shortest path algorithm [Frieze, Grimmett (1985)] 6
The Rumor Spreading Process Set-up: Network (undirected graph), nodes can communicate with neighbors Initially, one node has a piece of information ( rumor ) Synchronized push-pull rumor spreading: Synchronized process ( rounds ) In each round, each node contacts a random neighbor if one of the two knows the rumor, it forwards it to the other push operation: caller sends the rumor to a neighbor pull operation: caller learns the rumor from a neighbor [Push protocol: Only informed nodes call random neighbors.] 7
Two Results (both push and push-pull) Rumor spreading is fast: After O(log n) rounds, with high probability the rumor is known by all n vertices of complete graphs [Frieze, Grimmett (1985); Pittel (1987); Karp, Shenker, Schindelhauer, Vöcking (2000)] hypercubes [Feige, Peleg, Raghavan, Upfal (1990)] random graphs G(n,p), p (1+ε) ln(n)/n [FPRU 90] O(log n) = less than K log(n) for some constant K Rumor spreading is robust against transmission failures: In complete graphs: If each call fails with constant probability, the time until all nodes are informed increases only by a constant factor [D, Huber, Levavi (2009)] push-model only: If the message-loss probability is 50%, then time increases by a factor of 1.82 only 8
Social Networks, Real-World Graphs Real-world graph : airports connected by direct flights scientific authors connected by a joint publication Facebook users being friends Observation: Real-world graphs look different. small diameter non-uniform degree distribution: few nodes of high degree: hubs many nodes of small (constant) degree power law: number of nodes of degree d is proportional to d -β [β a constant, often between 2 and 3] 9
Preferential Attachment (PA) Graphs Barabási, Albert (Science 1999): explanation why many real-world networks look like this suggest a model for real-world graphs: preferential attachment (PA) Preferential attachment paradigm: network evolves over time when a new node enters the network, it chooses at random a constant number of neighbors random choice is not uniform, but gives preference to popular nodes probability to attach to node x is proportional to the degree of x PA paradigm defines a random graph model ( PA graphs ) Today: One of the most used models for real-world networks 10
Dirty Details: Definition of PA Graphs Density parameter: integer m PA graph on n vertices: G n ; vertex set {1, n} G 1 : 1 is the single vertex and has m self-loops G n : Obtained from adding the new vertex n to G n-1 One after the other, the new vertex n chooses m neighbors The probability that vertex x is chosen, is proportional to the current degree of x, if x n proportional to 1 + the current degree of x, if x = n (self-loop probability takes into account the current edge starting in n ) Properties: diameter Θ(log n / log log n) [Bollobás, Riordan (2004)] [Bollobás, Riordan (2004)] Θ(log n) = O(log n) and more than K log(n) for some constant K power law degree distribution: For d n 1/5, the expected number of vertices having degree d is proportional to d -3. [BRSpencerTusnády (2003)] 11
Rumor Spreading in PA Graphs Chierichetti, Lattanzi, Panconesi (2009): The push-pull protocol in O((log n) 2 ) rounds informs a PA graph, m 2, with high probability Our results (STOC 11, Comm. ACM 2012): Θ(log n) rounds are necessary and sufficient Θ(log n / loglog n), if contacts are chosen excluding the neighbor contacted in the very previous round (no double-contacts ) Note: Avoiding double-contacts does not improve the O(log n) times for complete graphs, random graphs, hypercubes, Challenge in proving such a result: Analyze a random process on a complicated random graph! 12
Experiments: Time vs. Graph Size Time to inform all vertices for different graph sizes (no double-contacts). Observation: Hidden constants don t matter, PA is truly faster. 13
Experiments: Progress over Time Number of nodes informed after t rounds. All graphs: n = 3,072,441; density m = 38 (except complete). Orkut: Google s Facebook (100m users in India and Brasil). 14
Graphs used in previous experiments Orkut: 2006 crawl of around 11% the Orkut social network (Google s alternative to Facebook, today very popular in India and Brazil, ~100,000,000 users, Alexa traffic rank 81 st ): n = 3,072,441 nodes, ~117 million edges (approx. 38n edges). Preferential attachment (PA) graph: n nodes, each chooses m = 38 neighbors, giving higher preference to already popular nodes Random-attachment graph (m-out random graph): n nodes, each chooses m neighbors uniformly at random Complete graph on n vertices 15
Experiments: Same with Twitter n = 51,161,011 nodes, 1,613,927,450 edges, density m = 32. 16
Proof Ideas Theorem: Randomized rumor spreading in the push-pull model informs the PA graph G n (with m 2) with high probability in Θ(log n) rounds when choosing neighbors uniformly at random Θ(log n / loglog n) rounds without double-contacts Two questions: Why do double-contacts matter? What makes PA graphs spread rumors faster than other graphs? G(n,p) random graphs also have a diameter O(log n / loglogn), but rumor spreading needs Θ(log n) rounds, also without doublecontacts. 17
With Double-Contacts Critical situation: A pair of uninformed nodes (neighbors), each having a constant number of neighbors With constant probability, the following happens in one round: the two nodes in the pair call each other all their neighbors call someone outside the pair hence the situation remains critical (pair uninformed) Problem: Initially, there are Θ(n) such critical situations in a PA graph. Since each is solved with constant probability in one round, Θ(log n) rounds are necessary 18
Without Double-Contacts The uninformed pair is not critical anymore, because the two nodes cannot call each other twice in a row Remaining critical situations: Cycles of uninformed nodes having a constant number of neighbors in total. Again, each round, with constant probability the situation remains critical (cycle uninformed) No problem! There are only O(exp((log n) 3/4 )) such critical situations in a PA graph. 19
Proof Ideas (2): Why is PA faster? Large- and small-degree nodes: hub: node with degree (log n) 3 or greater poor node: node with degree exactly m (as small as possible) Observation: Poor nodes convey rumors fast! Let a and b be neighbors of a poor node x If a is informed, the expected time for x to pull the rumor from a is less than m After that, it takes another less than m rounds (in expectation) for x to push the news to b Key lemma: Between a any two hubs, there is a path bof length O(log n / log log n) with every second node a poor node. Key lemma + observation + XXX: If xone hub is informed, after O(log n / log log n) rounds all hubs are. 20
Main Tool: BR 04 Definition of PA Model Equivalent definition of the PA model due to Bollobás, Riordan (2004) For m=1 Choose 2n random numbers in [0,1]: x 1, y 1,, x n, y n If x i > y i, exchange the two values Pr(y i r) = r 2 Sort the (x,y) pairs by increasing y-value; call them again (x 1,y 1 ), (x 2,y 2 ), For all k, vertex k chooses that i k as neighbor which satisfies y i-1 x k < y i Note: x k is uniform in [0,y k ] For m 2: Generate G mn as for m=1, merge each m consecutive nodes Advantage: Many independent random variables, not a sequential process 21
Recent Result: Async. Rumor Spreading Synchronized rumor spreading: Each node in each round calls one neighbor not realistic Asynchronous rumor spreading: Each node runs a Poisson process to determine when it calls a neighbor Rate 1: expected waiting time between calls one unit of time ( same call intensity as in the synchronized version) Classic result: Async. rumor spreading takes Θ(log n) time on complete graphs, hypercubes, random graphs, [both to inform all and to inform most nodes] Our result (SWAT 12): Asynchronous rumor spreading informs most nodes of the PA graph in O((log n) 1/2 ) time 22
Summary: Rumor Spreading in PA Graphs Theorem: Randomized rumor spreading in the push-pull model informs the PA graph G n (with m 2) with high probability in Θ(log n) rounds when choosing neighbors uniformly at random Θ(log n / loglog n) rounds without double-contacts asynchronous: most nodes informed after O((log n) 1/2 ) rounds Explanation: Interaction between hubs and poor nodes (constant degree) hubs are available to be called poor nodes quickly transport the news from one neighbor to all others Difference visible in experiments: Thanks! 23