Presentation is loading. Please wait.

Presentation is loading. Please wait.

Competitive Self-Stabilizing k-Clustering

Similar presentations


Presentation on theme: "Competitive Self-Stabilizing k-Clustering"— Presentation transcript:

1 Competitive Self-Stabilizing k-Clustering
Yvan Rivierre Joint work with Ajoy K. Datta, Stéphane Devismes, Karel Heurtefeux, and Lawrence L. Larmore Submitted to ICDCS Co-authors: Ajoy K. Datta Stéphane Devismes Karel Heurtefeux Lawrence L. Larmore

2 Competitive Self-Stabilizing k-Clustering
Yvan Rivierre Joint work with Ajoy K. Datta, Stéphane Devismes, Karel Heurtefeux, and Lawrence L. Larmore Submitted to ICDCS Co-authors: Ajoy K. Datta Stéphane Devismes Karel Heurtefeux Lawrence L. Larmore

3 Introduction to k-Clustering
Hierarchical organization of processes

4 Introduction to k-Clustering
Hierarchical organization of processes

5 Introduction to k-Clustering
Hierarchical organization of processes

6 Introduction to k-Clustering
Hierarchical organization of processes

7 Self-Stabilization Illegitimate states Legitimate states

8 Convergence Illegitimate states Legitimate states

9 Closure Illegitimate states Legitimate states

10 Finite Time of Stabilization
System States transient faults transient faults Time

11 Competitiveness Finding a minimum k-clustering set is NP-hard.
An algorithm is X-competitive if it builds a k-clustering of size at most X times the smallest possible number of k-clusters. |Clr| ≤ X |Min|

12 Unit Disk Graphs K-clustering for scalability
Self-stabilization for both

13 Quasi Unit Disk Graphs λ ≥ 1 1 K-clustering for scalability
Self-stabilization for both 1

14 Contribution A k-clustering algorithm that is self-stabilizing,
for identified networks, in the shared memory model, building at most O(n/k) k-clusters, 7.2552k+O(1)-competitive in UDGs, and λ²k+O(λ)-competitive in QUDGs.

15 Related Work Self-stabilizing k-Clustering algorithms (Datta & al., 2009) (Caron & al., 2010) 8k+O(1)-competitive k-Clustering algorithm (Fernandess & Malkhi, 2002) Related to the k-dominating set problem (plenty of solutions for k = 1)

16 Algorithm: General Overview
Combination of self-stabilizing algorithms: Spanning Tree Construction (Huang & Chen, 1992) MIS Tree Build (imp. Fernandess & Malkhi, 2002) ® for the sole purpose of competitiveness k-Clusterheads Selection k-Clustering Construction Parallel execution of both algorithms BFST MIST CHS(k) CC(k)

17 k-Clusterheads Selection: α

18 k-Clusterheads Selection: α

19 k-Clusterheads Selection: α
2k hops k

20 k-Clusterheads Selection: α
2k hops k k 1

21 k-Clusterheads Selection: α
? 2k k k+1 k 2k hops k k 1 k

22 k-Clusterheads Selection: α
? 2k Tall nodes k+1 k 2k hops k 1 Short nodes k

23 k-Clusterheads Selection: α
α hops

24 k-Clusterheads Selection: α
α hops

25 Inductive computation of α
? α=?

26 Inductive computation of α
? α=? A = MaxShort { α < k } B = MinTall { α ≥ k } α=A α=B α=0 α=k (0 ≤ A < k ≤ B ≤ 2k) α=0

27 Inductive computation of α
1 1 α=? A = MaxShort { α < k } B = MinTall { α ≥ k } α=A α=B A A+B+2 B α=0 α=k (0 ≤ A < k ≤ B ≤ 2k) α=0

28 Inductive computation of α
A + B + 2 ≤ 2k α=B+1 A = MaxShort { α < k } B = MinTall { α ≥ k } α=A α=B A+B+2 α=0 α=k (0 ≤ A < k ≤ B ≤ 2k) α=0

