Content deleted Content added
Speng dahl (talk | contribs) mNo edit summary |
m Moving Category:Algorithms in graph theory to Category:Graph algorithms per Wikipedia:Categories for discussion/Log/2024 October 4 |
||
(17 intermediate revisions by 11 users not shown) | |||
Line 1:
[[File:KHOPCA 3D example 1.png|thumb|KHOPCA running in a 3-D environment.]]
'''KHOPCA''' is
KHOPCA's clustering process explicitly supports joining and leaving of nodes, which makes KHOPCA suitable for highly dynamic networks. However, it has been demonstrated that KHOPCA also performs in static networks.<ref name=":0" />
Besides applications in ad hoc and [[wireless sensor network]]s, KHOPCA can be used in localization and navigation problems, networked [[Swarm intelligence|swarming]], and real-time [[Cluster analysis|data clustering and analysis]].
==
KHOPCA (<math display="inline">k</math>-hop clustering algorithm) operates proactively through a simple set of rules that defines clusters with variable <math display="inline">k</math>-hops. A set of local rules describes the state transition between nodes. A node's weight is determined only depending on the current state of its neighbors in communication range. Each node of the network is continuously involved in this process. As result, <math display="inline">k</math>-hop clusters are formed and maintained in static as well as dynamic networks.
KHOPCA does not require any predetermined initial configuration. Therefore, a node can potentially choose any weight (between <math display="inline">MIN</math> and <math display="inline">MAX</math>)
=== Initialization ===
Line 22:
=== Rule 1 ===
[[File:KHOPCA rule 1.png|thumb|
The first rule has the function of constructing an order within the cluster. This happens through a node <math display="inline">n</math> detects the direct neighbor with the highest weight <math display="inline">w</math>, which is higher than the node's own weight <math display="inline">w_n</math>. If
if max(W(N(n))) > w_n
w_n = max(W(N(n))) - 1
</syntaxhighlight>
=== Rule 2 ===
[[File:KHOPCA rule 2 a.png|thumb|
The second rule deals with the situation where nodes in a neighborhood are on the minimum weight level. This situation can happen if, for instance, the initial configuration assigns the minimum weight to all nodes. If there is a neighborhood with all nodes having the minimum weight level, the node <math display="inline">n</math> declares itself as cluster center. Even if
if max(W(N(n)) == MIN & w_n == MIN
w_n = MAX;
</syntaxhighlight>
=== Rule 3 ===
[[File:KHOPCA rule 3 a.png|thumb|
The third rule describes situations where nodes with leveraged weight values, which are not cluster centers, attract surrounding nodes with lower weights. This behavior can lead to fragmented clusters without a cluster center. In order to avoid fragmented clusters, the node with higher weight value is supposed to successively
if max(W(N(n))) <= w_n && w_n != MAX
w_n = w_n - 1;
Line 41 ⟶ 43:
=== Rule 4 ===
[[File:KHOPCA rule 4 a.png|thumb|
The fourth rule resolves the situation where two cluster centers connect in 1-hop neighborhood and need to decide which cluster center should continue its role as cluster center.
if max(W(N(n)) == MAX && w_n == MAX
w_n =
w_n = w_n - 1;
</syntaxhighlight>
Line 50 ⟶ 52:
== Examples ==
===
An exemplary sequence of state transitions applying the described four rules is illustrated below.
[[File:KHOPCA 1D example 1.png|frameless]]
===
KHOPCA acting in a dynamic
[[File:KHOPCA 2D k3a.jpg|frameless]]
===
KHOPCA also works in a dynamic
[[File:KHOPCA 3D example
== Guarantees ==
Line 70 ⟶ 72:
== References ==
{{Reflist}}
[[Category:Clustering algorithms]]▼
{{DEFAULTSORT:KHOPCA clustering algorithm}}
|