16
Lifetime maximization in wireless directional sensor network Andr´ e Rossi †* Alok Singh Marc Sevaux Universit´ e de Bretagne-Sud, Lab-STICC, 56321 Lorient Cedex, France University of Hyderabad, School of Computer and Information Sciences Hyderabad, 500 046, India April 2013 Abstract This paper addresses two versions of a lifetime maximization problem for target coverage with wireless directional sensor networks. The sensors used in these networks have a maximum sensing range and a limited sensing angle. In the first problem version, predefined sensing directions are assumed to be given, whereas sensing directions can be freely devised in the second problem version. In that case, a polynomial-time algorithm is provided for building sensing directions that allow to maximize the network lifetime. A column generation algorithm is proposed for both problem versions, the subproblem being addressed with a hybrid approach based on a genetic algorithm, and an integer linear programming formulation. Numerical results show that addressing the second problem version allows for significant improvements in terms of network lifetime while the computational effort is comparable for both problem versions. Keywords: Wireless sensor networks; Directional sensors; Column generation; Heuristics. 1 Introduction Wireless sensor networks (WSN) are used in a wide range of applications. In addition to battlefield surveil- lance, volcano eruption and tsunami prediction, WSN are now being used for health care [2, 12]. The continuous betterments in microelectronics and production technologies have made embedded systems affordable and com- putationally competitive. The raise in smart-phones is probably the most emblematic aspect of this general trend. However, the progresses in energy storage have been less spectacular. Consequently, while technology allows for WSN with a larger number of smart sensors, the question of their lifetime is a growing challenge. More specifically, assuming that each sensor is either active or in sleep mode (where it does not consume energy) and that many sensors are available in the vicinity of the targets, maximizing lifetime is to decide which sensor to turn in active mode, and when, so as to keep all the targets under the sensing range of at least one active sensor. Column generation has recently appeared to be a very successful approach for increasing lifetime in wireless omni directional sensor networks [3, 15], and for omni directional sensors with adjustable sensing ranges [7, 16]. Optimal solutions can be found for reasonably small instances, but column generation also serves as a very good heuristic for larger instances. The use of heuristics for addressing the subproblem is a successful strategy for generating attractive columns fast, however, because of the tailing-off effect [4, 13], the end of the search for an optimal solution often requires a tremendous number of iterations that increases the solution quality by an infinitesimal amount. This allows to derive very good heuristics simply by stopping the column generation algorithm when the reduced cost is less than a given threshold [11]. Directional sensor networks differ from omni directional sensor networks in the fact that sensors can only sense in a restricted angle. Moreover, they can rotate so as to change their sensing direction, allowing to cover other targets. Consequently, the decisions to be made regarding sensors are not only when to turn each of them on, but also to specify their sensing direction when they are active. Such directional sensors are typically video cameras [14, 10], ultrasonic sensors [9] and infrared sensors [18]. Most authors have addressed the problem of maximizing lifetime by assuming that sensing directions were given [1, 5, 6]. The most popular assumption is to consider that sensing directions are equally distributed in the interval [0, 2π) with no overlapping as in [1, 6]. The advantage of such a choice is that any target in the range of a sensor can be covered using a unique sensing direction. Even though this way of building directions is arbitrary, the authors of [6] mention that their algorithms remain valid regardless of this choice. Nevertheless, * Corresponding author. Telephone: +33 297874525, Fax: +33 297874527, [email protected] 1

Lifetime maximization in wireless directional sensor network

Embed Size (px)

Citation preview

Lifetime maximization in wireless directional sensor network

Andre Rossi†∗ Alok Singh‡ Marc Sevaux†

† Universite de Bretagne-Sud, Lab-STICC, 56321 Lorient Cedex, France‡ University of Hyderabad, School of Computer and Information Sciences

Hyderabad, 500 046, India

April 2013

Abstract

This paper addresses two versions of a lifetime maximization problem for target coverage with wireless

directional sensor networks. The sensors used in these networks have a maximum sensing range and a limited

sensing angle. In the first problem version, predefined sensing directions are assumed to be given, whereas

sensing directions can be freely devised in the second problem version. In that case, a polynomial-time

algorithm is provided for building sensing directions that allow to maximize the network lifetime. A column

generation algorithm is proposed for both problem versions, the subproblem being addressed with a hybrid

approach based on a genetic algorithm, and an integer linear programming formulation. Numerical results

show that addressing the second problem version allows for significant improvements in terms of network

lifetime while the computational effort is comparable for both problem versions.

Keywords: Wireless sensor networks; Directional sensors; Column generation; Heuristics.

1 Introduction

Wireless sensor networks (WSN) are used in a wide range of applications. In addition to battlefield surveil-lance, volcano eruption and tsunami prediction, WSN are now being used for health care [2, 12]. The continuousbetterments in microelectronics and production technologies have made embedded systems affordable and com-putationally competitive. The raise in smart-phones is probably the most emblematic aspect of this generaltrend. However, the progresses in energy storage have been less spectacular. Consequently, while technologyallows for WSN with a larger number of smart sensors, the question of their lifetime is a growing challenge.More specifically, assuming that each sensor is either active or in sleep mode (where it does not consume energy)and that many sensors are available in the vicinity of the targets, maximizing lifetime is to decide which sensorto turn in active mode, and when, so as to keep all the targets under the sensing range of at least one activesensor.

Column generation has recently appeared to be a very successful approach for increasing lifetime in wirelessomni directional sensor networks [3, 15], and for omni directional sensors with adjustable sensing ranges [7, 16].Optimal solutions can be found for reasonably small instances, but column generation also serves as a verygood heuristic for larger instances. The use of heuristics for addressing the subproblem is a successful strategyfor generating attractive columns fast, however, because of the tailing-off effect [4, 13], the end of the searchfor an optimal solution often requires a tremendous number of iterations that increases the solution quality byan infinitesimal amount. This allows to derive very good heuristics simply by stopping the column generationalgorithm when the reduced cost is less than a given threshold [11].

Directional sensor networks differ from omni directional sensor networks in the fact that sensors can onlysense in a restricted angle. Moreover, they can rotate so as to change their sensing direction, allowing to coverother targets. Consequently, the decisions to be made regarding sensors are not only when to turn each of themon, but also to specify their sensing direction when they are active. Such directional sensors are typically videocameras [14, 10], ultrasonic sensors [9] and infrared sensors [18].

Most authors have addressed the problem of maximizing lifetime by assuming that sensing directions weregiven [1, 5, 6]. The most popular assumption is to consider that sensing directions are equally distributed inthe interval [0, 2π) with no overlapping as in [1, 6]. The advantage of such a choice is that any target in therange of a sensor can be covered using a unique sensing direction. Even though this way of building directions isarbitrary, the authors of [6] mention that their algorithms remain valid regardless of this choice. Nevertheless,

∗Corresponding author. Telephone: +33 297874525, Fax: +33 297874527, [email protected]

1

the way sensing directions are built may also have an impact on the network lifetime. To the best of ourknowledge, determining the number of sensing directions and setting their distribution in the interval [0, 2π) foreach sensor with the purpose of maximizing network lifetime is a new problem that has not been addressed yet.The main novelty is that directions are not defined a priori, but only once the network is deployed. This allowsfor building contextual directions: the directions of a sensor are built depending on the location of the targetsthat are within range. The problem of Lifetime Maximization with Predefined Directions for Sensing is referredto as LM-PDS. The problem of both building the sets of Contextual Directions for Sensing and maximizingnetwork lifetime is referred to as LM-CDS.

