Download presentation
Presentation is loading. Please wait.
Published byMadeline Dickerson Modified over 9 years ago
1
A Self-Stabilizing O(n)-Round k-Clustering Algorithm Stéphane Devismes, VERIMAG
2
September 29th 2009SRDS'20092 Joint work with … Ajoy K Datta & Lawrence L Larmore UNLV
3
September 29th 2009SRDS'20093 Roadmap Recall on self-stabilization Definition of the problem The solution Conclusion and perspectives
4
September 29th 2009SRDS'20094 Roadmap Recall on self-stabilization Definition of the problem The solution Conclusion and perspectives
5
September 29th 2009SRDS'20095 Self-Stabilization: Closure + Convergence States of the System Illegitimate States Legitimate States Convergence Closure
6
September 29th 2009SRDS'20096 Tolerate Transient Faults E.g., any finite number of memory or message corruptions, or topological changes
7
September 29th 2009SRDS'20097 Roadmap Recall on self-stabilization Definition of the problem The solution Conclusion and perspectives
8
September 29th 2009SRDS'20098 k-clustering k k clusterheads clusters
9
September 29th 2009SRDS'20099 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]
10
September 29th 2009SRDS'200910 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]
11
September 29th 2009SRDS'200911 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
12
September 29th 2009SRDS'200912 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=2 b where b is the number bits to encode an ID
13
September 29th 2009SRDS'200913 Roadmap Recall on self-stabilization Definition of the problem The solution Conclusion and perspectives
14
September 29th 2009SRDS'200914 Principle Let E a set of nodes Let H k (E) be the k-neighborhood of E E is k-exclusive p E, H k (E) ≠H k (E/{P}) Example for k = 2 k-dominating and k-exclusive minimal k-dominating
15
September 29th 2009SRDS'200915 Principle Let E a set of nodes Let H k (E) be the k-neighborhood of E E is k-exclusive p E, H k (E) ≠H k (E/{P}) Example for k = 2 k-dominating and k-exclusive minimal k-dominating
16
September 29th 2009SRDS'200916 Principle Let E a set of nodes Let H k (E) be the k-neighborhood of E E is k-exclusive p E, H k (E) ≠H k (E/{P}) Example for k = 2 k-dominating and k-exclusive minimal k-dominating
17
September 29th 2009SRDS'200917 Principle Let E a set of nodes Let H k (E) be the k-neighborhood of E E is k-exclusive p E, H k (E) ≠H k (E/{P}) Example for k = 2 k-dominating and k-exclusive minimal k-dominating
18
September 29th 2009SRDS'200918 Road to the solution Synchronous error-free environment Synchronous environment with faults Asynchronous environment with faults
19
September 29th 2009SRDS'200919 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
20
September 29th 2009SRDS'200920 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
21
September 29th 2009SRDS'200921 Example with k=3 and N=8 7123456 ∞∞13∞∞2∞P.a 13,F 10,T t=6 13,F 10,T t=5 13,F 10,F 10,T t=4 13,F 10,F 10,Tt=3, P.b 13,F 13,T10,F 10,T t=2 15,T13,T 10,T t=1 15,T∞,F13,T∞,F 10,T∞,Ft=0 15∞13∞∞10∞P.a
22
September 29th 2009SRDS'200922 Example with k=3 and N=8 7123456 ∞∞5∞∞2∞P.a 13,T 2,T t=6 13,T 2,T t=5 13,T 2,F 2,T t=4 13,T 2,F 2,Tt=3, P.b 13,T 2,F 2,T t=2 ∞,F13,T 2,T t=1 ∞,F 13,T∞,F 2,T∞,Ft=0 ∞∞13∞∞2∞P.a
23
September 29th 2009SRDS'200923 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
24
September 29th 2009SRDS'200924 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
25
September 29th 2009SRDS'200925 Roadmap Recall on self-stabilization Definition of the problem The solution Conclusion and perspectives
26
September 29th 2009SRDS'200926 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(n 2 ) steps Space complexity: – O(log n) bits per process
27
September 29th 2009SRDS'200927 Perspectives Time and space optimality ? How far from the optimal number of clusterheads ?
28
September 29th 2009SRDS'200928 Thank you!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.