Maximizing The Lifetime of A Barrier of Wireless Sensors
Maximizing The Lifetime of A Barrier of Wireless Sensors
of Wireless Sensors
Santosh Kumar, Member, IEEE, Ten H. Lai, Marc E. Posner, and Prasun Sinha, Senior Member, IEEE
AbstractTo make a network last beyond the lifetime of an individual sensor node, redundant nodes must be deployed. What sleep-
wake-up schedule can then be used for individual nodes so that the redundancy is appropriately exploited to maximize the network
lifetime? We develop optimal solutions to both problems for the case when wireless sensor nodes are deployed to form an
impenetrable barrier for detecting movements. In addition to being provably optimal, our algorithms work for nondisk sensing regions
and heterogeneous sensing regions. Further, we provide an optimal solution for the more difficult case when the lifetimes of individual
nodes are not equal. Developing optimal algorithms for both homogeneous and heterogeneous lifetimes allows us to obtain, by
simulation, several interesting results. We show that even when an optimal number of sensor nodes has been deployed randomly,
statistical redundancy can be exploited to extend the network lifetime by up to seven times. We also use simulation to show that the
assumption of homogeneous lifetime can result in severe loss (two-thirds) of the network lifetime. Although these results are
specifically for barrier coverage, they provide an indication of behavior for other coverage models.
Index TermsWireless sensor networks, sleep-wakeup, sensor deployment, barrier coverage, multiroute network flows.
1 INTRODUCTION
W
IRELESS sensors are meant for outdoor deployments
where they may remain unattended for long periods
of time. Security applications such as intrusion detection,
fire detection, and chemical leak detection require sufficient
number of sensor nodes to be active at any time instant.
Given that the sensor nodes operate with small batteries,
individual nodes may not last a long time if continuously
active. To make a network last beyond the lifetime of an
individual node, redundant nodes must be deployed. What
sleep-wake-up schedule can then be used for individual
nodes so that redundancy is appropriately exploited to
maximize the network lifetime?
1
Inthis paper, wedevelopoptimal solutions tothis problem
for the case when wireless sensor nodes are deployed to form
an impenetrable barrier for detecting movements [1]. In
additiontointrusiondetectionapplications [2], [3], barriers of
sensors can also be deployed around forests to detect the
spreadof fire or aroundchemical factories todetect leakage of
harmful chemicals. As has been argued in [1], deploying
sensor nodes as a barrier leads to an order of magnitude
saving in the number of nodes over the full coverage model
(where every point in the deployment region is covered),
while guaranteeing that no movement will go undetected.
In addition to being provably optimal, our algorithms
work for nondisk sensing regions andheterogeneous sensing
regions. For our algorithms to be applicable, it is sufficient to
determine whether the sensing regions of two sensors
intersect. This can be determined even when a precise model
for the sensing region is not known. For instance, if two
sensors detect a target simultaneously, their sensing regions
must intersect [4]. Our algorithms, therefore, allow for the
sensing regions of various nodes to be different.
Further, we propose an optimal sleep-wake-up algo-
rithm for the case when all sensors have equal lifetime (the
homogeneous lifetime case) and also for the harder case when
the sensors have distinct lifetimes (the heterogeneous lifetime
case). Solving the heterogeneous case makes the sleep-
wake-up method of extending network lifetime more
practical. We list below some reasons why sensors may
have different lifetimes:
. Uneven load: Even when all sensors start with the
same type of batteries, they are subject to different
kinds of loads (due to routing structure, cluster
structure, etc.).
. Different recharging rates: If sensors are using
rechargeable batteries, then lifetime depends on
the amount of energy (e.g., solar and wind) a
sensor receives.
. Unanticipated failures: When there are unantici-
pated sensor failures, a new schedule may be
needed. Then, the remaining lifetimes of operational
sensors may be distinct.
. Additional deployment: When new sensors are
deployed in an existing network to compensate for
failed ones, at the time of deployment, the remaining
lifetimes are distinct.
IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 9, NO. 8, AUGUST 2010 1161
. S. Kumar is with the Department of Computer Science, University of
Memphis, 209 Dunn Hall, Memphis, TN 38152.
E-mail: [email protected].
. T.H. Lai and P. Sinha are with the Department of Computer Science and
Engineering, The Ohio State University, 581 Dreese Lab, 2015 Neil
Avenue, Columbus, OH 43210. E-mail: {lai, prasun}@cse.ohio-state.edu.
. M.E. Posner is with the Integrated Systems Engineering Department, The
Ohio State University, 210 Baker Systems, 1971 Neil Avenue, Columbus,
OH 43210. E-mail: [email protected].
Manuscript received 24 June 2009; revised 28 Oct. 2009; accepted 3 Dec.
2009; published online 21 Apr. 2010.
For information on obtaining reprints of this article, please send e-mail to:
[email protected], and reference IEEECS Log Number TMC-2009-06-0249.
Digital Object Identifier no. 10.1109/TMC.2010.78.
1. We consider a sensor node to be in sleep state if all of its components
(e.g., radio, processor, sensors, voltage regulators, etc.) are put in the deep
sleep state, and awake if it has at least one component (say, a sensor) active.
Consequently, the average energy consumption in the sleep state is lower
than that in the awake state.
1536-1233/10/$26.00 2010 IEEE Published by the IEEE CS, CASS, ComSoc, IES, & SPS
Since our algorithm provides an optimal solution for
heterogeneous lifetime case, when the network experiences
an unanticipated sensor failure, new sleep-wake-up sche-
dule can be computed that will again maximize the lifetime
of the surviving network.
Given a solution that maximizes network lifetime, a
secondary criteria of interest is the minimization of the
number of times that sensors are turned on/off, called
sensor switches. Each time a sensor is turned on, neighbor
discovery, route computation, time synchronization, and
other such activities have to be performed. Minimizing the
number of times such tasks are executed reduces the energy
consumption in the network. It also makes the network
more able to perform the monitoring task, which is the
primary reason for deploying a sensor network. Our sleep-
wake-up algorithm for the homogeneous case minimizes
the total number of sensor switches. However, for the
heterogeneous lifetime case, we establish that finding the
minimum number of sensor switches is NP-Hard.
It is not possible to design a provably optimal determi-
nistic local sleep-wake-up algorithm because it cannot be
checked locally whether the network provides barrier
coverage [1]. Consequently, our algorithms are centralized
algorithms. Sleep-wake-up algorithms need to be executed
rarely,
2
and the optimal schedule can be distributed in the
network using the same utility as used in network
reprogramming [5], [6].
We use our optimal algorithms to study, by simulation,
two interesting coverage/lifetime issues that have not been
addressed in the literature. First is the issue of statistical
redundancy in a random sensor deployment. In a random
deployment, sensors are deployed to achieve a target
probability of coverage. For instance, if i sensors are
needed to achieve a target probability of barrier coverage of
0.001, then, on average, in 999 out of 1,000 instances of
deployment, the region will be barrier covered with a
random deployment of i sensors. For those instances where
the i sensors do provide barrier coverage, how much redundancy
exists in the network?
Second, lifetimes of individual sensors are rarely equal.
However, for simplicity or tractability, the assumption of
homogeneity is often used. As a result, network lifetime is
lower than what could have been achieved if the lifetime
optimization algorithm considered the heterogeneity of
sensor lifetimes. How much does one lose in expected network
lifetime due to the assumption of homogeneity?
For the first problem, using the density estimate from [7],
we show that even when the minimum necessary number
of sensors are deployed to achieve barrier coverage in a
random deployment, the network may have enough
redundancy to last up to seven times longer than planned.
For the second problem, we show that the assumption of
homogeneity in a heterogeneous network can result in a two-
thirds loss of network lifetime, e.g., a year of expected
lifetime may be reduced to four months.
We also observe in our simulations that if the energy
imbalance in the network is sufficiently random (so that
sensor lifetimes can be modeled as a random uniform
distribution), then network lifetime is approximately the
same as when the energy consumption is perfectly balanced
in the network (so that all sensors have equal lifetime).
The rest of the paper is organized as follows: In Section 2,
we present some definitions, background, and related work.
In Sections 3 and 4, we present our algorithms for the
homogeneous and heterogeneous lifetime cases. In Section 5,
we describe how to use our algorithms to maintain fault-
tolerant connectivity. In Section 6, we present the simulation
study. We conclude the paper in Section 7.
2 MODEL, DEFINITIONS, AND BACKGROUND
In this section, we introduce some definitions and provide
some background and related work.
Definition 2.1 (Sensor network `). A sensor network ` is a
collection of sensors with the locations of sensor deployments.
We assume that a sensor network is deployed over a belt
region (see Fig. 1). Intrusion is assumed to occur from top to
bottom. As in [1], a path is a crossing path if it crosses from
top to bottom. Further, a crossing path is /-covered if it
intersects the sensing region of at least / distinct sensors.
Finally, a sensor network ` provides /-barrier coverage over
a deployment region 1 if all crossing paths through
region 1 are /-covered by sensors in `.
Definition 2.2 (Coverage graph G` [1]). A coverage graph
of a sensor network ` is constructed as follows: Let
G` \ . 1. The set \ consists of a vertex corresponding
to each sensor. In addition, \ has two virtual nodes : and t
that correspond to the left and right boundaries, respectively.
An edge exists between two nodes if their sensing regions
overlap in the deployment region 1. An edge exists between n
and : (or t) if the sensing region of n overlaps with the left
boundary (or right boundary) of the region.
The coverage graph for the sensor network deployment in
Fig. 1 is shown in Fig. 2.
Remark. Although we use a disk model for the sensing
region, our results hold for any model for which a
coverage graph can be constructed. Further, the sensing
1162 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 9, NO. 8, AUGUST 2010
Fig. 1. A sensor network deployment that provides 3-barrier coverage.
Fig. 2. The coverage graph of sensor network deployment in Fig. 1.
2. Once a schedule has been distributed to the sensors, there is no need
for any further communication unless critical sensors fail.
range can be different for each sensor; the only require-
ment is that we can construct a coverage graph. Finally,
the links of the coverage graph are virtual links and not
used for actual communication between sensor nodes.
Theorem 2.1 [1]. A network ` provides /-barrier coverage iff
there exist / node-disjoint paths between the two virtual nodes
: and t in G`.
Definition 2.3 (Sensor switch). A sensor switch occurs when
a sensor is turned off and is later turned on. If a sensor is
turned on once and is allowed to exhaust its lifetime, then this
sensor has no sensor switches.
Definition 2.4 (Path switch). A path switch occurs when a
group of sensors that together provide 1-barrier coverage is
turned off and is later turned on as a group. If this group of
sensors exhausts its lifetime once it is turned on, then this
group of sensors has no path switches.
Minimizing the number of path switches is equivalent to
minimizing the number of sensor switches in terms of
reducing the frequency of initialization operations such as
neighbor discovery, route computation, and time syn-
chronization.
Some related work. The problem of sleep-wakeup for
the full coverage model has been studied extensively. NP-
Hardness is established by [8]. Subsequently, several
heuristic algorithms appeared [9], [10], [11], [12]. However,
no guarantee of performance is made by any of these works.
For the barrier coverage model, a randomized sleep-
wake-up algorithm called Randomized Independent Sleep-
ing (RIS) is proposed in [1]. In this algorithm, time is divided
into intervals. In every interval, each sensor independently
decides whether to sleep or stay active using a predeter-
mined probability value j. The value of j is chosen such that
the network is guaranteed to provide weak barrier coverage
(a weaker version of barrier coverage) with high probability.
An advantage of this algorithm is that it is local (i.e., requires
no central coordination and no message exchange with any
neighbors). However, there are several shortcomings. First,
the approach does not provide deterministic guarantee of
barrier coverage. Second, if deployment is not determined
by a uniform or Poisson distribution, then there is no
guidance on how to choose a value for j. Third, if the
lifetimes of the sensor nodes are not identical, then, again,
there is no guidance on how to choose a value of j. Finally,
there is no guarantee of the performance.
A localized algorithm called Localized Barrier Coverage
Protocol (LBCP) is proposed by [13] to increase the lifetime
of a network deployed for barrier coverage. Although
the localized version does not guarantee barrier coverage,
the locality region size (1 in [13]) can be increased to
match the length of the deployment region to determinis-
tically guarantee barrier coverage. However, then the
LBCP algorithm becomes a global algorithm since each
node now needs to communicate with every other node in
the network. Also, although the performance of LBCP is
statistically close to optimal for some parameter settings,
no performance guarantees are provided. Finally, LBCP
does not address the heterogeneous lifetime case.
Several other works have addressed various aspects of
barrier coverage. For example, in [14], a distributed
algorithm is presented to construct barriers of wireless
sensors. In [7], it is shown that the fact that percolation does
not occur in thin long strips does not prevent one to derive
critical conditions for barrier coverage (called strong barrier
coverage in [1] and [14]). In fact, reliable estimates for
sensor density, which are stronger results than critical
conditions, are derived in [7] for barrier coverage in thin
long strips. Also, in [15], a heuristic is proposed to select a
subset of directional sensors to achieve /-barrier coverage.
These works, however, do not address the problem of
lifetime maximization.
3 HOMOGENEOUS LIFETIME
In this section, we begin by deriving an upper bound on the
network lifetime when the sensor lifetimes are homoge-
neous. Then, we present algorithm Stint that determines an
optimal sleep-wake-up schedule for individual sensors.
Finally, we prove that Stint minimizes the number of path
switches in addition to maximizing the network lifetime.
3.1 Upper Bound on the Network Lifetime
Consider the sensor network shown in Fig. 1. If the
maximum number of node-disjoint paths between : and t,
i, is less than /, then the sensor network cannot provide
/-barrier coverage even if all sensors are turned on.
Therefore, the maximum lifetime of the network is 0. In
the following, we only consider the case when i ! /.
The next lemma provides an upper bound on the
maximum achievable network lifetime.
Lemma 3.1. Consider a sensor network `. Let i ! / be the
maximum number of node-disjoint paths between the virtual
nodes : and t in the coverage graph G`. Also, let the lifetime
of an individual sensor node be unity. Then, the maximum
time for which the network ` can provide /-barrier coverage is
at most i,/.
Proof. By assumption, there exist i node-disjoint paths in
the coverage graph of `. From Mengers Theorem [16],
there exists a set of inodes (corresponding to isensors),
which when removed disconnects virtual nodes : and t in
the coverage graph. Call these i sensors critical sensors.
Every path from : to t must contain at least one of these
critical sensors.
To provide /-barrier coverage, Theorem 2.1 states that
a set of sensors must be activated such that they form /
node-disjoint paths between two virtual nodes : and t in
the coverage graph. Each of these / paths must contain at
least one of the i critical nodes. Further, since these /
paths are node-disjoint, they do not share any node.
Therefore, each set of / node-disjoint paths contains at
least / of the i critical nodes. Since at any time instant, at
least / of the i critical nodes need to be active, the
maximum time that these i nodes can remain active is at
most i,/. Once these i critical nodes run out of energy,
the network can no longer provide /-barrier coverage.
Hence, the network provides /-barrier coverage for at
most i,/ units of time. tu
Applying Lemma 3.1 to the sensor network shown in
Fig. 1, whose coverage graph appears in Fig. 2, gives a
maximum lifetime of i,/ 3,2.
KUMAR ET AL.: MAXIMIZING THE LIFETIME OF A BARRIER OF WIRELESS SENSORS 1163
3.2 Achieving the Upper Bound
In Section 3.1, an upper bound on network lifetime for
/-barrier coverage in the homogeneous lifetime case is
derived. The Stint algorithm achieves this upper bound.
While we now provide an informal description of this
algorithm, the details appear in Fig. 4.
The Stint algorithm first computes i, the maximum
number of node-disjoint paths between : and t. The
maximum number of node-disjoint paths can be found
using a max-flow algorithm as discussed in [1]. The Stint
algorithm then determines whether i is divisible by /. If it
is, then i disjoint paths are partitioned into i,/ groups
of / paths each. Then, groups of / disjoint paths are
activated in sequence. The first group provides /-barrier
coverage until it runs out of energy. Then, the second group
is activated. The process continues for iterations.
Alternatively, if iis not divisible by/, then bi,/c 1.
Similar to the prior case, groups of / disjoint paths exhaust
their lifetimes in sequence. Next, the remaining i i /
disjoint paths are arrangedin) i, gcdi. / sets of / disjoint
paths each, where each path is in / sets. Each of these ) sets of
paths is kept active for gcdi. /,/ of the total sensor lifetime.
In this way, the network provides /-barrier coverage for
i,/ i,/ units of time, if each sensor has a lifetime of one
unit. This is the maximum possible lifetime according to
Lemma 3.1.
We use the coverage graph shown in Fig. 3 to illustrate
the operation of the Stint algorithm. For the coverage graph
in Fig. 3, the value of i is 8. If / 2, then / divides i.
Therefore, 4. The eight disjoint paths are partitioned
into four sets of two paths each. These four sets are
activated in sequence to provide a lifetime of four units.
When / 3, then i is not divisible by /. Now, is set to
b8,3c 1 1. Let this one group be the set of paths 1. 2. 3.
These three paths are kept active for their entire lifetime.
Next, the remaining i 8 1 3 5 disjoint paths are
arranged in ) 5, gcd5. 3 5 sets of three disjoint paths
each, where each path is in three sets. Five possible sets are
f4. 5. 6, 5. 6. 7, 6. 7. 8, 7. 8. 4, and 8. 4. 5g. Each of
these five sets of paths is kept active for gcd5. 3,3 1,3
of the total lifetime of a sensor. In this way, the network
provides 3-barrier coverage for 1 5,3 8,3 units of time,
if each sensor has a lifetime of one unit.
We now prove that the Stint algorithm maximizes the
network lifetime for /-barrier coverage. We first consider
the case when / < i < 2/.
Lemma 3.2. Consider a sensor network `. Let i be the
maximum number of node-disjoint paths between the virtual
nodes : and t in the coverage graph G`. Also, let the
lifetime of an individual sensor node be unity. If / < i < 2/,
then the Stint algorithm provides /-barrier coverage for
i,/ units of time.
Proof. We first prove that no sensor in the sequences o
ii1
through o
i
completely exhausts its energy before the
end of the for loop in Lines 18-21. Then, we show that this
loop provides /-barrier coverage for i,/ units of time.
To prove the first part, observe that the sets o
i
. 0 ! i !
) 1 are disjoint. Whenever one of these sets o
i
is active,
all sensors in this set are active. Since each sensor has a
lifetime of unity, the lifetime of each set is unity. In the for
loop (Lines 18-21), which runs ) i,r times, each set is
inactive in i /,r iterations. Therefore, the set is active
in exactly ) i /,r /,r iterations. Since each
iteration lasts for r,/ units of time, no set completely
exhausts its energy before the end of the loop.
To prove the second part, observe that /,r sets
are active in each iteration of the loop. Each of these
node-disjoint sets provides r-barrier coverage. Hence,
each iteration provides /-barrier coverage. Also, since
eachiterationlasts for r,/ units of time andthere are a total
of ) i,r iterations, the for loop (Line 18 through Line 21)
provides /-barrier coverage for i,/ units of time. tu
We now prove the optimality of the Stint algorithm for
all values of i.
Theorem 3.1. The Stint algorithm is an optimal sleep-wake-up
algorithm for /-barrier coverage.
Proof. Consider a sensor network `. Let i be the
maximum number of node-disjoint paths between the
virtual nodes : and t in the coverage graph G`. Also,
let the lifetime of an individual sensor node be unity.
From Lemma 3.1, any sleep-wake-up algorithm for
/-barrier coverage can achieve a lifetime of at most
i,/. To prove the theorem, we only need to prove that
the Stint algorithm achieves a network lifetime of i,/.
Lines 10-12 in the Stint algorithm provide /-barrier
coverage for units of time. If i mod / 0, the proof is
complete. Consequently, assume that i mod / 6 0. This
implies that / < i < 2/ (see Line 13 in Fig. 4). Apply
Lemma 3.2 to conclude that Lines 14-22 in Fig. 4 provide
/-barrier coverage for i,/ units of time. Since i i
/, i,/ i,/. Hence, the Stint algorithm provides
/-barrier coverage for i,/ units of time. tu
Complexity. The complexity of the Stint algorithm is
dominated by the computation of maximum number of
disjoint paths. The maximumdisjoint paths can be computed
with the max-flow algorithm using the standard transforma-
tion of replacing each vertex with a set of in and out vertices,
connecting all incoming arcs to the in vertex, connecting all
outgoing arcs to the out vertex, and connecting the in and out
vertices with a directed arc of same capacity as the nodes
lifetime. The Edmonds-Karpalgorithmcandetermine a max-
flow with complexity O\ 1
2
[17]. Some optimization
procedures can reduce the complexity to O\
3
, log\ .
1164 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 9, NO. 8, AUGUST 2010
Fig. 3. The coverage graph of a sensor network used to illustrate the
operation of the Stint algorithm.
3.3 Minimizing Path Switches
In this section, we consider a lexicographic two objective
optimization problem where the first objective is to
maximize the network lifetime, and the second objective
is to minimize the number of path switches. We first
illustrate why minimizing the number of path switches is
nontrivial. We then derive a lower bound on the total
number of path switches that are required if network lifetime
is to be maximized for /-barrier coverage. Finally, we prove
that the Stint algorithm achieves this lower bound.
Consider again the network whose coverage graph
appears in Fig. 3. Let / 3. Form eight groups of three
disjoint paths each, e.g., f1. 2. 3. 4. 5. 6, 7. 8. 1, 2. 3. 4,
5. 6. 7, 8. 1. 2. 3. 4. 5, 6. 7. 8g. Let each set of three
disjoint paths be active for 1/3 units of time. Then, we
achieve a network lifetime of 8/3, while providing 3-barrier
coverage. Note that the total number of path switches in this
case is 16 since each path is turned off twice before it
exhausts its full energy.
The total number of path switches in the schedule
computed by the Stint algorithm is only 2. This is because
only paths 4 and 5 are turned off once each before they run
out of energy. All other paths run out of energy once they are
turned on. Note that achieving zero path switches is not
possible in this case since 8 is not divisible by 3. In general,
zero path switches are needed up to Line 13 in Fig. 4, which
is the minimum possible. Path switches are required only
when / < i < 2/. The following lemma derives a lower
bound on the total number of path switches for this case. We
show that number of path switches is equivalent to the
number of preemptions in the domain of machine (or
processor) scheduling.
Lemma 3.3. Consider a sensor network `. Let ibe the maximum
number of node-disjoint paths between the virtual nodes : and t
inthe coverage graph G`. Also, let the lifetime of anindividual
sensor node be unity. If / < i < 2/, then the total number of
path switches needed by any optimal sleep-wake-up algorithmto
provide /-barrier coverage is at least / gcdi. /.
Proof. FromTheorem2.1, there must be / node-disjoint paths
active for i,/ time units. Further, no pathcan be active for
more than 1 < i,/ unit of time. Convert this problemto a
machine scheduling problem [18]. The / disjoint paths
that are required for /-barrier coverage correspond to
/ machines that process i jobs. Each job has a processing
time of 1 unit on any machine. Let the / machines
be numbered 1. 2. . . . . /. The objective of maximizing
/-barrier coverage lifetime is equivalent to minimizing the
makespan on / machines. The minimum value of the
makespan is i,/, which is achieved only when all
machines are busy for i,/ units of time. Moreover, the
number of path switches is equivalent to the number of job
preemptions. Hence, the claim to be proved is that the
minimum number of preemptions needed to achieve a
makespan of i,/ is at least / gcdi. /.
For any given optimal schedule, let o
1
be an arbitrary
machine. Because 1 < i,/ < 2, at least one job is not
finished on o
1
. Let the set of unfinished jobs be J. Since
J 6 c, pick an arbitrary unfinished job ,
1
2 J. Let o
2
be the machine on which ,
1
is resumed. We thus have
one preemption (for job ,
1
). Add all the unfinished jobs
from machine o
2
into set J. Again pick an unfinished job
from J and let o
3
be the machine on which it is resumed.
We have another preemption. We continue in this
fashion until the set J of unfinished jobs becomes empty.
This way we construct a sequence of machines
o
1
. o
2
. . . . . o
1
such that each machine o
i
. i 6 1 has at least
one preemption. Also, these
1
machines together finish
some number of jobs completely within i,/ time units
with at least
1
1 preemptions. This implies that
1
i,/ is an integer, which is possible only when
1
is a
multiple of /
0
/, gcdi. /.
If
1
6 /, we select a new machine and construct a
new sequence of
2
machines, which together finish
some number of jobs with at least
2
1 preemptions,
where
2
is a multiple of /
0
. Let there be o such
i
s such
that
P
o
i1
i
/, where o gcdi. /. The total number
of preemptions is at least
P
o
i1
i
1 / o !
/ gcdi. /. Since this holds for any optimal schedule,
the claim is proved. tu
KUMAR ET AL.: MAXIMIZING THE LIFETIME OF A BARRIER OF WIRELESS SENSORS 1165
Fig. 4. The Stint sleep-wake-up schedule assignment algorithm.
The next theorem establishes that the Stint algorithm
achieves the lower bound of Lemma 3.3.
Theorem 3.2. Of all the optimal sleep-wake-up schedules for
achieving /-barrier coverage, the Stint algorithm constructs a
schedule that has the minimum number of path switches.
Proof. Observe that nopathswitches are neededuptoLine 13
inFig. 4, whichis the minimumpossible. Pathswitches are
requiredonlywhen/ < i < 2/. Lemma3.3establishes that
any schedule which achieves /-barrier coverage requires
at least / gcdi. / path switches, where / < i < 2/. To
establish the theorem, we show that the Stint algorithm
constructs a maximum of / gcdi. / path switches.
Note that a path switch is performed only in the for
loop in Lines 18-21. Consequently, we focus on these lines
only. Each time a sensor is turned off, every sensor in its
group is turned off. Since a group consists of a sequence
of r sensors, each of which provides 1-barrier coverage,
every on/off involves r path switches.
A set o
i
. 0 ! i ! ) 1 of sensors is turned off before it
exhausts its lifetime only when the index of the loop
, < /,r 1. This is because every group o
i
runs out of
energy if it is active continuously for /,r iterations.
Except for the first /,r 1 sets o
i
. 0 i < /,r 1, each
of which is turned off once it is continuously active for
i 1 iterations, every other set of sensors o
i
. /,r 1 !
i ! ) 1 is active continuously for /,r iterations.
Further, the first /,r 1 sets which are turned off before
running out of energy are not turned off again when they
are turned on later. Since each of these sets involves
r path switches and they are turned off and on exactly
once, the Stint algorithm needs exactly r /,r 1
/ r path switches, where r gcdi. /. tu
4 HETEROGENEOUS LIFETIME
In this section, we derive an upper bound on the network
lifetime when the sensor lifetimes are heterogeneous.
Next, we present the Prahari
3
algorithm to determine an
optimal sleep-wake-up schedule for individual sensors.
Finally, we consider the problem of minimizing the
number of path switches.
4.1 Upper Bound on Network Lifetime
The maximum lifetime can be determined using Lemma 3.1
when the sensor lifetimes are identical. When the sensor
lifetimes are not identical, the problem of determining the
maximum achievable lifetime becomes significantly more
challenging. For example, consider the network in Fig. 5.
This is the same network, as shown in Fig. 1, except that
sensors have distinct lifetimes. What is the maximum time
for which this network can provide 2-barrier coverage? We
provide a provably optimal solution to this problem by
making use of multiroute network flows [19].
We begin with some assumptions and definitions. We
assume that it is possible to estimate the remaining lifetime
of a sensor node. With new mote hardware, it is possible to
measure the remaining battery level [20] and based on the
load observed so far, the remaining lifetime can be
estimated. Also, a profile of expected energy consumption
of every node may be built using analytical models or using
simulators such as PowerTOSSIM [21]. Sensor lifetimes can
have any real positive value.
Definition 4.1 (Coverage graph with lifetime G
1
`). A
coverage graph with lifetime of a sensor network `, where each
node n 2 \ f:. tg is assigned a capacity, cn, equal to the
remaining lifetime. Each edge is assigned infinite capacity. The
vertex : is the source and t the sink.
The G
1
`, corresponding to the network shown in Fig. 5,
appears in Fig. 6. To convert G
1
` \ . 1 to a directed
graph, replace each edge fn. .g with a pair of directed edges
n. . and .. n. For the remainder of Section 4, we assume
that G
1
` is a directed graph.
Definition 4.2 (:-t flow). An :-t flow in G
1
` is a mapping
) : 1 ! IR
such that
1. 8n 2 \ f:. tg.
P
n..21
)n. .
P
..n21
).. n,
2.
P
:..21
):. .
P
..t21
).. t. and
3. 8n 2 \ f:. tg.
P
n..21
)n. . cn.
Definition 4.3 (:-t path flow). A :-t path flow in G
1
` is a
:-t flow with the property that the flow network is a single
path from : to t.
Three path flows fromthe coverage graph shown in Fig. 6 are
shown in Fig. 7.
1166 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 9, NO. 8, AUGUST 2010
Fig. 5. The sensor network deployment in Fig. 1, where the integer is the
lifetime of the sensor located in the filled square.
Fig. 6. The coverage graph with lifetime G
1
` of the sensor network `
shown in Fig. 5.
3. The word Prahari is a Sanskrit word for securityman who guards a
region for a fixed time interval.
Fig. 7. A composite 2-flow of total value 4 for the sensor network `
shown in Fig. 5.
Definition 4.4 (Basic /-flow of value o). A set of / node-
disjoint :-t path flows in G
1
`, each of which has value o.
The total value of the flow is / o. In Fig. 7, Path Flow 2
and Path Flow 3 comprise a basic 2-flow of value 1. The
total value of this basic 2-flow is 2.
Definition 4.5 (Composite /-flow). A set of flows in G
1
`
that can be expressed as a sum of basic /-flows.
The total value of a composite /-flow is
P
i
i1
`
i
/ o
i
, for
appropriate weights `
i
2 ZZ
,
where o
i
is the value of ith basic /-flow. In every basic
/-flow i, there are /-node-disjoint flows each with value
o
i
. Consider the i basic /-flows in order. Turn on the
nodes in the basic /-flow i at
P
i1
,1
`
,
/ o
,
time units
from the start of sleep-wake-up schedule and keep them
continuously active for a duration of `
i
o
i
time units.
With this schedule, the network ` provides /-barrier
coverage for T time units since each basic /-flow i
provides /-barrier coverage for `
i
o
i
units of time and
P
i
i1
`
i
o
i
T.
( . Given a sleep-wake-up schedule that allows ` to
provide /-barrier coverage for T units of time, we
construct a /-flow of value / T in G
1
`. Let t
1
be the
first time instant when some sensor changes its state from
off to on or vice versa. The set of sensors that are on in the
interval 0. t
1
forms a basic /-flow of value t
1
in G
1
`
since by Theorem 2.1, there exist / node-disjoint paths
between : and t with these sensors active. Denote this
basic /-flow by 1
1
. Similarly, the total value of 1
i
is / t
1
for i 2. 3. . . . . i, where i is the number of time instants
when the sensors change state. Since ` provides /-barrier
coverage for T units of time,
P
i
i1
/ t
i
/ T. Hence,
the set of basic /-flows together defines a composite
/-flow of value / T. tu
Corollary 4.1. The maximum time for which the sensor network
` can provide /-barrier coverage is
^
),/, where
^
) is the
maximum value of composite /-flow in G
1
`.
Proof. The proof follows from Theorem 4.1. tu
If we can devise a method to determine the maximum
value of a composite /-flow in a G
1
`, then we can derive
an upper bound on the network lifetime achievable by `.
For this purpose, we make use of the MEM algorithm [19].
As an example, applying this algorithm to the coverage
graph shown in Fig. 6, we determine that the maximum
value of a composite 2-flow,
^
),/, is 4. Hence, the maximum
time for which this network can provide 2-barrier coverage
is 4,2 2 (from Corollary 4.1).
4.2 Achieving the Upper Bound
We present the Prahari algorithm that achieves the upper
bound derived in Section 4.1 on the network Lifetime that
any sleep-wake-up algorithm can achieve for /-barrier
coverage in the heterogeneous lifetime case. The detailed
Prahari algorithm appears in Fig. 9. We now provide an
informal description of this algorithm.
The Prahari algorithm first invokes the MEM algorithm
[19] to determine
^
), the maximum value of composite
/-flow in G
1
`. Let 1
`1`
` be the flow network
resulting from this step.
If the flownetwork 1
`1`
` is suchthat the indegree and
outdegree of every node other than : and t is 1, then the flow
network can be decomposed into i / node-disjoint path
flows. Then, the Prahari algorithmuses a machine scheduling
algorithm proposed by [22] to schedule the i paths to
achieve a lifetime of
^
),/ time units, or equivalently to
schedule ijobs on / machines to achieve a makespan of
^
),/.
Thus, we achieve the maximum lifetime in this case.
Alternatively, if the flow network 1
`1`
` is such that
some node in \ f:. tg has an indegree or outdegree of
more than 2, then the Prahari algorithm invokes the SEM
algorithm from [19] to decompose the flow network into
c
0
/ basic /-flows. SEM then merges identical basic
/-flows into a single aggregate basic /-flow. Let c be the
number of distinct basic /-flows resulting from the
preceding step. Since the set of nodes in each basic / flow
provides /-barrier coverage, the Prahari algorithm sche-
dules these c basic /-flows one by one. Since the sum of
total flow values of all basic /-flows is precisely
^
), the
maximum network lifetime of
^
),/ is achieved.
We use the coverage graph shown in Fig. 6 to illustrate
the operation of the Prahari algorithm. Let / 2. Fig. 6
shows 1
`1`
` for the network `, as shown in Fig. 5. As
can be seen in this figure,
^
) 4. Because the indegree and
outdegree of every node other than : and t is 1 in the flow
network 1
`1`
`, the flow network is decomposed in
i 3 node-disjoint path flows. Since / 2, two machines
are used for scheduling. Also, the minimum makespan,
which is equivalent to the maximum network lifetime, is
4,2 2. As shown in Fig. 8, Path Flow 1 is scheduled on
Machine 1 for 2 time units, and Path Flows 2 and 3 are
scheduled on Machine 2 for 1 time unit each. This generates
a schedule for the three paths. Path Flow 1 is active for 2
KUMAR ET AL.: MAXIMIZING THE LIFETIME OF A BARRIER OF WIRELESS SENSORS 1167
Fig. 8. The machine scheduling approach followed by the Prahari
algorithm for the flow network shown in Fig. 7. The numbers in the
parentheses denote the lifetime of the individual paths.
time units continuously. Path Flow 2 is active for 1 time
unit starting at time t 0. At t 1, Path Flow 2 runs out of
energy and Path Flow 3 is activated. Thus, we achieve a
lifetime of 2 time units, which is the maximum possible.
We now formally establish the optimality of the Prahari
algorithm.
Theorem 4.2. The Prahari algorithm determines a sleep-wake-up
schedule that provides /-barrier coverage for the maximum
network lifetime.
Proof. Consider a sensor network ` and the coverage graph
G
1
` \ . 1. Let )
/
` denote the maximum value of
the composite /-flow. Corollary 4.1 establishes that an
upper bound on the lifetime to provide /-barrier cover-
age for ` is )
/
`,/. Therefore, to establish that the
Prahari Algorithm finds the maximum network lifetime,
we only need to prove that the algorithm finds a
schedule where the network ` provides /-barrier
coverage for )
/
`,/ units of time.
The MEM algorithm computes the value of )
/
` [19].
If the flows in the network that result from applying the
MEM algorithm are node-disjoint (besides : and t), then
Lines 3-14 are executed. We establish that this schedule
achieves a lifetime of )
/
`,/.
Since
P
i
i1
)
i
)
/
`, at every time instant in the
interval 0. )
/
`,/, / node-disjoint paths are active.
Each of these paths provides 1-barrier coverage. Further,
since the value of any individual flow is at most )
/
`,/,
there is no schedule conflict for any node, i.e., no node is
assigned to provide more than 1-barrier coverage at any
time instant.
If the flows are not node-disjoint, then the SEM
algorithm decomposes the /-flow computed by the
MEM algorithm in component basic /-flows. For a proof
of the correctness of the SEM algorithm, we refer the
reader to [23]. Since each basic flow `
i
provides /-barrier
coverage for )`
i
,/ time units and
P
c
i1
)`
i
)
/
`,
the network ` provides /-barrier coverage for )
/
`,/
time units. tu
Complexity. The complexity of the Prahari algorithm is
dominated by the SEM algorithm [19], whose complexity is
O/\
3
, log\ .
4.3 Minimizing Path/Sensor Switches
In this section, we consider a lexicographic two objective
optimization problem where the first objective is to
maximize the network lifetime, and the second objective
is to minimize the number of sensor switches. We show that
this two objective optimization problem is NP-Hard. We
prove that the decision version of this problem is strongly
NP-Complete. This problem remains NP-Hard even if all
paths between : and t in the associated coverage graph are
node-disjoint. Then, we can minimize the number of path
switches instead of sensor switches.
We now prove NP-Hardness for the decision version of
the problem of minimizing the number of sensor switches
when the threshold is zero.
Barrier Coverage Lifetime With Zero Sensor switches.
INSTANCE: Integers 1. / 2 ZZ
, location of i sensors
each with a sensing radius of i, and
i
2 ZZ
, the lifetime of
sensor i 1. 2. . . . . i.
QUESTION: Can the network provide /-barrier coverage
for 1 units of time with 0 sensor switches?
We use a reduction from the 3-partition problem [24].
3-Partition
INSTANCE: Set with 3i elements, a bound 1 2 ZZ
,
and a size :o 2 ZZ
1
.
2
. . . . .
i
such that
P
o2
i
:o 1 for 1 i i?
Theorem 4.3. The Barrier Coverage Lifetime With Zero
Sensor Switches problem is NP-Complete.
Proof. We first show that the Barrier Coverage Lifetime
With Zero Sensor Switches is in NP. Assume that we are
provided with a schedule, i.e., a sequence of intervals 1
,
and the set of sensors that are active in that interval. It
can be checked in polynomial time whether the active
time for any sensor exceeds its available lifetime. Next,
we invoke the algorithm in [1] to verify for each interval
1168 IEEE TRANSACTIONS ON MOBILE COMPUTING, VOL. 9, NO. 8, AUGUST 2010
Fig. 9. The Prahari algorithm to determine sleep-wake-up schedule for
maximizing network lifetime.
1
i
whether the sensors active in this interval provide
/-barrier coverage. Note that it is sufficient to check
i intervals, since at least one sensor must be exhausted to
cause a schedule switch and there are at most i sensors
that are used to provide /-barrier coverage. Finally, we
can check for each sensor if it involves an on/off.
To prove that the Barrier Coverage Lifetime With Zero
Sensor Switches problem is strongly NP-Complete, we
Provide a reduction from 3-Partition. Given an instance
of the 3-Partition problem, we construct a coverage
graph as follows: Set 1 1 and / i. Create two
disjoint sets of / nodes each, called o and T, such that
i 3i2/ 5/. Let
i
1 1 for i 2 o [ T, and
i
:i for i 2 . Connect the / nodes in set o to the virtual
node : in the coverage graph and to the 3/ nodes in set .
Similarly, connect the / nodes in set T to the virtual node
t and to the 3/ nodes in set . (See Fig. 10 for an
example.) Now, we show that the network provides
/-barrier coverage for 1 units of time with zero sensor
switches iff set can be partitioned into i disjoint sets
1
.
2
. . . . .
i
such that
P
o2i
:o 1 for 1 i i.
) . Assume that set can be partitioned in i disjoint
sets such that
P
o2i
:o 1 for 1 i i. Since 1,4 <
:o < 1,2 for o 2 , each set
i
consists of exactly three
elements. Label the / nodes in set o as :
1
. :
2
. . . . . :
/
and
label the / nodes in T as t
1
. t
2
. . . . . t
/
. Now, form sets of
three paths 1
i
, 1 i /, that consist of nodes :
i
, t
i
, and
nodes in the set
i
. Since
P
o2
i
o
1, each path set 1
i
provides 1-barrier coverage for 1 1 units of time. Since
the set of paths 1
i
are node-disjoint, the network
provides /-barrier coverage for 1 units of time.
( . Assume that the network provides /-barrier
coverage for 1 units of time with zero sensor switches.
Since everypathbetweenthe virtual nodes : andt includes
one or more nodes from the set ,
P
o2
:o /1.
Because the network provides / barrier coverage for
1 units of time, every node in set fully exhausts its
lifetime in 1 time units.
Suppose node o 2 is shared by two nodes :
1
. :
2
2 o.
Also, assume that o is first used by :
1
and then by :
2
.
Further assume that this is the first time instant that a
node is transferred between two nodes of o and that the
node in that was in use by :
2
prior to this instant was
fully exhausted. Then, switch all the nodes that were
used by :
1
and :
2
prior to this instant. This switch has no
effect on the system lifetime. Now, there is no node
sharing up to this time instant. Other node sharing can
be eliminated in a similar fashion. Hence, we assume
that no node in set is shared by two nodes in set o or
by two nodes in set T.
Since the network provides /-barrier coverage for
1 units of time, it must be the case that there are idisjoint
sets of nodes in set such that
P
o2
i
o
1 1 for
1 i i /. Let
i
be the set of nodes in that are used
by node i 2 o. This generates a 3-partition of set , which
completes the proof. tu
We now show that minimizing the number of path
switches is NP-Complete even if all paths between the
virtual nodes : and t in the underlying coverage graph are
node-disjoint. The following is the decision version of this
problem when the threshold is zero.
Node-Disjoint Barrier Coverage Lifetime With Zero
Path Switches.
INSTANCE: Integers 1. / 2 ZZ
, location of i sensors
each such that all the paths between the virtual nodes : and
t in the associated coverage graph are node-disjoint, and
i
2 ZZ