You are on page 1of 5

An Energy Efficient Load Balancing Algorithm for

Cluster-Based Wireless Sensor Networks


A.Tarachand, Vikas Kumar, Abhishek Raj, Ashish Kumar, and Prasanta K. Jana
Department of Computer Science and Engineering
Indian School of Mines, Dhanbad, India-826004
E-mail Id: a_tarachand@yahoo.com, {vkyvikash, abraj1992}@gmail.com,ash_02@rediffmail.com, prasantajana@yahoo.com

Abstract - In a large-scale wireless sensor network, clustering


sensor nodes around a few less-energy constrained gateways (also
called cluster heads) has been considered as an effective means to
achieve scalability and robustness of the networks. However, if
some gateways are overburdened with a large number of sensor
nodes, they can die quickly and as a result the network life time
can be over within a short period of time. To prolong the lifetime
of the network, therefore, it is imperative to balance the load of
the gateways. It is also equally important to minimize average
communication energy of the sensor nodes inside their clusters.
In this paper, we propose a new algorithm called CELBA
(Centralized Energy efficient Load Balancing Algorithm) for
wireless sensor networks that not only balances the load of the
gateways but also energy efficient communication of the sensor
nodes in their clusters. Simulation results demonstrate that the
proposed algorithm is more energy efficient and load balanced
than the existing algorithms.
Keywords-Wireless Sensor Networks, Clustering, Load Balancing,
Communication Energy.

I.

INTRODUCTION

In the recent years, Wireless Sensor Networks (WSNs) has


drawn much attention due to its potential and wide variety of
applications such as physical environmental monitoring,
security surveillance and disaster management [1]. Sensor
nodes operate on low power battery and they are usually
deployed in harsh or unreachable places. Therefore, replenish
their energy is not feasible. Such energy restrictions on WSNs
alarm to adopt energy efficient management strategy to make
network operate for a long period of time.
Clustering is one of the effective means to conserve energy
of the sensor nodes and has many advantages over
conventional methods [4]. It can minimize redundant message
exchange among sensor nodes. It can also distributes the
routing table within the cluster and thus reduce the size of the
routing table stored at each sensor node. Clustering of sensor
nodes have been addressed by many researchers [4]. Most of
the existing clustering techniques base on selecting a cluster
head from the available regular sensor nodes which include
cluster ID [5], degree of connectivity [6,7], residual energy [8]
etc. However, many of these algorithms do not consider load
balancing among cluster heads. Some algorithms rotate the
role of cluster heads among the regular sensor nodes to
balance the energy consumptions by re-clustering [9]. Most of
the theses techniques adopt multi-hop communication to relay

data to sink as they cannot support long range of


communication. So, the hot spot problem still remains, i.e., the
sensor nodes that are closer to sink carries more inter-cluster
traffic and hence deplete their energy faster than far away
sensor nodes. In addition to this, route discovery and route
updating put an extra burden on the network. To overcome
such overheads and unbalanced consumption of energy, a new
architecture has been proposed in the literature [2-3] where
less-energy constraint nodes called gateways are deployed in
the network. Sensor nodes are clustered around such gateways
to form clusters as shown in Fig. 1 and the gateways are
responsible to manage sensor nodes under its cluster. Each
sensor node belongs to only one cluster and communicates to
the gateway in its cluster. By this approach, the overall traffic
load of the sensor nodes can be better distributed. It is also
easy to handle scalability and resource management of the
system. However, improper assignment of the sensor nodes to
the gateways during clustering phase can cause few gateways
overwhelmed with increasing number of sensor nodes. Such
overload may degrade the performance of the WSN as
overloaded gateways may consume their energy faster and it
may result in re-clustering of the sensor nodes which is
undesirable for energy constrained sensor nodes.

Base Station

Gateway

Sensor

Fig.1. Multi-gateway sensor network architecture


In this paper, we focus on clustering the sensor nodes
around a few given gateways with the following two
objectives; i) balancing the load on each gateway and ii)
minimizing consumption of communication energy of the
sensor nodes inside the clusters. To achieve this, we propose a
new algorithm referred as CELBA (Centralized Energy
efficient Load Balancing Algorithm) which takes care of both

978-1-4673-2272-0/12/$31.00 2012 IEEE

