Randomized Rumour Spreading on Random k -trees Abbas Mehrabian - - PowerPoint PPT Presentation

randomized rumour spreading on random k trees
SMART_READER_LITE
LIVE PREVIEW

Randomized Rumour Spreading on Random k -trees Abbas Mehrabian - - PowerPoint PPT Presentation

Randomized Rumour Spreading on Random k -trees Abbas Mehrabian amehrabi@uwaterloo.ca University of Waterloo 5 May 2014 Monash University Abbas (Waterloo) Rumour spreading 5 May 1 / 58 Protocol definition Demers, Gealy, Greene, Hauser,


slide-1
SLIDE 1

Randomized Rumour Spreading on Random k-trees

Abbas Mehrabian

amehrabi@uwaterloo.ca

University of Waterloo

5 May 2014 Monash University

Abbas (Waterloo) Rumour spreading 5 May 1 / 58

slide-2
SLIDE 2
slide-3
SLIDE 3
slide-4
SLIDE 4
slide-5
SLIDE 5
slide-6
SLIDE 6
slide-7
SLIDE 7
slide-8
SLIDE 8
slide-9
SLIDE 9

Protocol definition

Demers, Gealy, Greene, Hauser, Irish, Larson, Manning, Shenker, Sturgis, Swinehart, Terry, Woods’87

  • 1. The ground is a simple connected graph.
  • 2. At time 0, one vertex knows a rumour.
  • 3. At each time-step 1, 2, . . . , every informed vertex tells the rumour

to a random neighbour.

Abbas (Waterloo) Rumour spreading 5 May 9 / 58

slide-10
SLIDE 10

Protocol definition

Demers, Gealy, Greene, Hauser, Irish, Larson, Manning, Shenker, Sturgis, Swinehart, Terry, Woods’87

  • 1. The ground is a simple connected graph.
  • 2. At time 0, one vertex knows a rumour.
  • 3. At each time-step 1, 2, . . . , every informed vertex tells the rumour

to a random neighbour. Remark 1. Informed vertex may call a neighbour in consecutive steps. Remark 2. If a vertex receives the rumour at time t, it starts passing it from time t + 1.

Abbas (Waterloo) Rumour spreading 5 May 9 / 58

slide-11
SLIDE 11

Protocol definition

Demers, Gealy, Greene, Hauser, Irish, Larson, Manning, Shenker, Sturgis, Swinehart, Terry, Woods’87

  • 1. The ground is a simple connected graph.
  • 2. At time 0, one vertex knows a rumour.
  • 3. At each time-step 1, 2, . . . , every informed vertex tells the rumour

to a random neighbour. Remark 1. Informed vertex may call a neighbour in consecutive steps. Remark 2. If a vertex receives the rumour at time t, it starts passing it from time t + 1. inform-time(v): the first time v learns the rumour. Spread Time: the first time everyone knows the rumour.

Abbas (Waterloo) Rumour spreading 5 May 9 / 58

slide-12
SLIDE 12

Application: distributed computing

Abbas (Waterloo) Rumour spreading 5 May 10 / 58

slide-13
SLIDE 13

Application: distributed computing

Rumour spreading advantages: Simplicity, locality, no memory Scalability, reasonable link loads Robustness

Abbas (Waterloo) Rumour spreading 5 May 10 / 58

slide-14
SLIDE 14

Example: a path

Abbas (Waterloo) Rumour spreading 5 May 11 / 58

slide-15
SLIDE 15

Example: a path

inform − time(0) = 0

Abbas (Waterloo) Rumour spreading 5 May 11 / 58

slide-16
SLIDE 16

Example: a path

inform − time(0) = 0 inform − time(1) = 1

Abbas (Waterloo) Rumour spreading 5 May 12 / 58

slide-17
SLIDE 17

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(1/2)

Abbas (Waterloo) Rumour spreading 5 May 13 / 58

slide-18
SLIDE 18

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(1/2) inform − time(3) = 1 + Geo(1/2) + Geo(1/2)

Abbas (Waterloo) Rumour spreading 5 May 14 / 58

slide-19
SLIDE 19

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(1/2) inform − time(3) = 1 + Geo(1/2) + Geo(1/2) inform − time(4) = 1 + Geo(1/2) + Geo(1/2) + Geo(1/2)

Abbas (Waterloo) Rumour spreading 5 May 15 / 58