The contribution of this paper is three-fold. First, a polynomial-time algorithm is proposed for buildingthe contextual directions for each sensor, allowing to reach the maximum network lifetime. Second, an exactcolumn generation algorithm hybridized with a genetic algorithm is introduced for addressing both LM-PDS andLM-CDS. Finally, numerical results quantify the gain in lifetime by addressing LM-CDS rather than LM-PDSwhile a computational time analysis shows that LM-PDS and LM-CDS both require comparable computationalefforts. This supports the conclusion that, if directions can be set freely once the network is deployed, thenLM-CDS should be preferred over LM-PDS.

This paper is organized as follows. Section 2 introduces notations and proposes a polynomial-time algorithmfor building contextual sensing directions for each sensor. Section 3 proposes a column generation algorithmfor addressing LM-PDS and LM-CDS. Numerical results are given in Section 4 for LM-PDS and LM-CDS, andthese results are discussed. Section 5 concludes this paper.

2 Problems notations and properties

2.1 Notations

In this paper, all angles are expressed in radians and are in the interval [0, 2π). Let n and m be the number ofsensors and targets, respectively. For all i ∈ {1, . . . , n}, sensor i can be used for bi units of time (in small burstsor continuously) before its battery is discharged. In the case of those wireless sensor networks where not allsensors are used for the first time, the battery levels of sensors may differ, hence potentially different values forbi are considered. All sensors have the same sensing angle ϕ and sensing range Rs, which means that any targetk whose distance from i is less than or equal to Rs is covered by this sensor provided it is active, and that itssensing direction is such that k can be seen from i. More precisely, let Di be the set of targets whose distanceto sensor i is less than or equal to Rs. θk is the angle under which target k is seen from i, for all k ∈ Di. Whensensor i is used with sensing direction θ, it covers all the targets in Di whose angle is the interval [θ, θ + ϕ) ifθ+ϕ < 2π. If θ+ϕ ≥ 2π, then sensor i covers all the targets in Di whose angle is larger than or equal to θ, aswell as the targets whose angle is in the interval [0, θ + ϕ− 2π).

More formally, Di,θ is the set of all the targets that are covered by sensor i under the sensing direction θ:

Di,θ =