1250

the objectives. We perform excessive experiments on the


proposed algorithm. Experimental results show that it is better
than the related algorithm LBCA as proposed in [2].
The organization of the paper is as follows. Section 2
presents the network model and section 3 surveys the related
work. Section 4 presents problem formulation and description
of the algorithm. Simulation results are shown in section 5
followed by the conclusion in Section 6.
II.

NETWORK MODEL

A. Assumptions
A multi-gateway architecture for sensor network is shown in
Fig. 1. Gateways are used to perform data aggregation and
relay the aggregated data to the base station. All the
communications are over wireless media and all the links are
symmetric, i.e., a link is established between two nodes only
when they are under communication range of each other. In
this paper we assume that all the sensor nodes are stationary
once deployed. The locations of the gateways are known and
fixed throughout lifetime of the network. All the nodes are
also assumed to be aware of their locations through some
beacon nodes or using some localization techniques [10].
B. Sensor Energy Model
We adopt the sensor energy model from [2]. For
communication we consider here the energy/bit consumed by
the transmitter, the transmit op-amp, and the receiver unit. Let
Etx be the energy to send r bits and Erx is the energy consumed
to receive r bits. Assuming a path loss of 1/d2 for traversing a
distance d, the equations for energy consumed by the
transmitter and receiver are given as follows [2]:

Etx = ( t + amp d 2 ) r and E rx = r r

( 2.1)

where t, r are energy dissipated in transmitting and receiving


units per bit, amp is energy dissipated in transmitter amplifier,
r is the number of bits in the message and d is the distance,
the message traverses.
III.

RELATED WORK

Clustering is one of the most studied areas in WSNs research


[4]. Heinzelman et al [9] introduced LEACH, one of the well
known distributed single-hop clustering algorithms. In this
algorithm, the role of cluster head is periodically rotated
amongst sensor nodes present in the cluster and the cluster
head selection is random. Therefore there is always chance of
selecting a sensor node as a cluster head that has very low
energy and it may die quickly and the lifetime of the network
gets reduced. To overcome these shortcomings, a number of
improvements are proposed over LEACH such as HEED [8],
LEACH-C [11], PEGASIS [12], and TEEN [13]. Numbers of
other clustering methods for WSNs were reported in [14],
[15], [16], [17], [18]. However, most of these techniques do
not consider load balancing of the cluster heads.
Low et al. [3] proposed a load balance algorithm based on
multi gateway architecture. The running time complexity of
this algorithm is O(mn2). Another load balanced cluster
algorithm has been recently proposed in [19] with the time
complexity of O(nlogn) which has been shown to be an
improvement over Lows algorithm, where n is number of
sensor nodes and m is the number of gateways deployed in the

network. However, in both of these approaches,


communication energy of the sensor node is not paid much
attention. Gaurav et al. [2] proposed a clustering algorithm by
considering both the load balancing and communication
energy issues. However, communication energy of the sensor
nodes within the cluster in their method is still high and it goes
even higher if there is no a special kind of nodes, called
restricted nodes in the network. In contrast to this, our
proposed method is shown to be more efficient with respect to
load balancing and communication energy issues in all the
situations, i.e., with or without any restricted nodes. We also
use a separate objective function called base mean cardinality
instead of variance of load as used in [2].
IV.

PROPOSED ALGORITHM

Here we present our proposed algorithm. However, in order to


understand our algorithm, we first introduce some useful
terminologies for problem formulation similar to [2] and then
describe the clustering process followed by the description of
the algorithm.
A. Problem Formulation
Definition 1(CSet): Each gateway constructs a set of sensor
nodes to communicate with them and we refer it as CSet. A
sensor node Sj is said be in CSet of gateway Gi iff both are in
the communication range of each other, i.e.,

S j CSetGi iff TRsj d sj Gi and TRGi d sj Gi

(4.1)

where, TRGi and TRSj denote the transmission range of Gi and


Sj respectively and dSj Gi denote the communication
distance between the sensor node Sj and the gateway Gi. CSet
of a gateway stores the ID of its sensor nodes and their
communication distance from the gateway.
Definition 2 (Restricted Nodes): These are nodes which can
communicate to only one gateway.
Definition 3 (RSet): An RSet is created for each gateway. This
is set basically the collection of all restricted nodes. A sensor
node Sj is said be in RSet of gateway Gi iff Sj can only
communicate to Gi, i.e.,

