Energy Aware Routing Algorithm for WSN

Applications in Border Surveillance

Yuping Dong
ECE Department
Tufts University
Medford, MA
yuping.dong@tufts.edu

Hwa Chang
ECE Department
Tufts University
Medford, MA
hchang@ece.tufts.edu
Zhongjian Zou
ECE Department
Tufts University
Medford, MA
zzou@tufts.edu


Sai Tang
ECE Department
Tufts University
Medford, MA
sai.tang@ece.tufts.edu


Abstract— Wireless Sensor Networks (WSNs) are widely used in
various applications for tracking or surveillance purposes.
Border security monitoring and terrorist attack prevention are
just two of many crucial homeland security applications which
rely upon WSN technologies. In these applications, a great
amount of sensors powered by batteries are deployed in a
particular region. They detect events, process and relay data to
the sink node at the base station. Power conservation is critical to
these sensors. In this paper, we propose a routing algorithm
which separates the sensor nodes to several scheduling sets and
keeps track of the energy level of each sensor. This algorithm
balances power consumption among sensors, and therefore
prolongs the network lifetime. Simulation results verify that our
algorithm outperforms the EECCR algorithm proposed in [1].
Keywords-energy aware; coverage; connectivity; network
lifetime (key words)
I. INTRODUCTION
A Wireless Sensor Network (WSN) usually consists of a
vast assembly of tiny sensors. These sensors relay and transmit
the information they detected or received from their neighbors.
The sink nodes at the base station aggregate the information
from the sensors and make the decision of the event. Although
WSNs have many uses, they provide a fundamental medium
for ground surveillance in those specific applications, like
border surveillance, terrorist tracking, etc. Currently, sensor
nodes are randomly deployed in large quantities, making it
impossible to either locate each sensor effectively or replace
the batteries. Moreover, since the sensor nodes are tiny, they
do not carry much energy. Designing energy efficient routing
protocols to prolong the network lifetime becomes essential to
all WSNs.
Coverage and connectivity are the other two fundamental
metrics when evaluating the quality and efficiency of a WSN.
When monitoring a border, an ideal WSN covers the entirety
of the area, and every bit of detected information is guaranteed
successful transmission back to the base station. If and when
an intruder is detected within the network, coverage would be
expected to increase appropriately so that we do not lose track
of the intruder. An existing work on an energy efficient
routing algorithm in [1] insures that each point within a region
of interest be covered by at least m sensor nodes, with each
node having not less than n different paths to the sink node.
There are flaws to this algorithm, as it allows for the same
node to be in as many scheduling sets as possible, drastically
reducing the potential lifetime of the network. The algorithm
also lacks the ability to track the energy remaining in each
node.
In an attempt to address the issues mentioned above, we
propose an algorithm which deploys multiple sink nodes and
divides the sensor nodes into different scheduling sets, the
members of each set together satisfy m-coverage and n-
connectivity for the whole monitored region. The network
switches between different scheduling sets when doing data
collection. The algorithm keeps track of each node’s energy
level, considers both hop count and remaining energy when
selecting next hop nodes. This way we can balance the power
consumption among all sensor nodes.
The rest of this paper is organized as follows. In Section II,
several current solutions to energy-efficient routing are
carefully studied. Section III explains how our algorithm
works. Simulation results and discussion are shown in Section
IV. Section V concludes this paper and points out future
works.
II. RELATED WORK
Energy is an essential issue in WSNs. Researchers have
made great effort in designing energy efficient solutions for
WSNs. There are mainly three different methods. One
method is to design energy-efficient devices for sensor
nodes. Rabaey et al. in [2] introduced “PicoNode” which
harvests energy from surroundings. Kahn et al. in [3] also
give an example of “Smart Dust” which uses passive optical
transmission to communicate between sensor nodes. In [4],
Wu et al. proposed a solution as the second method,
978-1-4244-6048-9/10/$26.00 ©2010 IEEE 530
designing energy saving MAC schemes. Since the sensor
nodes are deployed in a high density, not all nodes need to be
active all the time. We can schedule the redundant nodes to
sleep to reduce power consumption of the network. The third
method to save energy is to design energy-efficient routing
protocols at Network Layer [5]-[8]. [9] lists the three main
types of energy-efficient routing protocols, data centric,
hierarchical and location-based protocols.
The m-coverage and n-connectivity routing algorithm
proposed in [1] divides sensor nodes into different
scheduling sets. The sensor nodes in each set together make
the monitored region m-covered and the network n-
connected. “m-covered” is interpreted as each point of the
interested region is covered by at least m sensor nodes.
Network “n-connected” means each sensor node in the
network has at least n next hop neighbors. The authors
claim that this algorithm balances the power consumption
among the sensor nodes by allowing the network to
switch among different scheduling sets. However, this
algorithm did not consider nodes’ energy level. Nodes
choose their neighbors with minimal hop count as their next
hop nodes. So the neighbors with minimal hop count will be
used more frequently than others, which causes these
neighbors die very soon. When most nodes in a particular
area die, that area becomes a dead zone. When choosing the
next hop nodes for a particular node, this algorithm tends to
choose the same nodes that are already chosen for other
nodes as next hop nodes in order to reduce energy
consumption of those unused nodes. This further more
makes data flow concentrate in some nodes.
III. ENERGY AWARE ROUTIG ALGORITHM
To solve the problems of the EECCR algorithm stated in
Section II, in this paper, we continue our work in [10] and
improve the algorithm in the following aspects.

