Target Q-Coverage Problem with Bounded Service Delay in Directional Sensor Networks

Maximizing network lifetime is an important objective for the target-coverage problem. With practicable manufacture and cost reduction, directional sensor has been widely used in wireless sensor networks to save energy. In this paper, we address the target Q-coverage (TQC) problem to prolong the network lifetime with bounded service delay constraint in directional sensor networks. We propose a protocol to find a collection of coverage sets that satisfy the coverage quality requirement and the bounded service delay constraint, where the target in each coverage set may not be served continuously but can be served with tolerant service delay. By steering some sensors' directional antennas, our protocol could deal with the changes of network topology or monitoring tasks. Simulation results show that the performance of our protocol is close to the upper bound of the optimal solution.


Introduction
Wireless sensor networks (WSNs) could be applied to fire detection, battle field surveillance, environmental monitoring, and so on [1]. In these applications, one of the important tasks is to monitor a set of targets and collect the relevant data in the geographical region. Since sensor nodes are often deployed randomly, target coverage, which aims at covering the specified targets by a subset of the deployed sensor nodes, is a fundamental issue for target monitoring. In practical application, the importance of each target is often different, which requires various qualities of coverage.
In other words, targets should be covered with different numbers of sensors to satisfy their QoS requirements, this is called target Q-coverage problem. Usually, sensor nodes use omnidirectional antennas to sense the targets. However, directional antennas can switch to a particular direction to transmit farther distances than omnidirectional antennas. With the manufacturing technology improvement and cost reduction, sensors with directional antennas are widely employed in many network models.
There have been a number of works on target coverage problem in directional sensor network [2][3][4][5][6][7]. Most of them assume that there are sufficient sensors deployed such that all targets always can be covered within the network lifetime. However, the assumption may not hold if some working sensors happen to fail or new targets need to be served. Thus, the previous coverage scheduling protocols may be not feasible in such flexible and scalable network environment. To solve the problem, the authors of [8] steer sensors periodically to serve more targets. Since targets may not be covered continuously, a protocol was proposed to minimize the maximum service delay, which determines how fast an interested message can be detected for a target. In their protocol, the network lifetime is not an optimization objective.
In this paper, we address the target Q-coverage problem with maximizing the network lifetime in directional sensor network and design a target coverage schedule to satisfy a bounded service delay. We suppose that at any time, each sensor serves for at most one sector to sense targets. Thus, all targets may not be covered simultaneously. The service delay is defined as the time interval from an event occurring to the event being detected. In target coverage problem, the service delay can be regarded as the tolerant maximal time duration of completing target coverage.
The target Q-coverage problem addressed in this paper is to construct a collection of coverage sets and schedule them 2 International Journal of Distributed Sensor Networks to work alternately to prolong the network lifetime, which satisfies the target coverage requirement under given service delay bound ε. We first model the problem as a mixed-integer programming problem. Then, we present the upper bound of the problem and propose a centralized schedule protocol. Finally, we simulate our algorithm. The simulation results demonstrate that the performance of our algorithm is close to the upper bound of the optimal solution.
The rest of this paper is organized as follows. In Section 2, we briefly present the related works in the literature. Then, we introduce the TQC problem under a service delay bound and prove it is NP-hard in Section 3. In Section 4, we show the formulation of this problem, the upper bound of network lifetime and the definition of sensor weight. Moreover, we present the relationship between the service delay bound and the total sector numbers of a sensor. In Section 5, we propose a centralized protocol to solve this problem. The simulation results presented in Section 6 demonstrate the high performance of our protocols in prolonging the network lifetime. We conclude this paper in Section 7.

