An Energy-Efficient Voting-Based Clustering Algorithm for
Sensor Networks
Min Qin and Roger Zimmermann
Computer Science Department, Integrated Media Systems Center
5/24/2005
Presentation outline:
Clustering in sensor networksClustering in sensor networks
Issues of traditional clustering protocolsIssues of traditional clustering protocols
Voting-based clustering algorithm (VCA)Voting-based clustering algorithm (VCA)
Performance evaluationPerformance evaluation
ConclusionsConclusions
An Energy-Efficient Voting-Based Clustering Algorithm for Sensor Networks
The network is divided into many clustersThe network is divided into many clusters
Each cluster has one cluster headEach cluster has one cluster head
Data collected from sensors are sent to the cluster Data collected from sensors are sent to the cluster
head first, and then forwarded to the sinkhead first, and then forwarded to the sink
Cluster head is capable of aggregating data from all Cluster head is capable of aggregating data from all
sensorssensors
Clustering in sensor networksClustering in sensor networks
A sample clusterA sample cluster
sinkCluster head
Issues of traditional clustering protocols
Based on local weights or probabilitiesBased on local weights or probabilities
Often result in undesirable cluster formationsOften result in undesirable cluster formations
Many of them do not consider topology information Many of them do not consider topology information
Load balancing is hardLoad balancing is hard
Example: a network with 4 sensors
B
C
D
A
Desirable cluster formation
Clustering by traditional algorithms (HEED)
AB
C
D
1
0.7
0.6
0.9
Resulting cluster formation (HEED)
AB
C
D
Voting-based clustering algorithm (VCA)
Main ideas:Main ideas:
A sensor’s importance should be reflected from all A sensor’s importance should be reflected from all its neighbors (including itself) rather than from itselfits neighbors (including itself) rather than from itself
Use voting to reflect the importance of different Use voting to reflect the importance of different neighborsneighbors
Topology and residual energy are two primary Topology and residual energy are two primary factors in selecting cluster heads factors in selecting cluster heads
Assumptions about sensors:Assumptions about sensors:
Energy-aware Energy-aware
Quasi-stationaryQuasi-stationary
VCA : An example
AB
C
D
0.25
0.25 0.25
0.25
D vote for all its neighbors (including itself)
VCA : An example
AB
C
D
0.5
0.5
0. 5
0.50.5
D
0.5
D collect votes from all its neighbors
VCA : An example
1.75
AB
C
D
0.750.75
0.75
Each node calculates the total vote it has got
Rules for voting
The sum of the votes a node gives to all its neighbors The sum of the votes a node gives to all its neighbors
(including itself) is 1(including itself) is 1
A neighbor with high residual energy should get more A neighbor with high residual energy should get more
votes than a neighbor with low residual energyvotes than a neighbor with low residual energy
,( , )
0 ,ik
d R
jij
ki j
ij
ed R
ev v v
d R
Load balancing in VCA
If a sensor is covered by multiple cluster heads, the If a sensor is covered by multiple cluster heads, the
following two load balancing strategies are used :following two load balancing strategies are used :
Node degree Node degree
Join the head with the minimum node degree Join the head with the minimum node degree
Balance the size of all clustersBalance the size of all clusters
FitnessFitness
Join the cluster head with the highest fitnessJoin the cluster head with the highest fitness
Balance energy distribution of cluster headsBalance energy distribution of cluster heads
)(
)()(
i
ii vnodedegree
vevfitness
Procedures of VCA
1.Each sensor calculates its votes to all its neighbors1.Each sensor calculates its votes to all its neighbors
2.Sensors calculate and broadcast the total vote they 2.Sensors calculate and broadcast the total vote they have got from their neighbors. have got from their neighbors.
3.Cluster heads are elected from those nodes that have 3.Cluster heads are elected from those nodes that have the highest votes in their neighborhoodthe highest votes in their neighborhood
4. Sensors that are covered by at least one cluster head 4. Sensors that are covered by at least one cluster head withdraw from votingwithdraw from voting
5. the remaining sensors restart from step 2 by ignoring 5. the remaining sensors restart from step 2 by ignoring the votes from those sensors that have withdrawn from the votes from those sensors that have withdrawn from the votingthe voting
Head Election in Multiple Rounds
AB
C
D
0.5
0.33
0. 5
0.50.33
D
0.25
0.25 0.25
0.25
0.5
E
0.50.5
0.33
In the 1st round
Head Election in Multiple Rounds
AB
C
D
0. 75
0.751.08
D 1.58
E
0.83
After the 1st round
Head Election in Multiple Rounds
AB
C
DDE
0.50.5
0.33
In the 2nd round, E ignores vote from A
Head Election in Multiple Rounds
AB
C
D
0. 75
0.751.08
D 1.58
E
0.5
After the 2nd round
A is covered by 2 cluster heads, it chooses E since it has lower degree
Properties of VCA
Message complexity: O(N)Message complexity: O(N)
Time complexity:O(N)Time complexity:O(N)
•Normally finishes within 2-5 iterationsNormally finishes within 2-5 iterations
Cluster heads are well distributed, No two cluster Cluster heads are well distributed, No two cluster
heads covers each other heads covers each other
High-degree nodes tend to get more votes, and give High-degree nodes tend to get more votes, and give
less votes to others less votes to others
Simulation settings
Parameter Value
S [0, 100]2
Sink location (50,200)
Cluster radius 15 m
Data packet 250 bytes
Clustering packet 30 bytes
WITHDRAW packet 10 bytes
Network operation phase
5 TDMA frames
Energy for data fusion 5nJ/bit/signal
Initial Energy 2J
Threshold distance (d0) 100 m
Network lifetime (when the first node dies)
50 150 250 350 450 550100
150
200
250
300
350
# r
ou
nd
s u
ntil th
e f
irst
no
de
die
s
Number of nodes
VCA-fitness VCA-Min degree HEED
A sensor joins the cluster head with the highest fitness value in VCA-fitnessA sensors joins the cluster head with the minimum node degree in VCA-Min degreeAverage result from 100 independent simulations
Network lifetime (when the last node dies)
50 150 250 350 450 5501000
1100
1200
1300
1400
1500
1600 VCA-fitness VCA-Min degree HEED
# ro
unds
unt
il th
e la
st n
ode
dies
Number of nodes
VCA is completely distributed, energy-efficient and VCA is completely distributed, energy-efficient and
location unawarelocation unaware
Using fitness can balance the energy across the Using fitness can balance the energy across the
network, sensors tend to die at a similar timenetwork, sensors tend to die at a similar time
Using Min-degree can balance the size of all clusters, Using Min-degree can balance the size of all clusters,
some nodes may live much longer than otherssome nodes may live much longer than others
Democracy can be very helpful for sensor networks. Democracy can be very helpful for sensor networks.
Conclusions
Questions?Questions?
Comments?Comments?
http://dmrl.usc.edu/publications/http://dmrl.usc.edu/publications/
Conclusions
Thank you!