Deterministic communication in unknown networks

45
ACSS2006, T. Radzi k 1 Deterministic communication in unknown networks Selectors, or selective families of sets Deterministic broadcasting in unknown networks Deterministic gossiping in unknown networks

description

Deterministic communication in unknown networks. Selectors, or selective families of sets Deterministic broadcasting in unknown networks Deterministic gossiping in unknown networks. Unknown topology: breaking symmetry. Break symmetry by random choices. Break symmetry using node labels. - PowerPoint PPT Presentation

Transcript of Deterministic communication in unknown networks

ACSS2006, T. Radzik 1

Deterministic communication in unknown networks

• Selectors, or selective families of sets

• Deterministic broadcasting in unknown networks

• Deterministic gossiping in unknown networks

ACSS2006, T. Radzik 2

Unknown topology: breaking symmetry

• Break symmetry by random choices.

• Break symmetry using node labels.

• “Round-Robin” approach: node with label i transmits in step i.

Expensive if we have large node labels.

• For efficient deterministic protocols use selectors.

• Break symmetry using the history of computation.

ACSS2006, T. Radzik 3

Selectors

• Set R selects x from a set Z if R ∩ Z = {x}.

x

RZ

ACSS2006, T. Radzik 4

Selectors

• A set R selects x from a set Z if R ∩ Z = {x}.

• A family of sets F = {R1, R2, …, Rq} selects x from a set Z if Ri ∩ Z = {x}, for some Ri.

x

R2

Z

R3

R1

ACSS2006, T. Radzik 5

Selectors

• A set R selects x from a set Z if R ∩ Z = {x}.

• A family of sets F = {R1, R2, …, Rq} selects x from a set Z if Ri ∩ Z = {x}, for some Ri.

• Let F be a family of subsets of [N] = {1,2,…, N}.

• F is a k-selector, if it selects at least one element in each subset Z of [N] of size ≤ k.

• F is a (k,α)-selector, if it selects in each subset Z of [N] of size ≤ k at least α|Z| distinct elements.

ACSS2006, T. Radzik 6

Selectors as communication patterns

• F = <R1, R2, … , Ri, … , Rq > – a sequence of subsets of [N].

• F defines a q-step protocol:

node (label) x transmits at step i if and only if x is in Ri.

v1

v2 v3 vk

ACSS2006, T. Radzik 7

Selectors as communication patterns

• F = <R1, R2, … , Ri, … , Rq > – a sequence of subsets of [N].

• F defines a q-step protocol:

node (label) x transmits at step i if and only if x is in Ri.

• vi sends a message to v1 if and only if F selects vi from {v1, … , vk}.

v1

v2 v3 vk

: nodes selected by family F

vi

ACSS2006, T. Radzik 8

Strong selectors• (k,1)-selector is called a strong

selector: selects each element in each subset Z of [N] of size ≤ k.

• If all nodes follow a strong (k,1)-selector, then each node of degree less than k receives messages from all neighbours.

v1

v2 v3 vk

ACSS2006, T. Radzik 9

Strong selectors• (k,1)-selector is called a strong

selector: selects each element in each subset Z of [N] of size ≤ k.

• If all nodes follow a strong (k,1)-selector, then each node of degree less than k receives messages from all neighbours.

• Trivial strong selector of size N:

{ {1}, {2}, {3}, …, {N} }

Gives a “Round Robin” phase.

v1

v2 v3 vk

ACSS2006, T. Radzik 10

Strong selectors• (k,1)-selector is called a strong

selector: selects each element in each subset Z of [N] of size ≤ k.

• If all nodes follow a strong (k,1)-selector, then each node of degree less than k receives messages from all neighbours.

