Abstract

Solving coverage problem alone is not adequate in a wireless sensor network, since data has to be transmitted to the base station. This leads to the lookout for an energy efficient method to solve connected coverage problem. This paper addresses 𝑀-connected (each sensor node will have at least 𝑀 other sensor nodes within its communication range) target coverage problem in wireless sensor networks, where the required level of connectivity and coverage may be high or low as required. We propose a heuristic for 𝑀-connected target coverage problem, where initially a cover is decided and later on it is checked for 𝑀-connectivity. 𝑀-connectivity for simple coverage, 𝑘-coverage, and 𝑄-coverage is focussed on in this paper. We use a Low-Energy Adaptive Clustering Hierarchy (LEACH) inspired model, where a cluster is considered as a set of sensor nodes satisfying 𝑀-connectivity and required level of coverage. It is enough if one among these nodes transmits the monitored information to the base station. When the required level of coverage are high, chances of nodes being connected in the cover is high. Simulation results show that our proposed method can achieve better results than Communication Weighted Greedy Cover (CWGC).

1. Introduction

In recent years, there has been considerable progress in wireless sensor networks (WSNs) research. A WSN can be structured or unstructured [1]. An unstructured WSN is one that contains a dense collection of sensor nodes and sensor nodes may be deployed randomly into the field. Hence, network maintenance such as managing connectivity and detecting failures is difficult. In a structured WSN, all or some of the sensor nodes are deployed in a preplanned manner. Among the major challenges in WSN are coverage, and connectivity problems. Coverage in a WSN needs to guarantee that the monitored region is completely covered with a high degree of reliability [1]. Connectivity scales the adequacy with which the nodes are able to communicate [2]. Coverage problem can be classified based on the region/object to be monitored [3] as area coverage problem and target coverage problem. Area coverage problem aims at monitoring/gathering information about an entire region. The target coverage problem concerns about monitoring a set of specific locations in the region.

Target coverage problems evolved in 3 stages; simple coverage, 𝑘-coverage and 𝑄-coverage. With simple coverage, each target should be monitored by at least one sensor node. For compensating node failures or in case of monitoring with greater accuracy, simple coverage was not sufficient. This paved the way for 𝑘-coverage, where each target has to be monitored by at least 𝑘 sensor nodes, where 𝑘 is a predefined integer constant. 𝑘 coverage problem seems unfit for applications where targets need not essentially be monitored by the same number of sensor nodes. This leads to 𝑄-coverage, where T = {𝑇1,𝑇2,,𝑇𝑛} should be monitored by 𝑄={𝑞1,𝑞2,,𝑞𝑛} number of sensor nodes such that target 𝑇𝑗 is monitored by at least 𝑞𝑗 number of sensor nodes, where 𝑛 is the number of targets and 1𝑗𝑛.

The coverage requirement depends on the application. Some applications require complete coverage at all times, whereas the coverage requirement can slightly be compromised for some other applications [4]. The time during which all the sensors can sense or communicate is limited because of irreplaceable batteries.

It is imperative to look into the connectivity aspect of WSNs, together with issues of coverage [5]. Two sensor nodes are said to be connected if they are located within the communication range of each another. Connectivity depends on the random distribution of nodes [6]. 𝑀-connectivity implies that each node in the sensor cover (a subset of sensor nodes that meets required level of coverage) is connected to at least 𝑀 other sensor nodes in the same cover. Sensor deployment can either be deterministic or random. In deterministic deployment, coverage can be maximized as a result of optimal placement of sensor nodes. Random deployments are preferred when the region information is not known a priori. When sensor nodes are randomly deployed, few objects in the region may be densely covered and few may be sparsely covered. Figure 1 shows a sample random deployment where there are 3 targets {𝑇1,𝑇2,𝑇3} and 5 sensor nodes {𝑆1,𝑆2,𝑆3,𝑆4,𝑆5} to monitor the targets. All the targets are completely covered in the given deployment and it does not consider connectivity. Figure 2 shows a deployment where there are three sensor nodes {𝑆1,𝑆2,𝑆3} to monitor two targets {𝑇1,𝑇2}. Here each sensor node has a sensing range 𝑠𝑟 and a communication range 𝑐𝑟. For nonconnected simple coverage to be satisfied, it is sufficient if 𝑆1 and 𝑆3 are activated. But for connected coverage, in addition to 𝑆1 and 𝑆3, 𝑆2 should also be activated since 𝑆2 connects 𝑆1 and 𝑆3.