S j RSetGi iff S j CSetGi and S j CSetGk , k i,

(4.2)

Definition 4. Degree of a sensor node: The degree of a sensor


node is defined as the number of gateways it can directly
communicate.
Processing load PGi of a gateway Gi is load required to process
the data received from its sensors and the corresponding
energy consumed for the processing. Let Costj,i be the
communication cost which is a function of communication
energy dissipated in transferring and receiving r bits of data
over the distance dSj Gi. The communication cost Costj,i is
calculated as follows.
Cost j ,i = Etx + E rx = ( t + amp d 2 ) r + r r

( 4.3)

Then, the communication energy CEGi of a gateway Gi is


calculated as the sum of the communication cost of all sensors

1251

within the cluster.


n

CEGi =

Cost

j ,i

(4.4)

We now define the load of a gateway Gi as the function of


processing load PGi and the communication energy CEGi, i.e.,

j =1

where, n is number of sensor nodes in the cluster.


//Initialize the load of each gateway
For G = 1 to K do
CG= // CG is cardinality of gateway G
End For
//Constructing CSet of each gateway
For G =1 to K do
For S = 1 to N do
If (TRS dS G) then
G.CSet [G. count] = S
G. count++
End If
End For
End For
//Constructing Rset of each gateway
For S=1 to N do
For G =1 to K do
If (S.degree = =1 && S CSet [G]) then
G. RSet [CG] = sensor
CG ++
S.assign=1
End If
End for
End for
//Create the groups of sensors having same degree.
For S = 1 to N do
If (S.assign! =1)
Group [S.degree].add (S)
Update Min-degree and Max-degree
End if
End for
//Expand the RSet of each gateway using BMC of the system
For degree = Min-degree to Max-degree do
S = Group [degree].next
For G = 1 to K
If (G.load < BMC && Min_distance (S, G)) then
S. Rset [CG] =S
CG++
S.assign=1 // sensor S is assigned to G
Update BMC
//if sensor left unassigned, cluster it based on minimum
//cardinality
S = Group [degree].next
For gateway = 1 to K
If (S->Shortest distance (G)) then
G. Rset [CG] = S
CG++
S.assign=1 // sensor S is assigned to G
Update BMC
End If
End For
End If
End For
End For

LGi = ( PGi , CE Gi )

(4.5)

Since, we assume that all the sensor nodes deployed in the


network are same and produce data at the same rate, and then
the processing load PGi is directly proportional to number of
sensor nodes within the cluster. It means that, to balance the
load of each gateway, we have to balance the number of nodes
per gateway. In addition to this, we have to minimize the
communication energy required per gateway.
To keep the system close to the average load, we choose an
objective function called Base Mean Cardinality (BMC) of the
system. That is,
|G |

BMC =

1
X
CGk =
| G | k =1
|G |

( 4.6)

where, CGk is cardinality of gateway Gk; cardinality of


gateway indicates number of sensor nodes currently assigned
to gateway Gk. |G| is number of gateways and X is number of
sensor nodes currently assigned to various gateways.
B. The Clustering Process
In our approach, clusters are formed on the basis of load on
the gateways as well as communication energy defined in
equation 4.4. The overall function of the WSN for clustering
is as follows. Network setup is performed in three stages
namely, Discovery, Balancing and Clustering. In discovery
phase, each gateway broadcasts hello message to find the
sensors that fall under their communication range. In reply,
each sensor also broadcasts a message consisting of their
location. After receiving the reply message from the sensors,
each gateway include the nodes ID and location into their
communication set. In balancing phase, gateways calculate
communication cost with each node in the communication set.
This information is then sent to sink for further processing.
Sink performs task of balancing the sensor node per gateway
as per given objective function, as defined in Equation (4.6).
In the clustering phase, all the gateways are informed about
the ID of the sensors that fall under them. After receiving the
ID of the sensors from the sink, each gateway start clustering
process by sending joining message to only those sensors as
informed by the sink.
C. Description of the Algorithm
The proposed load balanced algorithm is described as follows:
Let S = {S1, S2, S3,SN} be the set of sensor to be assigned to
set of gateways G = {G1, G2, G3,GK}. Initially the
cardinality of each gateway is set to null, i.e., CGK = . In the
first step, we allocate all the restricted nodes to RSet of their
corresponding gateways and calculate the BMC of the system,
as defined in equation (4.6). Next, sensor nodes are assigned
to RSet from CSet. Before assign these sensor nodes, we need
to sort the sensor based on increasing order of their degree,
because a sensor have lesser degree should be given higher
priority as it can join very few gateways. Now select the
gateways whose cardinality is less than or equal to the BMC of
the system, i.e.,

