Download presentation
Presentation is loading. Please wait.
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).
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.