• There exists a strong selector of size :)log( 2 NkO

v1

v2 v3 vk

Nk ln2Consider a random family of sets F = {R1, R2, … , Rq}, q = such that each v belongs to Ri with prob. 1/k.

Prob. that there exists set Z of size ≤ k and x in Z such that F doesn’t select x from Z is < 1.

ACSS2006, T. Radzik 11

Strong selectors• (k,1)-selector is called a strong selector:

selects each element in each subset Z of [N] of size ≤ k.

• If all nodes follow a strong (k,1)-selector, then each node of degree less than k receives messages from all neighbours.

• There exists a strong selector of size

• Explicitly constructed strong selector of size [Kautz, Singleton, 1964].

• A strong selector must have size [Chaudhuri, Radhakrishnan, 1986] k < N1/3, [Clementi, Monti, Silvestri, 2001] k < N1/2.

• Strong selectors useful in deterministic gossiping protocols.

)log( 2 NkO

v1

v2 v3 vk

)log( 22 NkO

)log/log( 2 kNk

ACSS2006, T. Radzik 12

Weak selectors

• (k,1/2)-selector is called a weak selector: selects at least half of the elements from each subset Z of [N] of size ≤ k.

• If all nodes follow a weak (k,1/2)-selector, then each node of degree at most k receives messages from at least half of its neighbours.

• There exists a weak selector of size:

• A weak selector must have size [Clementi, Monti, Silvestri, 2001].

• Explicitly constructed weak selector of size [Indyk-2002]

• Weak selectors useful in deterministic broadcasting protocols.

)log( NkO

v1

v2 v3 vk

))/log(( kNk

)()})log(logpolyexp{( )1(okNONkO

ACSS2006, T. Radzik 13

Weak selectors from expanders

• G = (V, W, E) – a bipartite graph, V = [N], W = [M], deg(v) = d, for each v in V.

• G is a (k,ε)-lossless expander, if every subset Z of V of size at most k has at least (1 – ε) d |Z| neighbours.

V:

W:

ACSS2006, T. Radzik 14

Weak selectors from expanders

• G = (V, W, E) – a bipartite graph, V = [N], W = [M], deg(v) = d, for each v in V.

• G is a (k,ε)-lossless expander, if every subset Z of V of size at most k has at least (1 – ε) d |Z| neighbours.

• (k,1/4) lossless expander gives a weak (k,1/2)-selector of size M.

• Explicit construction of (k,ε)-lossless expanders with d = exp{poly log log(N)} and M = O(kd) [Capalbo, Reingold, Vadhan, Wigderson, 2002]

V:

W:

ACSS2006, T. Radzik 15

Deterministic broadcasting in unknown network [Chrobak, Gasieniec, Rytter, 2001]

• Directed network

• Iterated selector: concatenation of copies of a selector

• Protocol:

All active nodes (those who have the message) execute synchronously interleaved iterated weak (2i,1/2)-selectors, for i = 1, 2, … , log n.

(2,1/2)-selectors:

(4,1/2)-selectors: …

(2i,1/2)-selectors:…

ACSS2006, T. Radzik 16

Det. Broadcasting, unknown network (cont.)

v0 v1 v3v2 v4 v5 v6 v7

• Consider an arbitrary simple path (v0, v1, … , vq) from the source, and the (in)-neighbours of nodes v1, … , vq.

• Assign the nodes of the path and their neighbours to the layers. Node vi belongs to layer i. A neighbour w belongs to the highest layer i-1 so that (w,vi) is an edge.

• Show that the message M moves further from the current “front” layer in O(x log n log N) steps, x – size of front layer.

• M reaches the end of path in O(n log n log N) steps.

w

ACSS2006, T. Radzik 17

Deterministic gossiping in unknown network [Gasieniec, Radzik, Xin, 2004]

• Directed network

• O*(nΔ)-time protocol, Δ – maximum in-degree

• O*(n4/3)-time protocol

O*( ) hides a polylog(N) factor

• Could gossiping be done in unknown networks deterministically in O*(n)-time ?

• Randomized gossiping: O(n log4 n) time[Chrobak, Gasieniec, Rytter, 2001]

ACSS2006, T. Radzik 18

Trivial gossiping protocols

• Large labels, from { 1, 2, … , N}:

All nodes follow a strong n-selector n times.

steps.

• Small labels, N=O(n):

n times Round-Robin: node i transmits at step i in each round.

steps.

v

u

2n

)log()log( 32 NnONnOn

ACSS2006, T. Radzik 19

Collect and disperse

• The nodes keep collecting messages.

• Periodically the nodes which collected many new messages compete for the exclusive right to broadcast (disperse) them to all other nodes. Collecting resumes, when no node with many new messages.

• “Competing” for the right to broadcast is done by a “leader election” protocol, which is based on O(log N) applications of a broadcast protocol.

• Apply O(n log n log N) broadcast protocol.

• If each dispersing of collected messages involves at least k new (not dispersed previously) messages, then the total time for dispersing messages - (n/k) * O(n log n log2N) = O*(n2/k log2N).

• Nodes/messages change from active to dormant.

ACSS2006, T. Radzik 20

Gossiping in O*(nΔ) time

• Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}.

• Gossip1(n,Δ) performs quasi-gossiping.

• Time:Phase I: n/Δ ×O(Δ2 log n) = O*(nΔ);Phase II: O(Δ) ×O(n log3 n) = O*(nΔ).

M1

Mi

M2

Mk

Before Phase I:

ACSS2006, T. Radzik 21

Gossiping in O*(nΔ) time

• Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: {at least every k-th node of a path is dormant}.

• Gossip1(n,Δ) performs quasi-gossiping.

• A dormant node: its initial messages has been delivered to all nodes (during the Disperse(k)).

M1

M1 – Mi

M1,M2

M1 – Mk

After Phase I:

ACSS2006, T. Radzik 22

Gossiping in O*(nΔ) time

• Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}.

• Gossip1(n,Δ) performs quasi-gossiping.

• Time:Phase I: n/Δ ×O(Δ2 log n) = O*(nΔ);Phase II: O(Δ) ×O(n log3 n) = O*(nΔ).

M1

M1 – Mi

M1,M2

M1 – Mkdormant

After Phase II:

ACSS2006, T. Radzik 23

Gossiping in O*(nΔ) time

• Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}.