Fig. 2 Pseudocode of the proposed algorithm.

1252

In this section, we evaluate the performance of the CELBA


algorithm through simulation. The experiments were
performed on C++ environment with an Intel Core 2 Duo
Processor machine, T9400 chipset, 2.53 GHz CPU and 2GB
RAM running on the platform Microsoft Window 7. We
randomly dispersed sensor nodes into field with dimensions
1200 1200 square meters. We varied sensor nodes from 100
to 600 and gateways from 2 to 10 in our simulation. The initial
energy of each sensor node was set to 5 joules. Sensors
become non-operational when their energy level reaches 0
joules. Data packet size is set to 10K bits. We set transmission
range of sensor nodes in such a way to create two deployment
scenarios; one is to create restricted node and other without
restricted nodes. In order to measure the performance of the
proposed algorithm we consider the following two metrics as
follows.

18
16
14
12
10
8
6
4
2
0

LBCA

CELBA

shortest

LBCA

CELBA

shortest

Number of sensors
Fig. 4. Average Communication Energy per cluster with
restricted nodes

0.6
0.5
0.4
0.3
0.2
0.1
LBCA

CELBA

0
Number of sensors

Fig. 5. Average Communication Energy per cluster


without restricted nodes.
100
133
177
200
233
277
300
333
377
400
433
477
500
577
600

Standard deviation of load

Standard deviation of load of gateways: Experiments were


performed and standard deviations of the gateway loads were
calculated. Same experiments were performed on shortest
distance clustering and LBCA [2]. In shortest distance
clustering sensor nodes are assigned to their nearest gateway.
The results are shown in Fig.3 which indicates that both
CELBA and LBCA perform same but outperform the shortest
distance clustering. Linearly increase in load per cluster
shows that both CELBA and LBCA can handle scalability of
the network easily where shortest distance clustering cannot.
In shortest distance cannot give load balanced clustering, a
highly loaded gateway create latency in the network.

0.18
0.16
0.14
0.12
0.1
0.08
0.06
0.04
0.02
0

100
133
177
200
233
277
300
333
377
400
433
477
500
577
600

SIMULATION RESULTS

100
133
177
200
233
277
300
333
377
400
433
477
500
577
600

V.

Average Communication
Energy (joules)

The pseudocode of the algorithm is shown in Fig. 2.

gateways and the comparison results are shown in Fig. 4 and 5


respectively. It is obvious to note from the figures that the
proposed algorithm performs better than LBCA in both the
cases. However, the shortest distance clustering performs
better than the proposed algorithm although it is inferior to
CELBA with respect to load balancing issue as indicated by
Fig. 3. Shortest clustering initially consumes less transmission
energy but due to its unbalancing nature of the load it put
heavy burden on the gateway, which may cause gateway may
fail/degrades it performance as results re-clustering is
inevitable. Re-clustering is not desirable for this kind of
network and it always consumes more energy.

Average communication energy


(joules)

X
, 1 i K
|G|
Then the sensor nodes are assigned to a nearest gateway Gi
whose cardinality is less than the BMC, i.e., CGi BMC. For
assigning n senor nodes to m gateways. The time complexity
of the proposed algorithm is O(mn).
CGi

Number of sensors
Fig. 3 Standard deviation of load with increasing density
Communication energy per cluster: We measured the total
communication energy using the equation 4.4. We performed
the experiments with and without restricted nodes for the

VI.

CONCLUSION

In this paper, we have presented a novel energy efficient and


load balancing algorithm for a multi-gateway wireless sensor
networks. We have shown the experimental results on the
basis of the two performance matrics, i.e., gateway loads and
the communication energy. The proposed algorithm has been
shown to perform better than the the similar algorithms.

