2. Proceedings of the International Conference on Emerging Trends in Engineering and Management (ICETEM14)
30 – 31, December 2014, Ernakulam, India
16
The Fig. below illustrates the different types of nodes and cluster structure.
Fig.1: Cluster structure
2. CATEGORIES OF CLUSTERING
The clusters may change dynamically due to the movement of nodes. A number of methods have been proposed
to choose cluster heads in ad hoc networks. They include (i) Highest-Degree heuristic, (ii) Lowest-ID heuristic, and (iii)
Node-Weight heuristic.
2.1. Highest-Degree heuristic
The Highest-Degree, also known as connectivity-based clustering is a clustering algorithm in which the degree
of a node is computed based on its distance from others. Each node broadcasts its id to the nodes that are within its
transmission range. A node x is considered to be a neighbour of another node y if x lies within the transmission range of
y. Cluster head will be the node with maximum number of neighbours and any tie is broken by the unique node ids. The
neighbours of a cluster head become members of that cluster and can no longer participate in the election process. Any
two nodes in a cluster are at most two-hops away since the cluster head is directly linked to each of its neighbours in the
cluster. Basically, each node either becomes a cluster head or remains an ordinary. Experiments demonstrate that the
system has a low rate of cluster head change but the throughput is low under the Highest-Degree heuristic. The re-
affiliation counts of nodes are high due to node movements and as a result, the highest-degree node may not be re-elected
to be a cluster head even if it loses one neighbour. All these drawbacks occur because this approach does not have any
restriction on the upper bound on the number of nodes in a cluster.
2.2. Lowest-ID heuristic
The Lowest-ID, also as known as identifier-based clustering, is a heuristic that assigns a unique id to each node
and chooses the node with the minimum id as a cluster head. Thus, the ids of cluster head will be lesser than that of the
neighbours of the cluster head. However, the cluster head can delegate its responsibility to the next node with the
minimum id in its cluster. For this heuristic, the system performance is better compared with the Highest-Degree
heuristic in terms of throughput. However, the drawback of this heuristic is its bias towards nodes with smaller ids which
may lead to the battery drainage of certain nodes. Moreover, it does not attempt to balance the load uniformly across all
the nodes.
2.3. Node-Weight heuristic
In this approach, each node is assigned weights based on its suitability of being a cluster head depending upon a
parameter (eg. mobility). A node is chosen to be a cluster head if its weight is higher than any of its neighbours’ weight;
otherwise, it joins a neighbouring cluster head. The smaller node id is chosen in case of a tie. Results proved that the
number of updates required is smaller than the Highest-Degree and Lowest-ID heuristics. Since node weights were
varied in each simulation cycle, computing the cluster heads becomes very expensive and there are no optimizations on
the system parameters such as throughput and power control.
2.4. Limitations of existing heuristics
None of the above three heuristics leads to an optimal election of cluster heads since each deals with only a
subset of parameters which can possibly impose constraints on the system. Each of these heuristics is suitable for a
3. Proceedings of the International Conference on Emerging Trends in Engineering and Management (ICETEM14)
30 – 31, December 2014, Ernakulam, India
17
specific application rather than for arbitrary wireless mobile networks. Thus weighted clustering algorithm was
introduced to compute node weights taking different factors into consideration.
3. LITERATURE SURVEY
3.1 Weighted Clustering Algorithm (WCA) [1]
WCA take into account node’s degree, transmission power, mobility and battery power to select a cluster head.
WCA combines each of these four parameters with certain weighing factors chosen according to the system needs. The
flexibility of changing the weight factors helps to apply the algorithm to various networks. The output of cluster head
election procedure is a set of nodes called the dominant set. Let the number of nodes that a cluster head can handle
ideally be δ. This is to ensure that cluster heads are not over-loaded and the efficiency of the system is maintained at the
expected level. The procedure consists of eight steps as described below.
Step 1. Find the neighbours of each node v (i.e., nodes within its transmission range txrange) within vertex set V, which
defines its degree, dv, as :
(1)
Step 2. Compute the degree-difference, ∆v = |dv − δ|, for every node v.
Step 3. For every node, compute the sum of the distances, Dv, with all its neighbours, as :
(2)
Step 4. Compute the running average of the speed for every node till current time T . This gives a measure of mobility
and is denoted by Mv, as :
(3)
where (Xt, Yt ) and (Xt−1,Yt−1) are the coordinates of the node v at time t and (t − 1), respectively.
Step 5. Compute the cumulative time, Pv, during which a node v acts as a cluster head. Pv implies how much battery
power has been consumed which is assumed more for a cluster head than an ordinary node.
Step 6. Calculate the combined weight Wv for each node v :
Wv = w1∆v + w2Dv + w3Mv + w4Pv (4)
Where w1,w2,w3 and w4 are the weighing factors for the corresponding system parameters.
Step 7. Choose that node with the smallest Wv as the cluster head. All the neighbours of the chosen cluster head are no
longer allowed to participate in the election procedure.
Step 8. Repeat steps 2–7 for the remaining nodes not yet selected as a cluster head or assigned to a cluster.
3.2 CBDM [2]
New weighted distributed clustering algorithm, called CBMD takes into consideration the parameters:
connectivity (C), residual battery power (B), average mobility (M), and distance (D) of the nodes to choose locally
optimal cluster heads. The goals of this algorithm are maintaining stable clustering structure with a lowest number of
clusters formed, to minimize the overhead for the clustering formation and maintenance and to maximize the lifespan of
mobile nodes in the system. The algorithm is an extended version of Weighted Clustering Algorithm (WCA). The main
feature of this algorithm is that each mobile node starts to measure its weight after n successive ‘hello messages’, where
the result specifies the accurate value for the mobility and battery power. The nodes with the largest local weights are
elected as cluster heads. As the nodes have various battery powers to start with, a more accurate metric to measure the
power currently available at the node was also introduced.
4. Proceedings of the International Conference on Emerging Trends in Engineering and Management (ICETEM14)
30 – 31, December 2014, Ernakulam, India
18
a. Connectivity Metric (C)
The first parameter is the connectivity. Neither nodes with the highest connectivity nor the lowest should be
elected as cluster heads. This gives a measure of connectivity and is denoted by C, as:
(5)
Let N be the number of nodes in the system. Let Li,j(t) be the indication that whether node i is a neighbor of
node j, at time t. Where Li,j(t)=0 if node i is not a neighbour of node j at time t, Li,j(t)=1 If node i is a neighbour of node j
at time t.
b. Residual Battery power metric (RBP)
The second parameter is the residual battery power. a node with high residual battery power can perform well as
cluster head for a longer duration.
c. Average mobility metric (M)
The third parameter is the average mobility of the node. Each node i measures its own average mobility M . This
is achieved through contrasting the topology information it obtains during successive Hello messages (HMs). Mobile
nodes maintain a short ‘Neighbourhood Record Table’ (NRT). NRT rows comprise vectors representing the IDs of
neighboring nodes, where each NRT row refers to different HM.
d. Distance metric (D)
The fourth parameter is the distance between node and other nodes within transmission range. It’s better to
elect a cluster head with the nearest members. For a node i, D is computed as the cumulative mean square distance to
neighbours divided by the total number of neighbours.
The above parameters are then normalized and the combined weight W for each node i is:
W= W1Cn+W2Bn+W3Dn+W4Mn (6)
Where W1+W2+W3+W4<=1 and Cn, Bn, Dn, Mn are the normalized parameters and i is the ID number of node
1<=i<=N. A node with the highest weight is the best candidate for a cluster head.
3.3 Enhanced algorithm based on WCA [3]
This clustering algorithm is also based on node degree, received power level, stationary factor and remaining
time battery. Each node in a MANET broadcasts its initial ch_info message periodically to declare its existence. The
ch_info message of a node carries its address, fitness, address of Cluster Head and node state. Thus, each node can obtain
information about its neighbors by its received ch_info message. Next, nodes with the highest fitness will be elected as
Cluster Heads. The clustering algorithm is two stages procedure. The first one is the nomination stage and the second one
is the election stage.
Each node after sending initial message calculate its fitness. The fitness (F) is the weight function of few
parameters, like degree of the node, received power level, stationary factor and battery level. This parameter is calculated
using the formula:
(7)
and W1, W2, W3, W4 are weighting factors for the corresponding system parameters where:
λ Degree of the node (DG)
λ The received power level (PR)
λ Stationary factor (SF)
λ Battery level (BL)
These factors should be fulfil the following condition w1+w2+w3+w4=1
All values obtained above are normalized in the range (0,1). The cluster is created by the nodes within one-hop
distance. Among nodes within transmission range are selected nodes with the highest fitness. These nodes are nominated
nodes and they change their status to NOMINATED. The nomination stage is complete. The next stage is election stage.
5. Proceedings of the International Conference on Emerging Trends in Engineering and Management (ICETEM14)
30 – 31, December 2014, Ernakulam, India
19
During election stage final cluster heads are selected, the nodes change their status to SELECTED and the selection is
advertised. The main disadvantage of this method is that there is no guarantee that the messages sent will reach the other
nodes.
3.4 AWCBRP – An Adaptive Weighted Cluster Based Routing Protocol [4]
Here the cluster head selection is performed by assigning a weight value based on the factors Energy Level,
Connectivity and Stability. From time to time every node sends a beacon called Alive Beacon (AB). Time stamp and
NODE ID field are present in AB. The neighbour data table (NDT) is checked by the nodes that hear AB. A new entry is
created for the sender of AB when there is no entry with AB’s NODE ID it creates a new entry for the sender of AB, AB
sets it’s AT field to zero and initiates a timer. Earlier to expiration of timer, if the NODE ID received in AB is same, it
sets AT corresponding to that node to 1 and restarts the timer. The corresponding entry in the NDT is removed. ABs are
not forwarded. Before the arrival of AB node if a timer expires the following node is considered to have moved and the
CH is informed about this. Cluster head Beacon (CHBs) is heard by every node. There are four possible cases:
a. The CH and the node are inside the cluster when a CHB is heard.
b. When a node listens to one more cluster’s CHB with its CHB, then it inserts the CH ID of the former’s CHB in a
gateway table (GT). If within a specified period of time (GETTHRESHOLD) it hears both the CHBs once again, it
affirms itself as the gateway between these two clusters by sending a “gateway assert”(GA) packet to both the CHs. A
GT is checked by CH when it receives GA packet and looks for other gateway.
i) GA is affirmed of the absence of another gateway by registering the gateway’s NODE ID in its GT and a
“gateway registered” packet.
ii) When a cluster has a gateway entry the hop count of the current gateway is compared with the GA sender by
the CH .When the hop count of the GA is less than CH a “gateway registered “ packet is sent to the GA after
CH is deregistered. Otherwise GA packet is ignored. The GA packet is not sent for a particular period of time
and the process is repeated again.
c. It register’s with the cluster using a “register me” packet when it hears the CHB of that cluster. The table of nodes
which are available in the cluster of the CH is updated and a “registered packet” is sent to the node.
d. If no CHB is heard two possibilities happen
i) The node moves from the cluster.
ii) When CH moves to a considerable distance the nodes start the cluster formation phase once again by
reversing for a random time interval.
Cluster heads are selected based on the following weighted sum :
(8)
Where D1 is the power level of the node , D2 is the connectivity factor and D3 is the stability index and W1,W2
and W3 are the weighting factors. Cluster head has the least W value. After the node is formed as a cluster head, the node
or the members of the node will be discerned as “considered". Every “unconsidered” node undergoes the election
process. After the selection of “considered nodes” the election algorithm will be terminated.
3.5 PAIWCA – Probability Based Adaptive Invoked Weighted Clustering Algorithm [5]
In PAIWCA each node computes its weight value based on the following parameters:
a) Mobility of the node: Calculate the average speed for every node until the current time T. This gives the
measure of the mobility Mv.
b) Power consumed: Determine how much battery power has been consumed, Pv. This is assumed to be more for a
cluster-head when compared to an ordinary node
c) Transmission Rate: Determine the transmission rate for each node at Tx. This is assumed to be high for a
cluster-head.
d) Transmission Range: Transmission range for each node (Tr) is calculated independently for each node.
e) Cluster head probability of node(Chprob).
The weight Wv for each node is calculated independent of the neighbours and the clusters, using the parameters:
6. Proceedings of the International Conference on Emerging Trends in Engineering and Management (ICETEM14)
30 – 31, December 2014, Ernakulam, India
20
Wv=(w1 x Tr)+ (w2 x Tx) + (w3 x Mv) + (w4 x Pv) - Chprob. (9)
Once the weights of the nodes are calculated before the clustering setup, the node with minimum weight is
chosen to be the cluster-head and its neighbours are no longer allowed to participate in the election procedure. All the
above steps are repeated for remaining nodes which is not yet elected as a cluster-head or assigned to a cluster. One
disadvantage of WCA is that the clustering algorithm is called on new nodes arrival, which increases the overhead of re-
clustering process and the cluster becomes unstable. To avoid this and to increase cluster stability, a probability based
approach using Cluster-Head Probability of a node. If a newly arrived node has higher probability than the existing
cluster head of a cluster to which it wishes to join, then the newly arrived node becomes the cluster-head for that cluster
without disrupting the entire topology which increases the stability of the network. If the newly arrived node has lower
probability than the existing cluster-head of the cluster to which it wishes to join then it becomes the member of that
cluster-head .
3.6 A dynamic clustering algorithm with mobility prediction [6]
This algorithm propose to reduce the overhead in communication by predicting mobility of node using linear
auto regression and cluster formation. Initially, each node broadcasts a beacon message to notify its presence to the
neighbours. A beacon message contains the state of the node. Each node builds its neighbour list based on the beacon
messages received. The cluster-heads .Election is based on the weight values of the nodes and the node having the lowest
weight is chosen as CH.
Each node computes its weight value based on the following algorithm:
Step 1: Decide the weights
Step 2: Compute the weight of each node, given by:
(10)
Where ∆sp is the spreading degree, Dv is the distance with its neighbours, Mv is the mobility of the node, and
power consumed is represented by Pv .
Step 3: The node with the smallest Wv is elected as a cluster-head. All the neighbours of the chosen cluster-head are no
more allowed to participate in the election procedure.
The Concept of Linear Auto Regression is, given a time series of data, the autoregressive (AR) models is a tool
for understanding and predicting future values in this series. It is used in statistics and signal processing. For i = 1…P :
(11)
Where Xτ is the predicted value at time τ based on the average rate of change of the previous values. N is the
total number of differences calculated. The value of i and j are 1 and 2 respectively. Using the regression technique a
time series data about the previous position of the node are analyzed and the next value in the series is predicted. Using
this predicted value the cluster calculation is done. It was found that the cluster formed with predicted values and actual
values are the same and thus the power of the mobile node can be saved if we use prediction calculation and avoid the
beacon signals between mobile node and its Cluster-Head to get the geographical position of the node. Bandwidth that
must be utilized for data transfer is also saved in this case. A stable cluster topology is thus obtained.
3.7 IWCA – Improved Weighted Clustering Algorithm [7]
The IWCA algorithm enhance the trust of cluster formation by malicious node removal from cluster head or
member selection .Initially, each node broadcasts a beacon message to notify its presence to the neighbours. A beacon
message contains the state of the node. Every node builds its neighbour list based on the beacon messages received. The
cluster-heads election is based on the weight values of the nodes and the node having the lowest weight is chosen as CH.
Every node calculates the following:
a. PDR(Packet Data Rate)-PDR= (Number of Packet's Dropped)/ (Total Number of Incoming Nodes)
b. PMOR (Packet Modification Rate)- PMOR= (Number of Packet's Modified)/ (Total Number of Incoming Nodes)
c. PMIR(Packet Misroute Rate)- PMIR= (Number of Packet's Misrouted)/ (Total Number of Incoming Nodes)
7. Proceedings of the International Conference on Emerging Trends in Engineering and Management (ICETEM14)
30 – 31, December 2014, Ernakulam, India
21
Then for each node, check threshold value of PDR, PMR and PMIR. Assign behaviour to node according
threshold value as malicious or normal .Calculate weight for each node by:
W = (a x Nv) + (b x Pv) + (c x Sv) + (d xDv) (12)
where Nv =list of neighbours for every node until the current time T of the node v at instant t, Pv =The amount of
remain battery power. Assumed to be more for a cluster-head when compared to an ordinary node , Sv =speed of
movement of a node, Dv =Direction of movement of a node .
3.8 An Innovative Clustering Algorithm Based on Cluster Stability [8]
The goal of this algorithm is to decrease the number of cluster forming, maintain stable clustering structure and
maximize lifespan of mobile nodes in the system. The used parameters in weighted function for giving a weight to nodes
include:
• Relative speed (RS)
• Battery remaining (Br)
• Number of nodes moving towards a node (Ndm)
• Stability(S)
Each node uses the above mentioned four parameters to calculate its weight :
(13)
ci(s) are the weight factors of normalization.
This algorithm describes how to include a newly arrived node. Once a wireless node is activated, its idCH field is
equal to NULL since it does not belong to any cluster. The node continuously monitors the channel until it figures out
that there is some activity in its neighborhood. This is due to the ability to receive the signals from other present nodes in
the network. The node still has no stable state, thus its state is not full identified. In this case, it broadcasts a
Join_Request in order to join the most powerful clusterhead. Thus, it waits either for a CH_Wel or for a CH_NWel.
When the entry node does receive neither CH_Wel nor CH_NWel . If this persists for certain number of attempts, the
node declares itself as an isolated node, and restarts by broadcasting a new Join_Request after a period of time. Just the
clusterheads may response by a CH_Wel or CH_NWel ; the ordinary members have to ignore any Join_Request received
even if they are in the transmission range of the new entry node. This allows simplifying the management of the clusters.
4. Comparison
The summarization of the techniques is shown in the Table below .As we can see the algorithms described above
are variations of the weighted clustering algorithm .
Table 1: Comparison of the Techniques