Network lifetime, which is a vital performance parameter in WSNs that can be defined as the interval between the time when the network starts functioning and when the network dies. A WSN dies when it is not able to meet coverage and/or connectivity requirement and/or if it is deprived of sufficient battery power. Generally random deployment includes a large population of sensor nodes, and scheduling is a frequently used method to conserve energy [7]. Only minimum number of sensor nodes is activated to satisfy the coverage requirement and the remaining nodes are set to sleep for conserving energy. Hence these scheduling schemes prolong the lifetime of the sensor network. However, if more nodes are left to sleep, the WSN may be disconnected. This will affect data communication and transmission. Compared to nonconnected coverage, some extra nodes might have to be turned on to keep the network connected for satisfying connected coverage. Thus the network lifetime can be augmented by scheduling sensor nodes such that only a subset of sensor nodes that meets the coverage and connectivity requirement needs to be active at a time.

Neither direct communication nor MTE (minimum-transmission-energy) routing is energy efficient [4]. Based on clustering, Heinzelman et al. [4] proposed LEACH which appears to be energy efficient. We define a cluster as a subset of sensor nodes which satisfies 𝑀-connectivity and required coverage level. We assume random deployment of sensor nodes, which is mostly used for inaccessible regions or in battlefield surveillance. We use binary sensing model, where if a target lies within the sensing region, it is always assumed to be detected with probability 1 otherwise with probability 0. In this paper, we assume that all sensor nodes have the same initial battery power, sensing range, and communication range.

1.1. Importance

Sensor coverage is important while evaluating the effectiveness of a wireless sensor network. A lower coverage level (simple coverage) is enough for environmental or habitat monitoring [1] or applications like home security [8]. Higher degree of coverage (𝑘-coverage) will be required for some applications like target tracking to track the targets accurately [9], or if sensors work in a hostile environment such as battle fields or chemically polluted areas [8]. More reliable results are produced for higher degree of coverage which requires multiple sensor nodes to monitor the region/targets.

In some cases, for the same application, the coverage requirement may vary. For example, for forest fire detections, the coverage level may be low in rainy seasons, but high in dry seasons [8]. An example of 𝑄-coverage is a video surveillance system deployed for monitoring hostile territorial area where some sensitive targets like a nuclear plant may need more sensors cooperate to ensure source redundancy for precise data [10]. In such applications, the nodes that are turned on should be connected to ensure proper data transmission. In case of simple connected coverage, where it is enough to have the nodes 1-connected, the network will be disconnected even if a single node fails. Hence it is important to have sufficient connectivity along with sufficient coverage. This paved the way for studying 𝑀-connected coverage problem where at least 𝑀-connectedness should exist within the nodes that are turned on, to guarantee the correctness of the information collected and also to ensure the reachability of the information at other nodes including the base station.

Rest of the paper is organized as follows: in Section 2, we briefly review some of the related work. The problem is formulated formally in Section 3. Section 4 presents the proposed method to solve the problem. Section 5 presents the simulation results. Concluding remarks in Section 6 end the paper.

Several researchers have addressed target coverage problem without considering connectivity. Simple coverage problem has been addressed in [1113]. 𝑘-coverage problem has been addressed in [8, 9, 14]. 𝑄-coverage problem has been addressed in [10, 1517]. None of these address the connected coverage problem.

