Abstract
Maximizing network lifetime while not sacrificing coverage and connectivity in wireless sensor networks (WSNs) has attracted many researches during the past few years. One common approach is node scheduling which dynamically schedules some redundant nodes to shut down and keeps alive some necessary nodes to preserve network performance. Previous researches focus either on guaranteeing coverage and connectivity or sacrificing coverage and connectivity to conserve energy. In this paper, we introduce a new hole-tolerant redundancy scheme (HRS) which can prolong network lifetime while maintaining coverage and connectivity performance. This HRS scheme can tolerate some coverage holes when determining redundancy eligibility, so it shuts down more nodes when hole tolerance is higher. Our work takes into account both homoradius WSNs and heteroradius WSNs. The simulation results show that (1) the average coverage percentage varies mildly but network lifetime is prolonged as hole tolerance increases; (2) HRS outperforms several existing lifetime maximization schemes.
1. Introduction
Wireless sensor networks (WSNs) are network systems composed of a large number of inexpensive sensor nodes, deployed in a region to provide monitoring or communication capabilities for commercial or military applications. The positions of sensor nodes need not be engineered or predetermined. This allows random deployment in inaccessible terrains or hazardous environments. Some of the most important application areas of sensor networks include military, natural disasters, health, and the home.
The sensors are unreliable, which have short lifetime, limited power, computational capacities, and memory. They must be regularly recharged or replaced. However, a wild distribution in a complicated environment makes this impossible. To extend the lifetime of a sensor network, one common approach is node scheduling which dynamically schedules sensors between sleep and active cycles based on the cooperative communications and computation among adjacent nodes. It alternately shuts down some redundant nodes and keeps alive some necessary nodes to preserve network performance. Hence, node scheduling in WSNs has become a focus of considerable research in the past few years.
Maximizing the network lifetime while maintaining the degree of coverage and connectivity requested by applications has attracted considerable attention during the past few years [1–4]. However, most of these works have such drawbacks as only focusing on the homogenous sensor network, or having high computing complexity. Thus, trying to solve these problems, our contributions in this paper include three parts.
First, we present a node scheduling scheme that renders the network capable of maintaining monitoring performance with a longer network lifetime. This is a surprising result since prior work either guarantees the degree of coverage and connectivity with more nodes than needed or they sacrifice the degree of coverage and connectivity completeness to save energy. The importance of monitored target area changes with time or site, and it may tolerate some uncovered hole like a part of low monitoring significance. Thus, we take hole tolerance into the consideration which allows more nodes to be shut down when its value is higher.
Second, we introduce a redundancy algorithm applicable when different areas request different degree of coverage. Much research assumes a uniform degree of coverage for the whole area that needs to be monitored. However, some parts of the monitored area are more important than others, for example, in a war scenario, the control center of an enemy army is far more important to be monitored than any other areas. If we maintain the same performance level for all areas, there will be a waste of power in less important monitoring zones. It is essential that the redundancy algorithm be appropriate for different degrees of coverage. Each node sets its requested degree of coverage based on the monitoring priority of the area to which it belongs. Then, the actual degree of coverage is calculated by the redundancy algorithm which decides the redundancy of different nodes separately.
Third, we provide another redundancy algorithm which applies in networks in which sensor nodes have different sensing ranges.
The rest of this paper is organized as follows. After surveying the related work in Section 2, assumptions and preliminaries are presented in Section 3. Section 4 illustrates the proposed node scheduling scheme HRS whose effectiveness is shown by simulation results in Section 5. Finally, we conclude the paper in Section 6.
2. Related Work
We now summarize the typical work that proposes distinctive node scheduling schemes to prolong network lifetime and maintain a good performance.
In [5], the sensor nodes are divided into disjoint sets which are activated successively to perform the area monitoring tasks individually. At any one time, there is only one set active, all nodes in other sets are in a sleep mode. The goal of this approach is to maximize the number of disjoint sets, as this has a direct impact on prolonging the network lifetime. The solution of the problem which is called the SET-K COVER problem is centralized and has been proven to be NP-complete in [6]. In [7], Berman makes an improvement on [5] by not demanding each node belong to only one single set, that is to say some nodes can be in more than one set. Abrams [8] gives another variation of the SET-K COVER problem. It aims to make as many regions as possible to be covered by as many sets as possible, rather than requiring each set to fully cover the monitored area.
In PEAS [9], each node broadcasts a probe message after sleeping for a random period and enters the on-duty mode only if it receives no replies from neighbors within transmission range; otherwise, it will stay in the sleep mode. Though this method is decentralized, offering high scalability and low cost, it cannot guarantee the degree of coverage. When a node goes to sleep, it may cause a coverage hole.
Paper [10] proposes a distributed scheduling mechanism which, called TIAN hereinafter, can preserve sensing coverage. The mechanism allows a sensor to turn off only if its sensing area is completely covered by its neighbors' sensing areas. The neighbors are called this node's off-duty sponsors, and the sector that a neighbor covers with its sensing area is called a sponsored sector. However, this mechanism only considers those neighbors located within a node's sensing area to be potential off-duty sponsors, while other neighbors are ignored even if their coverage may overlap with this node's sensing area, so this solution may underestimate the number of sensors that can be turned off. Besides, it only guarantees 1-degree coverage which reduces scalability.
Some work is done to give a sufficient and necessary condition to find out off-duty eligible nodes. Huang et al. [11] and Liu et al. [12] propose perimeter coverage algorithms, by which they calculate the coverage degree of every arc on a node's sensing circle to judge if the node is redundant or not. The conditions proposed in these algorithms are sufficient and necessary, but the computing complexity is too high. Paper [13] proposes a protocol called CCP which is able to configure itself to any feasible degree of coverage and connectivity in order to support different applications and environments with diverse requirements. This flexibility allows the network to self-configure for a wide range of applications and environments. But this mechanism has a quite high computing complexity of
To sum up, existing work on node scheduling has the following characteristics. (1) They cannot achieve a good balance between prolonging the network lifetime and guaranteeing the degree of coverage and connectivity with low computing complexity. (2) Much research assumes a uniform coverage degree for the area that needs to be monitored. (3) They focus on WSN whose nodes have the same sensing and transmission radius (we call it homoradius WSNs). We will try to solve these problems in this paper.
3. Network Model and Preliminary
3.1. Network Model
We consider a WSN consisting of a set S of n static sensor nodes. Each node
For any sensor node u whose sensing radius and communication radius are
3.2. Preliminary and Problem Statement
In this paper, we focus on the hole-tolerant scheme in both homoradius and heteroradius WSNs. A WSN is a homoradius WSN if all its sensors have the same sensing and transmission radius. Otherwise, it is a heteroradius WSN.
In hole-tolerant scheme, the WSN can tolerate coverage hole(s) in the monitor area to some extent. For a monitor area with a requested coverage degree of k, one of its subarea is called a coverage hole if this subarea is less than k-covered. The percentage of the subarea whose coverage degree is at least k to the whole monitor area is called coverage percentage. In hole-tolerant WSN, the network can fulfill normal monitor when the coverage percentage is no less than a specific value. We define a parameter hole tolerance which indicates the biggest coverage hole a WSN can withstand before normal monitoring operation is impaired.
Before we state the problem, let us give two necessary definitions, namely, contributing node and contribution angle. Suppose nodes u and v are neighbors in Figure 1, v is a contributing node (to node u) if v's coverage to