slide-20
SLIDE 20

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(1/2) inform − time(3) = 1 + Geo(1/2) + Geo(1/2) inform − time(4) = 1 + Geo(1/2) + Geo(1/2) + Geo(1/2) E[Spread Time] = 1 + 3 × 2 = 7

Abbas (Waterloo) Rumour spreading 5 May 16 / 58

slide-21
SLIDE 21

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(1/2) inform − time(3) = 1 + Geo(1/2) + Geo(1/2) inform − time(4) = 1 + Geo(1/2) + Geo(1/2) + Geo(1/2) E[Spread Time] = 1 + 3 × 2 = 7 = 2n − 3

Abbas (Waterloo) Rumour spreading 5 May 17 / 58

slide-22
SLIDE 22

Example: a star

Abbas (Waterloo) Rumour spreading 5 May 18 / 58

slide-23
SLIDE 23

Example: a star

When k + 1 vertices are informed and n − 1 − k uninformed, after

n−1 n−1−k more rounds a new vertex will be informed.

Abbas (Waterloo) Rumour spreading 5 May 18 / 58

slide-24
SLIDE 24

Example: a star

When k + 1 vertices are informed and n − 1 − k uninformed, after

n−1 n−1−k more rounds a new vertex will be informed.

E[Spread Time] = n − 1 n − 1 + n − 1 n − 2 + · · · + n − 1 2 + n − 1 1 ≈ n ln n

Abbas (Waterloo) Rumour spreading 5 May 18 / 58

slide-25
SLIDE 25

Example: a complete graph

Abbas (Waterloo) Rumour spreading 5 May 19 / 58

slide-26
SLIDE 26

Example: a complete graph

E[Spread Time] ≈ log2 n + ln n [Pittel ′87]

Abbas (Waterloo) Rumour spreading 5 May 19 / 58

slide-27
SLIDE 27

Other known results

With probability approaching 1, for any starting vertex,

  • 1. max{diameter(G), log2 n} ≤ Spread Time ≤ (1 + o(1))n ln n

[Elsässer and Sauerwald’06]

Abbas (Waterloo) Rumour spreading 5 May 20 / 58

slide-28
SLIDE 28

Other known results

With probability approaching 1, for any starting vertex,

  • 1. max{diameter(G), log2 n} ≤ Spread Time ≤ (1 + o(1))n ln n

[Elsässer and Sauerwald’06]

  • 2. Spread Time of Hd = Θ(d)

[Feige, Peleg, Raghavan, Upfal’90] H3

Abbas (Waterloo) Rumour spreading 5 May 20 / 58

slide-29
SLIDE 29

Other known results

With probability approaching 1, for any starting vertex,

  • 1. max{diameter(G), log2 n} ≤ Spread Time ≤ (1 + o(1))n ln n

[Elsässer and Sauerwald’06]

  • 2. Spread Time of Hd = Θ(d)

[Feige, Peleg, Raghavan, Upfal’90] H3

  • 3. If pn ≥ (1 + ε) ln n then Spread Time of G(n, p) = Θ(log n)

[Feige et al.’90]

Abbas (Waterloo) Rumour spreading 5 May 20 / 58

slide-30
SLIDE 30

Improving the protocol Uninformed vertices ask the informed ones...

Abbas (Waterloo) Rumour spreading 5 May 21 / 58

slide-31
SLIDE 31

The push-pull protocol

Demers, Gealy, Greene, Hauser, Irish, Larson, Manning, Shenker, Sturgis, Swinehart, Terry, Woods’87

  • 1. The ground is a simple connected graph.
  • 2. At time 0, one vertex knows a rumour.
  • 3. At each time-step 1, 2, . . . ,

every informed vertex sends the rumour to a random neighbour (PUSH); and every uninformed vertex queries a random neighbour about the rumour (PULL).

Abbas (Waterloo) Rumour spreading 5 May 22 / 58

slide-32
SLIDE 32

The push-pull protocol

Demers, Gealy, Greene, Hauser, Irish, Larson, Manning, Shenker, Sturgis, Swinehart, Terry, Woods’87

  • 1. The ground is a simple connected graph.
  • 2. At time 0, one vertex knows a rumour.
  • 3. At each time-step 1, 2, . . . ,

every informed vertex sends the rumour to a random neighbour (PUSH); and every uninformed vertex queries a random neighbour about the rumour (PULL). Remark 1. Vertices may call the same neighbour in consecutive steps. Remark 2. If a vertex receives the rumour at time t, it starts passing it from time t + 1. Spread Time: the first time everyone knows the rumour.