(1) We use multiple sink nodes to distribute power
consumption of nodes and shorten packets’
transmission latency.
(2) We assign random scheduling numbers to the
nodes with local maximum hop count instead of
assigning to the nodes with absolute maximum
hop count at the beginning. With this method,
we guarantee that there will be enough sensor
nodes to satisfy the m-coverage and n-
connectivity ratios.
A. Algorithm Basis
We adopt the method in [1] to calculate the minimal
number of nodes needed to satisfy m-coverage and n-
connectivity for the monitored region.
When given the required m-coverage ratio H and n-
connectivity probability K , the minimal numbers of nodes
needed for each condition ) , ( H m N
COV
and ) , ( K n N
CON

can be calculated. So the minimal number of nodes needed for
the network to be m-coverage ratio H and n - connectivity
probability K is then
)} , ( ), , ( max{ ) , , , ( K H K H n N m N n m N
CON COV ac
.
As stated in [11], if the sensor’s transmission range
t
r is
not smaller than twice the sensing range
s
r , full network
coverage can guarantee network connectivity. We plot the
expected network m-coverage ratio and n-connectivity ratio as
in Fig. 1 – Fig. 3 for reference. To be compared with the
simulation results we have, we use a circular region with radius
m R 200 as the monitored region. We assume there are
5000 sensors randomly deployed in this region, and we keep
m r
s
20 . For a large region like border surveillance area,
border effect can be ignored.
400 450 500 550 600 650 700 750 800
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
Number of nodes (N)
E
x
p
e
c
t
e
d

m
-
c
o
n
v
e
r
a
g
e

r
a
t
i
o


m=1
m=2
m=3
m=4

Figure 1. Expected m-coverage ratio vs. number of nodes.

400 450 500 550 600 650 700 750 800
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Number of nodes (N)
E
x
p
e
c
t
e
d

1
-
c
o
n
n
e
c
t
i
v
i
t
y

r
a
t
i
o


n=1,rt=rs
n=1,rt=2rs
n=1,rt=3rs
n=1,rt=4rs

Figure 2. Expected 1-connectivity ratio vs. number of nodes.
531
400 450 500 550 600 650 700 750 800
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Number of nodes (N)
E
x
p
e
c
t
e
d

2
-
c
o
n
n
e
c
t
i
v
i
t
y

r
a
t
i
o


n=2,rt=rs
n=2,rt=2rs
n=2,rt=3rs
n=2,rt=4rs

Figure 3. Expected 2-connectivity ratio vs. number of nodes.

B. Algorithm Description
Data collection contains the routing setup phase and the
data transmission phase. The routing setup phase sets up
»
¼
»
«
¬
«

) , , , (
) (
K H n m N
t N
s
ac
scheduling sets, where ) (t N is the
number of active nodes at time t, with each node having at
least n routing paths to the sink node. During the data
transmission phase, the scheduling sets are activated
periodically and transmit the sensed data to the sink node.
Each set checks its member nodes’ energy levels right after it
finishes one period’s sensing and updates each sensor node’s
routing table.
The routing setup phase is divided into three steps. To
distribute sensor nodes’ power consumption most efficiently,
the sink nodes are evenly distributed in the region of interest.
In the first step of routing setup, the total number of
scheduling sets is calculated from the m-coverage ratio H and
n-connectivity probability K .
Step 2 determines the hop count and creates a routing table
for each node as in [10].
Step 3 constructs the n-connectivity paths for each node.
Since the sink nodes are evenly distributed in the region, the
number of nodes with highest hop count will be very small.
To make sure that each scheduling set can fulfill the m-
coverage and n-connectivity ratios after the transmission
paths are setup, we assign random scheduling set numbers to
the nodes that have local maximum hop counts. To do this,
each node checks its vicinity in its sensing range. If it has the
biggest hop count among those nodes, it is recognized as the
local maximum hop count node and assigned a random
scheduling set number between 0 and s-1 (0 and s-1
included).
After all local maximum hop count nodes are assigned a
scheduling set number, they start to propagate the scheduling
set numbers to the nodes with lower hop count numbers.
When choosing next hop nodes, we choose them according to
the P value as below.
EL w
CurrHC
HC
w P
e h
u
'
u , where CurrHC is the hop
count of current node, HC ' is the difference between the
hop count of current node and its neighbor node, EL is the
percentage of remaining energy of the neighbor node, and
h
w and
e
w are the weights ( 1 0 d d
h
w , 1 0 d d
e
w ) we
give to the two metrics.
After these three steps, the network is divided into s
scheduling sets with both transmission latency and energy
consumption taken care of. These s scheduling sets run
alternatively in the following data transmission phase.

During the data transmission phase, the scheduling sets
check the energy levels of their member nodes when they
finish working for a period. Each node broadcasts its current
energy level with the transmission range
t
r , and the nodes
who have it as a neighbor update their routing tables. If
there is any node whose next hop nodes are all with energy
levels below a threshold value
thres
EL , the corresponding
scheduling set is eliminated from the list. Periodically, the
network constructs new scheduling sets with all the available
nodes unless it cannot make even one scheduling set with all
the available nodes. The network lifetime is said to be
expired if there are not enough nodes that can form even
one scheduling set.

C. An Example Network
We illustrate our algorithm here with an example network
as shown in Fig. 4. We have 21 sensor nodes and two sink
nodes. The sensor nodes are labeled from “A” to “U”. The sink
nodes indicated by “SK” are evenly distributed in the network.
Assume after first step of routing setup phase, we know
the sensor nodes can be divided into 3 scheduling sets.

In the second step, each sensor node determines its own
hop count and maintains a routing table with its neighbor
nodes’ information. Assume after this step the largest hop
count is 3. But with two sink nodes, at some areas, hop count
number 1 and 2 can also be the local maximum hop count. So
as shown in Fig. 4(a), the local maximum hop count nodes
assign themselves scheduling set numbers between 0 and 2.
At the beginning of the third step, the local maximum hop
count nodes first started to find their n next hop nodes based
on the P values of their neighbor nodes as in Fig. 4(a).
Assume our application here is to build an m-coverage 2-
connectivity network. So each node seeks for two next hop
nodes. Upon receiving the notifying messages from local
maxi mum hop count nodes, the selected nodes update
their scheduling number sets. These selected nodes do not
532
necessarily have lower hop count than their upstream
nodes, because of the energy level we take into

Figure 4. An Example Network.

account when selecting next hop nodes. This process goes on
until we reach the sink nodes. A possible result of the routing
setup phase is shown in Fig. 4(b). It’s not possible for each set
to fully cover the whole region in the example here because the
available number of nodes is small. In real life with border
surveillance applications, we deploy much denser sensor nodes
which give greatly improved results. The simulation results in
the next section prove it.
Compare to the EECCR algorithm in [1], our algorithm
considers both packet transmission latency and the node’s
energy consumption, thus achieves better energy efficiency
while maintaining short transmission latency.
In the following data transmission phase, the three
scheduling sets start to work alternatively.
IV. SIMULATION RESULTS
Simulation is conducted in C# to demonstrate our
algorithm and compare it with the EECCR algorithm in [1].
Below are the metrics to be considered.
1) Standard deviation of nodes’ usage over hop count.
We check the energy level of all nodes periodically
and calculate the standard deviation of the energy
used among all nodes with the same hop count. We
can check the algorithm’s efficiency of distributing
power consumption among nodes by checking the
standard deviation values.
2) Network lifetime. Here the network lifetime is
defined as the time from the sensor network is first
established until there are not sufficient available
sensor nodes to achieve the m-coverage and n-
connectivity network.
3) Network m-coverage ratio. We loop over the whole
region, search in a radius
s
r circular area centered
at each point to see how many active nodes are in
that area for each scheduling set and get the average
m-coverage ratio among the scheduling sets. We
calculate the network m-coverage ratio with
different number of nodes per scheduling set, and
compare the results of our algorithm with the
EECCR algorithm.
In order to compare with the EECCR algorithm, the
monitored area in our simulation is a circular region with a
radius m R 200 . In a large scale sensor network,
homogeneous sensor nodes are usually used. In the simulation,
5000 sensor nodes with a sensing range of 20m and a
transmission range of 40m are randomly distributed in the
area.
In Fig. 5(a) – (b), we plotted the average number of
active nodes in the network versus network m-coverage ratio
of both the EECCR algorithm and the EAR algorithm
(our algorithm with 1 sink node [10] and with 4 sink nodes).
From the plots we can see that by using our algorithm,
there are always fewer nodes that are active in the network
than using the EECCR algorithm while keeping the high
network m-coverage ratio. This is because in our algorithm,
the sensor nodes are included in fewer scheduling sets. So
there are fewer nodes running at anytime.