Zhou et al. [18] present a centralized approximation algorithm and a distributed version of the algorithm to solve connected 𝑘-coverage problem. The distributed priority algorithm is more efficient in applications where the query is executed for less than a few hundred times. For longer running queries, the distributed greedy algorithm is more efficient. Lu et al. [19] generalize the sleep/active mode by adjusting sensing range to maximize total number of rounds and present a distributed heuristic. A more generic connectivity condition that can be used even when the transmission range is less than twice the sensing range is considered. It deals with the case of scheduling sensors activity by self-configuring sensing ranges, in the environment where both discrete target coverage and network connectivity are satisfied. Gupta et al. [20] design and analyze algorithms for self-organization of a sensor network into an optimal logical topology in response to a query. A distributed version of the approximation algorithm that is run by the sensors in the network and results in a self-organization of the network into a topology involving a near-optimal number of sensors is also designed.

Zhao and Gurusamy [21] consider the Connected Target Coverage (CTC) problem with the objective of maximizing the network lifetime by scheduling sensors into multiple sets, each of which can maintain both target coverage and connectivity among all the active sensors and the sink. A faster heuristic algorithm based on the approximation algorithm called Communication Weighted Greedy Cover (CWGC) algorithm is designed and a distributed implementation of the heuristic algorithm is presented.

Some works propose deployment patterns such that the region of interest could be monitored with the required level of coverage and the network being connected. Some of these also aim at minimizing the number of sensor nodes that need to be placed. This is applicable only in the case of deterministic deployment. Bai et al. [22] investigate the problem of finding an optimal deployment pattern that achieves four connectivities and full coverage. A Diamond pattern, which can be viewed as a series of evolving patterns, is proposed.

Wang et al. [23] consider the sensing field as an arbitrary-shaped region possibly with obstacles. The sensing field is partitioned into smaller subregions based on the shape of the field, and then sensors are deployed in these subregions such that the area is covered and connectivity is ensured. The number of sensors deployed is minimized using this approach.

Ammari and Das [24] compute the minimum sensor spatial density necessary for complete 𝑘-coverage of a sensor field. A tighter bound on network connectivity of 𝑘-covered WSNs, where the radius of the communication disks of sensors only needs to be at least equal to the radius of their sensing disks, is also derived.

Han et al. [25] investigate problems related to connected coverage in directional sensor networks where sensors only sense directionally and have a sector-like sensing range. Deployment patterns are proposed such that the location points/area is covered and forms a connected network. This also uses minimum number of directional sensors to form a connected network to cover a set of point locations and the entire target sensing area, respectively.

Gao and Zou [26] show that deployment of mobile nodes (Mules) improves the coverage and connectivity. Krause et al. [27] present an algorithm for sensor deployment which incurs minimal communication cost.

Kar and Banerjee [28] also address the problem of optimal node placement for ensuring connected coverage in sensor networks and propose two scenarios. The first scenario requires a complete area to be provided with connected coverage and the second scenario needs a given set of points in the region to be covered and connected.

In our model, sensors nodes are not deterministically deployed. Hence there is no provision of using an optimal deployment pattern to maintain coverage and connectivity. Optimal deployment patterns are used for deterministic deployment of sensor nodes to address area coverage or 𝑘-coverage of targets along with connectivity. Here since sensor nodes are dense and randomly deployed, the best way to prolong network lifetime is by scheduling the nodes such that the required level of coverage and connectivity is achieved with minimum number of sensor nodes.

Heinzelman et al. [4] propose LEACH which is based on clustering and also point out that using a direct communication protocol or MTE routing will not be optimal. Direct communication will require a large amount of transmission power from each node if the base station is far away from the nodes. In case of MTE routing, the nodes closest to the base station will be used to route a large number of data messages to the base station. Thus these nodes will die out quickly, causing the energy required to get the remaining data to the base station to increase and more nodes to die. With the use of clusters, LEACH was able to achieve large reduction in energy dissipation. Local computation in each cluster reduced the amount of data that must be transmitted to the base station.

Most of the works related to target coverage focus on direct communication or MTE routing, where the nodes closest to the base station are largely used. Unlike all of these, we focus on identifying a minimum-sized cluster which is 𝑀-connected and meets simple/𝑘/𝑄-coverage requirement. Once this cluster is decided, routing information to the base station is done as in LEACH.