Related Works
Target coverage is a fundamental problem in wireless sensor networks for environment monitoring and surveillance purposes. To maximize the lifetime of a network, a large number of energy-efficient scheduling algorithms have been proposed for omnidirectional sensor networks [9][10][11][12]. These works study the 1-coverage, k-coverage, connected coverage, and multiattributes coverage. By organizing sensors into a number of subsets and elaborately managing the duty cycle of subsets in which some sensor nodes are scheduled to sleep or enter a power saving mode while the remaining active nodes keep working, significant energy savings can be achieved.
There are also many strategies to deal with target coverage problem for directional sensor networks [2][3][4][5][6][7]. The authors of [2] study the partial coverage with directional antenna and firstly propose the maximum coverage with minimum sensors (MCMSs) problem, in which coverage, in terms of the number of targets to be covered, is maximized whereas the number of sensors to be activated is minimized. The authors of [3] address the multiple directional cover sets (MDCSs) problem by organizing the directions of sensors into a group of nondisjoint cover sets to extend network lifetime. Wang et al. approximate network lifetime for target coverage scheduling problem by randomized approach and genetic algorithm, respectively [4,6]. In [5], a weighted centralized greedy algorithm (WCGA) is proposed to improve the coverage rate for targets. In [7], the authors study the target-oriented scheduling in directional sensor networks, where each target has different coverage quality requirement based on the distance.
Since different targets may need different numbers of sensors to cover to satisfy the various sensing quality requirements, the target Q-coverage problem is first defined in [13], and a column generation-based approach is proposed. In [14,15], a heuristic algorithm and an energy-efficient greedy algorithm are proposed to solve the target Q-coverage problem.
There are some existing works which study how to schedule sensors "on" and "off " in omnidirectional sensor network, such that each target may be covered within a bounded time interval and the sensors would not drain their energy too fast [16][17][18]. Cao et al. [16] propose a distributed protocol to schedule node sleeping which guarantees a bounded-delay sensing coverage while maximizing network lifetime. Gu et al. [17] propose a unified sensing coverage architecture (uSense) to address flexible and efficient target coverage problem by three novel ideas: asymmetric architecture, generic switching, and global scheduling. The authors in [18] present a sleep-wake sensor system based on cyclic cellular automata, which is verified to be highly effective in the case of frequent communication failures and sensor failures. Wang and Cao [8] consider the coverage problem in directional sensor network, where sensors are periodically steered to cover more targets. Since the targets may be not covered continuously, the authors propose a centralized protocol and a distributed protocol to minimize the maximum service delay, respectively. However, it does not take into account the network lifetime. This paper is inspired by the above works and makes a tradeoff between coverage delay and network lifetime in traditional sensor networks. We focus on maximizing network lifetime for target Q-coverage problem with a bounded service delay constraint in directional sensor network.

Network Model and Problem Description
Given a directional sensor network with m targets {a 1 , a 2 , . . . , a m } and n directional sensor {s 1 , s 2 , . . . , s n }. Each sensor has p (p ≥ 2) sectors which are centered at the sensor node with a sensing radius r and the sensing angle θ = 2π/ p. Let d i, j denote the jth sector of the ith sensor, and let S i, j denote the set of targets covered by sector d i, j . Target a l can be covered by sector d i, j , if and only if a l is in the sensing range of sector d i, j . We suppose at any time a sensor can serve for at most one sector.
The tolerant service delay is the time interval from an event occurring at a target to the event being detected by a nearby sensor. It determines how fast an interested message can be detected for a target. In the target coverage problem, the service delay can be regarded as the tolerant time duration of completing a target coverage. In directional sensor network without considering the rotation delay, the service delay depends on two parameters: the number of sectors used by each sensor and the time duration of serving a sector at one time. We give an example to show the service delay in Figure 1, where the time duration of serving a sector at one time is set as 1. There are three full target coverage schedules as follows: 4 , a 6 }. The maximal service delay of the schedule (1) occurs at sensor s 1 which has 3 sectors for serving target. The delay is 3 · 1 = 3. With schedule (2), the maximal service delay is 2. With  schedule (3), the maximal service delay is 3, as sensor s 2 has 3 sectors to serve.
We use ε to denote the service delay. By the above analysis, we can approximate it as the product of the maximal number of the serving sectors of sensors ε and the time duration that a sensor serves each sector w.
Suppose that each sensor has a unified lifetime E if a sensor serves for all the sectors simultaneously. Then if at any time a sensor serves only one sector, the lifetime of the sensor is p · E. We use an integer vector Q = {q 1 , q 2 , . . . , q m } to represent coverage requirements of targets, where q l represents the minimum number of sectors that target a l needs to be covered by.
In the following, we show the definition of the target Qcoverage problem bounded with a service delay ε.
can satisfy the coverage requirement, that is, for each target a l (l = 1, 2, . . . , m), there are at least q l different sectors in D to cover a l , and the number of selected sectors from each sensor cannot exceed ε/w , where w denotes the duration time that a sensor works on each sector. Definition 2. Bounded service delay for target Q-coverage (SDTQC) problem: given m targets and n sensors in an energy-constrained directional sensor network, where each sensor has p sectors, (p ≥ 2). The SDTQC problem is to find a collection of SDQ-covsets, where there are at least q l (q l ≥ 1) different sectors to periodically cover a l target (l = 1, . . . , m), such that the network lifetime is maximized, meanwhile ensure that the time duration for each SDQcovset cannot exceed the service delay bound ε. Here, at any time each sensor serves at most one sector. Now, we show how to calculate the network lifetime. In Figure 1, each sensor has 6 sectors and we suppose the lifetime of each sensor is 2 if a sensor serves for the 6 sectors simultaneously. So if each sensor serves at most one sector at any time, the lifetime of each sensor is 6 × 2 = 12.
Supposing the given service delay bound ε = 2 in Figure 1, the network lifetime is computed as follows.
(1) Suppose w = 1, so the maximal number of sectors that each sensor served in each coverage set is 2/1 = 2. By checking the schedules (1)(2)(3), only schedule (2) satisfies the service delay bound. As each coverage is accomplished in 2 time slots and each sensor serves only one sector each time, the lifetime that each sensor consumes with schedule (2) is 2 for every coverage (each coverage task). So if each sensor can construct 12/2 = 6 coverage sets, then the network lifetime is T 1 = 6 × 2 = 12.

