Upload
graceland
View
32
Download
3
Embed Size (px)
DESCRIPTION
A Self-Stabilizing O(n) -Round k -Clustering Algorithm. Stéphane Devismes , VERIMAG. Joint work with …. Ajoy K Datta & Lawrence L Larmore UNLV. Roadmap. Recall on self-stabilization Definition of the problem The solution Conclusion and perspectives. Roadmap. - PowerPoint PPT Presentation
Citation preview
A Self-Stabilizing O(n)-Roundk-Clustering Algorithm
Stéphane Devismes, VERIMAG
QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.QuickTime™ et undécompresseur TIFF (non compressé)sont requis pour visionner cette image.
September 29th 2009 SRDS'2009 2
Joint work with …
QuickTime™ et undécompresseur TIFF (non compressé)
sont requis pour visionner cette image.
QuickTime™ et undécompresseur TIFF (non compressé)
sont requis pour visionner cette image.
Ajoy K Datta & Lawrence L LarmoreUNLV
September 29th 2009 SRDS'2009 3
Roadmap
• Recall on self-stabilization
• Definition of the problem
• The solution
• Conclusion and perspectives
September 29th 2009 SRDS'2009 4
Roadmap
• Recall on self-stabilization
• Definition of the problem
• The solution
• Conclusion and perspectives
September 29th 2009 SRDS'2009 5
Self-Stabilization: Closure + Convergence
States of the System
Illegitimate States Legitimate States
Convergence
Closure
September 29th 2009 SRDS'2009 6
Tolerate Transient Faults• E.g., any finite number of memory or
message corruptions, or topological changes
September 29th 2009 SRDS'2009 7
Roadmap
• Recall on self-stabilization
• Definition of the problem
• The solution
• Conclusion and perspectives
September 29th 2009 SRDS'2009 8
k-clustering
kclusterheads
clusters
September 29th 2009 SRDS'2009 9
Related Works(for arbitrary networks)
• Many (self-stabilizing) 1-clustering algorithms
• Several non self-stabilizing k-clustering
algorithms
• One self-stabilizing k-clustering algorithm:
[Datta et al, Comp. Jnl, 2009]
September 29th 2009 SRDS'2009 10
k-dominating set
• Let G=(V,E)• D V is a k-dominating set p V/D, q D, Dist(p,q) k
• Example : k = 3
• k-dominating set = k-clustering: the clusterhead of every node is the closest member of D
• Minimum k-dominating set ? • Proposal : self-stabilizing algorithm for minimal k-dominating set
NP-Hard
[Datta et al, Comp. Jnl, 2009]
September 29th 2009 SRDS'2009 11
Minimal k-dominating set
• D V is a minimal k-dominating set iff – D is k-dominating and – no proper subset of D is k-dominating
• Example for k = 3
September 29th 2009 SRDS'2009 12
Setting• Arbitrary topology with IDs on processes• Composite R/W atomicity• Given I a k-dominating set:
– I is computed using [Datta et al, Comp. Jnl, 2009]– I is the set of all processes
• Any process p only knows if p I, or not• Constraint: D I• Any process p knows N=2b where b is the number bits
to encode an ID
September 29th 2009 SRDS'2009 13
Roadmap
• Recall on self-stabilization
• Definition of the problem
• The solution
• Conclusion and perspectives
September 29th 2009 SRDS'2009 14
Principle
• Let E a set of nodes
• Let Hk(E) be the k-neighborhood of E
• E is k-exclusive pE, Hk(E) ≠Hk(E/{P})
• Example for k = 2
• k-dominating and k-exclusive minimal k-dominating
September 29th 2009 SRDS'2009 15
Principle
• Let E a set of nodes
• Let Hk(E) be the k-neighborhood of E
• E is k-exclusive pE, Hk(E) ≠Hk(E/{P})
• Example for k = 2
• k-dominating and k-exclusive minimal k-dominating
September 29th 2009 SRDS'2009 16
Principle
• Let E a set of nodes
• Let Hk(E) be the k-neighborhood of E
• E is k-exclusive pE, Hk(E) ≠Hk(E/{P})
• Example for k = 2
• k-dominating and k-exclusive minimal k-dominating
September 29th 2009 SRDS'2009 17
Principle
• Let E a set of nodes
• Let Hk(E) be the k-neighborhood of E
• E is k-exclusive pE, Hk(E) ≠Hk(E/{P})
• Example for k = 2
• k-dominating and k-exclusive minimal k-dominating
September 29th 2009 SRDS'2009 18
Road to the solution
Synchronous error-free environment
Synchronous environment with faults
Asynchronous environment with faults
September 29th 2009 SRDS'2009 19
Synchronous error-free environment
• Initially: D = I and E = • Cycles from 0 to 2k ticks: learning information at distance k• After each two cycles, if E≠D :
– Some nodes can be removed from D– A least one node is added to E
• Invariant:– D is k-dominating– E is k-exclusive– E D
• Termination: D = E, i.e., D is a minimal k-dominating set
September 29th 2009 SRDS'2009 20
Synchronous error-free environment
P V, P.a:
– P.a = P.id P E
– P.a = P.id+N P D and P E
– P.a = ∞ P D
P V, P.b = min{Q.a, Dist(P,Q)≤k}
Q, Dist(P,Q)≤k and Q.b=P.a P remains in D
• If P is the unique element of D within distance k of some
process Q, P is inserted into E
September 29th 2009 SRDS'2009 21
Example with k=3 and N=871 2 3 4 5 6
∞∞13∞∞2∞P.a
13,F13,F13,F13,F13,F10,T10,Tt=6
13,F13,F13,F13,F10,T10,T10,Tt=5
13,F13,F13,F10,F10,F10,T10,Tt=4
13,F13,F10,F10,F10,F10,F10,Tt=3, P.b
13,F13,F13,T10,F10,F10,T10,Tt=2
15,T13,T13,T13,T10,T10,T10,Tt=1
15,T∞,F13,T∞,F∞,F10,T∞,Ft=0
15∞13∞∞10∞P.a
September 29th 2009 SRDS'2009 22
Example with k=3 and N=871 2 3 4 5 6
∞∞5∞∞2∞P.a
13,T13,T13,T13,T13,T2,T2,Tt=6
13,T13,T13,T13,T2,T2,T2,Tt=5
13,T13,T13,T2,F2,F2,T2,Tt=4
13,T13,T2,F2,F2,F2,F2,Tt=3, P.b
13,T13,T13,T2,F2,F2,T2,Tt=2
∞,F13,T13,T13,T2,T2,T2,Tt=1
∞,F∞,F13,T∞,F∞,F2,T∞,Ft=0
∞∞13∞∞2∞P.a
September 29th 2009 SRDS'2009 23
Dealing with errors
• Too many elements of E:– These elements eventually have their Boolean FALSE – In this case, there are removed from E
• Too few elements of D:– Some Q satisfies Q.b = ∞– In this case, the MAX computed in the snd half of the cycle
is equal ∞ for any process of I within k hops from Q – These processes are inserted in D
September 29th 2009 SRDS'2009 24
Dealing with asynchrony
• Self-stabilizing phase clock algorithm:– Boulinier et al, PODC’04– Let P,Q two neighbors, P.t {Q.t,Q.t-1,Q.t+1}– When P increments its clock from t-1 to t:
• t {Q.t,Q.t-1}, for every neighbor Q
– Our computations from t-1 to t are based on values at t-1:
• We just have to store values computed at time P.t, P.t-1, for every process P
September 29th 2009 SRDS'2009 25
Roadmap
• Recall on self-stabilization
• Definition of the problem
• The solution
• Conclusion and perspectives
September 29th 2009 SRDS'2009 26
Conclusion
• A self-stabilizing k-clustering algorithm:
– Arbitrary minimal k-dominating set, or
– Minimal k-dominating set subset of a given k-dominating set
• Stabilization time:– O(n) rounds– O(n2) steps
• Space complexity:– O(log n) bits per process
September 29th 2009 SRDS'2009 27
Perspectives
• Time and space optimality ?
• How far from the optimal number of clusterheads ?
September 29th 2009 SRDS'2009 28
Thank you!