3. Problem Definition

Let us assume 𝑚 sensor nodes {𝑆1,𝑆2,,𝑆𝑚} randomly deployed to cover the area 𝑅 with 𝑛 targets {𝑇1,𝑇2,,𝑇𝑛}. Each sensor node has an initial energy 𝐸0, sensing radius 𝑠𝑟 and communication radius 𝑐𝑟. A sensor node 𝑆𝑖, 1𝑖𝑚, is said to cover a target 𝑇𝑗, 1𝑗𝑛, if the distance 𝑑(𝑆𝑖,𝑇𝑗) between 𝑆𝑖 and 𝑇𝑗 is less than 𝑠𝑟. Two sensor nodes are said to be connected if one sensor node lies within the communication range of the other. The coverage matrix is defined as𝑀𝑖𝑗=1if𝑆𝑖monitors𝑇𝑗,0otherwise,(1) where 𝑖=1,2,,𝑚 and 𝑗=1,2,,𝑛.

The connectivity matrix is defined as𝐶𝑀𝑖𝑧=1if𝑆𝑖and𝑆𝑧areconnectedand0𝑖𝑧,otherwise,(2) where 𝑖=1,2,,𝑚 and 𝑧=1,2,,𝑚.

3.1. 𝑀-Connected 1-Coverage Scheduling

Definition 1. Given 𝑚 sensor nodes 𝑆={𝑆1,𝑆2,,𝑆𝑚} with battery power 𝐵={𝑏1,𝑏2,,𝑏𝑚}, energy consumption rate 𝑒𝑖 for 𝑆𝑖 and 𝑛 targets 𝑇={𝑇1,𝑇2,,𝑇𝑛}, find a schedule {𝐶1,,𝐶𝑦} for time tick {𝑡1,,𝑡𝑦} such that for all ticks(1)each target is covered by at least one of the sensor nodes,(2)each sensor node in 𝐶𝑝 is connected to at least 𝑀 other nodes in 𝐶𝑝, where 1𝑀𝑚,(3)network lifetime 𝑦𝑝=1𝑡𝑝 is maximized.

3.2. 𝑀-Connected 𝑘-Coverage Scheduling

Definition 2. Given a set of sensor nodes S = {𝑆1,𝑆2,,𝑆𝑚} with battery power B = {𝑏1,𝑏2,,𝑏𝑚}, energy consumption rate 𝑒𝑖 for 𝑆𝑖 and a target set T = {𝑇1,𝑇2,,𝑇𝑛}, generate a schedule {𝐶1,,𝐶𝑦}, for {𝑡1,,𝑡𝑦}, such that for all ticks(1)each target is covered by at least 𝑘 sensor nodes, 1𝑘𝑚,(2)each sensor node in 𝐶𝑝 is connected to at least 𝑀 other nodes in 𝐶𝑝, where 1𝑀𝑚,(3)network lifetime 𝑦𝑝=1𝑡𝑝 is maximized.

3.3. 𝑀-Connected 𝑄-Coverage Scheduling

Definition 3. Given a set of sensor nodes S = {𝑆1,𝑆2,,𝑆𝑚} with battery power B = {𝑏1,𝑏2,,𝑏𝑚}, energy consumption rate 𝑒𝑖 for 𝑆𝑖 and a target set T = {𝑇1,𝑇2,,𝑇𝑛}, generate a schedule {𝐶1,,𝐶𝑦}, for {𝑡1,,𝑡𝑦}, such that for all ticks(1)𝑇={𝑇1,𝑇2,,𝑇𝑛} is covered by at least 𝑄={𝑞1,𝑞2,,𝑞𝑛} sensor nodes, where each target 𝑇𝑗, 1𝑗𝑛, is covered by at least 𝑞𝑗 sensor nodes,(2)each sensor node in 𝐶𝑝 is connected to at least 𝑀 other nodes in 𝐶𝑝, where 1𝑀𝑚,(3)network lifetime 𝑦𝑝=1𝑡𝑝 is maximized, 1-Coverage and 𝑘-coverage are special cases of 𝑄-coverage where all 𝑞𝑗=1 and 𝑞𝑗=𝑘, respectively.