Contributing angle.
With the definition above, the problem this paper tries to solve lies in the following. (1) Similar to TIAN, how to provide a redundancy decision scheme by explore the relationship among contributing angles of different neighbors. (2) How can this scheme achieve high performance without underestimation or overestimation as well as possible? (3) How can this scheme provide configuration of different requested coverage degree and can be used in hole-tolerant WSNs?
4. Lifetime-Extending Scheme HRS
Our scheme consists of three parts: initialization, redundancy decision, and status transfer. The initialization phase randomly distributes the sensors, informing each sensor of some parameters. In the redundancy decision phase, each sensor node runs the redundancy algorithm to decide its eligibility to turn off. If it is eligible, then the node shifts to the status transfer phase which puts the node into a sleep mode properly. The following sections will describe them in detail.
4.1. Initialization
An initialization phase is executed at the beginning of the network operation. During the initialization phase, each sensor acquires the following local information: location, sensing range, initial status, remaining energy, and requested coverage degree.
If the whole monitoring area in our network model is composed of subareas with different requested coverage degree, how can we set the requested coverage degree for a sensor u when judging its off-duty eligibility. If the sensing area of u is within one subarea, u's requested coverage degree is equal to the requested coverage degree of this subarea. If the sensing area of u is divided by more than one subareas, we use the demanded coverage degree of the sub-area which is the nearest to a sensor u as u's requested coverage degree when judging its off-duty eligibility.
4.2. Redundancy Decision
4.2.1. Redundancy Decision in Homoradius WSN
In the redundancy decision phase, a sensor node runs the redundancy algorithm to figure out if it is eligible to go to the sleep mode. Algorithm 1 provides the redundancy decision algorithm in homoradius WSN.
/* Kr(n) are the demanded coverage degrees for all nodes /* Rs(n) are the sensing radius for all nodes /* toler is hole tolerance of the WSN. (1) (2) (3) (4) (5) (6) calculate the left bound (7) (8) (9) calculate the coverage degree of each bound point to get the minimum coverage degree (10) (11) (12) (13) (14) (15) (16) (17)
Consider two sensors u and v located in
As shown in Figure 1, we take the contribution angle α as an approximation of the sector (denoted by
We gradually increase the contributing nodes loop by loop as illustrated in Figure 2 (by step 14 in Algorithm 1). Initially, the contributing nodes are within area 1, then, we add nodes in loop area 2 as contributing nodes, next, loop area 3, and so on. Obviously, there will be an increase in coverage holes as contributing nodes are added, and this is where the flexibility of our intelligent algorithm comes into its own.

Increase of contributing nodes.
The algorithm operates as follows: we define a contributing node v as one whose distance to u is within
Step 1.
For each contributing node v, we determine the left bound
Step 2.
Place all the points
Step 3.
Determine the coverage degree of each point gotten in Step 2. In Figure 3, a coverage degree of a point, P, demonstrates the coverage degree of the angle range bounded by P and its nearest left neighbor on the segment. For example, coverage degree of point
For each point on the line segment
If the minimum coverage degree of all the angle ranges is not smaller than the demanded coverage degree of

Line segment coverage diagram.
Step 4.
Let
We now explain more about the parameters in the algorithm. First, we can set
Second, the value of
With the hole tolerance parameter, toler, we achieve a tradeoff between network performance and lifetime. From the condition:
Let us explain the condition
In Figure 4, we see node v is a distant contributing node of node u, both have a sensing range of

Condition explanation.
So we get
Now, we will show how the algorithm works by an example. Suppose node u has 8 neighbors as shown in Figure 5(a), and the demanded coverage degree is 1.

Example of the algorithm.
First, for each contributing node directly within our sensing range, 1, 3, 5, and 7, calculate the left and right bounds, and mark them with node
Second, mark the covered areas on a line segment coverage diagram as shown in Figure 3.
Third, calculate the coverage degree of each point. In Figure 6, we visualize the coverage for each section of the line segment coverage diagram. We can see that the minimum coverage degree is 1, which is the demanded coverage degree, so node u is determined to be redundant. If the required coverage degree is 2, we would have to add more neighbors as contributing nodes by increasing the radius of our comparison loop.

Line segment with coverage degree.
4.2.2. Redundancy Decision in Heteroradius WSN
In heteroradius WSN, the redundancy algorithm is provided in Algorithm 2 and shares most of the characteristics of the homoradius WSN, so next we only describe the different parts.
/* /* /* toler is hole tolerance of the WSN. (1) (2) (3) (4) (5) (6) add 1 coverage degree to each existing bound point (7) (8) (9) Calculate the left bound (10) (11) (12) Calculate the coverage degree of each bound point to get the minimum coverage degree (13) (14) (15) (16)
Suppose the sensing radius of node u and v meets

A different case between heteroradius WSN and homoradius WSN.
4.3. Status Transfer
Each node determines its redundancy using the redundancy algorithms (See Algorithms 1 and 2) and may switch status dynamically when its redundancy eligibility changes. Redundant nodes should enter sleep mode, while nonredundant ones are working. However, if more than one node goes to sleep simultaneously, it may cause coverage hole; or if they turn active at the same time, network energy may be wasted. To resolve this problem, different collision prevention mechanisms or scheduling schemes are introduced into this field [10, 11]. But this is still an open issue. Thus, in this paper, we also introduce a different mechanism. But the main contribution of this paper is that it proposed algorithms for nodes to acquire their off-duty eligibility (i.e., to determine if they are redundant or not). Also, our algorithms are independent to the collision prevention mechanisms. So, in the analysis and simulation part, we only focus on evaluating the performance of Algorithms 1 and 2. Evaluating and further research on the collision prevention mechanism are our future work.
Now, we describe in detail this mechanism. Each sensor at any moment is in one of the following five states: ACTIVE, that is, the sensor monitors its monitoring region and communicates with other sensors; SLEEP, that is, the node is put into a low power mode to save energy; JUDGE: the sensor collects information of its neighbors and runs the redundancy decision algorithm; OFF-DELAY: the sensor waits for a period before going to SLEEP; ON-DELAY: the sensor waits for a period before going to ACTIVE.
When a node is in ACTIVE state: we trigger a timer When nodes being in SLEEP state: when a sensor goes sleep, we start a timer When nodes being in JUDGE state: in this state, the sensor does two things. First, it broadcasts a Hello message to regenerate its neighbor table and learn their positions from its neighbors' reply messages. Then, it runs the redundancy decision algorithm to determine whether it is redundant or not. It transfers to the ON-DELAY state if it is not redundant; else it enters the OFF-DELAY state. When nodes being in ON-DELAY state: we set a timer When nodes being in OFF-DELAY state: set a timer
The values of the timers will affect the responsiveness of HRS.
Figure 8 provides a useful visualization of the status transfer in an FSM.

Status transfer FSM.
5. Analysis and Simulation
Now, we evaluate the performance of HRS by simulations. Similar with CCP and TIAN, we also let each node decide whether to turn off or not in a random sequence, and the decision of each node is visible to all the other nodes. Namely, according to this random sequence, after calculating its actual coverage degree by HRS, CCP, or TIAN, each node compares this degree with the requested coverage degree. If the former is no less than the later, this node turns itself off.
We have taken monitored area as
5.1. The Impact of Hole Tolerance
All nodes run HRS independently. We compute the network coverage percentage at every time slot until the coverage percentage of the network is lower than a demanded limit (we set it as 50% here) and then figure out the average coverage percentage. The results are shown in Table 1 and Figure 9. We can see that, for a certain number of nodes, the average coverage percentage does not appear to be much affected by the hole tolerance level.
The impact of hole tolerance on coverage percentage.

Coverage percentage affected by hole tolerance.
Next, we examine how hole tolerance affects network lifetime. Figure 10 shows a 3D surface plot of the network lifetime for different hole tolerance values. We can see that increasing the hole tolerance of the network results in a longer network lifetime. To have a clearer view, we calculate the average lifetime of WSNs with different number of nodes (say 200, 400, or 600 in our simulations) and different hole tolerance (say from 0.1 to 0.8 in our simulations). As shown in Figure 11, it is clear that the increase in hole tolerance from 0 to 0.4 has a great effect after which its performance increase is much less. We can also get the information that gives a certain network (obviously the node number is certain), then network lifetime will be increased as tolerance increases.

The impact of hole tolerance.

Hole tolerance versus network lifetime.
From Figure 11, we can easily observe that the curves representing the results gotten from WSNs with more nodes are steeper than those gotten from WSNs with fewer nodes. This is because of the little coincidence phenomena. That is to say, when the number of nodes is small, the nodes are sparsely scattered so that there is little or no coincidence of any two sensing area. In this case, the increase of toler has little effect on the network lifetime. Thus, our HRS scheme fits denser network better. Since WSN is normally composed of a large number of sensor nodes by definition, our scheme fits WSN very well.
From the above two experiments, we see that average coverage percentage varies moderately and the hole tolerance does not have obvious effect on it. However, network lifetime is increased to a certain degree by increasing hole tolerance, though, after 0.4, the increase is much less. So we can achieve a longer network lifetime when using our hole tolerance mechanism.
5.2. The Performance of HRS
This experiment compares the performance of our HRS to two very popular protocols TIAN and CCP. Similar to HRS, TIAN and CCP are decentralized protocols designed to preserve coverage by turning off redundant nodes to conserve energy in a sensor network. The eligibility rules in the TIAN protocol, CCP, and HRS are different. The main advantage of HRS lies in its ability to configure the network to a specific hole tolerance level, which is not supported in TIAN and CCP protocols.
We perform the same experiment as before with HRS using tolerance levels of 0, 0.4, and 0.8. The experiment results, displayed in Figure 12, show that, even when hole tolerance is 0.8 (toler = 0.8), HRS gets close to the same average coverage percentage as TIAN and CCP. When toler = 0, the curve of HRS and TIAN almost coincide, which means, through the tolerance modulation, HRS can achieve the same coverage performance as TIAN. We then compare the average number of alive nodes gotten by different schemes. As can be seen from Figure 13, when the hole tolerance is greater than 0 (toler > 0), HRS has a considerably smaller number of active nodes and hence leads to more energy conservation than the other two protocols do. We subsequently draw a picture of the lifetime comparison in Figure 14 from which we clearly see that HRS gets longer lifetime than others as we expect.

Average coverage percentage comparison.

Average alive node number comparison.

Network lifetime comparison.
5.3. Complexity Analysis
Now, we analyze the communication complexity and computing complexity of these three algorithms. For the communication complexity, since HRS, CCP and TIAN all need and only need to collect neighbor nodes to determine the off-duty eligibility by communication, their communication complexity is similar.
For the computing complexity, as can be seen from the steps HRS follows, the step to calculate the coverage degree of each bound point to get the minimum coverage degree takes the longest time. This step has a computing complexity of
6. Conclusion and Future Work
In this paper, we have designed a hole-tolerant redundancy scheme, HRS, for WSNs. This scheme introduces a parameter, called hole tolerance, which renders the network capable of varying from 100% strict coverage performance to moderately poorer ones to achieve longer network lifetime. It allows different areas to set different requested coverage degrees, and it is applicable in both homoradius networks and heteroradius networks.
Our experiments show that hole tolerance has no remarkable impact on average coverage percentage and that network lifetime will be extended as hole tolerance is increased. We also compare the performance of HRS with another two famous schemes, TIAN and CCP. HRS achieves a similar average coverage percentage to TIAN and CCP, and using hole tolerance can reduce the number of active nodes resulting in a considerable increase in network lifetime.
For future work, on the one hand, we will evaluate and do more research on the collision prevention mechanism proposed in this paper. On the other hand, HRS is a hole-tolerant scheme, the network can fulfill normal monitor task when the coverage percentage is not less than a specific value. We demonstrated how the hole tolerance affects the coverage percentage. But we did not give the mathematical relationship between hole tolerance and coverage percentage. This would be our future work.
Footnotes
Acknowledgments
This work was supported in part by China's Natural Science Foundation (61173009 and 61070169), the Chinese National Programs for High Technology Research and Development (2011AA010502), Doctoral Fund of Ministry of Education of China (20091102110017), Natural Science Foundation of Jiangsu Province (BK2011376), and Specialized Research Foundation for the Doctoral Program of Higher Education of China (20103201110018).
