Local Update Algorithms for Random Graphs Romaric Duvignau ees AL - - PowerPoint PPT Presentation

local update algorithms for random graphs
SMART_READER_LITE
LIVE PREVIEW

Local Update Algorithms for Random Graphs Romaric Duvignau ees AL - - PowerPoint PPT Presentation

Local Update Algorithms for Random Graphs Romaric Duvignau ees AL Journ EA 2014 March 17, 2014 Joint Work with Philippe Duchon Overview Introduction Update Algorithms Deletion Algorithms Insertion Algorithms Conclusion Romaric


slide-1
SLIDE 1

Local Update Algorithms for Random Graphs

Romaric Duvignau

Journ´ ees AL´ EA 2014

March 17, 2014 Joint Work with Philippe Duchon

slide-2
SLIDE 2

Overview

Introduction Update Algorithms

Deletion Algorithms Insertion Algorithms

Conclusion

Romaric Duvignau Local Update Algorithms for Random Graphs 0 / 11

slide-3
SLIDE 3

General Setting

Context and Motivations Peer-to-Peer Network (structure maintained locally) Insertion and Deletion : dependence on the update sequence Malicious update sequence may perturb the network Difficulty in designing/analysing update algorithms Our suggestion : maintain exactly a given distribution for the network

Romaric Duvignau Local Update Algorithms for Random Graphs 1 / 11

slide-4
SLIDE 4

General Setting

Context and Motivations Peer-to-Peer Network (structure maintained locally) Insertion and Deletion : dependence on the update sequence Malicious update sequence may perturb the network Difficulty in designing/analysing update algorithms Our suggestion : maintain exactly a given distribution for the network Distribution-preserving update algorithms The network is modelled as a random graph G For each possible vertex set V , G should follow a given target distribution µV , which is preserved through updates :

Insertion: If G ∼ µV and u ∈ V then I(G, u) ∼ µV ∪{u} Deletion: If G ∼ µV and u ∈ V then D(G, u) ∼ µV \{u}

No probabilistic model for update sequences

Romaric Duvignau Local Update Algorithms for Random Graphs 1 / 11

slide-5
SLIDE 5

Our graph model

k-out graphs Simple directed graphs with vertices of outdegree exactly k Good properties (low distances, etc) under the uniform distribution νV : All N+

G (v) are independent and each N+ G (v)

is a uniform k-subset of V − v

Romaric Duvignau Local Update Algorithms for Random Graphs 2 / 11

slide-6
SLIDE 6

Our graph model

k-out graphs Simple directed graphs with vertices of outdegree exactly k Good properties (low distances, etc) under the uniform distribution νV : All N+

G (v) are independent and each N+ G (v)

is a uniform k-subset of V − v Some properties of uniform n-vertices k-out graphs Indegrees follow the Binomial(n − 1,

k n−1) distribution

Connected with asymptotic probability 1

Romaric Duvignau Local Update Algorithms for Random Graphs 2 / 11

slide-7
SLIDE 7

Our graph model

k-out graphs Simple directed graphs with vertices of outdegree exactly k Good properties (low distances, etc) under the uniform distribution νV : All N+

G (v) are independent and each N+ G (v)

is a uniform k-subset of V − v Some properties of uniform n-vertices k-out graphs Indegrees follow the Binomial(n − 1,

k n−1) distribution

Connected with asymptotic probability 1 Our goal: Local update algorithms Given a uniform k-out graph G over V : Deletion of u ∈ V: build a uniform k-out graph over V \ {u} Insertion of u ∈ V: build a uniform k-out graph over V ∪ {u}

Romaric Duvignau Local Update Algorithms for Random Graphs 2 / 11

slide-8
SLIDE 8

Our decentralized and cost model

Decentralized model Only use local knowledge and the size of the graph Access to a global primitive RandomVertex() that returns a uniform node of the vertex set