4. Proposed Method

4.1. Cover Formation

Initially, a cover is computed without looking into connectivity. There may be different ways to generate sensor covers if the network has nodes which make all the targets 1/𝑘/𝑄 covered. We use a priority-based method to compute the covers. The priority of sensor nodes is calculated based on the remaining battery power. The more the remaining battery power of a sensor node, the higher the priority of the sensor node. In the order of priority, if any new sensor node contributes to 1/𝑘/𝑄 coverage requirement, it will be added to the cover set. In general, a sensor node 𝑆𝑖 can be added to a cover set 𝐶𝑜𝑣_𝑆 if and only if(1)for simple coverage problem: 𝐶𝑜𝑣_𝑆{𝑆𝑖} covers any new target,(2)for 𝑘-coverage problem: 𝐶𝑜𝑣_𝑆{𝑆𝑖} contributes to 𝑘-coverage requirement,(3)for 𝑄-coverage problem: 𝐶𝑜𝑣_𝑆{𝑆𝑖} contributes to 𝑄-coverage requirement.

The detailed algorithm is discussed in Algorithm 1.

1: Input: Sorted 𝑆 in descending order of battery power
2: Output: Cov_S
3: Initialize 𝐶 𝑜 𝑣 _ 𝑆 = 𝜙
4: for   𝑖 = 1 to 𝑚   do
5:  if   𝑆 𝑖 contributes to coverage then
6:    𝐶 𝑜 𝑣 _ 𝑆 = 𝐶 𝑜 𝑣 _ 𝑆 { 𝑆 𝑖 }
7:  end if
8:  if coverage requirement met then
9:   break;
10:  end if
11: end for

4.2. Cover Optimization

The cover may have nodes which need not be turned on for coverage condition to be satisfied. These nodes will be eliminated at this phase. The last node in 𝐶𝑜𝑣_𝑆 will be the one which completes the 1/𝑘/𝑄 coverage requirement. Hence it will not be eliminated. Elimination check starts from the last but one node in 𝐶𝑜𝑣_𝑆. It continues for all the other nodes in 𝐶𝑜𝑣_𝑆 in the least priority first order. This curbs the possibility of higher priority nodes being eliminated at this stage. A node 𝑆𝑖𝐶𝑜𝑣_𝑆, 1𝑖𝑙𝑒𝑛𝑔𝑡(𝐶𝑜𝑣_𝑆), represented as 𝑆𝑖𝐶𝑜𝑣_𝑆, will not be added to the optimized cover set 𝑂𝑝𝑡.𝐶𝑜𝑣_𝑆 if 𝐶𝑜𝑣_𝑆{𝑆𝑖𝐶𝑜𝑣_𝑆} meets 1/𝑘/𝑄 coverage requirement. The cover optimization algorithm is given in Algorithm 2.

1: Input: 𝐶 𝑜 𝑣 _ 𝑆
2: Output: 𝑂 𝑝 𝑡 . 𝐶 𝑜 𝑣 _ 𝑆
3: Initialize 𝑂 𝑝 𝑡 . 𝐶 𝑜 𝑣 _ 𝑆 = 𝜙
4: for   𝑖 = 𝑙 𝑒 𝑛 𝑔 𝑡 ( 𝐶 𝑜 𝑣 _ 𝑆 ) down to 1 do
5:  if 𝐶 𝑜 𝑣 _ 𝑆 { 𝑆 𝑖 𝐶 𝑜 𝑣 _ 𝑆 } meets 1 / 𝑘 / 𝑄 coverage requirement
  then