{

{k ∈ Di, θ ≤ θk < θ + ϕ} if θ + ϕ < 2π{k ∈ Di, θ ≤ θk or θk < θ + ϕ− 2π} otherwise

A sensing direction θ of sensor i is said to be normalized if there exists k ∈ Di such that θ = θk. Thus, thenumber of normalized sensing directions is at most |Di|. It can be less if two or more targets are seen underthe same angle from i.

As an example, Figure 1 shows a sensor denoted by i with sensing angle ϕ = π2(this angle is not on the

figure), and 6 targets represented as circles with indexes in {1, . . . , 6} that can be covered by i. For the sakeof readability, the angle under which each target is seen from i is also displayed on the figure. In [1, 6], LM-PDS is addressed by considering that i has the four following sensing directions: 0, π

2, π and 3π

2. Sensing

directions 0 and π are shown in gray in Figure 2 whereas sensing directions π2and 3π

2are in white. It can be

seen that Di,0 = {1, 2}, Di,π2= {3, 4}, Di,π = {∅}, and Di, 3π

2= {5, 6}, hence sensing direction π is useless.

The intersection of these sets is empty as no two sensing directions overlap. Moreover, none of these sensingdirections is normalized.

In the literature, the notion of groups (sometimes referred to as covers) has long been shown to be the mostefficient way to address a wide variety of optimization problems in wireless sensor networks [17, 19]. In thecase of directional sensors, a valid group is defined as a subset of sensors with a sensing direction for each ofthem, such that each target is covered by at least one sensor of that group. A group is not valid if the coveragerequirement is not satisfied. LM-PDS and LM-CDS are to design valid groups and to compute the amount oftime during which they are used so as to maximize the network lifetime, while enforcing that sensor i is usedat most bi units of time, for all i in {1, . . . , n}. Thus, exactly one group is active at a time, the sensors that arenot part of the active group are turned off (so that they do not consume energy) whereas all the sensors of theactive group are active as they sense in the direction specified by the group for each of them. Consequently, asolution to LM-PDS or LM-CDS is a collection of groups with a duration. A feasible solution is composed of

2

0

π9

π4

5π8

7π8

16π9

15π8

1

2

3

4

5

6i

Figure 1: A sensor surrounded by 6 targets

0

π9

π4

5π8

7π8

16π9

15π8

1

2

3

4

5

6i

Figure 2: Four sensing directions: 0, π2, π, and 3π

2

valid groups only, with durations that satisfy battery limitations for all sensors. From now on, when mentioninggroups we always refer to valid groups, unless differently specified.

2.2 Normalized and non-dominated sensing directions

This paragraph states some properties that allow for building the most efficient sensing directions for a sensor,which is a prerequisite for addressing LM-CDS.

Lemma 1. For every feasible solution of LM-PDS, there exists a feasible solution to LM-CDS that uses nor-malized sensing directions only, with the same lifetime.

Proof. For all i ∈ {1, . . . , n}, we can build a normalized sensing direction from any predefined sensing directionθ as follows. Let k be the target in Di,θ that minimizes θk−θ if θk ≥ θ, or that minimizes 2π+θk−θ otherwise.Then, the normalized sensing direction θ′ = θk can be used instead of θ without compromising coverage, as Di,θ

is included in Di,θ′ . Indeed, replacing θ with θ′ is just rotating anti-clockwise from θ and stopping when a targetis seen at angle θ′, which does not compromise coverage. Consequently, the normalized sensing direction θ′ canbe used for the same duration as sensing direction θ. By repeating this process and replacing all predefinedsensing directions with their normalized counterpart, we produce a feasible solution that uses normalized sensingdirections only, with the same lifetime.

Corollary 1. The search for an optimal solution to LM-CDS can be restricted to normalized sensing directions.This has the advantage of restricting the search to a discrete set (rather than the continuous set [0, 2π)), whichcardinality is at most |Di| for all i ∈ {1, . . . , n}.

Let k be a target in Di. The normalized sensing direction θk of sensor i is said to be dominated if thereexists k′ ∈ Di such that Di,θk is a strict subset of Di,θ

k′ .

Lemma 2. For every feasible solution of LM-PDS, there exists a feasible solution to LM-CDS that uses non-dominated sensing directions only, with the same lifetime.

Proof. A feasible solution to LM-PDS is a collection of groups in which active sensors have a predefined workingdirection. The following transformation is applied to all the groups. By definition, for each active sensor in agroup, there exists a non-dominated direction of that sensor that covers all the targets covered by its currentpredefined direction in that group. Hence we can replace that direction by any non-dominated direction withoutcompromising coverage. By repeating the process to all active sensors in all groups, we obtain a feasible solutionto LM-CDS that uses non-dominated directions only, and that has the same lifetime as the solution to LM-PDS.

Lemma 1 implies that the search for an optimal solution to LM-CDS can be restricted to non-dominatedsensing directions. It also implies that the lifetime of an optimal solution to LM-CDS is larger than or equal tothe optimal lifetime of LM-PDS for the same problem instance. Indeed, if we consider the example of Figure 2with a single sensor and targets 1 and 6 only, then the network lifetime is 0 for LM-PDS (problem is unfeasible)whereas it is equal to bi > 0 with LM-CDS.

Back to the example of Figure 1, there are three non-dominated sensing directions: π4is shown on Figure 3,

while 5π8

and 16π9

are shown on Figure 4.

3

0

π9

π4

5π8

7π8

16π9

15π8

1

2

3

4

5

6i

Figure 3: A non-dominated sensing direction, π4

0

π9

π4

5π8

7π8

16π9

15π8

1

2

3

4

5

6i

Figure 4: Two non-dominated sensing directions,5π8

and 16π9

2.3 Determining all non-dominated sensing directions

We now propose a polynomial-time algorithm for determining all non-dominated sensing directions for a sen-sor. Let σi be the number of non-dominated sensing directions for sensor i. By definition, σi ≤ |Di| for alli ∈ {1, . . . , n} as non-dominated sensing directions are a subset of normalized ones. Non-dominated sensingdirections can be found as follows. First, the targets in Di are assumed to be re-indexed in such a way thatθk < θk+1 for all k ∈ {1, . . . , |Di| − 1}, and duplicate directions are removed by considering only one targetcovered by i corresponding to a given direction. For all k ∈ {1, . . . , |Di| − 1}, sensing direction θk+1 is non-dominated if |Di,θk | ≤ |Di,θk+1

|, and θ1 is non-dominated if |Di,θ|Di|| ≤ |Di,θ1 |. Indeed, when going from sensing

direction θk to θk+1, target k is no longer covered. So if sensing direction θk+1 does not allow to cover at leastone target out of Di,θk , then sensing direction θk+1 is dominated by θk.

Algorithm 1 computes all non-dominated sensing directions for all sensors, and the set of targets covered bythese sensing directions. More precisely, it returns:

• σi the number of non-dominated sensing directions of sensor i for all i ∈ {1, . . . , n}

• Θi,q the qth non-dominated sensing direction of sensor i, for all i ∈ {1, . . . , n}, and for all q ∈ {1, . . . , σi}

• ∆i,q the set of targets covered by sensor i when its sensing direction is Θi,q, for all i ∈ {1, . . . , n}, and forall q ∈ {1, . . . , σi}

When addressing LM-PDS, all these parameters are given. We use Algorithm 1 only for LM-CDS, wherethe sensing directions can be set freely for all sensors. In the example of Figure 1, Algorithm 1 returns σi = 3and the following non-dominated sensing directions for i: Θi,1 = π

4(see Figure 3), Θi,2 = 5π

8, and Θi,3 = 16π

9

(see Figure 4). The targets covered by these sensing directions are respectively ∆i,1 = {2, 3}, ∆i,2 = {3, 4}, and∆i,3 = {1, 2, 5, 6}.

Since the number of targets in the vicinity of a sensor is at most m, the complexity of Algorithm 1 is setby the sorting of A (i.e., the list of all target angles whose distance to the current sensor is less than Rs), andby the number of sensors to be processed. Hence, it requires O(nm log(m)) operations in the worst case. Ingeneral, the maximum number of targets within the sensing range of a sensor, denoted by m′, is usually verysmall compared to m, reducing the aforementioned complexity in practice.

2.4 Non-dominated groups

All valid groups are indexed in {1, . . . , p}. For all j in {1, . . . , p}, group Sj is modeled as a column vector havingn∑

i=1

σi binary entries, built as follows. For all i ∈ {1, . . . , n} we define gi =

i−1∑

ℓ=1

σℓ. For all i ∈ {1, . . . , n} and

q ∈ {1, . . . , σi}, element Sgi+q,j is set to 1 if and only if sensor i is part of that group, and its sensing directionis Θi,q.

For Sj to be a well-formed description of a group, the sum over q in {1, . . . , σi} of Sgi+q,j must be less thanor equal to one, for all i ∈ {1, . . . , n}. If it is zero, this means that sensor i is not part of Sj . If it is one, thismeans that sensor i is part of Sj , and that it is used in a unique and well-determined sensing direction.

In addition to the sensing directions, we also apply the notion of dominance to the groups. A valid group Sj

is dominated if there exists another valid group Sj′ such that Si,j′ ≤ Si,j for all i ∈ {1, . . . , gn + σn}, and thereexists a sensor i0 and a sensing direction index q0 for which Sgi0+q0,j′ < Sgi0+q0,j . In other words, a group is

4

for i = 1 to n do

// Computing A, the normalized sensing directions of sensor i with no duplicates

// disti,k is the Euclidean distance between sensor i and target kDi ← {k ∈ {1, . . . ,m}, disti,k ≤ Rs};A← ∅;forall the k ∈ Di do

θk ← angle under which target k is seen from sensor i;if θk /∈ A then

A← A ∪ {θk};end

end

Sort A by increasing order;// Computing Di,k

for k = 1 to |A| doif Ak + ϕ < 2π then

Di,k ← {ℓ ∈ Di, Ak ≤ θℓ < Ak + ϕ};else

Di,k ← {ℓ ∈ Di, Ak ≤ θℓ or θℓ < Ak + ϕ− 2π};end

end

// Computing non-dominated sensing directions for sensor iσi ← 0;for k = 1 to |A| − 1 do

if |Di,k| ≤ |Di,k+1| thenσi ← σi + 1;Θi,σi

← θk+1;∆i,σi

← Di,k+1;

end

end

if |Di,|A|| ≤ |Di,1| thenσi ← σi + 1;Θi,σi

← θ1;∆i,σi

← Di,1;

end

end

Algorithm 1: Computing the normalized and non-dominated sensing directions of all sensors

5

dominated if some sensors can be removed without compromising coverage. It can easily be shown that thereexists an optimal solution to LM-CDS that uses non-dominated groups only, so we can restrict the search forgroups to non-dominated ones. In addition, since there are m targets to cover, it can be deduced that anynon-dominated group has at most m sensors.

3 A column generation algorithm for both LM-PDS and LM-CDS

LM-PDS and LM-CDS only differ by the sensing directions of each sensor and their number, hence they canbe addressed with the same algorithm. Since column generation has successfully been used for solving closeversions of wireless sensor networks problems [3, 11], we propose a column generation algorithm for LM-PDSand LM-CDS. This algorithm is enhanced by the addition of a genetic algorithm for addressing the subproblem.

The master problem is concerned with the calculation of the time during which each group is used formaximizing lifetime, while ensuring that the energy limitation of each sensor is satisfied. Each column in themaster problem corresponds to a group. Since the number of groups is generally too large for being enumerated,a restricted master problem is considered (i.e., a single column is used at the beginning), and a subproblemis introduced for generating attractive columns, so as to allow the restricted master problem to increase thenetwork lifetime further.

The subproblem is first addressed with a genetic algorithm that has the advantage of being fast and ofreturning more than one attractive group at each iteration. A group (or a column) is said to be attractive if itsreduced cost in the restricted master problem is strictly positive. When the genetic algorithm fails to find anyattractive group, an integer linear programming formulation of the subproblem is solved for either generatingan attractive group, or proving that none exists, which also proves that the current restricted master problemsolution is optimal for the master problem.

3.1 Master problem

The master problem has p decision variables denoted by tj for all j ∈ {1, . . . , p}, where p is the number ofgroups. tj is the amount of time during which group j is active. The master problem’s constraints enforce thatsensor i is not used more than bi units of time. The dual variable associated with constraint i is denoted by yi.

Maximize

p∑

j=1

tj

p∑

j=1

(

σi∑

q=1

Sgi+q,j

)

tj ≤ bi ∀i ∈ {1, . . . , n}

tj ≥ 0 ∀j ∈ {1, . . . , p}

The restricted master problem is identical to the master problem, but it does not contain all the columns(i.e., all the groups). Hence, p is just the number of columns in the restricted master problem at the currentiteration of the column generation algorithm. Since determining if the problem is feasible (i.e., deciding if thereexists a valid group) is a NP-complete problem [6], we initially put a single non-valid group (p = 1) defined bySi,1 = 0 for all i ∈ {1, . . . , gn + σn} with the constraint t1 = 0 (otherwise the problem is unbounded). Thus,the first time the subproblem is solved, it is for finding a valid group, or for proving that none exists, which isequivalent to showing that the master problem is infeasible. Such a situation may occur if a target cannot becovered by any sensor, or if a unique sensor can cover two targets, but with two different sensing directions.

3.2 Subproblem

3.2.1 ILP formulation

The subproblem consists in generating the most attractive group Sp+1 for the restricted master problem. It

maximizes the reduced cost of the corresponding group, which is 1−n∑

i=1

(

σi∑

q=1

Sgi+q,p+1

)

yi. For Sp+1 to be a

valid group, each sensor should have at most one sensing direction (none if the sensor is not in Sp+1), and eachtarget should be covered by at least one sensor (for all k in {1, . . . ,m}, Ck is the set of all indexes h = gi + qsuch that sensor i covers target k with sensing direction Θi,q). Finally, we add the valid inequality enforcingthat any non-dominated group should count at most m sensors. Hence the subproblem can be stated as thefollowing integer linear program.

6

Maximize 1−n∑

i=1

(

σi∑

q=1

Sgi+q,p+1

)

yi

σi∑

q=1

Sgi+q,p+1 ≤ 1 ∀i ∈ {1, . . . , n}

h∈Ck

Sh,p+1 ≥ 1 ∀k ∈ {1, . . . ,m}

n∑

i=1

σi∑

q=1

Sgi+q,p+1 ≤ m

Sgi+q,p+1 ∈ {0, 1} ∀i ∈ {1, . . . , n}, ∀q ∈ {1, . . . , σi}

Every time the subproblem generates a group with a strictly positive reduced cost, p is incremented by one,the corresponding column is added to the restricted master problem, and it is resolved by taking advantage ofthe optimal basic solution of the previous iteration, which is still feasible with the introduction of a new column.

One could consider strengthening the formulation by preventing supersets of previously enumerated groupsto appear again, by enforcing additional valid inequalities as in [7]. However, this is not helpful here. Indeed,as the column generation algorithm progresses, the number of strictly positive dual variables increases (notethat yi ≥ 0 for all i ∈ {1, . . . , n}), so most of the supersets of previously enumerated groups have a strictlynegative reduced cost (others just have a zero reduced cost), hence explicitly attempting to cut them off isuseless because they are not attractive.

3.2.2 Heuristic algorithm

Since the subproblem is a hard combinatorial optimization problem, it is desirable to address it using a heuristicmethod. We have devised a genetic algorithm for solving the subproblem. In comparison to the ILP approach,a genetic algorithm is not only faster, but also returns more than just one attractive group (column) at theend of the search. As mentioned already, the subproblem is first addressed with the genetic algorithm (GA). Ifthe GA fails to find any attractive group, two more attempts are made with the GA to find attractive groupsby restarting it afresh. Only when all three runs of the GA fail to find any attractive group, we resort to theILP approach for solving the subproblem. If the ILP approach finds an attractive group then this means thatthe GA got trapped in a local optimum. If the ILP approach also fails to find any attractive group then thismeans that no attractive group exists, which in turn means that current restricted master problem solution isoptimal for the master problem. Therefore, the ILP approach is used only to escape from local optima or toprove the optimality of the current master problem solution. Most often, the GA finds attractive groups andthe ILP approach is used only sparingly. As a result, whole process gets speed-up without compromising theoptimality of the solution obtained.

Chromosome representation Each chromosome represents a group, i.e., a potential solution to the sub-problem. We have encoded a chromosome by an integer vector of length n. A value of q ∈ {1, . . . , σi} at theith position of a chromosome indicates that sensor i is in the group represented by that chromosome with Θi,q

as its sensing direction, whereas a 0 at the ith position indicates that sensor i is not in the group. Here, groupsare encoded in a way that is entirely different from the way they are encoded in the master problem. Ease ofuse and efficiency considerations are behind this choice. In comparison to the encoding scheme used in masterproblem, our genetic operators (crossover and mutation) can be applied more easily with the encoding schemeused here. Moreover, it leads to a shorter chromosome length of n, whereas the encoding scheme used in masterproblem leads to a chromosome length of

∑n

i=1σi. Chromosome length has a significant impact on execution

time of a genetic algorithm. To compensate for difference in encodings, whenever a group is passed to themaster problem, it is transformed as per the encoding scheme used for the master problem.

Those two encodings are illustrated with the following example for LM-CDS. There are n = 5 sensors, eachof them has a number of non-dominated directions: σ =

[

3 4 2 3 2]

. Suppose that group S1 is suchthat sensors 2 and 4 are active and used in their third and first directions respectively. This group is representedas the following vector in the master problem:

S1 =[

0 0 0 0 0 1 0 0 0 1 0 0 0 0]⊤

The corresponding chromosome is[

0 3 0 1 0]

.

Fitness Fitness of a group is determined using a primary and a secondary fitness functions. The objectivefunction of the subproblem and the number of sensors in the group are respectively used as the primary andsecondary fitness functions. A group is considered to be more fit than the other, if either its primary fitness

7

function value is larger than the other or the primary fitness function values are equal, but it has smaller numberof sensors than the other. The reason behind the use of two fitness functions is that many groups can have thesame value for the primary fitness function.

Selection Two parents for crossover are selected using probabilistic binary tournament selection method. Aparent is selected in this method by picking two chromosomes uniformly at random from the current populationand comparing their fitness. The chromosome with better fitness is selected to be a parent with probability πbt,otherwise the chromosome with worse fitness is selected. The second parent is selected in a similar manner.

Crossover and mutation operators A child chromosome is generated via uniform crossover operator fromthe two selected parents. In uniform crossover operator, each position of child chromosome is copied from thecorresponding position of one of the two parents. For each position, one of the two parents is selected uniformlyat random and the value at the corresponding position in the selected parent is copied to the child. Algorithm2 provides the pseudo-code of the crossover operator where u01 is a uniform variate in [0, 1].

for i = 1 to n do

// Generating a child C from two parents p1 and p2// Ci, p1,i and p2,i respectively refer to ith position of C, p1 and p2if u01 ≤ 0.5 then

Ci ← p1,i;else

Ci ← p2,i;end

end

Algorithm 2: Pseudo-code of crossover operator

The child chromosome generated through crossover has to undergo mutation. The mutation operator con-siders each position of child chromosome one-by-one, and checks whether it is zero or not. If a position, say i,is non-zero, then mutation operator resets this position to zero with probability πm. If it is zero, then, withprobability πm mutation operator generates a random number between zero and σi and resets this position tothe generated random number. It has to be noted that replacing a non-zero value at position i with a zero cor-responds to deleting the sensor i from the group whereas replacing a zero at position i with some random valuebetween one and σi corresponds to inserting the sensor i into the group with some randomly chosen direction asits sensing direction. Algorithm 3 provides the pseudo-code of the mutation operator where random(0, . . . , σi)is a function that randomly returns an integer in [0, σi].

for i = 1 to n do

// C is the solution to be mutated

if u01 ≤ πm then

if Ci > 0 then

Ci ← 0;else

Ci ← random(0, . . . , σi);end

end

end

Algorithm 3: Pseudo-code of mutation operator

Since our genetic operators (crossover and mutation) do not ensure the validity of the generated child, arepair operator, which is described next, is used to transform the child into a valid group.

Repair operator The repair operator first transforms the child into a valid group and then into a non-dominated group.

In order to transform the child into a valid group, each uncovered target is considered one-by-one in somerandom order and an attempt is made to add a new sensor to the child so that the target under considerationis covered by at least one of the directions of the newly added sensor and primary fitness function value isreduced by the least amount. If such a sensor is found then it is added to the child with a randomly chosensensing direction from several directions that can cover the target in question and the coverage information of

8

all affected targets are updated. If such a sensor does not exist, then to cover the target in question, we haveto change the sensing direction of one of the sensors already present in the child. The targets needing suchadjustments are placed in a list and processed separately after all uncovered targets are considered once.

Targets belonging to the list of uncovered targets are processed one-by-one in an iterative manner. Duringeach iteration a target, say k, is selected randomly from the list and a sensor i that can cover k is also selectedrandomly from the set of all sensors that can cover k. Obviously, sensor i already belongs to the child, but hasa sensing direction that cannot cover target k. The sensing direction of i is altered now so that it can covertarget k. If several directions of i can cover k then one such direction is selected randomly and the coverageinformation of all targets affected are updated. Target k as well as all other uncovered targets which are nowcovered by the new sensing direction of i are deleted from the list of uncovered targets. However, some newtargets may now become uncovered because of change in sensing direction of i. These newly uncovered targetsare added to the list of uncovered targets and processed in an analogous manner except for one difference. Sincethese targets could potentially be covered by sensors not present in the child, therefore, whenever such a targetis selected, a check is done to find whether there exists a sensor i′ that is not already present in the child andthat can cover this target (ties are broken arbitrarily). If it is so, then i′ is added to the child with a sensingdirection that can cover the target in question (ties are broken arbitrarily) and the coverage information of allthe affected targets are updated. Otherwise, the target is processed as described previously. The whole processis repeated until the list of uncovered targets becomes empty.

Once a child becomes valid, it is transformed into a non-dominated group in an iterative manner by deletingthose sensors from the child all of whose covered targets are also covered by other sensors belonging to the child.During each iteration, we compute the set Ψr of those sensors belonging to the child, all of whose targets areredundantly covered. Then from Ψr, a sensor i′ is selected randomly and removed from the child. The coverageinformation of all the affected targets are updated. This process is repeated till Ψr becomes empty. Algorithm4 presents the pseudo-code of repair operator.

Replacement policy Our genetic algorithm uses the steady-state population replacement model [8] instead ofthe commonly used generational model. Unlike generational replacement, where during each generation wholeparent population is replaced with same number of newly produced children, in the steady-state populationreplacement method a single child is produced in each generation and it replaces a less fit member of the pop-ulation. In comparison to the generational method, the steady-state population replacement method generallyfinds better solutions faster because of always retaining the best solutions in the population and the immediateavailability of the child for further selection and reproduction. In addition, in steady-state population replace-ment method, we can easily prevent the occurrence of multiple copies of the same individuals in the population.In the generational approach, multiple copies of the highly fit individuals may exist in the population. Withinfew generations, these highly fit individuals can take over the whole population thereby making the crossovercompletely ineffective. Therefore, mutation becomes the sole way to improve solution quality and as a result,solution quality, if at all improves, improves very slowly. This situation is called premature convergence. In thesteady-state approach, the child can be compared with existing population members, and, if it is found to beidentical to any existing population member then it is discarded. In this way multiple copies of same individualsare avoided in the population and the problem of premature convergence is averted.

Our genetic algorithm follows the policy of discarding the newly generated child in case it is found to beidentical to any existing population member, otherwise newly generated child always replaces the worst memberof the population irrespective of its own fitness.

Initial population generation A two stage procedure is used to generate each member of the initial popu-lation. The first stage starts by making a decision regarding choosing some sensors using a greedy policy in thisstage or choosing all sensors in a completely random fashion while generating a chromosome. This decision isgoverned by parameter πα ∈ [0, 1]. With probability πα, the probability of greedy choice πβ is set to a non-zerovalue, otherwise it is set to zero. Once this decision is made, an iterative process starts. Initially all targetsbelong to a list of uncovered targets. During each iteration an uncovered target is chosen randomly from thislist and a check is made to determine whether this target can be covered by a sensor not yet included in thechromosome. If there are more than one such sensors, then from these sensors, with probability πβ , a sensoris added to the chromosome whose inclusion leads to the smallest reduction in the value of the primary fitnessfunction, otherwise a sensor is chosen randomly and added to the chromosome. If more than one direction ofthe newly added sensor can cover the target in question then one such direction is chosen randomly. If no sensorexists that can cover the target in question then this means that the sensing direction of a sensor already presentin the chromosome needs to be changed to cover this target. In this case, a sensor which is already present inthe chromosome and can cover the target in question is selected randomly and its sensing direction is randomlyset to one of the directions that can cover it. After the target in question is covered, the coverage informationof all affected targets are updated. The targets in question along with all previously uncovered targets which

9

// C is the solution to be repaired

// C is first transformed into a valid group

UCT ← ∅;T ← Set of targets not covered by the work directions of sensors ∈ C;while T 6= ∅ do

Randomly select a target k ∈ T ;S ← Set of sensors /∈ C that can cover k;if S 6= ∅ then

// yi is the dual variable associated with sensor ii′ ← argmin

i∈S

(yi);

Randomly choose a direction d of sensor i′ among all directions that can cover k;Ci′ ← d;Remove from T all targets which are covered by direction d of sensor i′;

else

Add k to UCT ;Remove k from T ;

end

end

forall the k ∈ UCT do

Flag(k)← false;end

forall the k /∈ UCT do

Flag(k)← true;end

while UCT 6= ∅ doRandomly select a target k ∈ UCT ;if Flag(k) then

S ← Set of sensors /∈ C that can cover k;if S 6= ∅ then

Randomly choose a sensor i′ ∈ S;Randomly choose a direction d of i′ among all directions that can cover k;Ci′ ← d;Remove from UCT all targets which are covered by direction d of i′;

else

Flag(k)← false;end

end

if not Flag(k) thenRandomly choose a sensor i among all sensors that can cover k;Randomly choose a direction d of i among all directions that can cover k;Ci ← d;Remove from UCT all targets which are covered by direction d of i;Add to UCT all targets which became uncovered due to change in work direction of i;

end

end

// C is now transformed into a non-dominated group

Ψr ← Set of those sensors ∈ C all of their targets are redundantly covered;while Ψr 6= ∅ do

Randomly choose a sensor i′ ∈ Ψr;Ci′ ← 0;Re-compute Ψr;

end

Algorithm 4: Pseudo-code of repair operator

10

are now covered are deleted from the list of uncovered targets and any target which becomes uncovered now isadded to the list of uncovered targets and another iteration begins. This process is repeated until the list ofuncovered targets becomes empty, i.e., all targets are covered. The second stage transforms the chromosomeinto a non-dominated group in the same manner as in the repair operator. Algorithm 5 provides the pseudo-codefor generating a member of initial population. When the problem is not feasible, i.e., no valid group exists,our initial solution generation algorithm may go into an infinite loop. To prevent that we have utilized a globalvariable NUM ATM which keeps track of the number of times the work directions of sensors already present in thesolution got changed. If the value of NUM ATM exceeds the value of a parameter MAX ATM, we immediately stopthe initial population generation process and terminate the genetic algorithm.

// C is the new initial solution to be generated

// First stage

if u01 ≤ πα then

πβ ← a non-zero value ∈ (0, 1];else

πβ ← 0;end

T ← Set of all targets;NUM ATM ← 0; // NUM ATM is a global variable

for i = 1 to n do

Ci ← 0;end

while T 6= ∅ and NUM ATM ≤ MAX ATM do

Randomly select a target k ∈ T ;S ← Set of sensors /∈ C that can cover k;if S 6= ∅ then

if u01 ≤ πβ then

i′ ← argmini∈S

(yi);

else

Randomly choose a sensor i′ ∈ S;end

Randomly choose a direction d of i′ among all directions that can cover k;Ci′ ← d;Remove from T all targets which are covered by direction d of i′;

else

Randomly choose a sensor i among all sensors that can cover k;Randomly choose a direction d of i among all directions that can cover k;Ci ← d;Remove from T all targets which are covered by direction d of i;Add to T all targets which became uncovered due to change in work direction of i;NUM ATM ← NUM ATM + 1;

end

end

if NUM ATM > MAX ATM then

Terminate initial population generation process;end

// Second stage transforms C into a non-dominated group in a manner exactly similar to

repair procedure and hence no pseudo code is provided here

Algorithm 5: Pseudo-code for generating an initial solution

Each newly generated chromosome is compared with the population members generated so far, and, if it isfound to be identical to one of them then it is discarded, otherwise it is included in the initial population.

This procedure is repeated until the desired number of distinct population members are generated.

Other features If the genetic algorithm finds an attractive group then MAX NUM GROUPS best attractive groupsor all attractive groups in case number of attractive groups are less than MAX NUM GROUPS are passed to themaster problem in each iteration of the column generation algorithm. If the genetic algorithm fails to find evenone attractive group then two more attempts are made by starting the genetic algorithm afresh before resortingto the ILP based approach. Our genetic algorithm terminates when the fitness of the best solution does not

11

improve over MAX NUM IT consecutive iterations.The pseudo-code of our genetic algorithm is given in Algorithm 6 where unique(C) is a function that checks

whether generated child C is unique with respect to current population members or not. If C is unique itreturns true otherwise it returns false. evaluate(C) is another function that evaluates the fitness of C in termsof primary and secondary fitness functions.

GArun ← 0;NUM GROUPS RETURNED ← 0;while GArun ≤ 2 do

Generate initial population;if NUM ATM > MAX ATM then

break;end

BEST SOL← best solution in initial population;while termination condition remain unsatisfied do

Select two parents p1 and p2 using binary tournament selection;C ← crossover(p1, p2);C ← mutate(C);C ← repair(C);evaluate(C);if unique(C) then

Include C in the population replacing the worst member;if C is better than BEST SOL then

BEST SOL← C;end

end

end

if BEST SOL is an attractive group then

NUM ATT GROUPS ← number of attractive groups in the current population;NUM GROUPS RETURNED ← min(MAX NUM GROUPS, NUM ATT GROUPS);break;

else

GArun ← GArun + 1;end

end

Return NUM GROUPS RETURNED best attractive groups;

Algorithm 6: Pseudo-code of genetic algorithm

4 Computational results

In order to compare LM-PDS and LM-CDS in terms of solution quality and computational time, the columngeneration algorithm introduced in the previous section is used to address both problems on the same set ofinstances.

We have considered four different number of sensors in the network: n ∈ {50, 100, 200, 400}. The corre-sponding number of targets is m ∈ {30, 60, 120, 240}: thus we maintain the same ratio between n and m, whichallows to measure the effect of the problem size. Indeed the relative variations of n and m are less relevant inthis work: if the number of targets increases for a fixed n, the network lifetime can only decrease (the problemmay also become unfeasible, especially for small sensing angles). If the number of targets gets sparse for a fixedn, then many sensors become useless as they do not cover any target, which leads to a smaller (and hence easier)problem instance with an even lower n

mratio. The current ratio is 60%, which is reasonably large, given that in

practice, the number of sensors is always larger than the number of targets [19]. Sensors and targets coordinatesare generated randomly in a 500× 500 area, and the sensing range is Rs = 150 as in [19]. In addition, we haveconsidered three different sensing angles ϕ ∈ { 2π

3, π2, π3}. They are given in decreasing order because the smaller

the directional angle, the more difficult the problem is. A grand total of sixty instances have been addressed bygenerating five instances for all (n, ϕ) pair.

The computer used to produce all the computational results is powered by an Intel Xeon Processor at 2.8GHzwith 8GB RAM, running Microsoft Windows 7. All linear programs and integer linear programs are addressedusing the GNU Linear Programming Kit (GLPK), and all algorithms are implemented in C.

12

4.1 GA settings and benefits

The genetic algorithm uses a population of min(n, 50) individuals. Two different values of πbt are used inprobabilistic binary tournament selection method to select the two parents. The first parent is selected withπbt = 0.9, whereas the second parent is selected with probability πbt = 0.8. Mutation probability πm is set to0.05. While generating an initial population member, the probability πα, with which the partial greedy policyis used in sensor selection, is set to 0.34. If partial greedy policy is used in generating an initial populationmember then sensors are selected via the greedy policy with probability πβ = 0.4. MAX ATM is set to 2m, i.e.,we terminate the initial population generation process if a solution cannot be generated even after changinga total of 2m work directions. The maximum number of best attractive groups MAX NUM GROUPS that thegenetic algorithm can pass to the master problem is set to 10. As mentioned already in the previous section, thegenetic algorithm terminates when the fitness of the best solution does not improve over MAX NUM IT consecutiveiterations. However, the value of MAX NUM IT varies over the set iter= {50, 400, 800, 1200, 1600} from one runof the genetic algorithm to the other. If the genetic algorithm returned less than MAX NUM GROUPS attractivecovers in the previous run then MAX NUM IT is set to next higher value, if possible, in iter, otherwise MAX NUM IT

is set to next lower value, if possible, in iter. For instances with 50 or less sensors, MAX NUM IT is set to 50 inthe very first run of the genetic algorithm. For all instances with more than 50 sensors, MAX NUM IT is set to400 in the very first run of the genetic algorithm, and if its value falls below 400, it is reset to 400. There isalso a provision for premature termination of the genetic algorithm in case it fails to find a solution differentfrom current population members in 10 consecutive attempts. All these parameter values have been chosenempirically after large number of trials.

As a preliminary result, Table 1 shows the benefit of combining the genetic algorithm and the ILP formulationfor addressing the subproblem on 6 instances. The first two columns report the number of sensors n and thesensing angle ϕ common to all sensors in radians. Column “ILP alone” reports the CPU time (in seconds) ofthe column generation algorithm where the subproblem is addressed with the ILP formulation alone. Column“ILP+GA” reports the CPU time of the column generation algorithm where the subproblem is addressed withthe combination of GA and ILP introduced in Section 3. The last column reports the speed-up factor, i.e., itindicates how many times ILP+GA is faster in comparison to ILP alone. Lifetimes are not reported in Table1 because they are identical for both approaches. These results show the benefit of using GA for producingattractive and diverse groups quickly and efficiently. CPU time savings are of the same magnitude as for otherproblem variations of lifetime maximization in WSN [15, 16]. In addition, the benefit of using GA grows withthe problem size because the ILP formulation of the subproblem becomes more and more difficult when thenetwork size increases.

Table 1: Benefit of the combination of GA and ILP for addressing the subproblem of LM-CDS

n ϕ ILP alone ILP+GASpeed-upfactor

50

2π3

0.250 0.046 5.435π2

0.312 0.062 5.032π3

0.234 0.063 3.714

100

2π3

1.840 0.281 6.548π2

3.713 0.265 14.011π3

5.273 0.281 18.765

As a consequence, we compare LM-PDS and LM-CDS in terms of number of directions, then in terms ofcomputational effort and lifetime with the column generation algorithm described in Section 3 where GA andILP are combined for addressing the subproblem.

4.2 Number of directions used, and number of sensors per direction

First, the total number of directions for both LM-PDS and LM-CDS, as well as the average number of directionsactually used in the best solutions found are compared. The results are given in Table 2. The first two columnsgive the number of sensors n and the sensing angle ϕ, and each row reports results for five instances having thesame n and ϕ. Column 3 is the number of directions for LM-PDS. Since the first row corresponds to 50 sensorswith 3 directions (because ϕ = 2π

3), there are exactly 50×3 = 150 directions for the five corresponding instances.

Columns 4 and 8 display the average number of directions used in the best solution found (all solutions may notbe optimal, more detail on this matter is given in Section 4.3) for LM-PDS and LM-CDS respectively. Columns5 and 9 display the average rate (in percent) of directions that are used a non-zero amount of time in the bestsolution, for LM-PDS and LM-CDS respectively. Columns 6 and 10 show the average number of sensors pergroup in the best solution found for LM-PDS and LM-CDS respectively.

13

Column 7 is the average number of non-dominated directions computed for LM-CDS. Unlike in LM-PDS,this number depends on the layout of targets and sensors, as non-dominated directions depend on the relativepositions of the targets that can be covered by a sensor. Column 11 displays the average increase (in percent)of the number of directions, when comparing LM-PDS to LM-CDS. Column 12 shows the average increase ofthe number of directions used in the best solution, and column 13 displays the average increase of the numberof sensors per direction used in the best solution.

Table 2: Comparison of LM-PDS and LM-CDS in terms of number of directions and number of sensors perdirection

n ϕ LM-PDS LM-CDS From LM-PDS to LM-CDS

nb. dir.avg. dir.used

avg. dir.used in %

avg. sen.per dir. avg. dir.

avg. dir.used

avg. dir.used in %

avg. sen.per dir.

avg. dir.in %

avg. dir.used in %

avg. sen.per dir. %

50

2π3

150.0 55.6 37.1% 11.2 157.0 61.2 39.0% 8.8 +4.7% +10.1% −22.0%π2

200.0 79.4 39.7% 13.2 165.8 65.2 39.3% 10.1 −17.1% −17.9% −23.3%π3

300.0 81.8 27.3% 14.8 180.0 84.0 46.7% 12.0 −40.0% +2.7% −18.5%

100

2π3

300.0 137.2 45.7% 12.7 599.2 149.2 24.9% 10.1 +99.7% +8.7% −20.2%π2

400.0 143.2 35.8% 15.2 627.6 167.8 26.7% 12.0 +56.9% +17.2% −20.9%π3

600.0 190.2 31.7% 18.5 668.8 173.6 26.0% 14.7 +11.5% −8.7% −20.3%

200

2π3

600.0 386.6 64.4% 15.1 2262.4 645.8 28.5% 13.5 +277.1% +67.0% −10.4%π2

800.0 439.8 55.0% 18.1 2396.6 657.6 27.4% 15.1 +199.6% +49.5% −16.3%π3

1200.0 462.2 38.5% 21.8 2517.8 687.4 27.3% 18.7 +109.8% +48.7% −14.1%

400

2π3

1200.0 809.0 67.4% 15.7 8772.0 1769.6 20.2% 13.8 +631.0% +118.7% −11.6%π2

1600.0 988.2 61.8% 19.7 9197.2 1816.2 19.7% 16.6 +474.8% +83.8% −15.8%π3

2400.0 1238.8 51.6% 25.1 9739.2 2111.6 21.7% 22.1 +305.8% +70.5% −11.7%

Table 2 shows that the number of directions in LM-CDS tends to be much larger than with LM-PDS,especially when ϕ is large. The same trend can be observed, but in a lesser extent, with the number ofdirections used in the best solutions. This might suggest that LM-CDS is more difficult to solve than LM-PDS,as the number of directions to select for building a group is significantly larger. However, this is not the caseas can be seen from the next section. For explaining this counter-intuitive result, we can observe that since thenumber of sensors required for building a valid group is lesser in LM-CDS than in LM-PDS, the subproblem(which is finding an attractive valid group) is easier with LM-CDS than with LM-PDS. The last column of Table2 confirms that the average number of sensors per direction used in the best solution is lesser with LM-CDS.

4.3 Solution quality and computational difficulty

Both LM-PDS and LM-CDS are now compared in terms of number of optimal solutions found, lifetime andcomputational effort. Table 3 reports the results for the sixty instances. Columns 3 and 7 report the numberof instances (out of five) solved to optimality for LM-PDS and LM-CDS respectively. Indeed, the maximumCPU time allotted for solving each instance is set to one hour, so if the optimal solution is not found withinone hour, then the algorithm returns the best lifetime found so far. In that case, the proposed exact algorithmreturns a heuristic solution. Columns 4 and 8 report the average lifetime over the five instances for LM-PDSand LM-CDS respectively, regardless of optimality of the solutions. Columns 5 and 9 report the average CPUtime required for computing the obtained optimal solutions. If none of the five instances could be solved tooptimality, then dnf (did not finish) is displayed. Columns 6 and 10 whose heading is “avg. CPUboth” reportthe average CPU time over instances solved to optimality for both LM-PDS and LM-CDS. Finally, the lasttwo columns show the lifetime increase in average when using non-dominated directions, as well as the CPUtime increase when comparing LM-PDS to LM-CDS. The CPU time comparison is performed only on instancessolved to optimality for both LM-PDS and LM-CDS.

As expected, it can be observed that the problem is more difficult for large instances and small sensing angles.Table 3 also shows that lifetime is 10% to 20% higher with LM-CDS compared to LM-PDS. The largest gainsseem to be obtained for smaller instances. This might be due to the fact that larger instances are characterizedby a higher density of sensors and targets in the 500× 500 area. Thus, targets are covered by a larger numberof sensors, even if sensing directions are not carefully chosen. Consequently, the benefit of using non-dominatedsensing directions might be less visible in this case. The results obtained with n = 100 and n = 200 supportthis interpretation as the benefit of LM-CDS over LM-PDS is much more visible for smaller sensing angles.The instances with n = 400 sensors are much more difficult to solve (only one instance out of 30 is solved tooptimality) so we can hypothesize that after one hour, the algorithm is still quite far away from the optimallifetime because of the tailing-off effect of column generation. Hence, at such an early stage of the search, thebenefit of using non-dominated sensing directions may not be very visible.

14

Table 3: Comparison of the number of optimal solutions, of lifetime and CPU time

n ϕ LM-PDS LM-CDS From LM-PDS to LM-CDS

# opt. avg. LT avg. CPU avg. CPUboth # opt. avg. LT avg. CPU avg. CPUboth avg. LT avg. CPU

50

2π3

5 2.94 0.14 0.14 5 3.60 0.06 0.06 +22.58% −56.91%π2

5 2.91 0.10 0.10 5 3.60 0.12 0.12 +23.75% +18.06%π3

5 2.65 0.17 0.17 5 3.21 0.11 0.11 +20.91% −35.91%

100

2π3

5 5.97 248.13 248.13 5 6.60 1.98 1.98 +10.63% −99.20%π2

5 5.49 87.46 30.49 4 6.35 0.72 0.72 +15.62% −97.63%π3

4 4.82 336.69 0.52 2 5.71 0.36 0.36 +18.39% −31.29%

200

2π3

4 12.93 14.26 14.26 4 13.82 6.09 6.09 +6.88% −57.31%π2

1 11.30 6.05 6.05 3 13.01 15.24 2.71 +15.13% −55.16%π3

0 9.42 dnf - 1 10.95 11.03 - +16.22% -

400

2π3

0 25.90 dnf - 1 29.58 1085.15 - +14.21% -π2

0 20.68 dnf - 0 24.58 dnf - +18.87% -π3

0 16.19 dnf - 0 18.38 dnf - +13.53% -

Whereas the number of optimal solutions found for LM-PDS and LM-CDS is nearly the same, the algorithmgenerally returns an optimal solution to LM-CDS much faster than for LM-PDS. Naturally, this comparison isperformed on easy instances only, as the optimal solution is required for both LM-PDS and LM-CDS. Neverthe-less, the results for difficult instances in terms of solution quality suggest that LM-CDS is solved more efficientlythan LM-PDS as the differences in terms of lifetime remain significant despite network size and density. CPUtime savings are less significant for small sensing angles on those easy instances. It can also be observed thatwhen an instance is solved to optimality, it is processed much faster with smaller values of ϕ. This is typicallythe case of easy instances: an isolated target covered by a small number of sensors is very likely to be responsiblefor the network lifetime, especially when ϕ is small.

The instances for which n = 100 are at the frontier of the cases that can be solved to optimality, and thenumber of solutions solved to optimality with LM-CDS is less than with LM-PDS. This is particularly visible forϕ = π

3. In that case, we also reach the maximum average CPU time for LM-PDS, which suggests that finding

an optimal solution to LM-PDS becomes time consuming because of the tailing-off effect. Even if the numberof optimal solutions found for LM-CDS is lesser, solution quality is still significantly better with LM-CDS.We hypothesize that with LM-PDS, the situation in which lifetime is defined by a set of targets covered by alimited number of directions is more likely to happen than with LM-CDS, where the number of directions ismuch larger as shown in Table 2. Hence, the search for an optimal solution to LM-PDS may be faster whereasthe tailing off effect may be responsible for slower convergence with LM-CDS. When n = 50, this is even morevisible as solving LM-CDS is sometimes longer than solving LM-PDS. However, as n increases, the growth ofcoverage density probably tends to lesser the occurrence of a situation where a restricted set of targets is barelycovered. As the conditions favoring premature convergence of LM-PDS tend to disappear when n increases, thenumber of instances solved to optimality becomes larger with LM-CDS. Naturally, as instance size makes theseproblems more difficult to solve in one hour, the advantage of LM-CDS in terms of number of optimal solutionfound is no longer visible for n = 400.

5 Conclusion

This paper proposes an efficient column generation algorithm that takes advantage of a genetic algorithm forreturning attractive columns, in the case of a lifetime maximization problem arising with directional sensors.After proposing a polynomial-time algorithm for building groups so as to maximize lifetime, numerical resultsshow that LM-PDS is at most as difficult to solve as LM-CDS, whereas lifetime is always in favor of LM-CDS by definition of non-dominated sensing directions. In the case where directional sensors can adjust theirsensing direction freely in the interval [0, 2π), this work suggests to address LM-CDS rather than LM-PDS,as it returns better results at the cost of a comparable computational effort. For addressing larger instances,the proposed algorithm can be turned into a column generation based heuristic by dropping the resort to thesubproblem ILP formulation, and by stopping the search whenever GA fails to find any attractive group. Otherproblem variations, in particular those for which some connectivity properties are required for the sensors thatbelong to the same groups may also be addressed using column generation based approaches. Again, the use ofmetaheuristics may be very efficient in returning attractive groups efficiently.

15

References

[1] J. Ai and A.A. Abouzeid. Coverage by directional sensors in randomly deployed wireless sensor networks.Journal of Combinatorial Optimization, 11:21–41, 2006.

[2] I.F. Akylidiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci. A survey on sensor networks. IEEECommunication Magazine, 40(8):102–114, 2002.

[3] A. Alfieri, A. Bianco, P. Brandimarte, and C.F. Chiasserini. Maximizing system lifetime in wireless sensornetworks. European Journal of Operational Research, 181:390–402, 2007.

[4] D. Aloise, S. Cafieri, G. Caporossi, P. Hansen, S. Perron, and L. Liberti. Column generation algorithmsfor exact modularity maximization in networks. Physical Review E, 82:046112–9, 2010.

[5] Y. Cai, W. Lou, M. Li, and X.-Y. Li. Target oriented scheduling in directional sensor networks. InProceedings of the IEEE INFOCOM 2007, pages 1550–1558, May 2007.

[6] Y. Cai, W. Lou, M. Li, and X.-Y. Li. Energy efficient target-oriented scheduling in directional sensornetworks. IEEE Transactions on Computers, 58:1259–1274, 2009.

[7] R. Cerulli, R. De Donato, and A. Raiconi. Exact and heuristic methods to maximize network lifetimein wireless sensor networks with adjustable sensing ranges. European Journal of Operational Research,220:58–66, 2012.

[8] L. Davis. Handbook of Genetic Algorithms. Van Nostrand Reinhold, New York, 1991.

[9] J. Djugash, S. Singh, G. Kantor, and W. Zhang. Range-only slam for robots operating cooperatively withsensor networks. In Proceedings of IEEE International Conference on Robotics and Automation, 2006.

[10] W. Feng, E. Kaiser, W.C. Feng, and M.L. Baillif. Panoptes: Scalable low-power video sensor networkingtechnologies. ACM Transactions on Multimedia Computing, Communication and Applications, 1:151–167,2005.

[11] Y. Gu, H. Liu, and B. Zhao. Target coverage with QoS requirements in wireless sensor networks. InProceedings of the 2007 International Conference on Intelligent Pervasive Computing, pages 35–38. IEEEComputer Society, October 2007.

[12] B. Latre, B. Braem, I. Moerman, C. Blondia, and P. Demeester. A survey on wireless body area networks.Wireless Networks, 17:1–18, 2011.

[13] M.E. Lubbecke and J. Desrosiers. Selected topics in column generation. Operations Research, 53:1007–1023,2005.

[14] M. Rahimi, R. Baer, O.I. Iroezi, J.C. Garcia, J. Warrior, D. Estrin, and M. Srivastava. Cyclops: In situimage sensing and interpretation in wireless sensor networks. In Proceedings of ACM Conference EmbeddedNetworked Sensor Systems (SenSys), 2005.

[15] A. Rossi, A. Singh, and M. Sevaux. A column generation algorithm for sensor coverage scheduling underbandwidth constraints. Networks, 60:141–154, 2012.

[16] A. Rossi, A. Singh, and M. Sevaux. An exact approach for maximizing the lifetime of sensor networks withadjustable sensing ranges. Computers & Operations Research, 39:3166–3176, 2012.

[17] S. Slijepcevic and M. Potkonjak. Power efficient organization of wireless sensor networks. In IEEE Inter-national Conference on Communications, volume 2, pages 472–476, June 2001.

[18] R. Szewczyk, A. Mainwaring, J. Polastre, J. Anderson, and D. Culler. An analysis of a large scale habi-tat monitoring application. In Proceedings of ACM Conference on Embedded Networked Sensor Systems(SenSys), 2004.

[19] C. Wang, M.T. Thai, Y. Li, F. Wang, and W. Wu. Optimization scheme for sensor coverage schedulingwith bandwidth constraints. Optimization Letters, 3:63–75, 2009.

16