Romaric Duvignau Local Update Algorithms for Random Graphs 3 / 11

slide-9
SLIDE 9

Our decentralized and cost model

Decentralized model Only use local knowledge and the size of the graph Access to a global primitive RandomVertex() that returns a uniform node of the vertex set RandomVertex(): RV for short Costly primitive Cost of an update algorithm = expected number of calls to RV

Romaric Duvignau Local Update Algorithms for Random Graphs 3 / 11

slide-10
SLIDE 10

Our decentralized and cost model

Decentralized model Only use local knowledge and the size of the graph Access to a global primitive RandomVertex() that returns a uniform node of the vertex set RandomVertex(): RV for short Costly primitive Cost of an update algorithm = expected number of calls to RV Our algorithms Minimize the symmetric difference between the input G and the output G ′ Constant expected time

Romaric Duvignau Local Update Algorithms for Random Graphs 3 / 11

slide-11
SLIDE 11

Our results (best algorithms)

Optimal local update algorithms: Deletion algorithm

  • (1) calls to RV

Insertion algorithm k calls to RV

Romaric Duvignau Local Update Algorithms for Random Graphs 4 / 11

slide-12
SLIDE 12

Overview

Introduction Update Algorithms

Deletion Algorithms Insertion Algorithms

Conclusion

Romaric Duvignau Local Update Algorithms for Random Graphs 4 / 11

slide-13
SLIDE 13

Deletion Algorithm: Simple Algorithm

Deletion of vertex 2 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 5 / 11

slide-14
SLIDE 14

Deletion Algorithm: Simple Algorithm

Deletion of vertex 2 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 5 / 11

slide-15
SLIDE 15

Deletion Algorithm: Simple Algorithm

Deletion of vertex 2 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 5 / 11

slide-16
SLIDE 16

Deletion Algorithm: Simple Algorithm

Deletion of vertex 2 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 5 / 11

slide-17
SLIDE 17

Deletion Algorithm: Simple Algorithm

Deletion of vertex 2 1 2 3 4 5 RV RV RV

Romaric Duvignau Local Update Algorithms for Random Graphs 5 / 11

slide-18
SLIDE 18

Deletion Algorithm: Simple Algorithm

Deletion of vertex 2 1 2 3 4 5 RV RV RV The simple solution Randomly redirect loose edges, avoiding incompatible choices Asymptotic cost k u RVA RVA

Romaric Duvignau Local Update Algorithms for Random Graphs 5 / 11

slide-19
SLIDE 19

Deletion Algorithm: A better algorithm ?

Deletion of vertex 2 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 6 / 11

slide-20
SLIDE 20

Deletion Algorithm: A better algorithm ?

Deletion of vertex 2 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 6 / 11

slide-21
SLIDE 21

Deletion Algorithm: A better algorithm ?

Deletion of vertex 2 1 2 3 4 5 Try 0 Try 1

Romaric Duvignau Local Update Algorithms for Random Graphs 6 / 11

slide-22
SLIDE 22

Deletion Algorithm: A better algorithm ?

Deletion of vertex 2 1 2 3 4 5 RV

Romaric Duvignau Local Update Algorithms for Random Graphs 6 / 11

slide-23
SLIDE 23

Deletion Algorithm: A better algorithm ?

Deletion of vertex 2 1 2 3 4 5 RV Suggestions must be independent, and can be made so

Romaric Duvignau Local Update Algorithms for Random Graphs 6 / 11

slide-24
SLIDE 24

Deletion Algorithm: A better algorithm ?

Deletion of vertex 2 1 2 3 4 5 RV Suggestions must be independent, and can be made so Second algorithm Use N+(u) to save calls to RV, while preserving independence between suggestions Asymptotic Cost: k ·

  • e−k · kk

k!

  • k

Romaric Duvignau Local Update Algorithms for Random Graphs 6 / 11

slide-25
SLIDE 25

Deletion Algorithm: what about re-using N−(u) ?

