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

Upload: simone-gaines

Post on 30-Dec-2015

34 views

Category:

Documents


4 download

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

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