Towards an optimal lifetime in heterogeneous surveillance wireless sensor networks

In this article, we study the coverage problem for heterogeneous wireless sensor networks where different targets need to be covered (sensed) by different types of wireless sensors running at possibly different sampling rates as well as different initial energy reserve. The objective is to maximize network lifetime while fulfilling diversified coverage constraints, i.e., different targets may require different sensing quality in terms of the number of transducers, sampling rate, sensing data rate, etc. The problem is particularly challenging since we need to consider both connectivity and routing requirements. To conquer this combinational complexity, we formulate a lifetime maximization problem, which is general and allows unprecedented diversity in coverage requirements, sampling rates, transmission energy consumption models, communication ranges, and target sensing ranges. Furthermore, to efficiently solve the optimization problem, we propose a column generation based approach, where a column corresponding to a feasible solution; our idea is to find a column with steepest ascent in lifetime, based on which we iteratively search for the solution of the maximum lifetime problem. To speed up the convergence rate, we generate an initial solution through a novel random selection algorithm. Through extensive simulations, we systematically study the effect of sampling rates, transmission energy consumption models, communication ranges, and sensing ranges on the lifetime. Several interesting insights have been revealed.


Introduction
Wireless sensor networks promise to usher in a new era of revolutionary computing and ultimately prove beneficial to areas as diverse as national security, surveillance, environmental monitoring, agriculture, and healthcare [1]. With the ability of interaction between physical world and digital world, wireless sensor networks can help people efficiently gather information and react accordingly, especially in real-time target monitoring applications.
In many real world target monitoring applications like hostile territorial target monitoring [2], because of the diversity in target characteristics, different types (modalities) of sensors like video, audio, temperature, etc., are required. Since targets are intrinsically of different importance or priority, it is natural to have different coverage requirement such as number of covering sensors and sampling rate of each sensor. Moreover, all the sensed data must be transmitted to the sink node for further processing. For example, in a surveillance system deployed for monitoring hostile territorial targets, sensitive targets like nuclear plants may need to be covered by several video sensors (from different angle) and geiger counter sensors (at different positions) and such sensors need to have a high sampling rate, e.g., one image per minute, in order to provide timely data; while other less important targets like a barrack may require only one video sensor with a lower sampling rate like one image every ten minutes but the image quality needs to be high; yet still other types of sensors such as magnetic sensors are needed to monitor other targets. All the sensed data need to be collected by a more powerful base station that performs some data fusion and further transmits the data to some remote destinations through its transceiver. Evidently, a prominent feature of such real world sensor networks is the heterogeneity: different targets are covered by different type and number of sensors running at possibly different sampling rates with various initial energy endowment.
From application point of view, for such heterogenous sensor networks to be functional, it is required that the sink node obtain a desired amount of information in each sampling interval for each specific target. Note that a sensor node usually consists of two functional modules: the target sensing module (i.e., transducer) and the communication module (i.e., radio) that are responsible for target coverage requirement and data gathering requirement, respectively, [1]. Therefore, the application requirement actually implies two essential constraints to the sensor networks, that is, target coverage requirement and data gathering requirement. The target coverage requirement states that each target under monitoring must be covered by a specific number of sensors for each specific type (modality) of sensor, possibly at different data sampling rates. The data gather requirement simply mandates that all the sensed data must be effectively gathered into the sink node for further processing.
In typical applications, sensors are operated by stringently constrained battery, the replenishment of which may not often be feasible. Therefore, the network lifetime of a sensor network, which is defined as the time duration since the launch of the sensor network till either of the above two requirements cannot be met, should be prolonged as much as possible. In this article, we investigate methods to maximize the achievable network lifetime by jointly considering the target coverage requirement and the data gathering requirement. We formulate it as an optimization problem that captures the diversity in coverage requirement and in data sampling rate, the transmission radio power model, and variable communication range and sensing range, etc. To solve the problem, we initially obtain some feasible working patterns using either a random selection approach. Then we apply the column generation method to iteratively obtain new working patterns and improve the network lifetime progressively. We performed extensive simulations to study the respective and combined impacts of the variables that are captured by our formulation. We found that the bottleneck is usually on the sensors around the sink node due to multihop relay in a uniform random sensor node distribution, which confirms to the conclusion in article [3] and that by enabling (even relatively coarsely) transmission range adjustment, the network lifetime can be significantly increased. These findings provide insightful guidance for sensor deployment.
As detailed in Section 2, due to the scarcity of sensor's energy and infeasibility to replenish, there have been many other articles on maximizing the network lifetime subject to different objectives. The key differentiating points of our study are that: -We are studying heterogeneous sensor networks with different types of sensors, diversified target coverage requirements and various sampling rates; -We consider both target coverage and data gathering requirements simultaneously; -We formulate the optimization problem that fulfills the rigorous requirement and also captures different transmission radio power model, and solve the problem with a novel working pattern based column generation approach; and -We systematically evaluate the impacts of different transmission radio power models, variable communication ranges and sensing ranges, and the number of sensors on the network lifetime, and obtain insightful conclusions.
The rest of the article is organized as follows. In the following section, we briefly review some related studies. We describe our system model and problem statement in Section 3 and formally formulate the problem in Section 4. In Section 5, a column generation based approach is proposed. Numerical simulation results are reported in Section 6. Finally, Section 7 concludes the article.