Best Algorithm: the typical case u P1 P2 P3 P4 S3 S2 S1

Romaric Duvignau Local Update Algorithms for Random Graphs 7 / 11

slide-26
SLIDE 26

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-27
SLIDE 27

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-28
SLIDE 28

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-29
SLIDE 29

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

1 n−1−k

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-30
SLIDE 30

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

1 n−1−k

u Pi Pi+1 Pi+1 ∈ N+

G (Pi)

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-31
SLIDE 31

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

1 n−1−k

u Pi Pi+1 Pi+1 ∈ N+

G (Pi)

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-32
SLIDE 32

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

1 n−1−k

u Pi Pi+1 Pi+1 ∈ N+

G (Pi)

u Pi Pi+1 Pi+1 ∈ N+

G (Pi)

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-33
SLIDE 33

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

1 n−1−k

u Pi Pi+1 Pi+1 ∈ N+

G (Pi)

u Pi Pi+1 RVA Pi+1 ∈ N+

G (Pi)

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-34
SLIDE 34

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

1 n−1−k

u Pi Pi+1 Pi+1 ∈ N+

G (Pi)

u Pi Pi+1 RVA Pi+1 ∈ N+

G (Pi)

u PL S3 S2 S1

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-35
SLIDE 35

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

1 n−1−k

u Pi Pi+1 Pi+1 ∈ N+

G (Pi)

u Pi Pi+1 RVA Pi+1 ∈ N+

G (Pi)

u PL S3 S2 S1

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-36
SLIDE 36

Deletion Algorithm: how to redirect loose edges ?

L = |N−

G (u)| and 1 ≤ i ≤ L − 1

u Pi P2 Pi−1 Pi−1 Pi−2 . . . P2 P1

1 n−1−k

u Pi Pi+1 Pi+1 ∈ N+

G (Pi)

u Pi Pi+1 RVA Pi+1 ∈ N+

G (Pi)

u PL S3 S2 S1 Total cost is o(1).

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-37
SLIDE 37

Overview

Introduction Update Algorithms

Deletion Algorithms Insertion Algorithms

Conclusion

Romaric Duvignau Local Update Algorithms for Random Graphs 8 / 11

slide-38
SLIDE 38

Insertion Algorithm: Simple insertion

Insertion of vertex 5 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 9 / 11

slide-39
SLIDE 39

Insertion Algorithm: Simple insertion

Insertion of vertex 5 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 9 / 11

slide-40
SLIDE 40

Insertion Algorithm: Simple insertion

Insertion of vertex 5 1 2 3 4 5

Romaric Duvignau Local Update Algorithms for Random Graphs 9 / 11

slide-41
SLIDE 41

Insertion Algorithm: Simple insertion

Insertion of vertex 5 1 2 3 4 5 Simple Insertion Algorithm Draw k distinct vertices as successors, using RV Draw X ∼ Binomial(n, k/n), then pick X distinct random vertices as predecessors, and steal one edge from each of them Asymptotic cost: k + k

Romaric Duvignau Local Update Algorithms for Random Graphs 9 / 11

slide-42
SLIDE 42

Insertion Algorithm: Using similar ideas as deletion

Best insertion algorithm Build first the predecessors of u by:

Choosing the number of predecessors using Binomial(n, k/n) Starting from a call to RV Using the lost vertex of the redirected edge to save some calls to RV Last predecessor is used to produce a first successor for u

Then choose the k − 1 other successors of u using RV Cost and optimality Asymptotic Cost: k Optimal asymptotic cost, among bounded expected time algorithms

Romaric Duvignau Local Update Algorithms for Random Graphs 10 / 11

slide-43
SLIDE 43

Overview

Introduction Update Algorithms

Deletion Algorithms Insertion Algorithms

Conclusion

Romaric Duvignau Local Update Algorithms for Random Graphs 10 / 11

slide-44
SLIDE 44