(a)


(b)
Figure 5. Number of Active Nodes vs. Coverage Ratio.

Fig. 6(a) and (b) plotted the standard deviation of energy
consumption among the nodes with the same hop count.
Here we used equal weight for both the energy level and hop
533
count when setting up the n-connectivity paths. The standard
deviation values of our algorithm are smaller than the
EECCR algorithm for most hop counts. This indicates that
our algorithm tends to spread the power consumption among
the nodes with the same hop count. The EAR algorithm with
4 sink nodes has even smaller standard deviation values,
which indicates that with 4 sink nodes, the power
consumption is further distributed among all nodes. Note that
with more sink nodes, the largest hop count is smaller than
with 1 sink node, because it is easier for the sensor nodes to
reach the sink nodes.


( a )

( b)
Figure 6. Nodes Usage vs. Hop Count.
While if we set 1
e
w and 0
h
w , our algorithm is
actually a pure energy saving algorithm. In the other hand,
the EECCR algorithm only takes hop count into
consideration which makes it a greedy algorithm.
To check if our algorithm really prolongs the network
lifetime, we did simulations with low initial energy level
for all the sensor nodes. With an initial energy level of
120, for simplicity, assume each node’s sensing power is
2, packet sending power is 2, and packet receiving power is
1, when using 50% weights, the 2-connectivity network
using our algorithm ran 249 seconds with 1 sink node, 283
seconds with 4 sink nodes. While the 2-connectivity
network using the EECCR algorithm only ran for 174
seconds. That means that our algorithm has more than 40%
improvement on energy saving over the EECCR algorithm.
Because of the concentrated node usage of the EECCR
algorithm, some areas die sooner which causes the shorter
network lifetime.
V. CONCLUSION AND FUTURE WORK
In border security wireless sensor networks, the small
sensors are randomly distributed in great volume. It is very
hard to locate each sensor node correctly. So battery
recharging or replacement is impossible in this circumstance.
Energy conservation becomes the only solution to
prolonging the lifetime of this kind of network. The EECCR
algorithm in [1] divides the whole network to s scheduling
sets and let different sets work alternatively to distribute
power consumption among nodes. However, when setting up
the scheduling sets, the EECCR algorithm did not take into
account nodes’ energy level which may cause some nodes
deplete very soon. In this paper, we proposed an improved
energy aware routing algorithm to distribute data traffic
among sensor nodes. We reduced network power
consumption by activating fewer nodes than in the EECCR
algorithm. Simulation results verified that our algorithm
prolongs network lifetime much more than the EECCR
algorithm while maintaining better network m-coverage and
n-connectivity ratios.
With multiple sink nodes, the network power consumption was
further improved. But the nodes that are closer to the sink
nodes still carry most data traffic. These nodes will be the
first nodes that deplete their energy. In order to further
distribute power consumption, we could use moving sink
nodes to improve energy efficiency.
ACKNOWLEDGMENT
Our thanks to Andrew Kim for providing help with
editing the text, to Almir Davis, Nicole Ng, Nick Sullivan,
and Clint Epperson for discussing and sharing ideas with us.