6:    𝐶 𝑜 𝑣 _ 𝑆 = 𝐶 𝑜 𝑣 _ 𝑆 { 𝑆 𝑖 𝐶 𝑜 𝑣 _ 𝑆 }
7:  else
8:     𝑂 𝑝 𝑡 . 𝐶 𝑜 𝑣 _ 𝑆 = 𝑂 𝑝 𝑡 . 𝐶 𝑜 𝑣 _ 𝑆 { 𝑆 𝑖 𝐶 𝑜 𝑣 _ 𝑆 }
9:   end if
10: end for

4.3. 𝑀-Connected Cover Formation

The optimized cover is checked for 𝑀-connectivity. The connectivity matrix helps in finding out whether the nodes are 𝑀-connected or not. If the nodes are not 𝑀-connected, the nodes which got eliminated at the cover optimization phase and the nodes which did not form a part of 𝐶𝑜𝑣_𝑆 with battery power more than the minimum usable energy will also be considered. Since any node can play a vital role in making an 𝑀-connected cover, we add these remaining nodes one by one to the optimized cover and check for all possible 𝑀-connected subsets at each new addition. If any 𝑀-connected subset meets coverage requirement, this subset will be the 𝑀-connected cover. Algorithm 3 shows the formation of 𝑀-connected cover.

Input: 𝑆 in descending order of battery power, 𝐶 𝑜 𝑣 _ 𝑆 ,
𝑂 𝑝 𝑡 . 𝐶 𝑜 𝑣 _ 𝑆
Output: 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟
Initialize 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 = 𝜙 ; 𝑓 𝑙 𝑎 𝑔 = 0
𝑇 𝑜 𝑡 𝑎 𝑙 _ 𝑆 = 𝑂 𝑝 𝑡 . 𝐶 𝑜 𝑣 _ 𝑆 { 𝐶 𝑜 𝑣 _ 𝑆 𝑂 𝑝 𝑡 . 𝐶 𝑜 𝑣 _ 𝑆 } { 𝑆 𝐶 𝑜 𝑣 _ 𝑆 }
𝑅 𝑒 𝑚 _ 𝑁 𝑜 𝑑 𝑒 𝑠 = 𝑇 𝑜 𝑡 𝑎 𝑙 _ 𝑆 𝑂 𝑝 𝑡 . 𝐶 𝑜 𝑣 _ 𝑆
𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 = 𝑂 𝑝 𝑡 _ 𝐶 𝑜 𝑣
if 𝑇 𝑜 𝐶 𝑒 𝑐 𝑘    𝑀 -connected  then
𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 = 𝑇 𝑜 𝐶 𝑒 𝑐 𝑘
else
for   𝑖 = 1   to 𝑙 𝑒 𝑛 𝑔 𝑡 ( 𝑅 𝑒 𝑚 _ 𝑁 𝑜 𝑑 𝑒 𝑠 )   do
   𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 = 𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 𝑅 𝑒 𝑚 _ 𝑁 𝑜 𝑑 𝑒 𝑠 ( 𝑖 )
  if   𝑇 𝑜 𝐶 𝑒 𝑐 𝑘    𝑀 -connected  then
    𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 = 𝑇 𝑜 𝐶 𝑒 𝑐 𝑘
    𝑏 𝑟 𝑒 𝑎 𝑘 ;
  else
    𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 1 = 𝑇 𝑜 𝐶 𝑒 𝑐 𝑘
    𝑗 = 1
    𝐰 𝐡 𝐢 𝐥 𝐞 𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 1 𝜙 𝐝 𝐨
     𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝑆 𝑢 𝑏 𝑠 𝑒 𝑡 = 𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 1 ( 𝑗 ) Nodes in
     𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 satisfying 𝑀 -connectivity starting with
     𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 1 ( 𝑗 )
    if   𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝑆 𝑢 𝑏 𝑠 𝑒 𝑡 meets coverage requirement then
      𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 = 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝑆 𝑢 𝑏 𝑠 𝑒 𝑡
      𝑓 𝑙 𝑎 𝑔 = 1
      𝑏 𝑟 𝑒 𝑎 𝑘 ;
    end if
     𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 1 = 𝑇 𝑜 𝐶 𝑒 𝑐 𝑘 1 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝑆 𝑢 𝑏 𝑠 𝑒 𝑡
   end while
  end if
  if   𝑓 𝑙 𝑎 𝑔 = 1 then
    𝑏 𝑟 𝑒 𝑎 𝑘 ;
  end if