Conclusion

Distribution-preserving algorithms and k-out graphs Precise definition of distribution-preserving algorithms Several insertion and deletion algorithms for k-out graphs The most efficient algorithms are asymptotically optimal Extension to more complex models Some fixed distribution for vertex out-degrees Undirected edges: e.g. regular graphs (difficult) or pairing models (easier) Geometric models: distribution of the network depends on some point set V Connected works Possibility to maintain k-out graphs without knowing the size Expensive cost: difficult to simulate Binomial(n, k/n)

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-45
SLIDE 45

Thank you

Introduction Update Algorithms

Deletion Algorithms Insertion Algorithms

Conclusion Thank you for your attention

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-46
SLIDE 46

Connected works

Without knowledge of the size ? Our algorithms need to simulate Bernoulli(a/(n − b)) and Binomial(n, k/n) using only RV Bernoulli(a/(n − b)) can be simulated by one call to RV, using two sets A, B ⊂ V such that |A| = a, |B| = b and A ∩ B = ∅ With this simulation, all deletion/insertion algorithms presented here have the same cost: k for deletion, 2k + the cost of simulating the Binomial for insertion Binomial(n, k/n) is known to be simulable but actually only in O(n) expected calls to RV Special cases Binomial(n, 1/n) can be simulated in 3.2 calls to RV

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-47
SLIDE 47

Deletion Algorithm: Del2

Del2 Schema u P1 P2 P3 P4 S1 S2 S3 RV Del2 Algorithm For 1 ≤ i ≤ k, suggest to Pi:

With probability i−1

n−1, a uniform vertex of {P1, . . . , Pi−1}

With the remaining probability, Si

For any further predecessors and unsuccessful suggestions, use RV instead

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-48
SLIDE 48

Deletion Algorithm: Del2

Del2 Schema u P1 P2 P3 P4 S1 S2 S3 RV Cost Total asymptotic cost : k ·

  • e−k · kk

k!

  • k

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-49
SLIDE 49

Deletion Algorithm: Del2

Del2 Schema u P1 P2 P3 P4 S1 S2 S3 RVA

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-50
SLIDE 50

Deletion Algorithm: Del2

Del2 Schema u P1 P2 P3 P4 S1 S2 S3 RVA

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-51
SLIDE 51

Deletion Algorithm: Del2

Del2 Schema u P1 P2 P3 P4 S1 S2 S3

1

1 n−1

1 −

1 n−1 1 n−1 1 n−1

1 −

2 n−1

RVA

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-52
SLIDE 52

Deletion Algorithm: Del2

Del2 Schema u P1 P2 P3 P4 S1 S2 S3

1

1 n−1

1 −

1 n−1 1 n−1 1 n−1

1 −

2 n−1

RVA Cost Total asymptotic cost : k ·

  • e−k · kk

k!

  • k

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-53
SLIDE 53

Deletion Algorithm: Del3 algorithm

Del3 Algorithm Replace u in Pi’s neighbourhood by (in order):

1

One of the j ≤ i − 1 acceptable and already processed predecessors, with probability j/(n − 1 − k)

2

Pi+1, if the edge (Pi, Pi+1) does not already exist

3

Some call to RV avoiding the j acceptable predecessors and Pi’s successors, if (2) fails

For the last predecessor, replace u by one of u’s successors (then some call to RV if the suggestion is not accepted)

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-54
SLIDE 54

Deletion Algorithm: Del3 algorithm

Del3 Algorithm Replace u in Pi’s neighbourhood by (in order):

1

One of the j ≤ i − 1 acceptable and already processed predecessors, with probability j/(n − 1 − k)

2

Pi+1, if the edge (Pi, Pi+1) does not already exist

3

Some call to RV avoiding the j acceptable predecessors and Pi’s successors, if (2) fails

For the last predecessor, replace u by one of u’s successors (then some call to RV if the suggestion is not accepted) Cost With probability 1 − O( 1

n), we do not call RV at all

