Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Self-Stabilizing O(n)-Round k-Clustering Algorithm Stéphane Devismes, VERIMAG.

Similar presentations


Presentation on theme: "A Self-Stabilizing O(n)-Round k-Clustering Algorithm Stéphane Devismes, VERIMAG."— Presentation transcript:

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!


Download ppt "A Self-Stabilizing O(n)-Round k-Clustering Algorithm Stéphane Devismes, VERIMAG."

Similar presentations


Ads by Google