Theorem 3. The SDTQC problem is NP-hard.
Proof. The multiple directional cover sets (MDCSs) problem [3] is a special case of the SDTQC problem. This is because when q l = 1 for each target a l and the delay bound is 0, the SDTQC problem becomes the MDCS problem. Since the MDCS problem is NP-hard [3], the SDTQC problem is NPhard.

The SDTQC Problem
In this section, we first formulate the SDTQC problem into a mixed integer programming problem. Secondly, we show the relationship of the given service delay bound and the number of the sectors used by each sensor in each coverage. Thirdly, we present the upper bound of the network lifetime for the SDTQC problem.  (v) p: the number of sectors for each sensor. The angle of sector is α = 2π/ p.
(vi) E: the initial lifetime of sensor if all its sectors are served together, so the lifetime of a sensor is p · E if only one sector is served at any time.
(ix) a l : the lth target, 1 ≤ l ≤ m. (xiv) Q: targets' coverage requirement. Q = {q 1 , q 2 , . . . , q m }, where q l represents the number of sectors needed to serve for the lth target simultaneously.
(xv) S i, j = {a l | a l is covered by sector d i, j }, which represents the target set covered by sector (xvi) C l = {d i, j | d i, j covers a l }, which represents a set of sectors that can cover target a l , 1 ≤ l ≤ m.
(xviii) t k : the working time allocated to each working sector of each sensor in SDQ-covset D k , k = 1, . . . , K.
(xix) Boolean variable x i, j,k , x i, j,k = 1 if the sector d i, j is in the SDQ-covset D k , otherwise x i, j,k = 0.
The SDTQC problem can be formulated to a mixed integer programming problem as follows: subject to di,j ∈Cl p j=1 where Remarks. Constraint (2) guarantees that each target a l is covered by at least q l sectors in each SDQ-covset D k . Constraint (3) guarantees that for each sensor, the sum of lifetimes costed in all SDQ-covsets cannot exceed its initial lifetime p · E.
Constraint (4) indicates that for each SDQ-covset D k , its working time, which is also its service delay, cannot exceed the given service delay bound ε.
The objective function (1) is to maximize the sum of all SDQ-covsets' lifetime. For each SDQ-covset D k , the lifetime should be t k · max i p j=1 x i, j,k , which is the maximal serving time among all sensors.