Total cost is o(1)

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-55
SLIDE 55

Insertion Algorithm: using similar ideas as Del3

Ins2 Schema u P1 P2 P3 P4 RV S1 S2 RV S3 RV

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-56
SLIDE 56

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-57
SLIDE 57

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-58
SLIDE 58

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-59
SLIDE 59

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-60
SLIDE 60

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV u Pi Di Di ∈ {P1, . . . , Pi−1} L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-61
SLIDE 61

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV u Pi Di Di ∈ {P1, . . . , Pi−1} L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-62
SLIDE 62

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV u Pi Di RVA Di ∈ {P1, . . . , Pi−1} Di ∈ {P1, . . . , Pi−1} L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-63
SLIDE 63

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV u Pi Di RVA Di ∈ {P1, . . . , Pi−1} Di ∈ {P1, . . . , Pi−1} u PL DL L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-64
SLIDE 64

Insertion Algorithm: how to build N−

G ′(u)

How to chose Pi+1 ? u Pi Di P2

1 n−i

Pi−1 . . . P2 P1 RV u Pi Di RVA Di ∈ {P1, . . . , Pi−1} Di ∈ {P1, . . . , Pi−1} u PL DL

k n

1 − k

n

L = |N−

G (u)| ∼ Binomial(n, k/n) and 2 ≤ i ≤ L

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-65
SLIDE 65

Insertion Algorithm: Cost and optimality of Ins2 algorithm

Cost of Ins2 Algorithm One call to RV is needed to start the algorithm With probability 1 − O(1/n), no calls to RV is needed in order to find Pi+1 and k − 1 calls are enough for the last step The asymptotic total cost is then 1 + (k − 1)

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-66
SLIDE 66

Insertion Algorithm: Cost and optimality of Ins2 algorithm

Cost of Ins2 Algorithm One call to RV is needed to start the algorithm With probability 1 − O(1/n), no calls to RV is needed in order to find Pi+1 and k − 1 calls are enough for the last step The asymptotic total cost is then 1 + (k − 1) Optimality (sketch) of Ins2 Algorithm By counting possible graphs, we get that k log2(n) + O(1) new bits of information are needed to properly insert a vertex Each call to RV gives log2(n) new bits of information Since other sources of randomness are available, one call to RV may be sufficient but results in a O(n) algorithm With asymptotic constant expected time complexity, k calls are needed

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-67
SLIDE 67

Insertion Algorithm: Ins2 algorithm

Ins2 Algorithm Choose L ∼ Binomial(n, k/n), then build a L-subset P = P1, P2, . . . PL over V for u’s predecessors P1 is obtained through RV Then, for each 1 ≤ i ≤ L: one of Pi’s outgoing edge is chosen to be redirected to u, and we keep track of Di the deleted destination, then Pi+1 is obtained by (in order):

1

One of the j ≤ k − 1 acceptable vertices among N+(Pi), with probability j/(n − i)

2

Di, if it is acceptable

3

Some call to RV avoiding P1, . . . , Pi and N+

G (Pi), if (2) fails

Once all predecessors have been chosen, the first successor for u is obtained as follows:

1

One vertex among N+(PL) \ {DL} ∪ {PL} is chosen uniformly with probability k/n

2

“DL” is used otherwise with the remaining probability

Finally, the remaining k − 1 successors are obtained using RV

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11

slide-68
SLIDE 68

Distributed Model of computation

Local features Deletion : need only to examine the underlying undirected graph at distance 2 from u Insertions : need to examine neighborhoods of vertices returned by RV or along short paths Possible implementation in a decentralized message-passing model Assumptions : Knowing a vertex identity is sufficient to contact it and we have access to the RV primitive Out of the scope of this work Unreliable network Concurrency

Romaric Duvignau Local Update Algorithms for Random Graphs 11 / 11