29 Inductive computation of α
A + B + 2 > 2k α=A+1 A = MaxShort { α < k } B = MinTall { α ≥ k } α=A α=B A+B+2 α=0 α=k (0 ≤ A < k ≤ B ≤ 2k) α=0

30 7.2552k+0(1)-competitive in UDGs

31 7.2552k+0(1)-competitive in UDGs
? k k k

32 7.2552k+0(1)-competitive in UDGs
? k k k + 1 processes k

33 7.2552k+0(1)-competitive in UDGs
MIS Tree ? k k k + 1 processes k

34 7.2552k+0(1)-competitive in UDGs
1 2 3 4 height MIS Tree (MIS = Maximal Independent Set) ? k k k + 1 processes k

35 7.2552k+0(1)-competitive in UDGs
1 2 3 4 height (MIS = Maximal Independent Set) ? k k ⌈k /2⌉ proc. ∈ MIS k

36 7.2552k+0(1)-competitive in UDGs
1 2 3 4 height (|Clr| - 1) ⌈k/2⌉ ≤ |MIS| - 1 (MIS = Maximal Independent Set) ? k k ⌈k /2⌉ proc. ∈ MIS k

37 7.2552k+0(1)-competitive in UDGs
1 2 3 4 height (|Clr| - 1) ⌈k/2⌉ ≤ |MIS| - 1 (MIS = Maximal Independent Set) |IS| ≤ ((2π/√3)k² + πk + 1) |Opt| ? k k ⌈k /2⌉ proc. ∈ MIS k

38 7.2552k+0(1)-competitive in UDGs
1 2 3 4 height (|Clr| - 1) ⌈k/2⌉ ≤ |MIS| - 1 (MIS = Maximal Independent Set) |IS| ≤ ((2π/√3)k² + πk + 1) |Opt| ? k k ⌈k /2⌉ proc. ∈ MIS k |Clr| ≤ 1 + ((4π/√3)k + 2π) |Opt| » k+0(1) |Opt|

39 Overall Stabilization in O(n) rounds
Stabilization Time D BFS Tree in O(D) rounds 2D MIS Tree in O(n) rounds k-Clustering Overall Stabilization in O(n) rounds

40 Overall Stabilization in O(n) rounds
Stabilization Time D BFS Tree in O(D) rounds 2D MIS Tree in O(n) rounds k-Clustering Overall Stabilization in O(n) rounds Time Bottleneck is MIS Tree Construction Can we improve it?

41 MIS Tree & Nick's Class Nick's Class (NC): set of all problems solved in //, in O(loga n) time, using O(nb) processors. NC ⊆ P: proving NC = P is considered to be as difficult as proving NP = P

42 MIS Tree & Nick's Class A problem A ∈ P is P-complete, if given any problem B ∈ P, ∃ a NC-reduction of B to A. If ∃ a P-complete problem ∈ NC, then NC = P

43 MIS Tree & Nick's Class Usual conjecture: P-NC ¹ ∅
That implies: ∀ A is P-complete, A ∈ P-NC ∀ A ∈ P-NC, A is inherently sequential ⇒ distributed algorithm in W(n)

44 MIS Tree Problem is P-complete
Proof: Circuit Value Problem (CV) is P-complete We give an NC-reduction of CV to MIS Tree

45 Conclusion Self-stabilizing k-clustering algorithm which
stabilizes in O(n) rounds, uses O(log n) space per process, builds at most O(n/k) k-clusters, is competitive in UDGs and QUDGs. MIS Tree construction is P-complete

46 Thanks for your attention.

47 MIS Tree 1 2 3 4 height Spanning tree such that the set of processes located at even levels is an MIS (Maximal Independent Set).


Download ppt "Competitive Self-Stabilizing k-Clustering"

Similar presentations


Ads by Google