The Upper Bound of Network Lifetime.
In this subsection, we present the upper bound of the SDTQC problem.
We know that the maximum lifetime of a sensor network is the smallest lifetime among all sensors. Since the time and the number of serving sectors of each sensor is uncertain, we consider the minimal time of serving each target in the network. Thus, the upper bound of network lifetime is as follows: The maximal number of SDQ-covsets which each sensor can join is ((p · E/(w))). For each target, there are at most |C l | sectors to cover it. So, if we select q l sensors(sectors) to cover target a l each time, there could be (|C l |/q l ) groups of sensors to compose covsets. If we do not consider the service delay, the upper bound of the network lifetime is Given a service delay bound ε for each SDQ-covset D k , the time that SDQ-covset D k completes a coverage is t k · max i p j=1 x i, j,k (the notations of t k and x i, j,k are shown in Section 4.1). Obviously, max k (t k · max i p j=1 x i, j,k ) ≤ ε. Then, all sensor's lifetime for covering target a l to complete the target Q-coverage problem with the service delay bound ε is calculated as follows: Therefore, the upper bound of network lifetime of the target Q-coverage problem with the service delay bound ε is shown in (6).

The Scheduling Protocol
In this section, we first present the sector weight. Secondly, we propose a centralized scheduling protocol based on the sector weight for the SDTQC problem.

The Sector Weight.
In this subsection, we define the weight W s of a sector as: W s = W n + W t + W c , where W n represents the contribution of the sector to the network, W t represents the contribution of the sector to each target covered by the sector, and W c represents the validity of the coverage area by sector.
Let D denote the temporary set of the sectors which have been selected as SDQ-covset at the current serving time, let A denote the temporary set of targets whose requirements have been satisfied by D, and let q l denote the current number of sectors in D, which serve target a l .
The contribution of a sector to network is defined as follows: where |S i, j − A| indicates the number of targets which are covered by sector d i, j and whose coverage requirements are not satisfied by D. |A − A| indicates the number of targets whose coverage requirements are not satisfied. W t is defined as follows: W c is defined as the maximal proportion of the unsatisfied coverage requirement targets in the coverage target set of Thereby, the sector weight is presented as follows: Now, as shown in Figure 2(a), we give an example that constructs target Q-coverage based on the sector weight.
There are 9 targets and 4 sensors, each of which has 4 sectors which are labeled in counterclockwise order and the first one begins with the X(positive)-axis shown in Figure 2(b). We discuss 3 sectors' weights: d 1,2 , d 1,3 , and d 4,2 . The coverage requirements of targets are as follows: q 1 = 1, q 3 = 1, q 4 = 1, q 5 = 2, and q 8 = 1. Suppose the current SDQ-covsets D k = ∅.
(1) We compute the sector weights of d

A Centralized Scheduling Protocol with the Sector Weight.
In the following, based on the sector weight, we propose a centralized scheduling protocol for the SDTQC problem: (the CSSW-SDTQC protocol). The main idea of the CSSW-SDTQC protocol for selecting a SDQ-covset is that each time we choose the sector which has the maximum available lifetime. If there are some sensors with the same available lifetime, we will select the sector with the maximum sector weight. Here, the number of selected sectors from each sensor cannot exceed ε. Then we update the correlated variables and the value of each sector weight. We repeat these steps till we find a SDQ-covsets D K and check whether it is minimal. Then we assign a maximum realizable lifetime t K to the SDQ-covsets. Finally, we repeat this process until the network lifetime cannot be increased.