end for
end if

4.4. 𝑀-Connected Cover Optimization

A node 𝑆𝑖𝑀_𝐶𝑜𝑛𝑛𝑒𝑐𝑡𝑒𝑑_𝐶𝑜𝑣𝑒𝑟, 1𝑖𝑙𝑒𝑛𝑔𝑡(𝑀_𝐶𝑜𝑛𝑛𝑒𝑐𝑡𝑒𝑑_𝐶𝑜𝑣𝑒𝑟), is represented as 𝑆𝑖𝑀_𝐶𝑜𝑛𝑛𝑒𝑐𝑡𝑒𝑑_𝐶𝑜𝑣𝑒𝑟 will not be added to the optimized cover set 𝑂𝑝𝑡.𝑀_𝐶𝑜𝑛𝑛𝑒𝑐𝑡𝑒𝑑_𝐶𝑜𝑣𝑒𝑟 if 𝑀_𝐶𝑜𝑛𝑛𝑒𝑐𝑡𝑒𝑑_𝐶𝑜𝑣𝑒𝑟{𝑆𝑖𝑀_𝐶𝑜𝑛𝑛𝑒𝑐𝑡𝑒𝑑_𝐶𝑜𝑣𝑒𝑟} is 𝑀-connected and meets 1/𝑘/𝑄 coverage requirement. 𝑀-connected cover optimization algorithm is given in Algorithm 4.

1: Input: 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟
2: Output: 𝑂 𝑝 𝑡 . 𝑀 _ 𝐶 𝑜 𝑛 𝑛 _ 𝐶 𝑜 𝑣
3: Initialize 𝑂 𝑝 𝑡 𝑀 _ 𝐶 𝑜 𝑛 𝑛 _ 𝐶 𝑜 𝑣 = 𝜙
4: for   𝑖 = 𝑙 𝑒 𝑛 𝑔 𝑡 ( 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 ) down to 1 do
5:  if   𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 { 𝑆 𝑖 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 }
  meets 𝑘 / 𝑄 coverage requirement and is 𝑀 -connected
  then
6:    𝐼 𝑔 𝑛 𝑜 𝑟 𝑒    𝑆 𝑖 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟
7:    𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 = 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 { 𝑆 𝑖 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 }
8:  else
9:    𝑂 𝑝 𝑡 . 𝑀 _ 𝐶 𝑜 𝑛 𝑛 _ 𝐶 𝑜 𝑣 = 𝑂 𝑝 𝑡 . 𝑀 _ 𝐶 𝑜 𝑛 𝑛 _ 𝐶 𝑜 𝑣 { 𝑆 𝑖 𝑀 _ 𝐶 𝑜 𝑛 𝑛 𝑒 𝑐 𝑡 𝑒 𝑑 _ 𝐶 𝑜 𝑣 𝑒 𝑟 }
10:  end if
11: end for

5. Results and Discussion

We have considered a 200 m × 200 m region for experiments. The number of sensors is varied between 150–250 to monitor 25 targets. The sensing range is fixed as 40 m and the communication range is 80 m. Experiments are carried out for simple coverage, 𝑘 values 2, 3, 4 and 𝑄 values ranging from 1–3, 1–4, and 1–5. 𝑀 is assumed to take an integer value in the range of 1 to 3.

5.1. Impact of Varying 𝑘/𝑄

When 𝑘/𝑄 requirement increases, the number of nodes that need to be turned on increases and since the number of nodes is large in each cover, there is a large possibility of the nodes being connected. This will leave the network lifetime unaffected when connectivity is also considered.

5.2. Impact of Varying 𝑀