• Gossip1(n,Δ) performs quasi-gossiping.

• Time:Phase I: n/Δ ×O(Δ2 log n) = O*(nΔ);Phase II: O(Δ) ×O(n log3 n) = O*(nΔ).

M1

M1 – Midormant

M1,M2

M1 – Mk

After Phase II:

ACSS2006, T. Radzik 24

Gossiping in O*(nΔ) time

• Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}.

• Gossip1(n,Δ) has performed “quasi-gossiping:”

each remaining active message is in a dormant node.

M1

M1 – Midormant

M1,M2

M1 – Mk

After Phase II:

ACSS2006, T. Radzik 25

Quasi-gossiping principle

• Quasi-gossiping algorithm: on completion each active message is in a dormant node.

• Full gossiping:

A: quasi-gossiping;

B: repeat all steps from A.

M2

M4

M3

M5

M1

Before stage A:

1

5

4

3

2

ACSS2006, T. Radzik 26

Quasi-gossiping principle

• Quasi-gossiping algorithm: on completion each active message is in a dormant node.

• Full gossiping:

A: quasi-gossiping;

B: repeat all steps from A.

M2,M3,M4

M2,M3,M4,M5

M1,M2,M3,M4

M3,M4,M5

M1,M3,M4

After stage A:

1

5

4

3

2

ACSS2006, T. Radzik 27

Quasi-gossiping principle

• Quasi-gossiping algorithm: on completion each active message is in a dormant node.

• Full gossiping:

A: quasi-gossiping;

B: repeat all steps from A.

M2,M3,M4,M5

M1,M2,M3,M4

Before stage B:

1

5

4

3

2

ACSS2006, T. Radzik 28

Quasi-gossiping principle

• Quasi-gossiping algorithm: on completion each active message is in a dormant node.

• Full gossiping:

A: quasi-gossiping;

B: repeat all steps from A.

M1 – M5

After stage B:

1

5

4

3

2

M1 – M5

M1 – M5

M1 – M5

M1 – M5

ACSS2006, T. Radzik 29

Gossiping in O*(nΔ) time

• Gossip1(n,Δ): Phase I: apply strong Δ-selector k times {messages moved along paths of length k}; Phase II: Disperse(k) {at least every k-th node of a path is dormant}.

• Gossip1(n,Δ) performs quasi-gossiping.

• Number of steps, taking k = n/Δ:

Phase I: k×O*(Δ2) = O*(kΔ2) = O*(nΔ);

Phase II: O(n/k)×O*(n) = O*(n2/k) = O*(nΔ).

ACSS2006, T. Radzik 30

Reduction of in-degrees: 1st round

• After the following communication:

A: Run a weak (n,3/4)-selector,B: Disperse(n/4);

each node has less then n/2 active neighbours.

• After stage A:

ACSS2006, T. Radzik 31

Reduction of in-degrees: 1st round

• After the following communication:

A: Run a weak (n,3/4)-selector,B: Disperse(n/4);

each node has less then n/2 active neighbours.

• After stage B:

ACSS2006, T. Radzik 32

Reduction of in-degrees: next round

• Next perform the following communication:

A: Run a weak (n/2,3/4)-selector on active nodes only,B: Disperse(n/8);

and each node will have less then n/4 active neighbours.

• Before stage A:

ACSS2006, T. Radzik 33

Reduction of in-degrees: more rounds

• Perform more rounds, using weak selectors with geometrically decreasing sizes, until each node has less then k active neighbours.

• Time: All selectors: O*(n);

All disperse operations: (n/k) × O*(n) = O*(n2/ k).

• Apply next Gossip1(n,k) to complete gossiping.

• Total number of steps, taking k = n1/2 :

O*(n2/k) + O*(nk) = O*(n3/2).