Related work
In this section, we provide more detailed review of related works that try to maximize the network lifetime with considerations of coverage requirement and/or connectivity requirement.

Coverage and connectivity in homogeneous networks
In [4], an efficient method is proposed to extend the sensor network operational time by organizing the sensors into a maximal number of disjoint set covers that are activated successively. They designed a heuristic to solve the maximum disjoint set cover problem. The authors further relaxed the stringent constraint of disjoint set by allowing sensors to participate in multiple sets, and designed two heuristics (one based on linear programming and one greedy) to efficiently solve the maximum set cover problem [5].
Assuming adjustable sensing ranges, the authors tries to maximize the network lifetime under coverage and connectivity constraints via an iterative method, in which two essential steps are involved [6]. In the first step, a virtual backbone is formed to ensure the connectivity and then the sensing range of sensors are adjusted to ensure a full coverage. The residue energy of each sensor is then updated in the second step and the whole procedure is repeated. Slightly different, in [7], the authors proposed a greedy iterative three-step method to address the energyefficient connected coverage problem, where, unlike [6], the coverage requirement is fulfilled in the first step.
A similar coverage scenario is proposed in [8]. The objective is to maximize the network lifetime for k to 1 sensor-target surveillance networks. This study has been further extended in [9] to accommodate the same k to 1 sensor-target problem with an extra routing requirement. They made an assumption: a sensor can watch only one target at a time. Note that this assumption significantly reduces the complexity in solving such kind of target coverage problem. This assumption however may not be suitable for some applications like the multiple targets tracking system [10] or SensorWeb project [11], where heavy load should be distributed with limited number of sensor nodes and a sensor node needs to be in charge of different targets simultaneously. Recently, there is a trend to use the evolutionary scheme to address this coverage issue. For example, a genetic algorithm has been proposed to find the largest number of disjoint sets of sensors with every set being able to completely cover the target area [12]. For the similar problem, in [13], a memetic algorithm has been developed.
Note that the studies mentioned above do not consider the actual energy consumption for data transmission and relay. In [14], the authors exploited sensor spatial redundancy to improve the network lifetime where both the sensing and data transmission energy cost are considered. Our study can be considered as an generalization of [14] in that we allow the sensor networks to be heterogeneous, i.e., different targets need to be covered by different type and number of sensors running at possibly different sampling rates with various initial energy endowment and we also allow different transmission radio power models.
There are also several articles addressing the coverage breach (coverage breach occurs when a subset of sensors fails to cover all targets) problem, which is defined as how to minimize coverage breach while making efficient use of both energy and bandwidth. The problem is somehow similar to our problem since both of them consider the case when some targets lose coverage. But in our problem, every target has a coverage requirement, which is absent in the coverage breach problem. Also note that this coverage breach problem belongs to class NP-complete and only a set of heuristic algorithms have been proposed to address it [15][16][17].
Clearly, previous literatures either focus on heuristic algorithms, which remain difficult to characterize and have no performance guarantee [4][5][6][7]18], or employ a strict constraint to reduce complexity [8,9], which cannot be extended to accommodate the general case. Therefore no theoretical result has been reported yet.
In our recent study [19], we proposed a column generation based approach to optimally solve the target coverage problem. However, we consider only the homogenous scenario, where sensor nodes are all equipped with an identical sensor equipment, e.g., ultrasound [20,21]. In practical surveillance systems, there are often different types of sensor equipments working together to obtain detailed digital descriptions of physical objects [11]. For example, sensors equipped with video chips can obtain the motions of crossroads while we still need sensors with sound chips to help gather sound information to enrich details of some particular monitored targets, i.e., vehicles.