For simple coverage problem, when 𝑀 increases, a slight decrease in network lifetime is observed (Figure 3). This is because only very few nodes need to be turned on for satisfying the coverage requirement. For making them 𝑀-connected, some other nodes will have to be turned on, bringing down the overall network lifetime. In case of higher 𝑘/𝑄 coverage requirement, since more numbers of nodes need to be turned on, there are chances that these nodes will be 𝑀-connected as well. Figures 4 and 5 show the network lifetime for 𝑀-connected 𝑘-coverage and 𝑀-connected 𝑄-coverage, respectively.

5.3. Impact of Varying Number of Nodes

When average network lifetime is considered, for higher number of sensor nodes, network lifetime may or may not increase. The location of targets, location of sensors, and the 𝑘/𝑄 values contribute to determining the network lifetime. When given a region with more sensor nodes, it need not be necessary that the network lifetime will be high. If the region has more idle sensor nodes, there are chances that the network lifetime may drop compared to a region with less number of sensor nodes where most of them are nonidle.

5.4. Comparison with CWGC

CWGC (Communication Weighted Greedy Cover) [21] uses a greedy method to select the set of source nodes (called source set) that cover the targets and it couples the communication cost and the selection of source sets. The problem modeled in CWGC requires that all the targets are covered by a subset of sensors and all the targets are connected to the sink node through a subset of sensors by multihop paths. If any of the above requirements cannot be satisfied, the deployed WSN reaches its lifetime. The objective is to maximize the network lifetime of such a WSN. A dead sensor is a sensor which has no residual energy and an isolated sensor is one which has residual energy but cannot find a route from itself to the sink without traversing a dead sensor. The approach is to divide all the deployed sensors into a number of sensor sets each of which can cover all the targets and can send all the sensed data to the sink. These sensor sets need not be disjoint and are activated successively one by one. Before each iteration of building a new cover tree, the dead sensors and isolated sensors in the network will be removed. Only sensors in an active set are used to sense targets and to relay data to the sink, and all the other sensors go into an energy saving sleep state.

Though CWGC is for multihop communication where a sensor cannot reach the sink node directly, and many of the assumptions do not match our model, we have done a comparison based on the operational time of a sensor cover in CWGC. In CWGC, each cover operates for a fixed time duration, unless some sensors in the cover will die before the end of the time duration due to the lack of energy. This might not give the optimal network lifetime for some cases. We have shown this with an example in Figure 6 for 𝑘-coverage problem with 𝑘=2. The region has 3 sensor nodes 𝑆1, 𝑆2, 𝑆3 with battery power 100 units and energy consumption rate 1 unit, and two targets 𝑇1 and 𝑇2. Each sensor node is able to monitor both the targets and all the three sensor nodes are connected. Let the initial cover formed be {𝑆1,𝑆2}. With CWGC, the same cover will be active till at least one node dies. So, the cover will be active for 100 units of time, yielding a network lifetime of 100 units. With our proposed method, if covers are computed for each time instant, based on priority of sensor node (battery power), the following will be the sensor covers {{𝑆1,𝑆2},{𝑆3,𝑆1},{𝑆2,𝑆3},}. This will give a network lifetime of 150 units. Figure 7 shows a comparison of our proposed approach with CWGC for simple coverage problem. Figures 8 and 9 show a comparison of our proposed approach with CWGC for 𝑘-coverage and 𝑄-coverage problems, respectively, together with 𝑀-connectivity.

6. Conclusions and Future Work

Sensitive applications of wireless sensor networks require high level of connectivity as well as coverage. We propose a method to schedule the sensor nodes such that only minimum number of sensor nodes will be active, satisfying connectivity and coverage requirement. This leads to higher network lifetime. The need for such a method arises when all the targets need not be monitored with the same proximity and when 𝑀-connectedness should exist within the nodes that are turned on, to guarantee the correctness of the information collected and also to ensure the reachability of the information at other nodes including base station. We observe that the introduction of connectivity does not affect the network lifetime to a greater extent. The proposed method performed better than CWGC. In future, we plan to extend this work for mobile wireless sensor network environment.