Abbas (Waterloo) Rumour spreading 5 May 22 / 58

slide-33
SLIDE 33

Example: a star

push protocol: n ln n rounds push-pull protocol: 1 or 2 rounds

Abbas (Waterloo) Rumour spreading 5 May 23 / 58

slide-34
SLIDE 34

Example: a path

Abbas (Waterloo) Rumour spreading 5 May 24 / 58

slide-35
SLIDE 35

Example: a path

inform − time(0) = 0

Abbas (Waterloo) Rumour spreading 5 May 24 / 58

slide-36
SLIDE 36

Example: a path

inform − time(0) = 0 inform − time(1) = 1

Abbas (Waterloo) Rumour spreading 5 May 25 / 58

slide-37
SLIDE 37

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + min{Geo(1/2), Geo(1/2)} = 1 + Geo(3/4)

Abbas (Waterloo) Rumour spreading 5 May 26 / 58

slide-38
SLIDE 38

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(3/4) inform − time(3) = 1 + Geo(3/4) + Geo(3/4)

Abbas (Waterloo) Rumour spreading 5 May 27 / 58

slide-39
SLIDE 39

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(3/4) inform − time(3) = 1 + Geo(3/4) + Geo(3/4) inform − time(4) = 1 + Geo(3/4) + Geo(3/4) + 1

Abbas (Waterloo) Rumour spreading 5 May 28 / 58

slide-40
SLIDE 40

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(3/4) inform − time(3) = 1 + Geo(3/4) + Geo(3/4) inform − time(4) = 1 + Geo(3/4) + Geo(3/4) + 1 E[Spread Time] = 2 + 2 × 4/3 = 14/3

Abbas (Waterloo) Rumour spreading 5 May 29 / 58

slide-41
SLIDE 41

Example: a path

inform − time(0) = 0 inform − time(1) = 1 inform − time(2) = 1 + Geo(3/4) inform − time(3) = 1 + Geo(3/4) + Geo(3/4) inform − time(4) = 1 + Geo(3/4) + Geo(3/4) + 1 E[Spread Time] = 2 + 2 × 4/3 = 14/3 = 4 3n − 2 (versus 2n − 3 for push)

Abbas (Waterloo) Rumour spreading 5 May 30 / 58

slide-42
SLIDE 42

Example: a complete graph

push: log2 n + ln n + o(log n) [Pittel’87] push-pull: ≤ log3 n + o(log n) [Karp, Schindelhauer, Shenker, Vöcking’00]

Abbas (Waterloo) Rumour spreading 5 May 31 / 58

slide-43
SLIDE 43

Other results on push-pull protocol

  • 1. Barabasi-Albert preferential attachment graph has

Spread Time Θ(log n), PUSH alone has Spread Time poly(n).

  • 2. Random graphs with power-law expected degrees

(a.k.a. the Chung-Lu model) with exponent ∈ (2, 3) has Spread Time Θ(log n).

  • 3. If Φ is Cheeger constant (conductance)

and α is the vertex expansion (vertex isoperimetric number), Spread Time ≤ C max{Φ−1 log n, α−1 log2 n}.

Abbas (Waterloo) Rumour spreading 5 May 32 / 58

slide-44
SLIDE 44

Let’s see some simulation results...

Abbas (Waterloo) Rumour spreading 5 May 33 / 58

slide-45
SLIDE 45
slide-46
SLIDE 46

n ≈ 5 × 107, 64n edges

slide-47
SLIDE 47

Reference

Graphs in the previous slides were taken from: Doerr, Fouz, Friedrich, “Why rumors spread so quickly in social networks,” Communications of the ACM, 2012

Abbas (Waterloo) Rumour spreading 5 May 36 / 58

slide-48
SLIDE 48

Some open problems

  • 1. Design a (deterministic) approximation algorithm for finding

the ‘average’ Spread Time of a given graph.

Abbas (Waterloo) Rumour spreading 5 May 37 / 58

slide-49
SLIDE 49

Some open problems

  • 1. Design a (deterministic) approximation algorithm for finding

the ‘average’ Spread Time of a given graph.

  • 2. Is the average Spread Time at most linear?!

n/4 + o(n) 4n/3 + o(n)

Abbas (Waterloo) Rumour spreading 5 May 37 / 58

