A Distributed Clustering Algorithm with an Adaptive Backoff Strategy

IEICE TRANS. COMMUN., VOL.E89–B, NO.2 FEBRUARY 2006
609
LETTER
A Distributed Clustering Algorithm with an Adaptive Backoff
Strategy for Wireless Sensor Networks
Yongtao CAO†a) , Student Member and Chen HE†b) , Member
SUMMARY
Clustering is an effective self-organization approach in
wireless sensor networks. LEACH—a representative distributed clustering scheme has been considered an effective model to offer energy-efficient
communication for sensor networks. However, its randomness may result
in faster death of some nodes i.e. shorten system life. In this letter, we
first analyze the reasons why the uncertainty in LEACH degrades system
life, and then present a distributed clustering algorithm based on an adaptive backoff strategy. Simulation experiments illustrate that our algorithm
is able to significantly prolong system life compared with LEACH.
key words: wireless sensor networks, clustering, LEACH, system life
1.
Introduction
Clustering is one of fundamental issues in wireless ad hoc
and sensor networks [1]. In clustered sensor networks, clusterheads(CH) are responsible for data fusion within each
cluster and transmit the aggregated data to the remote base
station (BS). With clustering and data compression, the network payload has been greatly reduced i.e. battery energy
can be considerably saved. Several clustering algorithms
have been proposed for wireless sensor networks in recent
years. Heinzelman et al. [2] have proposed a distributed algorithm, LEACH to form one-hop clusters. Assuming that
sensors are distributed according to a homogeneous spatial
Poisson process, Bandyopadhyay et al. [3] introduce a hierarchical clustering algorithm. Clusterhead selection approaches in [2], [3] don’t take into account sensor nodes’
residual battery enery. In [4], Mhatre et al. have studied
clustered heterogeneous senor networks, where there are
two types of sensor nodes. Although such heterogeneous
networks avoid head-elected processes, the strategy with
fixed clusterheads is less robust. Younis et al. [5] propose a
clustering protocol, HEED which periodically selects clusterheads according to a hybrid of residual energy and a second parameters. Although HEED has some nice properties,
each node must compute and broadcast cost to its neighbors, which inevitably leads to extra energy consumption
compared with random algorithms. Among these clustering
protocols proposed, LEACH [2] has been well studied and
become a referred baseline to evaluate the clustering performance due to its simplicity, effectiveness, low time complexity etc. In LEACH, sensors elect themselves as clusterManuscript received May 12, 2005.
Manuscript revised September 19, 2005.
†
The authors are with the Department of Electronics Engineering, Shanghai Jiao Tong University, Shanghai 200240, P.R. China.
a) E-mail: [email protected]
b) E-mail: [email protected]
DOI: 10.1093/ietcom/e89–b.2.609
heads with some probability and advertise their decisions to
their one-hop neighbors. By rotating clusterheads, LEACH
attempts to evenly distribute energy loads among all nodes.
However, simulation experiments show LEACH is not loadbalancing as expected. LEACH may result in faster death
of some sensor nodes, i.e. shorten system life because of the
following reasons:
A. Some nodes become “forced clusterheads” and have
to directly communicate with the remote base station.
Although [2] compute the optimal number of clusterheads
for LEACH, the number of clusterheads produced by using
LEACH doesn’t always equal to the expected optimal value
due to its randomness [6]. When too few clusterheads are
elected, it is very likely that there is no self-elected clusterhead in some node’s proximity. So it has to become a
“forced clusterhead” and communicates directly with BS
which often locates far away from the node’s working region. Even if LEACH results in the target number of the
clusterheads, these clusterheads may scatter unevenly, i.e.
most clusterheads clump in some regions while few clusterheads locate in other regions [6]. The unevenly distribution
of clusterheads also leads to “forced clusterheads.” It is well
known that radio communication with low-lying antennae
and near-ground channels has an exponential path loss, i.e.
that the minimum output power required to transmit a signal
n
over a distance d is proportional to d , 2 ≤ n ≤ 4. Since
transmitting data directly to remote BS is very energy demanding, the clustering algorithm should avoid too many
nodes involving in such long-distance communications.
B. LEACH determines one node’s “role” without taking
into consideration its residual energy.
LEACH determines clusterheads according to a predefined
probability. Although a sensor node, if it has been elected
as a clusterhead once, has no chance to become a clusterhead again in a working cycle, it is still possible to consume much more energy than other nodes, for example, it
has to serve as a “forced CH” in each round or manage too
many nodes because of the uneven distribution of sensor
nodes. However, in next working cycle these nodes with
low residual energy have the same opportunity to be elected
clusterheads, which will deplete their battery energy very
soon.Although LEACH provides an alternative way considering nodes’ residual energy to determine the self-electing
probability, it is unrealistic in large-scale sensor networks
since each node needs to obtain other nodes’ energy infor-
c 2006 The Institute of Electronics, Information and Communication Engineers
Copyright IEICE TRANS. COMMUN., VOL.E89–B, NO.2 FEBRUARY 2006
610
mation throughout the whole network. So we ignore such
method in this letter since it has no practical meaning.
“forced clusterhead” during this round. Then another round
of cluster-formation will begin until all nodes are clustered.
2.
2.2 Discussion
A New Distributed Clustering Algorithm
In this section, we present a distributed algorithm based on
an adaptive backoff strategy. The primary goal of our approach is to prolong system lifetime, i.e. the time elapsed
until the first node dies. The scheme we proposed not only
maintains the desirable features of LEACH, but also helps
to evenly distribute energy load among sensor nodes.
2.1 Clustering Algorithm
The parameters used in this algorithm are listed in Table 1.
The operation of our algorithm is also divided into rounds,
which is similar with LEACH. Each round begins with a
cluster-forming phase. In this phase, nodes are initially
in the waiting mode. Every node i maintains a variable
xi ,which is assigned a random value from 0 to 1, namely,
xi = Random(0, 1).Obviously, xi is a random variable with
uniform distribution on the interval [0,1]. Each node i waits
for a initiator timer according to an exponential random distribution, i.e.
xi = λi e
−λi ti
(1)
i
E residual
where λi = λmin +(λmax −λmin ) Emax . How to choose λmin and
λmax will be discussed in the next subsection.
When the timer fires, node i elects itself as a clusterhead and broadcasts an ADV CH message. Upon receiving
an ADV CH message from node i, node j stops the timer
and decides to join the cluster which node i initialized. If
one node simultaneously receives more than one ADV CH
message i.e. it falls within the range of more than one selfelected clusterheads, it uses the node ID or its distance to
those clusterheads to break ties (The distance can be determined according to signal attenuation). When a node j
decides to join some cluster, it broadcasts a JOIN message,
JOIN(myID, myHEAD) and terminates the algorithm.
Upon receiving a JOIN(u, t) message, node v checks if
it has previously sent a ADV CH message. If this is the
case, it checks if node u wants to join v’s cluster (v = t). If
the node v has not sent a ADV CH message, it record the
u s decision. If all v’s neighbors have decided their role, i.e.
join some cluster before v’s timer fires, v has to become a
“forced clusterhead.” Then it stops its timer and terminates
the algorithm.
When TCF , the maximal time of cluster forming
elapses, a node which has not decided its role will become a
Observation 1: Our algorithm is fully distributed. A node
makes decision only depending on local information.
Lemma 1: The cluster-formation lasts for at most TCF .
Proof When TCF elapses, though a node’s timer doesn’t
fire, it has to become a forced clusterhead and terminate the
algorithm. Thus TCF is the upper bound of the execution
time of our algorithm.
Lemma 2: Our algorithm has O(1) message complexity per
node i.e. the total message complexity is O(n).
Proof During the execution of our algorithm, one node in
the network at most sends one ADV CH or JOIN message.
Lemma 3: By adjusting the wakeup rate, the proposed algorithm is able to perform better dynamic load-balancing
for wireless sensor networks compared with LEACH.
Proof Derived from the exponential distribution f (t) =
λe−λt , When fixing f (t) = µ, µ ∈ [0, 1],we get t(λ) =
dt
=
− λ1 ln µλ . The first-order derivate of the function is dλ
1
λ
dt
(1
−
ln
),
it
is
obvious
that
when
λ
≥
µe,
≤
0
i.e.
µ
dλ
λ2
the function is monotonously decreasing. So choosing
λ ≥ max(µe) = e
(2)
the algorithm will ensure that the node with more residual
energy have more opportunity to become a clusterhead since
its timer is more likely to elapse, namely, the network load
is well distributed among sensor nodes.
1)
.
Lemma 4: The lower bound of λ is max e, − ln(1−ε
TCF
Proof We also hope that the network elects enough number of clusterheads in one round before the time TCF elapses,
for instance at least 50% of nodes are expected to initialize cluster-formation within one minute. Thus the selection
of λ should satisfy the following inequation: p {t > TCF } ≤
1 − ε1 , where ε1 is the expected percentage. Therefore, in
this case
+∞
ln(1 − ε1 )
f (t)dt ≤ 1 − ε1 ⇒ λ ≥ −
.
(3)
TCF
TCF
Parameters used in the algorithm.
From (2) and (3), we can conclude the lower bound of
λ as following:
ln(1 − ε1 )
λmin = max e, −
.
(4)
TCF
the estimated current residual energy in the node
the fully charged battery energy
the maximum wakeup rate
the minimum wakeup rate
the maximal cluster-forming time
Lemma 5: The proposed algorithm is able to ensure that the
probability that two nodes within each other’s cluster range
are both cluster heads is small, i.e., cluster heads are well
scattered.
Table 1
Eresidual
Emax
λmax
λmin
T CF
For our algorithm, we obtain the following properties:
LETTER
611
Proof Now assume that node i and node j are any two sensor nodes in the working region.λk (k = i, j) and tk (k = i, j)
denote their wakeup rate and time length set by its timer respectively.
From Eq. (1), letting xk = λk e−λk tk , we get
tk = −
1
xk
ln
λk λk
(k = i, j).
(5)
According to the proposed algorithm, xi and x j are two
independent random variables with uniform distribution on
the interval [0,1]. Therefore, ti and t j are also two independent random variables, whose probability distribution function are
 2


 λk exp(−λk tk ) tk ≥ ln λk /λk
fTk (tk ) = 
(k = i, j)


0
otherwise
When we use T c to denote the maximum node-to-node
delay between two neighboring sensor nodes, the probability that these two nodes within each other’s cluster range are
both cluster heads is
fT i T j (ti , t j )dti dt j
F{|ti − t j | ≤ T c } =
|ti −t j |≤T c
Using the properties of these two independent random variables, we get
F{|ti − t j | ≤ T c }
≤ λi λ j −
λi λ j
−λ j T c
λi +λ j (λi e
+ λ j e−λi Tc )
since λk < λmax (k = i, j), hence
F{|ti − t j | ≤ T c } ≤ λ2max (1 − e−λmax T c )
Using Taylor’s formula and choosing
λmax T c < 1,
(6)
we get
F{|ti − t j | ≤ T c } ≤ λ3max T c
(7)
If we expect the probability F{|ti − t j | ≤ T c } is below an
expected small value, ε2 , namely,
F{|ti − t j | ≤ T c } ≤ ε2
(8)
from (6), (7), by choosing
λmax ≤ min 3 ε2/T c , 1/T c
(9)
Eq. (8) can be satisfied, i.e. by bounding the wakeup rate, the
algorithm can ensure the probability that two nodes within
each other’s cluster range are both cluster heads is small.
For example, assuming that the length of an ADV CH
message is set to 100 bits, we get T c ≈ 10−4 seconds if
the transmission rate of the link is 1 Mbps, (the propagation
delay is negligible for such short-distance communication).
And if we choose λmax = 5, the probability is below 0.0125.
Since (7) is a fairly loose bound, the probability that two
neighboring clusterheads appear is much smaller in practical situations, which is also illustrated by simulations.
Lemma 5 shows that elected cluster heads during our
algorithm’s operation are well scattered so that most of ordinary nodes can find one clusterhead in their neighborhood. As a result, the chance that a sensor node becomes a
“forced clusterhead” will be greatly decreased. Hence from
Lemma 3 and Lemma 5, we can conclude in comparison
with LEACH the proposed algorithm is a promising clustering approach to use for extending system life.
3.
Simulation Experiments
We conduct simulation experiments to evaluate the performance of the proposed algorithm. The entire simulation is conducted in a 100 × 100 region, which is between
(x = 0, y = 0) and (x = 100, y = 100). 100 nodes with
2J initial energy are randomly spread in this region. Similar
to LEACH, each node has two transmission power levels:
lower level for the inner-cluster communication and higher
level for the node-to-BS communication. The inner-cluster
transmission range and node-to-BS transmission range are
set to 25 meters and 200 meters respectively. Initially, each
node is assigned a unique node ID and x, y coordinates
within the region. The base station locates in the (50,175).
We assume the simple radio model proposed by
Heinzelman et al. [2]. For LEACH, we set the optimal value
k = 5. And for our algorithm,we set λmax = 5 and λmin = 2.8.
Moreover, the residual battery energy is discretized into 20
levels. We also define that a node is “dead” if it has lost
99% battery energy. Simulation experiments proceed with
rounds. In each round, one ordinary node, if it has enough
residual energy to function properly, collects sensor data and
sends a packet (packet size L=10000 bit) to its CH or BS. We
call such packet “the effective data packet.”
Figure 1 and Fig. 2 are the output of one of the simulations of the LEACH and our proposed algorithm. Triangles and circles represent “clusterheads” and “ordinary
nodes” respectively while plus signs represent “forced clusterheads.” These figures shows that LEACH and our ap-
Fig. 1
Output of simulation of LEACH.
IEICE TRANS. COMMUN., VOL.E89–B, NO.2 FEBRUARY 2006
612
Fig. 2
Output of simulation of our algorithm.
Fig. 4
Fig. 3 Distribution of the number of times one node communicates directly with BS in a 20-round cycle.
proach both elect 9 cluster heads. However, the number
of “forced clusterheads” is quite different: only 3 “forced
clusterheads” appear in the simulation of the proposed algorithm while the number is 20 in LEACH’s operation. This
is because clusterheads elected by our algorithm are well
scattered. We also measure the average number of “forced
clusterheads” in 1000 simulations. Results show that by using LEACH, the average number of “forced heads” is 28
during a round. In contrast, by using our approach, only 2.4
“forced heads” appear on average.
The decrease of the number of “forced heads” will directly lead to the drop of the number of times one node communicates directly with BS. Figure 3 illustrates that compared with LEACH, our algorithm greatly reduces the number of times one node contact directly with BS.
Next, we measure the system life for three clustering
protocols: LEACH, HEED and our algorithm, where system
life is the time until the first node dies. For HEED, we set
pmin to 0.0005 and CH prob to 5%. As mentioned in Sect. 1,
each node in HEED’s operation must distribute its own cost,
which is energy-consuming. Figure 4 illustrates our algorithm improves system life over LEACH and HEED.
Then we study the relationship of system life and effective sensor data. Observing the simulation results of Fig. 5
System life using diferent clustering algorithm.
Fig. 5 Number of survival nodes per given amount of effective data packets sent.
Fig. 6
Amount of effective data packets sent per given amount of energy.
shows that our algorithm will produce more effective sensor
data more than LEACH and HEED over time since our algorithm has effectively reduced extra energy consumption.
Finally, we compare the energy-efficiency with our algorithm to LEACH and HEED. Figure 6 shows the total
number of effective sensor data sent by network nodes for
LETTER
613
a given amount of energy. From the results, we can conclude that our algorithm sends much more effective sensor
data for a given amount of energy than these two protocols
i.e. our algorithm is more energy-efficient.
like to thank the anonymous reviewers for their constructive
comments.
4.
[1] C.R. Dow, J.H. Lin, S.F. Hwang, and Y.W. Wang, “An efficient
distributed clustering scheme for ad-hoc wireless networks,” IEICE
Trans. Commun., vol.E85-B, no.8, pp.1561–1571, Aug. 2002.
[2] W.B. Heinzelman, A.P. Chandrakasan, and H. Balakrishnan, “An
application-specific protocol architecture for wireless microsensor
networks,” IEEE Trans. Wirel. Commun., vol.1, no.4, pp.660–670,
Oct. 2002.
[3] S. Bandyopadhyay and E.J. Coyle, “An energy efficient hierarchical
clustering algorithm for wireless sensor networks,” Proc. IEEE INFOCOM 2003, vol.3, pp.1713–1723, USA, 2003.
[4] V. Mhatre and C. Rosenberg, “Design guideline for wireless sensor
networks: Communication, clustering and aggregation,” Ad Hoc Networks J., vol.2, no.1, pp.45–63, Jan. 2004.
[5] O. Younis and S. Fahmy, “Distributed clustering in ad-hoc sensor networks: A hybrid, energy-efficient approach,” Proc. IEEE INFOCOM
2004, vol.1, pp.629–640, USA, 2004.
[6] L. Zhao, X. Hong, and Q. Liang, “Energy-efficient self-organization
for wireless sensor networks: A fully distributed approach,” Proc.
IEEE GLOBECOM 2004, vol.5, pp.2728–2732, USA, 2004.
Conclusion
LEACH, due to its randomness, is not as load-balancing as
expected. To solve such problem, we propose a new distributed clustering algorithm, which not only uses an adaptive backoff strategy to realize load balance among sensor
node, but also ensures that the elected clusterheads are welldistributed. Simulation results indicate that the proposed algorithm greatly reduces the number of “forced clusterheads”
and efficiently prolongs system life.
Acknowledgements
This work is supported by the Important Science and Technology Key Item of Shanghai Science and Technology Bureau under Grant No.05dz15004. The authors would also
References