A novel disjoint set division algorithm for joint scheduling and

Wireless Netw
DOI 10.1007/s11276-014-0862-3
A novel disjoint set division algorithm for joint scheduling
and routing in wireless sensor networks
Jie Tian • Xiaoyuan Liang • Tan Yan •
Mahesh Kumar Somashekar • Guiling Wang
Cesar Bandera
•
Springer Science+Business Media New York 2014
Abstract High network connectivity and low energy
consumption are two major challenges in wireless sensor
networks (WSNs). It is even more challenging to achieve
both at the same time. To tackle the problem, this paper
proposes a novel disjoint Set Division (SEDO) algorithm
for joint scheduling and routing in WSNs. We finely divide
sensors into different disjoint sets with guaranteed connectivity based on their geographical locations to monitor
the interested area. We propose a class of scheduling and
routing algorithms, which sequentially schedule each disjoint set to be on and off and balance the energy consumption during packet transmission. Simulation results
show that SEDO outperforms existing schemes with lower
packet delivery latency and longer network lifetime.
Keywords Wireless sensor networks Disjoint set
division Joint scheduling and routing algorithm
J. Tian (&) X. Liang T. Yan M. K. Somashekar G. Wang
Department of Computer Science, New Jersey Institute of
Technology, Newark, NJ, USA
e-mail: [email protected]
X. Liang
e-mail: [email protected]
T. Yan
e-mail: [email protected]
M. K. Somashekar
e-mail: [email protected]
G. Wang
e-mail: [email protected]
C. Bandera
School of Management, New Jersey Institute of Technology,
Newark, NJ, USA
e-mail: [email protected]
1 Introduction
Wireless sensor networks (WSNs) consist of a large number of wireless sensor nodes. Each node is powered by
energy-constrained battery. A typical WSN application
usually requires to deploy a large number of sensor nodes
in a hostile environment, which makes replacing or
recharging the battery very difficult. Once deployed, sensors are expected to keep working for months, which
makes energy efficiency the essential requirement in
WSNs.
To improve energy efficiency, duty-cycle scheduling is
widely applied to turn sensors off at most of the time,
and only turn them on when they need to perform
required duties (sensing, transmitting, etc.) [1–4]. When a
sensor is off, it does not perform any task and consumes
little energy, and thus its energy can be greatly
preserved [5].
However, duty-cycle scheduling significantly affects the
network connectivity [6], one of the most important network performance metrics. Off-duty sensors are unable to
receive or forward messages. The smaller number of sensors are powered on at a time, the poorer potential connectivity the network has. A mis-configured scheduling can
cause serious problems. For example, in a network monitoring forest fires, sensors in the area are required to report
the sensed event in a timely fashion. It will be a disaster, if
a fire is sensed and the event message can not be routed to
the sink due to a broken link caused by off-duty sensors.
Thus, a good scheduling scheme should improve energy
efficiency under the constraint of network connectivity.
This calls for a joint scheduling and routing mechanism
that maintains network connectivity, meanwhile minimizes
and balances the network energy consumption to prolong
the network lifetime.
123
Wireless Netw
To fulfill this requirement, in this paper, we design an
algorithm to divide sensors into disjoint sets, which are
scheduled to be on and off at different time slots. The set of
sensors powered on conduct sensing and communication
job, while other sets are sleeping and conserving energy.
Our design has the following three objectives: (1) in each
set, the connectivity from the sink to the sensors in network
boundaries should be maintained, so that sensors can report
the sensed events to the sink. (2) At each time slot, the
amount of sensors that need to be powered on to maintain
the network connectivity should be as small as possible. (3)
The energy consumption in each set should be balanced.
We propose a distributed disjoint Set Division (SEDO)
algorithm for joint scheduling and routing in an area of
interest. Given an area, SEDO first divides all the sensors in
the area into a certain number of sets, such that each set
maintains connectivity from a sink to area boundaries. The
set division executes hop by hop from the sink to nodes in
network boundaries, which assigns nodes to corresponding
sets according to their geographical locations. To ensure
the connectivity, during the set division, a node is only
assigned to the set which contains nodes it can communicate with. To balance the energy consumption, we balance
the number of nodes in each set. We schedule the disjoint
sets to be on and off sequentially, such that only one set is
on duty in every time slot. Whenever a node of an on-duty
set needs to send message to the sink, a route is built within
the set. A node always selects its neighbor with the highest
amount of remaining energy as the next hop to balance
energy consumption in packet forwarding. In this way, the
network lifetime is prolonged. Simulation results show that
SEDO outperforms previous works [7] and [8] with longer
network lifetime and lower average packet delivery
latency.
The remainder of the paper is organized as follows.
The system model and algorithm overview is presented in
Sect. 2. The set division and scheduling is described in
Sect. 3. A routing protocol is presented in Sect. 4. Section 5 shows the simulation results. Related work is discussed in Sect. 6. Finally, Sect. 7 concludes the paper.
2 Assumptions and scheme overview
2.1 Assumptions
In the paper, we make following assumptions:
•
The sensing area of a sensor node is a circle, which is
modeled using an isotropic sensing model same as
in [9–11]. Each sensor’s communication range is at
least one time more than its sensing range [5]. All the
123
•
•
•
sensors have the same communication range and
sensing range.
We assume all the sensors are static and their locations
are known, which can be obtained by GPS or various
localization methods [12–14].
The network is loosely synchronized. Each node
synchronizes locally with its neighboring nodes, which
can be achieved by many mature techniques with low
overhead [15–17].
There is a sink node in the network. Unlike regular
sensor nodes, the sink has no energy constraint.
Without loss of generality, we assume the sink is in
the middle of a boundary of the area.
2.2 Scheme overview
SEDO consists of three steps: (1) set division, (2) set
scheduling, and (3) set routing. SEDO evenly divides all
the sensors into a certain number of disjoint sets, schedules
each of the sets to be on and off rotationally, and balances
the routing energy cost in each on-duty set. In the beginning of set division, each sensor exchanges Hello messages
to determine the minimum number of hops it takes to reach
the sink. We also calculate the expected number of sets, k,
for maintaining connectivity based on the sensors’ distribution in the network, based on which, we divide all the
sensors in the network into k disjoint sets. The set division
is executed in a distributed fashion, and it is conducted hop
by hop from the sink to the network boundary. We select a
few of sensors as Set Managers to manage the set assignment in each hop and select Set Managers for the next hop.
In the first hop, the sink manages the set assignment, while
the Set Managers are only responsible for selecting Set
Managers for the next hop. The sink evenly assigns all the
nodes within its communication range to k sets. After being
assigned to a set, each sensor broadcasts its set information
to its neighbors in the next hop. When the assignment in
the first hop finishes, the assignment in the second hop
starts. Starting from the second hop, the Set Managers are
selected by the Set Managers in the previous hop. A Set
Manager first collects its neighbors’ candidate sets, which
are the sets that a node can be assigned to in order to
maintain connectivity. Then, based on the candidate sets,
the Set Manager calculates an assignment, such that each
neighbor can be assigned to an appropriate set and the
numbers of nodes in all the sets are balanced. After finishing the calculation, the Set Manager broadcasts the
assignment to its neighbors, and randomly selects a
neighbor to relay its role. Newly selected Set Managers
continue the assignment process until all the nodes in the
same hop are assigned to sets. The last Set Manager in this
hop selects one neighbor in the next hop to continue the
Wireless Netw
assignment in the next hop. The whole procedure terminates if all the nodes in the network are assigned to sets.
After set division, in set scheduling, each divided set is
scheduled to be on and off rotationally, with only one set
on duty at each time slot. In set routing, whenever a node in
an on-duty set needs to send a message to the sink, a route
is built from it to the sink within the set it belongs to. To
build a route, the node first selects its neighbors in the
previous hop from its current set. Then among all the
neighbors, the nodes always choose the one with the
highest amount of remaining energy as the next hop in the
routing path. In such way, the energy consumption of all
the node in packet forwarding is balanced.
shows an example. Node N4 receives messages from the
sink from two paths: sink ! N1 ! N2 ! N4 and
sink ! N3 ! N4 . Since the second one has the smallest
hop count, node N4 sets its MHC to be 2. Similarly, node
N5 sets its MHC to be 3.
3.1.2 Calculating expected number of sets
The expected number of sets is calculated based on the
sensors’ distribution. The calculation contains two steps.
The first step is to calculate No , which is the optimal
number of sensors to maintain connectivity for the entire
network. It can be done according to [18] as follows:
2Parea
No ¼ pffiffiffiffiffi ;
27rs 2
3 Set division and scheduling
ð1Þ
Given a network, in this section we first calculate Minimum Hop Count (MHC) for each sensor to reach the
sink, and the expected number of sets for the network.
Based on the two parameters, we then design our set
assignment protocol to divide all the nodes in the network into expected number of sets and assign every node
to a set. After finishing the assignment, we schedule each
set to be on and off sequentially to reduce energy consumption while at the same time maintain the network
connectivity.
where Parea is the size of the entire area and rs is the
sensing range of each sensor. After No is determined, the
second step is to calculate k, the expected number of sets.
We let Nt represent the total number of sensors deployed in
the network. Ideally, the optimal number of sets can be
calculated as Nt =No . However, since the sensors are randomly distributed in the network, we need to further calculate the expected number of disjoint sets considering the
randomness of deployment. Let c denote the expect number
of sensors equal to one sensor in the optimal deployment.
Then, the expected number of sets in the network is:
3.1 Initiation
k¼p
3.1.1 Calculating minimum hop count
where the operators of ‘‘p’’ and ‘‘q’’ mean the ceiling
function. In the following, the value of c is discussed
considering sensor’s random distribution.
Consider a network has an optimal deployment of sensors. When sensors are deployed randomly in such network, one single sensor must fall into the sensing area of
one optimal position. Then the sensor has the largest
overlapped sensing area with such optimal position. One
example is shown in Fig. 2. Position O is the optimal
position and sensor R is randomly deployed in the sensing
area of position O. The overlapped sensing area is the
shadowed area in Fig. 2. The sensor R must have the
largest overlapped sensing area with position O comparing
The MHC of a sensor is defined as the number of hops that
the sensor takes to reach the sink through the shortest hop
path. The calculation of the MHC can be done by simply
broadcasting a Hello message from the sink to the entire
network. Upon receiving the message, each sensor records
the number of hops. A sensor selects the smallest hop
number from all received messages as its MHC. Figure 1
1
Hop 1
Sink
Sensor
2
Nt
q;
c No
ð2Þ
3
4
5
Hop 2
Fig. 2 Overlapped sensing area
Hop 3
o
α
R
Fig. 1 Calculation of the minimum hop count
123
Wireless Netw
to other optimal positions. The overlapped sensing area So
is calculated as:
So ¼ 2r 2 a r 2 sinð2aÞ;
where
p
p
a :
3
2
each set are connected and ready to perform scheduling
and routing in the network. The detailed protocol of each
step is presented in the following sections.
ð3Þ
3.2.1 In the first hop
Then we calculate the average overlapped sensing area of
one sensor under the random distribution. Let So denote the
average overlapped sensing area. Then we have:
For a more strict scenario, the coverage intensity t can be
set to 99 %, and thus c is 3. In this paper, we use c ¼ 2 as a
system parameter.
The set assignment is conducted by the sink in the first hop.
The sink first sorts all its neighbors according to its distances to them, and then it sequentially assigns each node
to one of the k sets. Suppose a sensor’s distance to the sink
is ranked at nth among the sorted distances, the sensor is
assigned to the ½n mod kth set. If ½n mod k is 0, it is
assigned to the kth set. The nodes assigned into set 1
become Set Managers of the first hop.
Figure 3 shows an example of set assignment in the first
hop. In Fig. 3, there are 8 nodes in the first hop, the
expected
number
of
sets
k
is
4,
and
D1 [ D2 [ D3 [ D3 [ D4 [ D5 [ D6 [ D7 [ D8 , where
Di is the distance between node Ni and the sink. The sink
assigns all the sensors to k sets according to their distances.
Thus, after set assignment, set 1 contains
fnode N1 ; node N5 g, set 2 contains fnode N2 ; node N6 g, set
3 contains fnode N3 ; node N7 g, and set 4 contains
fnode N4 ; node N8 g. After being assigned to a set, each
node broadcasts its set information to its neighbors in the
next hop.
In the example, node N1 and node N5 are assigned to set
1, and thus they are the Set Managers of the first hop. The
Set Manager in the first hop is only responsible for
choosing Set Managers in the next hop. After set assignment, each Set Manager chooses one neighbor node in the
next hop as Set Manager of that hop.
3.2 Set assignment
3.2.2 In the xth hop (x [ 1)
Based on the MHC of each sensor and the expected number
of sets for the entire network, in this section, we divide all
the nodes in the network into the expected number of
disjoint sets. Our goal is to make each set solely maintain
the connectivity of the network, while keep the number of
nodes in each set balanced.
Given an area of interest, the sets are calculated hop
by hop from the sink to boundaries of the area. In the
first hop, the sink evenly assigns all the sensors within
its communication range into k sets. Starting from the
second hop, in each hop, Set Managers are selected to
assign their neighbors to k sets based on the set information from the previous hop. After finishing the
assignment in each hop, the Set Managers relay their
roles to the nodes in the next hop to continue the set
assignment. The process continues until all the nodes in
the network are assigned to sets. After set assignment,
there are k disjoint sets in the network in total. Nodes in
Starting from the second hop, Set Managers in each hop are
responsible for set assignment. By Eq. (7), every hop has k
sets in total. The set that a node can be assigned to is the
Candidate Set of the node. In each hop, before the
assignment starts, no set has been created and every node
in this hop receives the sets that its previous hop neighbors
belong to. Thus, initially a node’s candidate sets are the
R p2
So ¼
p
3
2r 2 a r 2 sinð2aÞda
p
2
p
3
¼
5pr 2
r2
:
6
24p
ð4Þ
Then we can obtain the average probability of one random
sensor covering the sensing area of an optimal position:
p¼
So
5
r2
¼
:
pr 2 6 24p2
ð5Þ
According to [7], the number of sensor nodes required in a
sensing area to provide a coverage intensity of at least t is:
c¼p
lnð1 tÞ
q:
lnð1 pÞ
ð6Þ
By setting the coverage intensity t to be 95 %, we can
obtain c ¼ 2. Thus, the expected number of sets in the
network becomes:
k¼p
Nt
Nt
q¼p
q;
c No
2No
123
ð7Þ
Fig. 3 Assigning hop-1 sensor nodes to set
Wireless Netw
sets that its previous hop neighbors are assigned to. For
example, a node N1 in hop x receives set information from
its two neighbors in hop x 1, and the two nodes are
assigned to set 1 and 2, respectively. Then set 1 and 2 are
the candidate sets of N1 . Due to the uncontrollable
deployment, nodes may have different number of previous
hop neighbors. Thus, the initial number of candidate sets
that each node has may vary a lot. Some nodes may have
multiple candidate sets, while some only have one or do
not have any. This will make that the number of nodes in
each divided set differs much.
To address this issue, when the set assignment starts,
we first skip the nodes with one or zero candidate set,
and assign the nodes that have multiple candidate sets.
During the assignment, sets will be created, and a node
will have more candidate sets, which are the sets that its
current hop neighbors are assigned to. After a node is
assigned to a set, such set will be added to all its
neighbors’ candidate sets. By doing so, nodes will have
more candidate sets, and we have more flexibilities to
assign nodes and balance the number of nodes in each
set. The detailed set calculation procedure is described as
follows.
Set calculation at a Set Manager: Upon being selected
as a Set Manager, a node first obtains candidate sets of all
its neighbors. Then, based on the number of each neighbor’s candidate sets, the Set Manager categorizes its
neighbors into two groups: (1) the nodes with one or zero
candidate set and (2) the nodes with more than one candidate set. The Set Manager keeps two tables: neighbor
information table and assignment table, as shown in
Tables 1 and 2, respectively.
The neighbor information table in a Set Manager
includes information of all its neighbors. Inside the table, if
a node is assigned to a set, then the value in the
‘‘Assigned’’ column becomes True. Otherwise, it is False.
The assignment table records the assignment procedure by
the Set Manager. The tables are updated during the set
assignment.
Table 1 Neighbor Information table
Node
Candidate set
Assigned
Position
MHC
...
...
...
...
...
To record more candidate sets for nodes, the Set Manager first assigns the nodes with more than one candidate
set. Then it uses these nodes’ assigned sets to update the
candidate sets in the neighbor information table, and continues the assignments. The detailed assignment procedure
is described as follows:
•
•
•
•
•
Step 1: Check the assignment table and select a set
containing the least value in the column of ‘‘Number of
Current Member’’. If more than one set is selected,
randomly choose one with the smallest ‘‘Number of
Candidate Nodes’’ and label it as Id.
Step 2: Filter out the nodes from neighbor information
table, whose candidate sets don’t include the selected
set Id.
Step 3: Divide the remaining nodes into different
groups based on the number of candidate sets in each
node and pick the group that has the smallest number of
candidate sets as the first group.
Step 4: Sort the nodes according to their candidate sets
in the first group. A sorting algorithm is adopted to sort
the candidate sets from the largest value of ‘‘Number of
Candidate Nodes’’ to lowest value of ‘‘Number of
Candidate Nodes’’ in the group and thus sort the nodes.
One example is shown in Tables 3 and 4. The
algorithm first sorts the candidate set 3, which has the
largest value of ‘‘Number of Candidate Nodes’’. Then
node N1 and N3 are put before node N2 , since their
candidate sets include set 3. Then the sort algorithm
sorts the candidate set 1, which has the second largest
value of ‘‘Number of Candidate Nodes’’. Then node N3
is put before node N1 , and the final sorting sequence is
node N3 , node N1 and node N2 .
Step 5: Pick the first node in the first group and assign it
to selected set Id. Update both tables. Go to Step 1 until
all the neighbors are assigned to sets.
Table 3 An example of neighbor information table
Node
Candidate set
Assigned
Position
MHC
1
2, 3
False
ðx1 ; y1 Þ
x
2
1, 2
False
ðx2 ; y2 Þ
x
3
1, 3
False
ðx3 ; y3 Þ
x
Table 4 An example of assignment table
Set
Number of candidate nodes
Number of current members
1
2
0
2
1
0
3
4
0
Table 2 Assignment table
Set
Number of candidate nodes
Number of current members
...
...
...
123
Wireless Netw
Algorithm1 Set Assignment Protocol for Nodes in Hop x (x>1)
Notations:
SCId i : candidate sets of node Ni .
SId i : assigned set of node Ni .
Req < Can Set >: a request message asking for a node’s candidate sets.
At all the nodes:
(1) Upon receiving SId j from Nj :
SCId i = SCId i SId j ;
(2) Upon being assigned to set s:
SId i = s;
Broadcast SId i ;
At a Set Manager :
n = N um of Neighbors ;
Broadcast Req < Can Set >;
while n = 0 do
(1) Upon receiving SCId j from Nj :
Store it;
n −− ;
end while
Execute Set Calculation ;
Randomly assign a neighbor to be the Set Manager ;
At a regular node:
Set a timer.
(1) Upon receiving Req < Can Set >:
Reply with SCIdi ;
Cancel the timer;
(2) Upon being selected as a Set Manager:
Become a Set Manager ;
Cancel the timer;
(3) Upon timer firing:
Become a Temporary Set Manager ;
Execute Set Calculation ;
During the set assignment, it is possible that some nodes
cannot be reached by Set Managers and thus cannot be
assigned to sets. We introduce Temporary Set Manager to
solve the issue. Every node maintains a timer waiting for
the assignment. If a node in hop x is not assigned to any set
after timeout, it will broadcast a request message to vote
itself as a Temporary Set Manager. If more than one node
broadcasts the requests, the first node sending out the
request will become the Temporary Set Manager, and the
others will cancel their requests and wait for the assignment. Upon being a Temporary Set Manager, the node
starts the set assignment. Unlike Set Manager, after finishing the assignment, the Temporary Set Manager does
not relay the role to any node in the next hop.
Assignment protocol: In hop x ðx [ 1Þ, upon receiving
set information from a neighbor in hop x, a node adds
the set to its candidate sets. Upon being assigned as a
Set Manager, a node broadcasts requests asking for
123
candidate sets of every neighbor in the current hop.
Upon finishing collecting the candidate sets from all the
neighbors, the Set Manager assigns each neighbor to a
set according to Set Calculation. After finishing the set
assignment, the Set Manager broadcasts assignment
results to all its neighbors, and relays its role to a
neighbor in the same hop to continue the assignment. Its
neighbors also broadcast results after they receive the set
assignment results. Upon receiving such result from a
neighbor, a node adds the assigned set to its candidate
sets. The newly selected Set Manager continues the
assignment in hop x and relays its role after finishing the
assignment. The process terminates when all the nodes in
hop x are assigned to sets. Then, the last Set Manager in
this hop randomly chooses one neighbor in the hop x þ 1
as Set Manager. The process continues until all the
nodes in the networks are assigned to sets. The detailed
protocol for each hop is illustrated in Algorithm 1.
Wireless Netw
3.3 An example
Figure 4 shows an example of the set assignment. There are
five nodes: N0 ; N1 ; N2 ; N3 and N4 . N0 is the Set Manager
in hop x 1, while N1 ; N2 ; N3 and N4 are the nodes in hop
x and need to be assigned to different sets. The expected
number of sets is k ¼ 3. Each node’s candidate sets are
listed in Fig. 4, where SCIdi represents the candidate sets
of node Ni .
We assume after finishing the set assignment for hop
x 1; N0 assigns its neighbor N1 to be the Set Manager in
hop x. The neighbor information table and assignment table
of N1 are shown in Tables 5 and 6, respectively.
From Table 5 we can see that since N4 only has one
candidate set: set 3, N4 will not be involved into the set
selection until all the other nodes have been assigned to
sets. Thus, we first consider N1 ; N2 , and N3 in the set
selection. According to Step 1, since the numbers of current members in all sets are 0 and set 1 and 2 have the
smallest number of candidate nodes in Table 6, we label
set 1 as Id randomly. Then based on Step 2, N3 is filtered
out. According to Step 3, N1 and N2 are divided into two
groups and N1 is in the first group, since the number of
candidate sets of N1 is 2 and the number of candidate sets
of N2 is 3. Sorting in Step 4 is not needed. Then according
to Step 5, N1 is selected and assigned to set 1. After that,
the Set Manager N1 updates its neighbor information table
and assignment table as shown in Tables 7 and 8,
respectively.
N1 repeats the calculation until N2 and N3 are assigned
to sets. After that, the neighbor information table and the
assignment table are shown in Tables 9 and 10,
respectively.
The next assignment is to assign node N4 . N1 first calculates distances from N1 ; N2 , and N3 to N4 based on each
node’s position in the neighbor information table. If a
node’s distance to N4 is less than the communication range,
the assigned set of this node is added to the candidate sets
of N4 . In this example, the distance between N4 and N1 , and
the distance between N4 and N3 are less than the communication range. Thus, both set 1 that N1 is assigned to and
set 2 that N2 is assigned to are added to N4 ’s candidate sets.
The neighbor information table and assignment table are
updated as shown in Tables 11 and 12, respectively.
N1 uses the same assignment algorithm to assign N4 .
Then N4 is assigned to set 1. Figure 5 shows the final
results. The final neighbor information table and the
assignment table are shown in Tables 13 and 14, respectively. After finishing assigning all the neighbors, N1 randomly selects a node from N2 ; N3 and N4 as the next Set
Manager in the same hop to continue the assignment. From
the example, it can be observed that each Set Manager
balances the number of nodes in different disjoint sets
locally and thus the number of nodes in different disjoint
sets are balanced in the entire network.
3.4 Analysis
In this section, we analyze the storage and computational
complexity of SEDO.
3.4.1 Storage
A Set Manager maintains two tables: neighbor information
table and assignment table. We let m represent the upper
bound of the number of neighbors that a node can have.
Accordingly, there are m entries in the neighbor information table, and the size of each entry is at most k þ 6 bytes
(k bytes for candidate sets information, 1 byte for node ID,
1 byte for assigned information and 4 bytes for position). In
the assignment table, the number of entries is k, and the
size of each entry is 3 bytes (1 byte for set ID, 1 byte for the
number of candidate nodes, and 1 byte for the number of
current members). So in total, the size of the two tables are
mðk þ 6Þ þ 3k bytes. Since k and m are small numbers, the
tables can definitely work well even in resource constraint
sensors.
3.4.2 Computational complexity
From the detailed assignment procedure illustrated in
Sect. 3.2.2, it takes OðkÞ to do Step 1, and OðmÞ to go
through Steps 2 and 3. For the sorting algorithm in Step 4,
OðmkÞ is required to sort m neighbors, each of which has at
most k candidate sets. Thus, the computational complexity
of the assignment algorithm for m neighbors assignment in
a Set Manager is Oðmðk þ m þ mkÞÞ, which is dominated
by Oðm2 kÞ.
3.5 Sets scheduling
Fig. 4 Assigning hop-x sensor nodes to sets
After all nodes are assigned to sets, we schedule every set
to be on-duty and off-duty sequentially, such that only one
set is on duty in every time slot. For example, suppose
123
Wireless Netw
Table 5 Neighbor information table of N1 : before assignment
Node
Candidate set
Assigned
Table 11 Neighbor information table of N1
Position
MHC
Node
Candidate set
Assigned
Position
MHC
0
1
True
ðx0 ; y0 Þ
x1
0
1
True
ðx0 ; y0 Þ
x1
1
1, 3
False
ðx1 ; y1 Þ
x
1
1
True
ðx1 ; y1 Þ
x
2
1, 2, 3
False
ðx2 ; y2 Þ
x
2
3
True
ðx2 ; y2 Þ
x
3
2, 3
False
ðx3 ; y3 Þ
x
3
2
True
ðx3 ; y3 Þ
x
4
3
False
ðx4 ; y4 Þ
x
4
1, 2, 3
False
ðx4 ; y4 Þ
x
Table 6 Assignment table of N1 : before assignment
Table 12 Assignment table of N1
Set
Number of candidate nodes
Number of current members
Set
Number of candidate nodes
Number of current members
1
2
0
1
1
1
2
2
0
2
1
1
3
3
0
3
1
1
Table 7 Neighbor information table of N1
Node
Candidate set
Assigned
Position
MHC
0
1
True
ðx0 ; y0 Þ
x1
1
1
True
ðx1 ; y1 Þ
x
2
1, 2, 3
False
ðx2 ; y2 Þ
x
3
2, 3
False
ðx3 ; y3 Þ
x
4
3
False
ðx4 ; y4 Þ
x
Fig. 5 Results of assigning hop-x sensor nodes to sets
Table 8 Assignment table of N1
Set
Number of candidate nodes
Number of current member
1
1
1
2
2
3
2
Node
Candidate set
Assigned
Position
MHC
0
0
1
True
ðx0 ; y0 Þ
x1
0
1
1
True
ðx1 ; y1 Þ
x
2
3
True
ðx2 ; y2 Þ
x
3
2
True
ðx3 ; y3 Þ
x
4
1
True
ðx4 ; y4 Þ
x
Table 9 Neighbor information table of N1
Node
Candidate set
Table 13 Neighbor information table of N1
Assigned
Position
MHC
0
1
True
ðx0 ; y0 Þ
x1
1
1
True
ðx1 ; y1 Þ
x
Table 14 Assignment table of N1
2
3
True
ðx2 ; y2 Þ
x
Set
Number of candidate nodes
Number of current member
3
2
True
ðx3 ; y3 Þ
x
4
3
False
ðx4 ; y4 Þ
x
1
0
2
2
0
1
3
0
1
Table 10 Assignment table of N1
Set
Number of candidate nodes
Number of current members
1
0
1
2
0
1
3
0
1
123
there are k disjoint sets in the network, the scheduling
sequence is set 1; set 2; . . .; set k; set 1; set 2 and so on. Each
set works independently in the network. The sequential
scheduling makes energy consumption even in all the sets.
Wireless Netw
4 The routing
We divide sensors into different sets and schedule them
rotationally, such that every formed set maintains connectivity of the network. When a node needs to communicate to the sink, a route needs to be established from the
node to the sink within the set that the node resides. In this
section, we propose a route selection scheme to establish
route and balance the energy consumption in forwarding
packets for all intermediate sensors. Our idea is to evenly
utilize the energy of all the nodes so that no node will fail
too early to decrease the network lifetime.
When a sender in hop x needs to send a message to the sink as
shown in Fig. 6, it starts to establish a route by first choosing its
neighbors in the previous hop (hop x 1) as routing candidates.
Then the sender selects a candidate that has the highest
amount of remaining energy as the next hop in the route.
After the sender selects a node in hop x 1 as the next hop
in route, the sender forwards the packet to the node. Upon
receiving the packet, this node continues the route selection
process to select a node as its next hop. If a node cannot
communicate with any node in its previous hop, it treats its
neighbors in the current hop as the route candidates and
forwards the message to the one with highest remaining
energy. One example is shown in Fig. 7.
Every time when a node forwards a packet, it updates its
own remaining energy and all its neighbor nodes update the
corresponding energy information. The route selection
continues until the packet reaches the sink. In this way,
each node rotationally selects its neighbors as the next
transmission hop. The node with highest remaining energy
at current time is always selected to forward packet as
shown in Fig. 8, and the energy consumption in packet
forwarding is balanced among all the nodes in the set.
When more than one node wants to send data to the sink,
the routing algorithm still performs effectively, since the
route selection in each node is independent. If there are
communication conflicts, they will be solved by lower
layer network protocols, like MAC protocols. Moreover,
the routing algorithm can be applied to other connectivity
guaranteed set division and scheduling algorithm.
5 Performance evaluation
SEDO was implemented in NS-2 simulator. We use the
following three metrics to evaluate our scheme:
•
1
Network lifetime, which is the duration from the time
that the network starts to the time when there is a hop,
in which all the sensors fail.1
Failing of all the sensors in a hop causes network partition, and thus
the network cannot operate after that time.
•
•
Average sensing coverage of each set.
Packet delivery latency, which is calculated by averaging all packet transmission delays in the network
shown as below:
Phmax total packets0 delay in hop i
delay ¼
i¼1 number of packets arrived in hop i
hmax
;
where hmax represents the maximum number of hops in
the network.
The entire simulation is divided into two phases: scheduling phase and routing phase. We compare SEDO with
Liu’s algorithm [7] and A1 algorithm [8], which are the
schemes closest to our research. Liu’s algorithm studies a
joint scheduling to save energy with consideration of both
sensing coverage and network connectivity. It creates
multiple sets in the network and schedules them on and off
sequentially, and has a time complexity of OðnÞ. A1
algorithm forms energy efficient connected dominating sets
based on network topology to extend network lifetime,
which also has a time complexity of OðnÞ. To be a fair
comparison, all three algorithms divide the network into
same number of sets. Moreover, in the routing evaluation,
the proposed routing algorithm is implemented on A1
algorithm.
In the simulation, sensor nodes are randomly deployed
in a 100 m 100 m square field. The sink is placed at
position ð50 m; 0Þ, which is the middle of bottom boundary
of the field. The default setting of the simulation is shown
in Table 15. All simulation results are the average of 100
experiments, which are on different initial deployments of
sensors.?>
5.1 The scheduling phase
In this section, the number of sensors varies from 150 to
350. Figure 9 shows the evaluation results of network
lifetime. From the results, we can see that on average, the
network lifetime under SEDO is 17.9 % longer than that
under Liu’s algorithm and 13.5 % longer than that under
A1 algorithm on average. For example, when the number
of nodes is 150, the network lifetime under SEDO is
1:2 104 s. It is 24 % longer than that under Liu’s algorithm, which is 9:7 103 s, and 40 % longer than that
under A1 algorithm, which is 8:6 103 s.
Figure 10 is the average ratio of each set’s sensing
coverage to the whole interested area. From Fig. 10, we
can see that although the sensing coverage provided by
SEDO is 5 % lower than by Liu’s algorithm, it can still
cover more than 80 % of the area. The average ratios of
SEDO and A1 algorithm are close. Figure 11 is the average
ratio of each set’s sensing coverage to the sensing coverage
of all the sensor nodes. Similarly, SEDO achieves about
123
Wireless Netw
Fig. 6 An example of routing
selection
Fig. 7 Extra routing selection
Higher
Energy
at me t
4
Higher
Energy at
me t+1
2.4
x 10
2.2
SEDO
Liu’s Algorithm
A1
Lifetime (Sec)
2
Fig. 8 Energy-based selection rule
Table 15 Simulation setting
Parameter
1.8
1.6
1.4
1.2
Value
1
Sensing range
10 m
0.8
150
Communication range
20 m
Packet size
64 kByte
Communication bandwidth
64 kByte/s
On-duty duration of each set
10 s
Initial energy in each sensor
20 mAH
Energy consumption rate: on-duty
8 mA
Energy consumption rate: off-duty
0.015 mA
Energy consumption rate: receiving data
10 mA
Energy consumption rate: sending data
25 mA
123
200
250
300
350
Number of Nodes
Fig. 9 Network lifetime
85 % of the sensing coverage, which is 5 % less than Liu’s
algorithm and A1 algorithm. This is because Liu’s algorithm needs to choose extra nodes to compensate the place
that cannot be detected and A1 algorithm needs to choose
extra nodes to maintain the connectivity, though such
Wireless Netw
1
Calculated Packet Delay (Sec)
6.4
Avg. Coverage / Area
0.95
0.9
0.85
0.8
0.75
0.7
150
SEDO
Liu’s Algorithm
A1
200
250
300
SEDO
Liu’s Algorithm
A1
6.2
6
5.8
5.6
5.4
5.2
5
4.8
4.6
150
350
200
Number of Nodes
1
3000
0.95
2500
0.9
2000
0.85
0.8
0.7
150
350
SEDO
Liu’s Algorithm
A1
1500
1000
500
SEDO
Liu’s Algorithm
A1
200
300
Fig. 12 Average packet delivery latency
Lifetime (Sec)
Avg. Coverage / Total Coverage
Fig. 10 Ratio of the average coverage of a set to the whole area
0.75
250
Number of Nodes
250
300
350
0
0.2
0.3
Number of Nodes
0.4
0.5
0.6
0.7
0.8
0.9
1
Probability of Packet Sending Nodes
Fig. 11 Ratio of the average coverage of a set to the coverage of all
the deployed sensors
Fig. 13 Network lifetime under different transmission probability
compensations do not increase the total sensing coverage
much.
From this figure we can see that the network lifetime under
our scheme is 11 % longer than that under Liu’s algorithm
and 22 % longer than that under A1 algorithm averagely.
This is because both Liu’s algorithm and A1 algorithm
need to select more nodes than ours, and thus consumes
more energy.
5.2 The routing phase
Figure 12 shows the average packet delivery latency when
the number of sensors varies from 150 to 350. From this
figure, we can see that in most of the cases, SEDO achieves
a lower delay than Liu’s algorithm and A1 algorithm. This
is because Liu’s algorithm adds extra nodes to increase the
sensing coverage, which increases the length of the path
and the routing latency, and A1 algorithm doesn’t consider
reduce the number of hops in the set. From the results, it
can be observed that on average, the average packet delay
under SEDO is 0.2 s less than that under Liu’s algorithm
and 1 s less than that under A1 algorithm.
Figure 13 shows the network lifetime under different
transmission probability, when the number of sensors is
350. The transmission probability is the probability that a
node needs to send a message to the sink in a time slot.
6 Related work
Recently, extensive research has been conducted to use
duty-cycle scheduling to improve energy efficiency in
wireless sensor networks. LEACH [19] and HEED [20] are
proposed to cluster sensor nodes to prolong the network
life time. For field surveillance, Gui and Mohapatra [5]
develop two efficient sleep-awake schemes to minimize the
power consumption. A TDMA sleep scheduling problem is
studied in [1]. Lin et al. [21] present an adaptive multisensor scheduling scheme for collaborative target tracking
in WSNs. A randomized scheduling algorithm is proposed
123
Wireless Netw
in [22] via both analysis and simulations for improving
network coverage and detection probability. Liu et al. [7]
use random scheduling to achieve required sensing coverage and turn on extra sensor nodes to improve network
connectivity. A1 algorithm proposed in [8] forms energy
efficient connected dominating sets based on network
topology to extend network lifetime. Ghidini and Das [2]
propose a randomized duty cycling scheme based on
Markov chains to make a tradeoff between connection
delay and given energy efficiency. Tang and Yang [23]
propose two sensing scheduling schemes to maximize the
overall monitoring quality under resource constraints in. A
robust multi-pipeline scheduling algorithm is proposed
in [6] to achieve ultra low duty-cycle in sensor networks.
Bagaa et al. [24] study data aggregation scheduling problem in wireless sensor networks to minimize data delivery
latency, however, they do not optimize network lifetime.
Previous works only concentrate on scheduling, while
they either do not consider network connectivity or fail to
balance energy consumption in routing, which are the two
places our contribution lays in.
7 Conclusion
In this paper, we study a joint scheduling and routing
problem in wireless sensor networks. A novel disjoint Set
Division algorithm, SEDO, is proposed, which conducts set
division, set scheduling and set routing. In set division,
sensors are divided into different sets with guaranteed
connectivity based on the calculated hop information. In
set scheduling, we schedule the sets to be on and off to save
energy while at the same time maintain the connectivity. In
set routing, a route selection strategy is proposed to balance
energy consumption in packet forwarding. The simulation
results show that SEDO outperforms existing scheme with
lower packet delivery latency, high coverage and longer
network lifetime.
References
1. Ma, J., Lou, W., Wu, Y., Li, X.-Y., & Chen, G. (2009). Energy
efficient tdma sleep scheduling in wireless sensor networks. In
INFOCOM.
2. Ghidini, G., & Das, S. K. (2011). An energy-efficient markov
chain-based randomized duty cycling scheme for wireless sensor
networks. In 31st International conference on distributed computing systems.
3. Tian, J., Zhang, W., Wang, G., & Gao, X. (2014). 2D k-barrier
duty-cycle scheduling for intruder detection in wireless sensor
networks. Computer Communications, 43, 31–42.
123
4. Tian, J., Wang, G., Yan, T., & Zhang, W. (2014). Detect smart
intruders in sensor networks by creating network dynamics. Computer Networks, 62, 182–196.
5. Gui, C., & Mohapatra, P. (2004). Power conservation and quality
of surveillance in target tracking sensor networks. In MobiCom.
6. Cao, Y., Guo, S., & He, T. (2012). Robust multi-pipeline
scheduling in low-duty-cycle wireless sensor networks. In
INFOCOM.
7. Liu, C., Wu, K., Xiao, Y., & Sun, B. (2006). Random coverage
with guaranteed connectivity: Joint scheduling for wireless sensor
networks. IEEE Transactions on Parallel and Distributed Systems, 17(6), 562–575.
8. Rizvi, S., Qureshi, H. K., Khayam, S. A., Rakocevic, V., & Rajarajan, M. (2012). A1: An energy efficient topology control algorithm for connected area coverage in wireless sensor networks.
Journal of Network and Computer Applications, 35(2), 597–605.
9. Wang, G., Cao, G., Porta, T. L., & Berman, P. (2007). Bidding
protocols for deploying mobile sensors. IEEE Transaction on
Mobile Computing, 6(5), 563–576.
10. Liu, B., Dousse, O., Wang, J., & Saipulla, A. (2008). Strong
barrier coverage of wireless sensor networks. In MobiHoc.
11. Chen, A., Li, Z., Lai, T., & Liu, C. (2011). One-way barrier
coverage with wireless sensors. In INFOCOM.
12. Chen, T., Yang, Z., Liu, Y., Guo, D., & Luo, X. (2011). A
localizability-aided approach: Localization in non-localizable
sensor and ad-hoc networks. In INFOCOM.
13. Liu, W., Wang, D., Jiang, H., Liu, W., & Wang, C. (2012).
Approximate convex decomposition based localization in wireless sensor networks. In INFOCOM.
14. Huang, M., Chen, S., & Wang, Y. (2010). Minimum cost localization problem in wireless sensor networks. In SECON.
15. Yang, Z., Cai, L., Liu, Y., & Pan, J. (2012). Environment-aware
clock skew estimation and synchronization for wireless sensor
networks. In INFOCOM.
16. Zhong, Z., Chen, P., & He, T. (2011). On-demand time synchronization with predictable accuracy. In INFOCOM.
17. Chen, Y., Wang, Q., Chang, M., & Terzis, A. (2011). Ultra-low
power time synchronization using passive radio receivers. In IPSN.
18. Slijepcevic, S., & Potkonjak, M. (2001). Power efficient organization of wireless sensor networks. In ICC.
19. Heinzelman, W., Chandrakasan, A., & Balakrishnan, H. (2002).
An application-specific protocol architecture for wireless microsensor networks. IEEE Transaction on Wireless Communications,
1(4), 660–670.
20. Younis, O., & Fahmy, S. (2004). Distributed clustering in ad hoc
sensor networks: A hybrid, energy-efficient approach. IEEE
Transaction on Mobile Computing, 3(4), 366–379.
21. Lin, J., Xiao, W., Lewis, F., & Xie, L. (2009). Energy-efficient
distributed adaptive multisensor scheduling for target tracking in
wireless sensor networks. IEEE Transactions on Instrumentation
and Measurement, 58(6), 1886–1896.
22. Xiao, Y., Chen, H., Wu, K., Sun, B., Zhang, Y., Sun, X., & Liu,
C. (2009). Coverage and detection of a randomized scheduling
algorithm in wireless sensor networks. IEEE Transactions on
Computers, 59(4), 507–521.
23. Tang, S., & Yang, L. (2012). Morello: A quality-of-monitoring
oriented sensing scheduling protocol in sensor networks. In The
31st annual IEEE international conference on computer communications: Mini-conference.
24. Bagaa, M., Derhab, A., Lasla, N., Ouadjaout, A., & Badache, N.
(2012). Semi-structured and unstructured data aggregation
scheduling in wireless sensor networks. In The 31st annual IEEE
international conference on computer communications: Miniconference.
Wireless Netw
Jie Tian received the B.S.
degree in Computer Science
from Tianjin University, Tianjin,
China, in 2005, and got his M.S.
degree in Computer Science at
Nankai University, Tianjin,
China, in 2008. He is currently a
Ph.D. candidate in Department
of Computer Science at New
Jersey Institute of Technology.
His research includes wireless
networks, ad hoc/sensor network
and mobile computing.
Xiaoyuan Liang is currently a
Ph.D. student at Computer Science Department in New Jersey
Institute of Technology since
2013. He received his B.S.
degree from Harbin Institute of
Technology in China.
Tan Yan joined NEC Laboratories America in 2014, after
completing his Ph.D. under the
supervision of Dr. Guiling
Wang, in Department of Computer Science, New Jersey
Institute of Technology. He
received M.S. from Department
of Electrical & Computer Engineering, NJIT in 2009, and B.E.
in 2007 from School of Information Science and Technology, Southeast University,
Nanjing, China. His research
includes Network Analytics,
Time Series Mining, Mobile Ad Hoc Data Management and Dissemination, and Graph Theory.
Mahesh Kumar Somashekar
is currently working at Pivotal
Software Inc. as a Software
Engineer, and has been in the IT
industry from 2007. He has
mainly focused his career on
networking, which involves
Distributed Systems, Wireless
Sensor Networks and Mobile
Device Management. He has
earned his Master’s degree in
Computer Science from New
Jersey Institute of Technology
in 2012. During the course of
his professional and academic
work, he has gained expertise on various technologies—Hadoop & its
eco-system, Java, C/C??, WSN, Spring, Hibernate, Solr, Web Services, PHP and Relational Database. He is a Sun Certified Java
Programmer for Java 1.5 as well.
Guiling Wang received the
B.S. degree in software from
Nankai University, Tianjin,
China, and the Ph.D. degree in
computer science and engineering with a minor in statistics
from The Pennsylvania State
University, State College, PA,
USA, in 2006. She joined the
New Jersey Institute of Technology, Newark, NJ, USA, in
the fall of 2006 and was promoted to Associate Professor
with tenure in June 2011.
Cesar Bandera is assistant
professor of entrepreneurship at
the New Jersey Institute of
Technology School of Management, and founding partner of
wireless healthcare outreach
firm Cell Podium. He has
deployed mobile 3G multimedia
campaigns for CDC, NIH, and
EPA in the US and overseas.
His research interests include
point-of-care sensor networks,
and his work in multimedia
processing has yielded four
patents. Bandera received his
Ph.D. in Electrical and Computer Engineering from the University at
Buffalo, NY.
123