slide-50
SLIDE 50

Some open problems

  • 1. Design a (deterministic) approximation algorithm for finding

the ‘average’ Spread Time of a given graph.

  • 2. Is the average Spread Time at most linear?!

n/4 + o(n) 4n/3 + o(n)

  • 3. These questions may be asked about the ‘asynchronous’ model.

Abbas (Waterloo) Rumour spreading 5 May 37 / 58

slide-51
SLIDE 51

Some open problems

  • 1. Design a (deterministic) approximation algorithm for finding

the ‘average’ Spread Time of a given graph.

  • 2. Is the average Spread Time at most linear?!

n/4 + o(n) 4n/3 + o(n)

  • 3. These questions may be asked about the ‘asynchronous’ model.

Abbas (Waterloo) Rumour spreading 5 May 37 / 58

slide-52
SLIDE 52

Part II: Push-Pull on Random k-trees

joint work with Ali Pourmiri

Abbas (Waterloo) Rumour spreading 5 May 38 / 58

slide-53
SLIDE 53

Random k-trees

Example (k = 3)

Abbas (Waterloo) Rumour spreading 5 May 39 / 58

slide-54
SLIDE 54

Random k-trees

Example (k = 3)

Abbas (Waterloo) Rumour spreading 5 May 40 / 58

slide-55
SLIDE 55

Random k-trees

Example (k = 3)

Abbas (Waterloo) Rumour spreading 5 May 41 / 58

slide-56
SLIDE 56

Random k-trees

Example (k = 3)

Abbas (Waterloo) Rumour spreading 5 May 42 / 58

slide-57
SLIDE 57

Some properties of random k-trees

Logarithmic diameter Power law degree sequence: fraction of vertices with degree d ≈ d−2−

1 k−1

Constant tree-width k Clustering coefficient Ω(1) Conductance and vertex expansion o(1)

Abbas (Waterloo) Rumour spreading 5 May 43 / 58

slide-58
SLIDE 58

Self-similarity of random k-trees

Abbas (Waterloo) Rumour spreading 5 May 44 / 58

slide-59
SLIDE 59

Self-similarity of random k-trees

Abbas (Waterloo) Rumour spreading 5 May 45 / 58

slide-60
SLIDE 60

Self-similarity of random k-trees

Abbas (Waterloo) Rumour spreading 5 May 46 / 58

slide-61
SLIDE 61

Self-similarity of random k-trees

Abbas (Waterloo) Rumour spreading 5 May 47 / 58

slide-62
SLIDE 62

Self-similarity of random k-trees

Abbas (Waterloo) Rumour spreading 5 May 48 / 58

slide-63
SLIDE 63

Self-similarity of random k-trees

Abbas (Waterloo) Rumour spreading 5 May 49 / 58

slide-64
SLIDE 64

Self-similarity of random k-trees

Abbas (Waterloo) Rumour spreading 5 May 50 / 58

slide-65
SLIDE 65

Our results

Push-Pull protocol on random k-trees (k > 1 fixed): Theorem (M, Pourmiri’14+) If initially a random vertex knows the rumour, a.a.s. after ln1+3/k n rounds, n − o(n) vertices will know it.

Abbas (Waterloo) Rumour spreading 5 May 51 / 58

slide-66
SLIDE 66

Our results

Push-Pull protocol on random k-trees (k > 1 fixed): Theorem (M, Pourmiri’14+) If initially a random vertex knows the rumour, a.a.s. after ln1+3/k n rounds, n − o(n) vertices will know it. Theorem (M, Pourmiri’14+) If initially a vertex knows the rumour, a.a.s. the average Spread Time is > n1/3k

Abbas (Waterloo) Rumour spreading 5 May 51 / 58

slide-67
SLIDE 67

Proof of upper bound

Lemma Suppose s knows the rumour at time 0, and ∃(s, v)-path s = u0, u1, . . . , ul−1, ul = v s.t. min{deg(ui), deg(ui+1)} ≤ d. Then with prob. ≥ 1 − o(n−2), inform-time(v) ≤ 6d(l + ln n).

Abbas (Waterloo) Rumour spreading 5 May 52 / 58

slide-68
SLIDE 68

Proof of upper bound