REFERENCES
[1] Y. Jin, L. Wang, J. Jo, Y. Kim, M. Yang, and Y. Jiang, “EECCR: An
energy-efficient m-coverage and n-connectivity routing algorithm
under border effects in heterogeneous sensor networks,” IEEE Trans.
Vehic. Tech., vol. 58, no. 3, March 2009, pp. 1429-1442.
[2] J. M. Rabaey, M. J. Ammer, J. L. da Silva, D. Patel, and S. Roundy,
“Pico-Radio supports ad hoc ultra-low power wireless networking,”
Computer, vol. 33, no. 7, pp. 42-48, Jul. 2000.
[3] J. M. Kahn, R. H. Katz, and K. S. J. Pister, “Next century challenges:
Mobile networking for ‘smart dust’,” in Proc. 5th ACM/IEEE Annu.
Int. Conf. Mobile Comput. Netw. MOBICOM, 1999, pp. 271-278.
[4] Y. Wu, X. Li, Y. Liu, and W. Lou, “Energy-efficient wake-up
scheduling for data collection and aggregation,” IEEE Transactions on
Parallel and Distributed Systems, vol. 21, no. 2, pp. 275-287, Feb. 2010.
[5] N. Perwaiz, and M. Y. Javed, “A study on distributed diffusion and its
variants,” in Proceeding of 12th International Conference on Computers
and Information Technology, ICCIT’09.
534
[6] H. Lu, J. Li, and G. Wang, “A novel energy efficient routing algorithm
for hierarchically clustered wireless sensor networks,” International
Conference on Frontier Computer Science and Technology, 2009, pp.
565–570.
[7] D. Wang, H. Tian, and S. Wang, “Energy-efficient routing research for
WSN,” International Conference on Wireless Communication,
Networking and Mobile Computing, WiCom, 2007, pp. 2413–2415.
[8] H. Hou, X. Liu, H. Yu, and H. Hu, “GLB-DMECR: Geographic
location-based decentralized minimum energy consumption routing in
wireless sensor networks,” in Proceedings of the 6th International
Conference on Parallel and Distributed Computing, Applications and
Technologies. PDCAT’05.
[9] K. Akkaya and M. Younis, “A survey on routing protocols for wireless
sensor networks,” Ad Hoc Netw., vol. 3, no. 3, pp. 325-349, May
2005.
[10] Yuping Dong, Hwa Chang, Zhongjian Zou, and Sai Tang, “Energy-
Balanced m-Coverage and n-Connectivity Routing Algorithm for
WSN”, in Proceedings of the International Conference on Convergence
and Hybrid Information Techonology. ICHIT’10.
[11] H. Zhang and J. Hou, “Maintaining sensing coverage and connectivity in
large sensor networks,” Int. J. Wireless Ad Hoc Sensor Netw., vol. 1, no.
½, pp. 89-124, 2005.



535