1253

REFERENCES
[1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

[9]

[10]

[11]

[12]

[13]

[14]

[15]

[16]

[17]

[18]

[19]

I.F. Akilidz,W. Su,Y. Sankarasubramaniam, and E. Cayirci,Wireless


sensor networks: a survey, Computer Networks, Vol. No.38, pp. 393422, 2002.
G. Gupta and M. Younis. Load-balanced clustering of wireless sensor
networks. In IEEE International Conference on Communications, Vol.
No. 3, pp. 18481852, 2003.
C.P. Low, C.Fang, Jim M. N, and Y. H. Ang: Efficient load-balanced
clustering algorithms for wireless sensor networks. Computer
Communications, Vol. No. 31, pp. 750-759, 2008.
A. A. Abbasi and M. Younis, A survey on clustering algorithms for
wireless sensor networks, Computer Communication, Vol. No. 30, pp.
28262841, 2007.
D.J. Baker, A. Emphemides, A distributed algorithm for organizing
mobile radio telecommunication networks, In Proceedings
International. Conference in Distributed Computer Systems, 1981.
M. Gerla and J.T.C. Tsai, Multicluster, mobile, multimedia radio
network, ACM/Baltzer, Journal of Wireless Networks,Vol.No. 1, pp.
255265. 1995.
A.K. Parekh, Selecting routers in ad-hoc wireless networks, In
Proceedings of SBT/IEEE International Telecommunications
Symposium, 1994.
O. Younis and S. Fahmy, HEED: a hybrid, energy-efficient, distributed
clustering aproach for ad hoc sensor networks, IEEE Transactions on
Mobile Computing., Vol. No. 3, pp. 366379, 2004.
W. Rabiner Heinzelman, A. Chandrakasan, and H. Balakrishnan,
Energy-efficient communication protocols for wireless microsensor
networks, in: Proc. Hawaii Intl. Conf. on System Sciences (HICSS00),
January 2000.
D. Niculescu and B. Nath. Ad hoc positioning system (APS). In 2001
IEEE Global Telecommunications Conference, Vol. 5, San Antonio, TX,
Novermber 2001,IEEE, New York, pp. 29262931.
Wendi B. Heinzelman, Anantha P. Chandrakasan and Hari
Balakrishnan, An application-specific protocol architecture for wireless
microsensor
networks,
IEEE
Transactions
on
Wireless
Communications, Vol. 4, pp. 660 670, 2002.
S. Lindsey and C. Raghavendra, PEGASIS: Power-efficient gathering
in sensor information systems, In Proceedings of IEEE Aerospace
Conference, Vol. No. 3, pp.1125-1130, 2002.
A. Manjeshwar and D. Agrawal, TEEN: A routing protocol for
enhanced efficiency in wireless sensor setworks, In Proceedings of 15th
International Parallel and Distributed Processing Symposium, pp. 20092015, 2001.
Zhixin Liu, Qingchao Zheng, Liang Xue, and Xinping Guan,A
distributed energy-efficient clustering algorithm with improved coverage
in wireless sensor networks, Future Generation Computer Systems, pp.
1-11 ,2011.
Xiang Min, ShiWei-ren, JiangChang-jiang, and ZhangYing, Energy
efficient clustering algorithm for maximizing lifetime of wireless sensor
networks, International Journal of Electronics Communication, Vol.
No. 64, pp. 289-298, 2010.
N. Dimokas, D. Katsaros, and Y. Manolopoulos, Energy-efficient
distributed clustering in wireless sensor networks, Journal of Parallel
Distributed Computing, Vol. No. 70, pp. 371-383, 2010.
Wei Li Energy Efficient Clustering Algorithm in Wireless Sensor
Networks based on Geometric Programming. In Proceedings of
International Symposium on Electronic Commerce and Security, Vol.
No. 2, pp. 525-527, 2009.
Buyanjargal O. and Kwon Y,AEEC-Adaptive and energy efficient
clustering algorithm for content based wireless sensor networks, In
Proceedings of International Conference on Computer Science and its
Applications, pp.1-6, 2010.
Pratyay Kuila and Prasanta K. Jana, Improved load balanced clustering
algorithm for wireless sensor etworks. ADCONS , pp. 399-404, 2011.

1254