Lemma Suppose s knows the rumour at time 0, and ∃(s, v)-path s = u0, u1, . . . , ul−1, ul = v s.t. min{deg(ui), deg(ui+1)} ≤ d. Then with prob. ≥ 1 − o(n−2), inform-time(v) ≤ 6d(l + ln n). Proof. inform − time(v) ≤ min{Geo( 1 d0 ), Geo( 1 d1 )} + · · · + min{Geo( 1 dl−1 ), Geo( 1 dl )} ≤ sum of l independent Geo(1/d) random variables

Abbas (Waterloo) Rumour spreading 5 May 52 / 58

slide-69
SLIDE 69

Proof of upper bound

  • 1. H = graph at round ≈ n ln−2/k n

Abbas (Waterloo) Rumour spreading 5 May 53 / 58

slide-70
SLIDE 70

Proof of upper bound

  • 1. H = graph at round ≈ n ln−2/k n
  • 2. Almost all vertices in small pieces have degrees ≤ d = ln3/k n

Abbas (Waterloo) Rumour spreading 5 May 53 / 58

slide-71
SLIDE 71

Proof of upper bound

  • 1. H = graph at round ≈ n ln−2/k n
  • 2. Almost all vertices in small pieces have degrees ≤ d = ln3/k n
  • 3. An edge uv ∈ E(H) is fast if deg(u) ≤ d or deg(v) ≤ d or u and v have

a common neighbour with degree ≤ d.

Abbas (Waterloo) Rumour spreading 5 May 53 / 58

slide-72
SLIDE 72

Proof of upper bound

  • 1. H = graph at round ≈ n ln−2/k n
  • 2. Almost all vertices in small pieces have degrees ≤ d = ln3/k n
  • 3. An edge uv ∈ E(H) is fast if deg(u) ≤ d or deg(v) ≤ d or u and v have

a common neighbour with degree ≤ d.

  • 4. ∃ an almost-spanning tree of H of height O(ln n) consisting of fast edges.

Abbas (Waterloo) Rumour spreading 5 May 53 / 58

slide-73
SLIDE 73

The upper bound

Push-Pull protocol on random k-trees (k > 1 fixed): Theorem (M, Pourmiri’14+) If initially a random vertex knows the rumour, a.a.s. after ln1+3/k n rounds, n − o(n) vertices will know it.

Abbas (Waterloo) Rumour spreading 5 May 54 / 58

slide-74
SLIDE 74

Proof of lower bound

Definition (D-barrier) Vertices in the two k-cliques have degrees ≥ D.

Abbas (Waterloo) Rumour spreading 5 May 55 / 58

slide-75
SLIDE 75

Proof of lower bound

Definition (D-barrier) Vertices in the two k-cliques have degrees ≥ D. Lemma A random k-tree has a Ω

  • n1−1/k
  • barrier with prob. ≥ Ω
  • n−k

Abbas (Waterloo) Rumour spreading 5 May 55 / 58

slide-76
SLIDE 76

Proof of lower bound

  • 1. H = graph at round m ≈ n

k k+1 Abbas (Waterloo) Rumour spreading 5 May 56 / 58

slide-77
SLIDE 77

Proof of lower bound

  • 1. H = graph at round m ≈ n

k k+1

  • 2. Each small piece has a (n/km)1−1/k-barrier with prob.

  • (n/km)−k

.

Abbas (Waterloo) Rumour spreading 5 May 56 / 58

slide-78
SLIDE 78

Proof of lower bound

  • 1. H = graph at round m ≈ n

k k+1

  • 2. Each small piece has a (n/km)1−1/k-barrier with prob.

  • (n/km)−k

.

  • 3. Since km
  • (n/km)−k

→ ∞ and by independence of pieces, with

  • prob. 1 − o(1) there exists a (n/km)1−1/k-barrier.

Abbas (Waterloo) Rumour spreading 5 May 56 / 58

slide-79
SLIDE 79

The lower bound

Push-Pull protocol on random k-trees (k > 1 fixed): Theorem (M, Pourmiri’14+) If initially a vertex knows the rumour, a.a.s. the average Spread Time is > n1/3k

Abbas (Waterloo) Rumour spreading 5 May 57 / 58

slide-80
SLIDE 80

Some open problems

  • 1. Design a (deterministic) approximation algorithm for finding

the ‘average’ Spread Time of a given graph.

  • 2. Is the average Spread Time at most linear?!
  • 3. These questions may be asked about the ‘asynchronous’ model.

Abbas (Waterloo) Rumour spreading 5 May 58 / 58