6
International Journal of Distributed Sensor Networks (1) Let d i denote the selected sector number of sensor s i in the current SDQ-covset D k , S i denote the total sector set of sensor s i and d max denote the maximal sector number from each sensor in the current D k (3) while (each target a j is covered by at least q j available sectors) do Initialize the sector weight of each sector. K + + (6) while A temp / = ∅ do (7) Sort sectors in S temp in descending order based on the number of available lifetime. If some sectors have the same value, give the priority to the sector with the maximal value of the sector weight. (8) Choose the first sector d i, j from the sort set.
Update the sector wight of each sector. The algorithm is formally represented as follows. The input parameters for this algorithm is below: S is the set of sectors, A is the set of targets, E is the initial lifetime of a sensor, Q is the targets' coverage requirement, and the definitions of S i, j , C l , ε, p, and w are described as in Section 4. ε = ε/w . The set S temp records sectors whose corresponding sensors still have residual energy such that these sectors can be used in additional SDQ-covset. The set A temp contains the targets that still need to be covered by the current SDQcovset D K . In Algorithm 1, the step 16 minimizes D K to make sure that there is no redundant sector in it. In step 17, the MAX Lifetime (D K ) is to compute the maximal lifetime of SDQ-covset D K , which is the minimal available lifetime among all sensors. In step 18, we find the maximal value d max by comparing each d i , which is the maximal number of the serving sectors among all sensors, d max is used to compute the maximal service delay of the current SDQ-covset D K to construct a target Q-coverage. Therefore, for each D K , The centralized scheduling protocol returns k SDQcovsets: D 1 , D 2 , . . . , D k and the network lifetime T.

Performance Evaluation
In this section, we will compare our algorithm (CSSW) with the upper bound (UB) of optimal solution in Section 4.2.
6.1. Simulation Setup. In our simulation, we deploy the sensor nodes and targets randomly in a region of 300 m × 300 m area. The initial lifetime of each sensor E is set as 5, and the service delay bound ε is set as 0.5. To evaluate the performance of our protocol under the different situations, we respectively set the service time of each sector w as 0.25, 0.1, and 0.05.
We evaluate the impact of the following three parameters on the performance of our algorithm: the number of sensors N, the number of targets M, and the sensing range of sensor R. The coverage requirement q l of each target is randomly set from 1 to 3. By keeping the service delay bound ε as 0.5, we test our algorithm under the following three cases: (1) w = 0.25, ε = 2, and p = 2, (2) w = 0.1, ε = 5, and p = 5,  Secondly, we change the number of targets and compare the network lifetime of our algorithms with the upper bound. We set the sensing range of sensors (R) as 20, 20, and 30, and randomly deploy 200, 150, and 200 sensors (SN) in the simulation area, respectively. The number of targets is increased from 40 to 80 with a step width of 10. As Figure 4 illustrates, the network lifetime decreases with the number of targets increasing.
Thirdly, we evaluated the impact of sensing range on our algorithm and upper bound. We set the number of sensors as 120, 120 and 180, and the number of targets as 50, 30, 50, respectively. The sensing range is changed from 25 to 45 with an increment of 5. As Figure 5 shows, the network lifetime increases with the sensing range increasing.
According to the results of the above simulations, we find that the smaller the working time of each sector is, the larger  the network lifetime is. These results validate the correctness of our example for the network lifetime in Section 3.
Moreover, from the three figures, we can find two phenomena: (1) when fixing the service delay bound, the smaller the serving time w of each sector is, the closer the gap between our algorithm and the upper bound; (2) with the increasing of the sensor number and the sensing range or the decreasing of the number of targets, the network lifetime of our algorithm is farther away from the upper bound.
The reason for the first phenomenon is as follows: when the serving time of each sector is decreased, the maximal number of sectors that each sensor can use is increased, so that the total lifetime of each sensor is increased and is closer to the upper bound.  For the second phenomenon, when the sensors become denser, each sector can cover more targets, the upper bound gets larger while the network lifetime of our algorithm cannot increase any more, since the selected SDQ-covsets in each round cannot always use the minimal number of sectors.
From the simulation results, we observe that our algorithm is very close to the upper bound, which shows that our algorithm is efficient.

Conclusion
In this paper, we study the bounded service delay for target Q-coverage problem in directional sensor networks. This network model can be used in various applications, especially when the network topology changes or some nodes maybe fail. We rotate some correlative sensors to make them serve the targets periodically. This will prolong the service delay which affects the quality of service. Hence, we study the target Q-coverage problem with a bounded service delay in directional sensor networks. We first formulate the problem into a mixed integer programming problem. A centralized scheduling protocol is proposed to address this problem based on assigning the sectors to weight. At last, we compare our algorithm with the upper bound to evaluate our algorithm's efficiency.