ACSS2006, T. Radzik 34

Reduction of in-degrees: more rounds

• Perform more rounds, using weak selectors with geometrically decreasing sizes, until each node has less then k active neighbours.

• Time: All selectors: O*(n);

All disperse operations: (n/k) × O*(n) = O*(n2/ k).

• Apply next Gossip1(n,k) to complete gossiping.

• Total number of steps, taking k = n1/2 :

O*(n2/k) + O*(nk) = O*(n3/2).

ACSS2006, T. Radzik 35

Difficult structures:paths with many back edges

• Let each node have in-degree < k.

• Consider an active path from v to u of length k with all “back” edges.

• How much time is needed for the message from v to reach u along this path?

• If we run a strong k-selector k times, then the time is: O*(k3).

• Can we do this faster? v

u

ACSS2006, T. Radzik 36

Dealing with “blocking” paths

• < k/2 nodes need a selector stronger than (k,1/2)

(k,1/2)-selectors: …

Transmission pattern for a node x:

v

u

ACSS2006, T. Radzik 37

Dealing with “blocking” paths

• < k/2 nodes need a selector stronger than (k,1/2)

(k,1/2)-selectors: …

Transmission pattern for a node x:

v

u

ACSS2006, T. Radzik 38

Dealing with “blocking” paths

• < k/2 nodes need a selector stronger than (k,1/2)

• < k/4 nodes need a selector stronger than (k,3/4)

(k,1/2)-selectors:

(k,3/4)-selectors: …

Transmission pattern for a node x:

v

u

ACSS2006, T. Radzik 39

Dealing with “blocking” paths

• < k/2 nodes need a selector stronger than (k,1/2)

• < k/2i nodes need a selector stronger than (k,1-1/2i)

• Message from v reaches u in O*(k2) time.

(k,1/2)-selectors:

(k,3/4)-selectors: …

(k,1)-selectors: …

Transmission pattern for a node x:

v

u

ACSS2006, T. Radzik 40

Dealing with “blocking” paths

• < k/2 nodes need a selector stronger than (k,1/2)

• < k/2i nodes need a selector stronger than (k,1-1/2i)

• Message from v reaches u in O*(k2) time.

• k-path-selector: the O*(k2)-long prefix of the above pattern.

(k,1/2)-selectors:

(k,3/4)-selectors: …

(k,1)-selectors: …

Transmission pattern for a node x:

v

u

ACSS2006, T. Radzik 41

Gossiping in O*(n4/3)-time

• Phase I: reduce the active neighbourhood of each node to less then k using weak selectors.

• Phase II: reduce the active neighbourhood of each active path to less than k using path selectors.

• At the end of Phase II, quasi-gossiping is completed.

• Time: Phase I: (n/k) × O*(n) = O*(n2/k)

Phase II: log k × O*(k2) + O*(n2/k)

• If k = n2/3, then the total time is O*(n4/3).

ACSS2006, T. Radzik 42

Further work

• Can the O*(n4/3) upper bound on gossiping in directed ad-hoc radio networks be improved?We believe an O*(n) bound will be eventually shown. Some “clustering” (using information about the local structure of the network which the nodes have already learned) seems needed to achieve such a bound.

• Apply selective families taking into account some partial (local) knowledge of the network.

• There are other communication problems (e.g., the wake-up problem) and other variants of the model (e.g., nodes know their neighbours).

ACSS2006, T. Radzik 43

Wake-up problem

• Generalization of broadcasting.

• Nodes may “wake-up” spontaneously, at different times.

• When a node wakes up, it tries to wake-up its neighbours.

• Design a wake-up protocol: at the completion, all nodes must be active.

• The broadcasting problem is a special case of the wake-up problem: only one node (the source) wakes-up spontaneously.

wakes up at 0

wakes up at 7

wakes up at 3

wakes up at 3

ACSS2006, T. Radzik 44

Deterministic Wake-up protocols

• The Wake-up problem needs “shifting” selectors.

• There exists a shifting weak (k,1/2)-selector of size O(k polylog N).

• This implies existence of a deterministic wake-up protocol of length O(n polylog N).

• Can a shifting weak (k,1/2)-selector of size O(k N o(1)) be constructed in polynomial time?

• This would give and explicit wake-up protocol of length O(nN o(1)).

ACSS2006, T. Radzik 45

Nodes know their neighbours

• Broadcasting in depth 2 undirected networks.

• Lower bound Ω(n1/2) [BGV-2004].

• Upper bound O*(n2/3) [KP-2002]

• Selective families together with “clustering” and “local

gossiping” might lead to an O*(n1/2) upper bound.

source