Coverage in heterogeneous networks
In [22], Lee et al. analyzed how heterogenous sensor deployments affect network lifetime and sensing coverage and their impact on the coverage aging process of a sensor network. They mathematically derived expressions for the heterogeneous mixture of devices that optimize the network lifetime with sensing coverage constraint in a single-hop direct communication model, and extended the investigation to multi-hop case through simulations.
Mhatre et al. evaluated a hierarchical network with two types of nodes: normal sensors deployed with intensity l 0 , and more powerful nodes (higher energy and communication capacity) deployed with intensity l 1 . They proved that lifetime is maximized when l 1 scales with the square root of l 0 [23]. This result is compatible with other analytical studies of hierarchical ad hoc network capacity [24].
Our study differs from them in that we consider the coverage and data gathering requirements simultaneously. Also, instead of theoretical proof, we focus on the more practical scheduling solution.
We assume that targets are stationary, there are also some recent studies on how to cache multimedia objects in dynamic environments [25,26].

Problem statement
We consider N sensors of n different types: S = ∪ n i=1 S i (S i denotes the set of type i sensors and |S| = N) deployed for monitoring m targets: R = {r 1 , r 2 , ..., r m }. In this study, the sink node s 0 performs centralized scheduling and coordination among sensor nodes and is therefore assumed to have the coordinates of all sensor nodes and targets, and the sensing and transmission range of each type sensor. Assuming the disk model, we define the network connectivity graph (NCG) and target coverage graph (TCG) as follows: Definition 1. Network connectivity graph. A network connectivity graph is a directed graph NCG = {V, E} with V = S ∪ {s 0 } and E = {l u,v }, where there exists an edge l u,v between two vertices (sensor nodes) s u and s v if node s v is within the transmission range TR i of node s u S i . Note we do not assume symmetry among nodes, i.e., the existence of l u,v does not imply l v,u .
Definition 2. Target coverage graph. A targets coverage graph is a bipartite graph TCG = {S, E', R} where there exists a link L u,k E' if target r k is in the sensing range of node s u , for any s u S and r k R. Note that for nodes s u S i with a sensing range SR i , any target within this range can be covered by s u . In this article, each sensor is assumed to cover at most one target at a time for simplicity.
Clearly, the NCG and TCG are defined with regard to the target sensing module and the communication module of a sensor node, respectively. By defining these two graphs, we have assumed that the target sensing module and the communication modules of a sensor node can work independently. Hence, a sensor node can serve as a relay node by only turning on its radio and leaving its transducer off. This is typically the case in practice for sensor nodes such as Motes.
Target coverage requirement is application specific. In this article, we consider the most general case by allowing different targets to be covered by different type and number of sensors running at different sampling rates. To reflect such diversified coverage requirement, we associate with each target r k a coverage requirement vector Q k = (q 1,k , ..., q n,k ) and a data sampling rate vector θ k = (θ l,k ,..., θ n,k ) that are determined by the application. Formally, we define it as target Q-coverage requirement as follows: Definition 3. Targets Q-coverage requirement. At any given moment, target r k needs to be covered by at least q i,k sensors of type i, and the data generating rate for each (type i) sensor is θ i,k for i = 1,..., n and k = 1,..., m.
Definition 4. Data gathering requirement. The sink node must receive all the sensed data. That is, there exists at least one path, for any active sensor, through which the sensed data can be sent to the sink node, possibly through multi-hop relay.
Note that, the data gathering requirement is more stringent as compared with network connectivity requirement in the sense that the energy consumed for data transmission needs to be considered when performing scheduling. Also, to simplify formulation and analysis, as with in many other studies, we also assume that bandwidth between sensor nodes is large enough for conveying the sensed data and MAC protocol permits one node to relay messages without causing severe contentions or significantly increased delay.
Definition 5. Network lifetime. The network lifetime is defined as the elapsed time since the launch of the sensor networks till the instant that the sink node fails to receive q i,k type i source sensors for any target r k .
With definitions above, the problem under our concern can be formally stated as: Problem statement. Joint targets Q-coverage and data gathering problem. Given a network connectivity graph NCG = {V, E} and a targets coverage graph TCG = {S, E', R}, maximize the network lifetime.
Note that the joint target Q-coverage and data gathering problem is NP-complete because a special case of it corresponds to the problem that is studied and identified as NP-complete in [5].

Mathematical formulations
Our objective is to achieve optimal network lifetime while fulfilling the target Q-coverage and data gathering requirements subject to the energy constraint for every node in heterogeneous wireless sensor networks. If we identify a number of sensor nodes such that they meet the target Q-coverage constraint and can transmit all sensed data to the sink node, possibly by using intermediate relaying nodes, then we call such set of active sensors as a working pattern. All sensors outside the work pattern can enter into sleeping model for maximal energy saving. However, if only one working pattern is used, network lifetime equals to the time duration until the first node dies. However, due to spatial redundancy of sensors, lifetime can be prolonged by switching among different working patterns subject to energy constraints. Note that we assume that through some synchronization technologies implemented in the link layer a sensor can change states smoothly and punctually according to its individual schedule, which implies smooth transition among working patterns.

Working pattern
Formally, a working pattern p (written as p = {e p u , s u ∈ S}) can be represented by a vector with length N, and each element corresponds to the energy consumption rate of a node s u . A zero energy consumption rate implies the node is not active in the pattern p.
To mathematically describe a working pattern p, active source nodes and traffic burden on edges should be taken into account. Let x p u,k and y u,i be the indicator variables that indicate if source node s u is active or not in pattern p and belongs to type i, respectively. That is, Then target Q-coverage requirement can be specified by: Recall that a sensor can cover at most one target at any given time and only sensors capable of covering target r k can be assigned the coverage job, therefore, constraints on source nodes can be represented by: where R u = {r k |r k can be covered by s u ; ∀s u S,r k R}.
Let w p u,v reflects traffic burden on edge l u,v E in pattern p. For a node s u , outgoing traffic equals to incoming traffic (i.e., traffic to be relayed) plus data flow generated by itself if it is a source node. Thus, we have Because all data generated in current pattern must be gathered at the sink node. Therefore, for sink node s 0 , we have: Since the sink node does not transmit any data to any node, we also have: In a pattern p, energy consumption rate (e p u ) for node s u consisting of three possible parts: target sensing, transmitting and receiving. Denote e s i as power consumption rate for sensing, and e t i , e r i as power consumption rates per unit data for transmitting and receiving, for type i source node s u , respectively. Then the e p u can be calculated as:  (9) where e p uS , e p uT , and e p uR are the total energy consumption rates for node s u for sensing, transmitting and receiving during its participation in the pattern p. That is, Note that energy consumption rate for target sensing and transmission can be adjustable for certain type of sensor nodes [1,6]. In this study, we are more concentrated on the impact of transmission energy consumption rate (i.e., communication radio power) on the network lifetime. More specifically, we study three transmission energy consumption models, namely flat model, continuous model, and discrete model, as functions of transmission ranges: where d u,v denotes the distance between nodes s u and s v , f(·) is a continuous function such as a quadratic function, and q(·) is a (nonlinear) quantization function. The flat model means that the transmission power is fixed; the discrete model means that the transmission power can be adjusted among a few predefined transmission levels. As an example, Crossbow's MICAz allows eight communication radio power levels from 0dBm to -25dBm [1]. The continuous model means the sensor can adjust and use just enough transmission power to send data to other nodes. Clearly, it is impractical but can serve as the upper bound of the discrete model.

Problem formulation
Network lifetime can be divided into different time durations dominated by relevant working patterns. Therefore, the joint targets Q-coverage and data gathering problem can be converted to a time-slice assignment problem that maximize the sum of time durations subject to energy constraints across all sensor nodes. That is, and where t p denotes the time duration assigned to a pattern p, and P is the set containing all patterns. Equation (10) is referred to as original optimization problem hereafter.
Given a priori network connectivity graph and targets coverage graph, the original optimization problem is actually a standard linear programming (LP) problem and can be solved in O(|P| 3 ) using Ye's algorithm [27]. However, due to combinatorial nature, the overall pattern set will be extremely large even for a moderate network size. Therefore it is impossible to enumerate all patterns within a reasonable time. To handle such complexity, we adopt a column generation based approach to reformulate and solve the original optimization problem, as detailed in following section.

Column generation
Column generation (CG) is a general purpose framework which has been often proposed either as a computationally efficient alternative to standard integer optimization methods or as a modeling tool when a direct approach is infeasible [28]. In our case, columns correspond to patterns, and the column generation based approach helps to reduce the complexity in constructing the whole set of patterns, by effectively selecting columns that make improvements to the optimization. First, it decomposes the original problem into a master problem and a corresponding sub problem. The master problem starts with columns named initial basic feasible solutions (BFS) and decides the length of time interval a pattern is used, subject to energy constraint for each node. Using the optimal dual variables of energy constraints, the sub problem is brought up to check whether current solution is optimal, if not, solving the sub problem will generate a new pattern that will further improve current solution. Then, this pattern (column) is added to current BFS and the master problem is recalculated based on the enlarged BFS. Hence, the procedure iterates between the master and sub problem and does not stop until the master problem contains all patterns that contributes to the optimal solution of the original problem.

The initial basic feasible solutions
The CG based approach works in the feasible domain and requires some initial basic feasible solutions to start with. The effect of this approach can be enhanced by the quality of the initial BFS. Therefore, to achieve a fast converge speed, it is important to develop methods to obtain a good initial BFS. In this article, we propose a randomized algorithm to generate initial BFS.
Algorithm 1: Random selection algorithm. Input: NCG, TCG, TH and Coverage Constraints Output: Initial Patterns begin j = 0; BFS = j; while j <TH do for k = 1;k < = m;k + + do if there are more than q ik uncolored sensors in U ik then randomly color q i,k sensors in U i,k ; else break; if k==m then apply Shortest Path Algorithm to s 0 for colored sensors; color nodes on those paths; form a pattern p using all colored nodes; if p does not exist in BFS then add p into BFS; j + +; uncolor all sensors end

Random selection algorithm
The proposed random selection algorithm (RSA) is presented in Algorithm 1. Note that under the NCG assumption, the shortest path routing algorithm (e.g., Dijkstra algorithm) is guaranteed to succeed since at this stage we only need to find a pattern that fulfills the coverage and connectivity requirements. We do not consider if the residual energy of selected sensors are enough to transmit the data to the sink, i.e., fulfill the data gathering requirement. In fact, if or not or how long the pattern will be used is determined by CG at a later time where the residual energy of each nodes are examined against potential task. Intuitively, the more patterns the initial BFS contains, the faster this CG approach converges. Thus, it is preferable to apply RSA to generate multiple initial working patterns.

The master and sub problem
Assume we have an initial BFS P 0 derived from methods described in the above section, we can reformulate the original optimization problem as a Master problem: The master problem is a classical LP problem and can be solved easily with standard simplex algorithm. As stated before, after solving the master problem, we should verify its optimality and possibly select a new pattern to join in the current BFS. DenoteB u as the optimal dual variables for the energy constraint (14) in the master problem, the reduced cost ζ p for the column corresponding to working pattern p is then: Clearly, we want to select the column ζ * p that results in the maximum non-negative cost reduction and join it into the current BFS, i.e., P 0 = P 0 ∪ ζ * p , where ζ * p is obtained by solving the Sub problem: subject to constraints in Equation (1) through (9). If the solution to the subproblem results in a negative reduced cost, then the previous value from the master problem is already optimal to the original problem and CG procedure terminates. Otherwise, master problem is re-calculated with the new BFS, and the whole procedure is repeated.

An example
As shown in Figure 1, there are three homogenous sensors covering two targets. The coverage requirements of targets and initial energy of sensors are also listed in the figure. The only sink can directly communicate with all three sensors. For simplicity, we normalize energy consumption rate (per data unit) for sensing, transmitting to be 1, respectively, which seems reasonable according to fact sheets from [1].
We use CG to solve this example and the optimal lifetime (i.e., 50) has been found in 2 iterations. The details are concluded in Table 1 and Figure 1. First, RSA randomly generates the initial BFS containing pattern p 1 . In iteration 1, lifetime achieved is 25 by the Master formulation, optimal dural variables {B 1 ,B 2 ,B 3 } = {0.00, 0.00, 0.50} , and the Sub problem tells us that the maximum reduced cost equals to 1.00 and the corresponding coverage pattern is p 2 , which means that there is still some room for further improvement if we add p 2 into current BFS. Therefore, in iteration 2, lifetime achieved by the Master formulation using both p 1 and p 2 is 50 and {B 1 ,B 2 ,B 3 } = {0.50, 0.00, 0.50} . At this time, the Sub problem outputs 0.00 and validate the optimality of current solution.

Termination criteria
The convergence speed of CG based approach is a critical concern. According to observations through numerous experiments, in most cases, the termination criterion of negative reduced cost given by subproblem works efficiently; however in certain cases, the proposed approach will keep on iterating with a very small improvement in the objective function of the master problem. To speed up, we propose another termination criterion: monitor the improvement of each iteration, and if the improvement is marginal (e.g., < 1%) for consecutive TH times, terminate the CG procedure.
The CG based approach with improved termination procedure is presented in Figure 2 where T h represents network lifetime achieved in hth iteration. In hth iteration, the improvement of network lifetime is calculated as T h -T h-1 . If the ratio of this improvement over current lifetime T h is smaller than a predefined margin H, e.g., otherwise, it is reset to 0. When CT >TH, the whole CG procedure is terminated. The inherent reason for using this improved termination criteria lies in the fact that if the CG algorithm has not been able to slightly improve the network lifetime for a long time, it is probably because the CG algorithm comes closely to the optimal solution. But due to the heavy-tailed phenomena [29,30], CG would need a quite long time to reach this optimal value. Therefore we can manually terminate it, in order to save computational time while maintaining a near optimal solution. In the following section, a case study will be given to demonstrate how this criteria works.

Numerical results
In this section, we evaluate the performance of the CG based approach, investigate the effectiveness of RSA, and study impact of different parameters (communication range TR and transmission energy consumption models, target sensing range SR and sensor number N) on the network lifetime. We use Lingo 8.0 and VC6.0 in a personal computer with 3 GHz cpu and 1G memory. We performed extensive experiments, but due to space limit, we report only a few results here.

Impact of parameters on the network lifetime
Assume that all targets and nodes are uniformly located in a 100 × 100 area and the sink node is always deployed in the center. We randomly deploy 25 Type 1 and 25 Type 2 sensors to cover m = 3 targets (their corresponding parameters are shown in Table 2). The sensor node distribution and the resulting topology (both NCG and TCG) are illustrated in Figure 2. The setting is referred to as network setting 1 (NS1 for short) hereinafter.
To study the impacts of different parameters on the network lifetime, we vary one parameters at a time while fixing all others. We first examine the impact of sensor nodes' communication ranges on the network lifetime. We design another new network setting with communication range of Type 1 sensors in NS1 increased from 15 to 40 with an increment of 5. We use the communication model proposed in [31]: E t = E 0 ⋅ d a which states that the energy consumed for transmission is proportional to d a , where d is the transmission distance and a is the attenuation parameter (usually falls into the range 2 to 4). We normalize transmitting energy to 2 when the transmitting range is 20 for Type 1 sensors, thus we have E 0 = 2 20 α . As shown in Figure 3, the network lifetime increases with the increase of communication range at beginning. This is due to the fact that, with the increment of communication range, even though number of source nodes and the positions remain unchanged, the number of potential paths between those source nodes to sink node increased.
Consequently, traffic load generated from a source node can be shared by a larger amount of candidate relay nodes, which leads to a reduced average energy consumption rate in patterns and a longer network lifetime. However, after a certain range (different a corresponds to different range), the network lifetime decreases with the increase of communication range. The larger a, the quicker the network lifetime decreases. The reason for this phenomenon lies in that, with the increase of communication range, the transmission energy cost per packet also grows quickly which causes energy consumption rate for nodes in patterns to increase. Therefore, after a certain range, such increased energy consumption per node will counteract the gains brought in by more candidate relay nodes. It is obvious that the larger a is, the more energy consumption per node for the same transmission range increment. As a result, the network lifetime drops faster with a larger a.
In the above experiments, we have assumed the flat transmission energy consumption model. That is, the same energy is used to transmit data no matter how faraway the next hop node is. The conclusion is that there exists an optimal trade-off between per-packet energy consumption and the more resulting potential data delivery paths when we increase the transmission range. However, as pointed out before, many sensors have the ability to change the transmission power levels. In this case, a sensor can choose a lower sending power when sending data to a nearer neighbor. Obviously, this will result in less energy consumption as compared with the flat model and may result in a significant improvement of the network lifetime. Noticing that some commercial sensors like Mote can adjust transmission power by selecting a radio mode from a set of pre-defined levels, we designed new experiments to evaluate the discrete transmission energy consumption model. We also study the effect of the continuous model which serves as an upper bound of the performance of discrete model.  In the new experiments, we set a = 2 and assume the transmission power can be adjusted on a granularity of 2 through 5. The results are shown in Figure 4. From the figure, we observe that when the transmission power is adjustable, it is always beneficial to use sensors with larger maximum transmission range, which is in sharp contrast to the flat model. As expected, a finer adjusting granularity leads to better results. Nevertheless, even only coarse adjusting granularity is allowed, which implies limited adjustable levels, significant network lifetime improvement can still be achieved and the resulting network lifetime is relatively very close to the optimal value given by the continuous model. The conclusion confirms the claims made in [32].
To show how sensing range affects lifetime, we design a new network setting with sensing range of Type 1 sensor in NS1 increased from 25 to 50 with an increment of 5. We evaluate both the linear model e s = e 0 · d and the quadratic model e s = e 1 · d 2 proposed in [18]. a We normalize sensing energy to 1 when the transmitting range is 30, so e 0 = 1 30 , and e 1 = 1 900 . In Figure 5 Table 2. sensing range reaches 30, after that, it decreases as the sensing range further increases. The reason why network lifetime increases is that, due to the greater sensing range, more sensors can be used to cover the targets, therefore more feasible working patterns can be generated and the sensing energy consumption for targets is spread over more source nodes. Consequently, smaller energy consumption rates in patterns can be achieved. This is the positive impact of increasing sensing range on the network lifetime. However, as the sensing energy cost also grows quickly with increasing sensing range, it bites away the positive impact and leads to the decrease of network lifetime when sensing range exceeds a certain value (happen to be 30 in our example). As expected, the network lifetime decreases faster with the quadratic model since for a fixed sensing range, sensing energy cost in the quadratic model is greater as compared to the linear model.  When the sensing range increases from 25 to 50, the network lifetime varies in a range of [95. 5,100]. This is also confirmed by other experiments. Generally speaking, the reason lies in that the bottlenecks in the network settings where sensors and targets are uniformly random distributed are sensors one-hop away from the sink node because these sensors are typically heavily loaded with relaying traffic. Recall that to relay a data packet, the node needs to receive and re-transmit the packet, which consumes much more energy than sensing. In Figure 6, we highlight what sensors are dead after the initial BFS expires in network setting NS1. Comparing to the the initial distribution of sensor nodes in Figure 2, we can conclude that the bottleneck indeed lies in those sensor nodes within one-hop to the sink node since most of them drained out of energy. In comparison, only few sensor nodes around the target ran out of energy. Therefore, the spatial redundancy significantly reduces the possibilities that these sensors become the bottleneck.
The above finding provides insightful guidance if we want to deploy a wireless sensor network: we should deploy more sensors nodes around the sink node while providing certain level of spatial redundancy around targets. To provide more evidence, we compare the network lifetime produced by randomly adding sensors as neighbors of the sink node and targets, respectively, in network setting NS1. We measure the network lifetime when the number of newly added sensors varies from 1 to 5, with an increment of 1. The results are shown in Figure 7. From the figure, we can see that adding sensors close to the sink node (to relay traffic) greatly contributes (almost 10% for each node added) to the network lifetime, as compared to adding more sensor nodes close to targets (to provide more coverage choices) where less than 1% increase of network lifetime results for each node added). The conclusion here actually confirms with the motivation of other studies such as exploiting mobile sinks to distribute the overall traffic load and prolong the network lifetime [3].
So far, we have changed only one parameter while keep the rest unvaried. But what if we can adjust both sensing range and communication range of sensors? We performed a new set of experiments that exhaustively explore the combinations of sensing range and communication range adjustments. The results are shown in Figure 8, where the sensing range varies from 25 to 50 with an increment of 5 (linear energy consumption model is chosen) and communication range varies from 15 to 40 with an increment of 5 (we set a = 2 in the model). We found that an optimal lifetime 104.5 is achieved when the sensing and communication range are both set to 25, which corresponds to around 4% improvement. This further confirms the conclusion that the bottleneck in the wireless sensor network is usually in the data gathering part.
Finally, we want to point out that in all the experiments, we have changed parameters of Type 1 sensors only. We have done so deliberately, since in a heterogeneous sensor network, there are multiple type of sensors and not all of them are adjustable. Nevertheless, we can improve the network lifetime even with the limited control of the sensor networks. If more sensors have adjus-   ranges only, and adjust both types of sensors' communication ranges. For simplicity, we have assumed continuous transmission energy consumption model and the sensing ranges remain the same as in Network Setting 1. As shown in Figure 9, their maximal achievable lifetimes are 100, 133.3, and 222.5, respectively.

Performance evaluation
Using the same parameters in the above experiments, we perform simulations to compare the following schemes: 1. The proposed CG-based approach. 2. Directly solving the Original optimization using LINGO. We set |P| as n. Since solving the Original optimization is time-consuming, we set a time bound of 30 min. If LINGO fails to output a result within the time bound, we would manually terminate the process and use the latest result as output.  3. The state-of-art heuristic algorithm proposed in [33]. Since the network model in [33] is similar to ours, we extend this heuristic algorithm to handle the case of heterogenous WSNs. We use the shortest path algorithm for the routing from the sensors to the sink. The transmission load factor a is set to 1, which means that a sensor needs to send out all sensed data without data aggregation.
We only use Type 1 sensors in the simulations and vary its number from 60 to 100 with an increment of 5 at each step. The number targets varies from 3 to 10. For convenience, we assume that targets have the same coverage requirements, i.e., Q k = (1), θ k = (1). Both sensors and targets are randomly deployed in the area. Other parameters remain unchanged with the first experiment in the last subsection. For every combination of <n, m >, we randomly generate 10 instances.
First, we fix the number to targets to 5 while varying the number of sensors from 60 to 100. We normalize the lifetime obtained by all three methods by our CGbased approach. Figure 10 shows the network lifetime comparison of the three algorithms. Our CG-based approaches consistently outperforms the other two. On average, our approach improve the lifetime by 29% compared to the state-of-art heuristic algorithm and by 65% compared to the MINLP-LINGO. Figure 11 shows the running time comparison of the three algorithms. In the case of most instances, LINGO needs a time that exceeds the bound and thus is manually terminated. Therefore its performance is the worst    in terms of both lifetime and running time. We exclude it from Figure 11. The running time of other algorithms increases with the number of sensors and the heuristic algorithm runs a little bit faster than our approach. Considering that our CG-based approach has the best performance in terms of the network lifetime, we argue that such price is quite reasonable.
Then, we fixed the number of sensors to 80 and varying the number of targets from 3 to 10. Figure 12 shows the network lifetime comparison. Still our approach beats the others in terms of the network lifetime achieved. For the complexity, since LINGO still needs more than 30 min to converge, we omit it in the result. As shown in Figure  13, as the number of targets increases, the computational time of both our approach and the heuristic increases. However, the increment is limited compared to the same increment of sensors. This indicated that the complexity of solving this coverage problem is more determined by the number of sensors rather other the number of targets.

Conclusion
In this article, we addressed the problem of network lifetime optimization for such heterogeneous networks.
It is motivated by real world heterogeneous surveillance sensor networks. We first specified the target Q-coverage requirement that reflects the different importance of targets and the data gathering requirement that are essential for the sensor network to be functional. Based on such requirements, we formally defined the network lifetime and formulated an optimization problem that captures both requirements simultaneously. We developed the notion of working patterns that can fulfill the requirements with generic transmission energy consumption model and variable communication ranges and sensing ranges, and adopted a column generation based approach to solve the problem where a column corresponds to a feasible working pattern, with initial working patterns being obtained through either a random selection algorithm. We performed extensive simulations to study the impact of various parameters and their corresponding models on the network lifetime. We found that the bottleneck is usually on the sensors around the sink node due to multi-hop relay in topologies with uniform random sensor node distribution, which provides insightful guidance for the sensor deployment, and that by enabling, even relatively coarsely, transmission range adjustment, the network lifetime can be significantly increased.
Endnote a These models are only applicable to sensors like ultrasonic sensors that actively probe the target.