- About this Journal ·
- Abstracting and Indexing ·
- Aims and Scope ·
- Annual Issues ·
- Article Processing Charges ·
- Articles in Press ·
- Author Guidelines ·
- Bibliographic Information ·
- Citations to this Journal ·
- Contact Information ·
- Editorial Board ·
- Editorial Workflow ·
- Free eTOC Alerts ·
- Publication Ethics ·
- Reviewers Acknowledgment ·
- Submit a Manuscript ·
- Table of Contents

International Journal of Distributed Sensor Networks

Volume 2012 (2012), Article ID 106439, 15 pages

http://dx.doi.org/10.1155/2012/106439

## An Energy-Efficient CKN Algorithm for Duty-Cycled Wireless Sensor Networks

^{1}School of Software, Dalian University of Technology, Dalian 116621, China^{2}Department Multimedia Engineering, Osaka University, Osaka 565-0871, Japan^{3}School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China

Received 21 December 2011; Revised 14 March 2012; Accepted 15 March 2012

Academic Editor: Yunhao Liu

Copyright © 2012 Lei Wang et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

To prolong the lifetime of a wireless sensor network, one common approach is to dynamically schedule sensors’ active/sleep cycles (i.e., duty cycles) using sleep scheduling algorithms. The connected *K*-neighborhood (CKN) algorithm is an efficient decentralized sleep scheduling algorithm for reducing the number of awake nodes while maintaining both network connectivity and an on-demand routing latency. In this paper, we investigate the unexplored energy consumption of the CKN algorithm by building a probabilistic node sleep model, which computes the probability that a random node goes to sleep. Based on this probabilistic model, we obtain a lower epoch bound that keeps the network more energy efficient with longer lifetime when it runs the CKN algorithm than it does not. Furthermore, we propose a new sleep scheduling algorithm, namely, Energy-consumption-based CKN (ECCKN), to prolong the network lifetime. The algorithm EC-CKN, which takes the nodes’ residual energy information as the parameter to decide whether a node to be active or sleep, not only can achieve the *k*-connected neighborhoods problem, but also can assure the *k*-awake neighbor nodes have more residual energy than other neighbor nodes in current epoch.

#### 1. Introduction

Wireless sensor networks (WSNs) are normally powered by batteries with limited energy, which are difficult or impossible to be recharged or replaced. A common approach for saving the sensor nodes’ energy is to select a subset of nodes to remain active/awake and let others go to sleep in a given epoch. Most of current literatures on sleep scheduling in WSNs are to achieve *point coverage* and/or *node coverage* problems [1]. *Point coverage* problem (also called *spatial coverage*) focuses on selecting a set of active nodes in an epoch so that every point of the deployment space is covered, while considering some optimization goals, for example, minimizing energy consumption [2], minimizing average event detection latency [3]. *Node coverage* problem (also called *network coverage*) focuses on choosing a set of active nodes, in which (1) they construct a connected backbone and (2) sleeping nodes are direct neighbors of at least one active node [4]. This node coverage problem is to ensure that any two nodes in the network can communicate with each other through the connected backbone.

The Connected *K*-Neighborhood (CKN) algorithm is a distributed sleep scheduling algorithm [1], which can reduce the number of active nodes efficiently. It keeps the network -connected and optimizes the geographic routing performance. Supporting the geographic routing performance is not studied in any previous *point coverage* and *node coverage* researches. Although, the CKN algorithm performs well with the geographic routing protocols, the following questions are not addressed in paper [1]. (1) *How frequently should the CKN algorithm be executed in the network so that it can really help to save energy, for each time executing the CKN algorithm also consumes energy?* Intuitively, executing the CKN algorithm will consume a mass of energy with substantial data transmission to exchange local information between nodes and their neighbors, which influences the energy consumption distribution of network. (2) *Do all active sensor nodes in the CKN algorithm *[1]* consume the energy uniformly in each epoch?* We identify the *nonuniform energy consumption* problem, as shown in Figure 1. It is recognized that when executing the CKN algorithm in WSNs, sensor nodes with less residual energy are possible to be selected, which may result in that the energy of these sensor nodes can be fast consumed. The problem is caused by: *the CKN algorithm chooses the active nodes absolutely based on the **s that are randomly given at the beginning of executing the CKN algorithm in each epoch*. In other words, the CKN algorithm cannot ensure the network energy is balancedly consumed.

Motivated by above two major issues, we conduct theoretical studies on two important questions based on the CKN algorithm. The first question is as follows. *Is the CKN algorithm energy saving for any given value of ** and the epoch? If not, how frequently should the CKN algorithm be executed so that the network is energy saving?* In order to find out the relationship between the epoch and the energy consumption, we build a probabilistic model for the CKN algorithm to compute the probability that each random node goes to sleep and the expected total number of epochs during each node’s lifetime. We formulate the lower bound of an epoch to keep the CKN algorithm energy efficient.

We address the second question based on the analysis for the first problem: *How do we design a new sleep scheduling algorithm based on the CKN algorithm that can balance the energy consumption to prolong network lifetime further?* Satisfying all those requirements that the CKN algorithm holds, a new decentralized sleep scheduling algorithm is challenging. In the light of the discussions for the question 1, we propose a new sleep scheduling algorithm, named energy-consumption-based CKN (EC-CKN), to prolong the network lifetime. The advantage of the EC-CKN algorithm over the original CKN algorithm is that it takes the nodes’ residual energy information as parameter to decide whether a node to be active or sleep. The EC-CKN algorithm inherits all the major properties of the CKN algorithm, that is, solving the -connected neighborhoods problem. Meanwhile, it also makes a significant new contribution to the energy efficiency by assuring the -active neighbor nodes have more residual energy than other neighbor nodes in the current epoch. A theoretical analysis on the energy consumption of the EC-CKN algorithm is given to show the correctness of the new contribution.

The rest of the paper is as follows. Section 2 shows the network model. Section 3 presents the original CKN algorithm regulation and its properties. Section 4 builds a probabilistic model to compute the probability that a random node goes to sleep. Section 5 presents the EC-CKN algorithm. Section 6 demonstrates the properties of the EC-CKN algorithm. Section 7 shows the simulation results about the original CKN algorithm and the EC-CKN algorithm, comparing theoretical values and simulation results. Finally, Section 9 concludes the paper.

#### 2. Network Model

##### 2.1. Communication Network Model

A multihop sensor network is modeled by a graph , where is the set of sensor nodes and is the set of directed links. Each node has a uniform transmission radius of , and the necessary condition of is and a node is the next hop of to the sink by the routing protocol. If , we use to denote . Each node also has a uniform interference radius of . An node is interfered by the signal from , if and is not the intended receiver. Let be the interference region that centers at with the interference radius . Each node is only equipped with a single radio interface and has the uniform initial energy . The entire network lifetime is divided into epochs, and each epoch is . At the beginning of each epoch, a node transmits packets in , and then it runs the sleep scheduling algorithm to decide the state of the next epoch in (where ) as shown in Figure 2.

##### 2.2. Event Generation Model

Assume each node has a uniform sensing radius . Let denote the sensing region of the node , which centers at with the sensing radius . An event occurs when the sensing unit of a node picks up a signal with the power above a predetermined threshold within the sensing region [5]. Suppose the temporal event behavior over the entire sensing region, , is a Poisson process with an average event rate . Let denote an independent probability distribution of the spatial distribution of events. Let denote the probability that an event is detected by a node , given the fact that it occurred in : where is the spatial distribution of events that is characterized by an independent probability distribution. Let denote the probability that events occur in an epoch at a node . Therefore, the probability of no events occurring in over an epoch is given by Let denote the probability that at least one event occurs in an epoch at a node : That is the probability of at least one event occurring at the node is an exponential distribution characterized by a spatially weighted event arrival rate .

##### 2.3. Buffer Analysis

Now, we consider two sources of traffic as an input to the buffer of each node [6].

*Generated Packets*

The sensing unit of a node senses events and generates packets as discussed in Section 2.2. These packets are *generated packets*. For a node , the rate of the generated packets is denoted by .

*Relay Packets*

A node also receives packets from its upstream nodes and then forwards them to the sink node. (Along the data stream from a source node to the sink node by the routing protocol, downstream nodes are closer to the sink node, and receive packets sent by the node. Upstream nodes are far away from the sink node, and transmit packets to the node). These packets are referred as *relay packets*. The rate at which a node receives relay packets from a node is denoted as .

Therefore, the input packet rate of ’s buffer, , can be written as where is the total relay packet rate at the node , is the set of nodes that have the node as the next hop, and is the packet rate from the node to the node . Let be the output rate of a node, which is given by where is the packet error rate.

##### 2.4. Channel and Energy Consumption Model

The energy consumption model characterizes energy consumption of a node in the network. Suppose there is no energy consumption when a node is sleep. If a node is active, we classify the energy consumption into three general categories.

*(1) The Constant Energy Consumption*

is the minimum energy needed to sustain a node when it is active without the packet transmission. It includes, for example, the battery leakage, energy consumed during the state transformation.

*(2) The Additional Energy Consumption*

is the energy consumed by the data transmission during the sleep scheduling algorithm running time.

*(3) The Conventional Energy Consumption*

includes the receiving energy consumption and the transmitting energy consumption except the local information exchange in the sleep scheduling algorithm, which is based on the first-order radio model [7].

The energy loss is due to the channel transmission, is the transmit amplifier. And the transmitting energy consumption for a bit packet is and the receiving energy consumption is where is energy consumed by the transmitter or receiver circuitry.

##### 2.5. Lifetime Definition

There is no universally agreed definition of network lifetime as it depends on the specific application. The lifetime can be measured by the time when the first node exhausts its energy, or when a certain fraction of nodes is dead, or even when all nodes are dead. Alternately, it may be reasonable to measure the network lifetime by application-specific parameters, such as the time when the network can no longer relay sensory data packets. In this paper, we define the network lifetime is the time when the first sensor node run out its energy from the beginning. The general network lifetime is the exact individual lifetime of each active node [8].

Theorem 1. *For a sensor network, each node has nonrechargeable initial energy , the average general network lifetime , is given by
**
where is the constant energy consumption on the first died node, is the expected receiving energy consumption, and is the expected transmitting energy consumption.*

*Proof. *Suppose there are independently and identically distributed trials on the same sensor network to record the network lifetime , the receiving energy consumption of each bit , and the transmitting energy consumption of each bit . For the th trial (), the total energy consumed by the first died node during the whole lifetime is
where is the number of bits to be received, and is the number of bits to be transmitted of the first died node during the network lifetime of the th trial. Summing (9) up over the trials and dividing both sides by , we obtain
Note that is the average receiving rate and is the average transmitting rate.

The average receiving energy consumed in the th received bit can be written as
where for and 0 otherwise. is the total number of the occurrence of the th received bit among the trials, and is the maximum number of received bits during the network lifetime. The probability that the received bit chosen randomly happens to the th received bit is given by
Averaging (11) over the received bit chosen randomly indexing , the expected receiving energy consumption is defined as
where is the average energy consumed in th bit packet, denotes the expectation over the randomly chosen received packet indexing .

Similarly, the expected transmitting energy consumption is
where is the average energy consumed in th transmitted packet, denotes the expectation over the randomly chosen transmitted packet indexing .

#### 3. A Brief Description of CKN

In [1], the studied WSN is represented as an undirected communication graph . is the set of ’s neighbors. The connected -neighborhood problem is defined as (i) each node has at least active neighbors, which can be called awake neighbors; (ii) all active nodes are connected. To solve the problem, the authors developed a sleep scheduling algorithm: connected *K*-neighborhood (CKN).

In CKN, each node picks a random rank , broadcasts the , and collects its neighbors’ ranks in . And then, broadcasts and collects from its neighbors, where . If or its neighbors has less than neighbors, will remain awake. Otherwise, computes a subset of that is a set of nodes having . “Before the node goes to sleep it needs to make sure that all nodes in are connected by nodes with and each of its neighbors has at least neighbors from ’’ [1].

The CKN algorithm has the following properties: first, each node (awake or not) with neighbors must have at least awake neighbors in each epoch; second, there is the minimal average number of awake nodes per epoch; finally, awake nodes change from epoch to epoch. For any , there are more than neighbors for each node, where is the number of nodes in the network. Then, with high probability, , where is the number of awake nodes by the CKN algorithm and is the number of awake nodes by an optimal algorithm that finds a minimum connected -neighborhood as Figure 3.

#### 4. Analysis of the CKN Algorithm

In this section, we build up a probabilistic model for the CKN algorithm to compute the probability that one node goes to sleep in each epoch. Based on the probability, we formulate the lower bound of an epoch to keep the CKN algorithm energy efficient.

*Notations used in this section*

is the set of ’s neighbors, and is the set of ’s 2-hop neighbors. and are the subsets of and having . , , , and are the number of the elements in , , , and , respectively. Graphs and are composed of nodes and potential links in and .

For a homogeneous Poisson point process in two dimensions, the probability that a random node has neighbors is [9] where is the nodes density. And a node is isolated with a probability of . The expectation of the number of ’s neighbors is

If there are at least different paths connecting any two different vertices in the graph , the graph is *k-connected* (). The probability that the graph is -connected is

##### 4.1. Sleep Probability in the CKN Algorithm

For the CKN algorithm, when a node has at least neighbors, whether it goes to sleep is decided by two factors: (1) “any two nodes in are connected either directly or indirectly through ’s 2-hop neighbors that have less than ’’ and (2) “any node in has at least neighbors for ’’ [1].

Lemma 2. * and are binomial distributions, where is the probability that a node has .*

*Proof. *Let be the random ranks for nodes in . Suppose and . Let
Let , and the probability is
where and . Similarly, .

Theorem 3. *Under the CKN algorithm, the sleep probability of a node is
**
and the awake probability is
**
where , the probability a node satisfies the first condition, is defined as
**
and , the probability satisfies the second condition, is defined as
*

*Proof. *If and its neighbors have at least neighbors, the two conditions deciding whether to sleep or not can be interpret as the following corresponding conditions: (1) the graph is connected, and (2) the graph is -connected and each node in the set has at least neighbors in .

The probability that the graph is -connected is
where is the minimum degree in the graph , and is the node density in the graph .

The probability of the condition (2) is
where , the probability that the graph is -connected, can be expressed as
and is the probability that a node has at least neighbors in , which is
where , and is the number of the elements in the set .

##### 4.2. Energy Consumption of the CKN Algorithm

Based on the result of the probability a random node goes to sleep, we can now analyze the node energy consumption for two cases: (1) it runs the CKN algorithm; (2) it does not run the CKN algorithm.

Lemma 4. *When a node executes the CKN algorithm, its energy consumption is
**
and the energy consumption of a node during each epoch is
**
where and are the constant energy consumptions of a node during the time of the CKN algorithm executed and an epoch, respectively.*

Theorem 5. *Under the CKN algorithm, the lower bound of an epoch keeping the network energy efficient is
**
where and are the expectation energy consumption during the time of the CKN algorithm executed and the expectation of the energy consumption during an epoch.*

*Proof. *Suppose there are *i.i.d.* trials on the same network that runs the CKN algorithm as the sleep schedule to record the network lifetime, , and the epoch is in each trial. For the th trial, the total energy consumed by the first died node during the lifetime is
where is the number of epochs in the th trial. Summing (31) up to the trials and dividing both sides by , we obtain
Note that .

The average energy consumed in the th epoch can be written as
where if and the node is awake in the th epoch, and 0 otherwise. is the total number of the th epoch that the node is awake among the trials, and is the maximum number of epochs during the network lifetime. The probability that a randomly chosen awake epoch of a node happens to the th epoch is given by
where is the nodes awake probability in the th trial. Averaging (33) over the randomly chosen epoch indexing , the expected th epoch energy consumption except for the energy consumed by the CKN algorithm is defined as

#### 5. The Energy-Consumption-Based CKN Algorithm

We develop a new sleep scheduling algorithm to extend the network lifetime, which can still have all properties of the CKN algorithm.

A scalable distributed solution to the connected -neighborhoods problem based on the nodes’ current residual energy information is challenging for several reasons. First, a node can go to sleep assuming that there are at least neighbors being awake to keep it -connected. Second, the outcome of the algorithm must change over epochs so that all nodes have opportunities to sleep. Third, even though nodes decide to sleep or wake up based on their local information, the whole network must be globally connected. The aforementioned three challenges have been achieved by the CKN algorithm [1], which keep the network duty-cycled and connected -neighborhood. Fourth, awake neighbors of any node have -top residual. The last one makes sure the energy of the network consumed balancedly, which is the main strength that the EC-CKN algorithm has over the original CKN algorithm.

We address the challenges by proposing the EC-CKN algorithm. The pseudocode of Algorithm 1 depicts the EC-CKN algorithm, which is repeated in each epoch on each node. The algorithm takes an input parameter, , the required minimum number of per node’s awake neighbors. In EC-CKN algorithm, a node broadcasts its current residual energy information (Step 1). It computes a subset of neighbors having (Step 5). Before goes to sleep, it makes sure that any two nodes in are connected either directly or indirectly through the node that is in the ’s 2-hop neighbors having , and its neighbors have at least neighbors from (Step 6). These requirements ensure that when a node has less than neighbors, none of its neighbors goes to sleep, and when it has more than neighbors, at least neighbors decide to remain awake. Note that these requirements are easy to keep by computing locally with 2-hop neighborhood information. The current residual energy is exchanged in Steps 2 and 3.

#### 6. Properties of the EC-CKN Algorithm

This section analyzes the network lifetime, the awake probability, and the energy consumption of the network under the EC-CKN algorithm.

Theorem 6. *For any , the average network lifetime of the EC-CKN algorithm increases with the increases of the ratio of the network size and , .*

*Proof. *Suppose nodes are placed uniformly at random within a deployment area such that the average number of neighbors per node is . Let , for constant determined by the analysis. Consider executing the algorithm EC-CKN on the network, and let be the residual energy of the th largest residual energy selected by a node in the th epoch. We claim that, *w.h.p.*, all nodes with residual energy go to sleep. Because there are at most nodes with residual energy at least , we have the average number of the awake nodes in each epoch is
And the average network lifetime under the algorithm EC-CKN can be written as
where is the energy consumed by executing the EC-CKN algorithm, and is the length of an epoch. In comparison with the energy consumed by the awake nodes in an epoch, the energy consumed by the sleep nodes in an epoch is considered negligible:

For the algorithm EC-CKN, a node could have four states: *Init*, *Awake*, *Sleep,* and *Dead*. Let be the set of the node’s states, and is the capacity of the states. Nodes can turn into the states *Awake,* and *Sleep* from the states *Init*, *Awake* and *Sleep*, respectively. And the state *Dead* can be only transformed from the states *Awake* and *Sleep*. Figure 4 shows the states transition graph in the algorithm EC-CKN, in which vertices are the states of nodes and the weights of edges are the transition probability between the two states in the th epoch.

Theorem 7. *Under the algorithm EC-CKN, the difference of the energy consumption between nodes and in the th epoch is
**
where and are both the Skellam distributions and is the average probability that a node is awake in the -th epoch.*

*Proof. *Let denote the states of in epochs, and let the chain
denote the difference between the energy consumed by nodes and in each epoch, where . , where and are the conventional energy consumption of nodes and if they are awake in the th epoch. The factors and depend on the state of nodes and . If , , and if , , which is the same with .

Suppose there are independently and identically distributed trials. For the th trial (), the difference between the energy consumption of the two nodes in the th epoch is
The average difference of energy consumption in the th epoch can be defined as
where and are the number of received bits and transmitted bits of the node in the th epoch during the th trial. is the time of the conventional data transmission time of each epoch. We discuss the difference between the energy consumption of two nodes in the following two cases.*Case 1 (). *According to (33) and (14), we obtain
*Case 2 (). *According to (33) and (34), we obtain
where is the expected probability that the node is awake in the -th epoch.Note for and are two independent Poisson distributions, is the Skellam distribution. Similarly, is also the Skellam distribution.

Theorem 8. *Consider a random node , which has more than neighbors, the probability that a node is awake in the th epoch under the EC-CKN algorithm is
*

*Proof. *We introduce a new chain
to denote the difference between the residual energy of the two nodes and , where . Then, we obtain
Therefore, the number of elements in the set is , where

Theorem 9. *Under the EC-CKN algorithm, the upper bound of the network lifetime is
**
where is the steady-state probability that the action is chosen when the chain is in the state under the policy .*

*Proof. *Now, we construct a Markov State Decision chain for each node :
where , and denotes the state in the th epoch (), and is the action under the state

Let the policy denote the probability that the action is chosen when , which satisfies the following two conditions:
Under the policy , the sequence of states constitutes a Markov chain with the transition probability , which can be written as
For the policy , let denote the steady-state probability that the chain is in the state and the action is chosen:
The vector satisfies
Equations (55)(i) and (55)(ii) are obvious, and (55)(iii) follows as the left-hand side equals the steady-state probability of being in the state and the right-hand side is the same probability computed by conditioning on the state and action chosen one epoch earlier.

Suppose that a reward is earned whenever the action is chosen in the state in the ’th epoch. Since denotes the reward earned at the epoch , the expected average reward per epoch under the policy can be written as
Therefore, can be interpreted as the following linear program:
is a special case of the linear programm and is solved by a standard linear linear programming algorithm known as *the simplex algorithm*. The simplex algorithm solves the linear program by moving from an extreme point of the feasibility region to a better extreme point until the optimal is reached. So we can figure out the lower bound and upper bound of the lifetime by the linear programming (57).

Lemma 10. *Under the EC-CKN algorithm, the upper bound network lifetime is
**
where is the steady-state probability that the action is chosen when the chain is in the state under the policy .*

#### 7. Simulation

*Simulation Setup*

In NetTopo [10], we conduct extensive simulation experiments. The studied WSN has the network size 800 × 600 m^{2}. The number of deployed sensor nodes are increased from 100 to 1000 (each time increased by 100). The value of is changed from 1 to 10 (each time increased by 1). For every number of deployed sensor nodes, we use 100 different seeds to generate 100 different network deployment. A source node is deployed at the location of (50, 50), and a sink node is deployed at the location of (750, 550). The transmission radius for each node is 60 m.

*Routing Algorithm*

TPGF routing algorithm [11] is one of the earliest geographical multipath routing algorithms designed for facilitating the multimedia stream data transmission in static and always-on wireless sensor networks (WSNs). It focuses on exploring the maximum number of optimal node-disjoint routing paths in network layer in terms of minimizing the path length and the end-to-end transmission delay. TPGF routing algorithm includes two phases. Phase 1 is responsible for exploring the possible routing path. Phase 2 is responsible for optimizing the found routing path with the least number of hops. The simulation results with changed values in this figure reflect the comparison between the original average length of paths and the optimized average length of paths.

*Sleep Probability of the CKN Algorithm*

The node’s sleep probability has been analyzed in Section 4.1. Figure 5 describes the node’s theoretic sleep probability based on the probability model that has been set up and covers the comparison between the simulation results and the theoretic value. We enlarge the some factors of the probabilistic model so that the theoretic value is greater than the simulation when . While , the theoretical results and simulation results approximate every much. Moreover, the same variation trend proves that our model is ponderable for nodes’ sleep probability in the CKN algorithm.

*Network Lifetime Under the CKN Algorithm*

Based on the node sleep probability from the probabilistic model and simulation, we can get the relative probability stretch variation curve with the epoch. *Relative probability stretch* is defined as a function of the expected number of epochs with active neighbors compared to the expected number of epochs with a larger active neighbors. In our work, we assume that the radio dissipates nJ/bit to the transmitter or receiver circuity and pJ/bit/m^{2}, and the data rate is 20 kbps. In Figure 6, there is a key value of the length of the epoch time () when and are certain, which is the intersection of relative probability stretch and reference axis. The CKN algorithm is energy efficient if the epoch is less than the key value. Otherwise, the node will consume more energy by the CKN algorithm than it is always active.

*Network Lifetime Comparison between the CKN Algorithm and the EC-CKN Algorithm*

The network lifetime of the CKN algorithm and the EC-CKN algorithm in a WSN is represented by the number of epochs. We conduct simulation for the CKN algorithm and the EC-CKN algorithm in a WSN and compare the network lifetime under the same situation in Figures 7 and 8. Results in Figures 7(a) and 7(c) confirm that the energy consumption of the EC-CKN algorithm is better managed and balanced than the CKN algorithm. Results in Figures 7(b) and 7(d) reveal the influence of changing the value of *k*: decreasing the value of in the EC-CKN algorithm can prolong the network lifetime, particularly when the network nodes are densely deployed. Figures 7(a) and 7(b) show the whole distribution and tendency varying from the different combinations between and (the total number of deployed nodes in the network). Correspondingly, Figures 7(c) and 7(d) have the same meaning for the EC-CKN algorithm. Figure 8 compares the network lifetime between the CKN algorithm and the EC-CKN algorithm, by conducting the two algorithms under the same scenario. And the results give a straight proof that the EC-CKN algorithm can provide longer network lifetime than the CKN algorithm.

#### 8. Related Work

Network lifetime has been defined in various ways [12–17], and an energy-efficient mechanism may choose to maximize a certain type of network lifetime. One useful mechanism is the MAC layer power saving scheme, which reduces energy consumption by minimizing radio transceivers’ idle time. SMAC [18] is an important MAC protocol designed for sensor networks, which forces sensor nodes to operate at low duty cycle by putting them into periodic sleep instead of idle listening. The timeout-MAC protocol (TMAC) improves SMAC by using an adaptive duty cycle [19]. Data-gathering MAC (DMAC) also uses an adaptive duty cycle, which provides low node-to-sink latency in convergecast communication by staggering the wake-up times of the nodes in the convergecast tree [20]. Pattern MAC (PMAC) [21] allows each sensor node determines the sleep-wake-up schedules based on its own traffic and the traffic patterns of its neighbors. BMAC [22] and XMAC [23] are two asynchronous duty-cycle-based protocols. In BMAC, each sensor node periodically wakes up to check whether there is any activity currently on the wireless channel or not. If so, the node remains active to receive a possible incoming packet. In this way, the node will receive one or more packets that are actually destined for other nodes. XMAC uses a strobed preamble to solve the overhearing problem in BMAC. A strobed preamble includes a sequence of short preambles prior to DATA transmission. Obviously, the preamble transmission of BMAC and XMAC occupies the wireless medium for a long time under the light traffic load. To solve the problem, WiseMAC [24] is proposed. WiseMAC is similar to BMAC except that senders efficiently reduce the length of the wake-up preamble by exploiting the sampling of the schedules of its neighbors.

Another common technique to minimize the energy consumption and extend the network lifetime is to put some sensors in the sleep state and put others in the active state for the sensing and communication tasks. When a sensor is in the sleep state, its processor is turned off, but a timer or some other triggering mechanism may be running to wake up the sensor. On the other hand, all the components in the sensor are turned on when it is in the active state. Therefore, the energy consumed in the sleep state is only a tiny fraction of that consumed in the active state. One complexity here is that different types of sensors may support different sets of states. For example, the AMPS sensor has three sleep states: *Monitor*, *Observe*, and *Deep Sleep* [25]. A sleep scheduling mechanism allows each sensor to determine when it should switch its state and what state it will switch to. Kumar et al. adopt the randomized independent scheduling (RIS) mechanism extending network lifetime while achieving asymptotic -coverage [26]. RIS assumes that time is divided into epochs based on a time synchronization method. At the beginning of a epoch, each sensor independently decides weather to become active with probability or go to sleep with probability . Thus, the network lifetime is increased by a factor close to . Berman et al. presented a centralized and a distributed algorithm to maximize network lifetime while achieving -coverage [27]. In the distributed algorithm, each sensor is in one of three states: *active*, *idle,* or *vulnerable*. In the vulnerable state, if the sensor discovers that part of its sensing area cannot be covered by any of its active or vulnerable neighbors, it immediately enters the active state. Otherwise, it enters the idle state if its sensing area can be monitored by either active neighbors or vulnerable neighbors with a higher energy level. Another distributed scheduling mechanism named lightweight deployment aware scheduling (LDAS) is proposed in [16]. Unlike the aforementioned distributed algorithm, LDAS does not ask if the sensor nodes are equipped with GPS or other devices to obtain location information. It assumes that each active node knows the number of its active neighbors. If the number of the active nodes exceeds a threshold, the node randomly selects some of its neighbors and sends tickets to them. When a node receives enough tickets from its neighbors, it may enter the sleep state after a random backoff period. Probing environment and adaptive sensing (PEAS) mechanism was designed for high-density sensor networks in a harsh environment [17]. Each node broadcasts a message with a transmission range of after sleeping for a random period. A node will go to the active state only if it receives no replies from its active neighbors. PEAS assumes that sensor nodes may fail frequently and unexpectedly, which makes synchronized sleeping algorithm infeasible. Coverage configuration protocol (CCP) is an integrated coverage and connectivity configuration protocol [4]. The protocol defines that nodes have three states: ACTIVE, LISTEN, and SLEEP. Each node is initially ACTIVE. When it receives a message, it goes to the LISTEN state and starts a random LISTEN timer. The node will go to SLEEP if it satisfies the following conditions: (i) its LISTEN timer expires; (ii) the network is still connected when it goes to SLEEP. In the SLEEP state, a node will set a random SLEEP timer. When the timer expires, it will enter the LISTEN state. PECAS (probing environment and collaborating adaptive sleeping) is an extension of PEAS. A active node in PECAS will go back to sleep after a specified period of time. It piggybacks the remaining ACTIVE time in its reply messages to its neighbors’ probe message. Therefore, an active neighbor who will go to SLEEP can schedule itself to wake up before the node goes to SLEEP, which prevents the occurrence of blind spots. Adaptive self-configuring sensor networks topologies (ASCENT) is similar to PEAS, which is also designed for high-density sensor networks. However, unlike PEAS, ASCENT does not guarantee network connectivity. Low-energy adaptive clustering hierarchy (LEACH) [28] is a cluster-based protocol, which utilizes randomized rotation of cluster heads to distribute work load among the sensors. In LEACH, the lifetime of network is divided into epochs, and each epoch includes a *set-up* phase and a *steady* phase. During the set-up phase, cluster heads are selected and each sensor joins a cluster by choosing a cluster that needs the minimum communication energy. During the steady phase, each cluster head aggregates the data from the sensors in its cluster and then forwards them to the sink. To conserve energy, nonhead sensors go to sleep at all time except that they are transmitting data. E-LEACH [15] is an extension of LEACH, which adapts the cluster heads selection algorithm to the nonuniform starting energy level among the sensors and the required number of cluster heads.

#### 9. Conclusion

When deploying real WSNs for practical applications, it is extremely important to have a good sleeping scheduling algorithm to balance sensor nodes’ energy consumption and a reasonable length for an epoch towards energy saving is extremely important. In this paper, we make the following major contributions for supporting the real WSNs applications. (1) A theoretical study is given for the CKN algorithm, which formulates the lower bound of an epoch to keep the CKN algorithm feasible. (2) A new sleep scheduling algorithm, named as EC-CKN, is proposed to balance the energy consumption and prolong the network lifetime. (3) Extensive simulation work is conducted, which proved the energy consumption in the EC-CKN algorithm is well balanced.

#### Acknowledgments

This work is partially supported by Natural Science Foundation of China under Grant no. 61070181 and Natural Science Foundation of Liaoning Province under Grant no. 20102021. L. Shu’s research in this paper was supported by Grant-in-Aid for Scientific Research (S)(21220002) of the Ministry of Education, Culture, Sports, Science and Technology, Japan.

#### References

- S. Nath and P. B. Gibbons, “Communicating via fireflies: geographic routing on duty-cycled sensors,” in
*Proceedings of the 6th International Symposium on Information Processing in Sensor Networks (IPSN '07)*, pp. 440–449, April 2007. View at Publisher · View at Google Scholar · View at Scopus - C. F. Hsin and M. Liu, “Network coverage using low duty-cycled sensors: random & coordinated sleep algorithms,” in
*Proceedings of the 3rd International Symposium on Information Processing in Sensor Networks (IPSN '04)*, pp. 433–442, April 2004. View at Scopus - Q. Cao, T. Abdelzaher, T. He, and J. Stankovic, “Towards optimal sleep scheduling in sensor networks for rare-event detection,” in
*Proceedings of the 4th International Symposium on Information Processing in Sensor Networks (IPSN '05)*, pp. 20–27, April 2005. View at Scopus - X. Wang, G. Xing, Y. Zhang, C. Lu, R. Pless, and C. Gill, “Integrated coverage and connectivity configuration in wireless sensor networks,” in
*Proceedings of the 1st International Conference on Embedded Networked Sensor Systems (SenS '03)*, pp. 28–39, November 2003. View at Scopus - A. Sinha and A. Chandrakasan, “Dynamic power management in wireless sensor networks,”
*IEEE Design and Test of Computers*, vol. 18, no. 2, pp. 62–74, 2001. View at Publisher · View at Google Scholar · View at Scopus - I. F. Akyildiz, M. C. Vuran, and O. B. Akan, “A cross-layer protocol for wireless sensor networks,” in
*Proceedings of the 40th Annual Conference on Information Sciences and Systems (CISS '06)*, pp. 1102–1107, March 2006. View at Publisher · View at Google Scholar · View at Scopus - W. R. Heinzelman, A. Chandrakasan, and H. Balakrishnan, “Energy-efficient communication protocol for wireless microsensor networks,” in
*Proceedings of the 33rd Annual Hawaii International Conference on System Siences (HICSS '00)*, p. 223, January 2000. View at Scopus - Y. Chen and Q. Zhao, “On the lifetime of wireless sensor networks,”
*IEEE Communications Letters*, vol. 9, no. 11, pp. 976–978, 2005. View at Publisher · View at Google Scholar · View at Scopus - C. Bettstetter, “On the minimum node degree and connectivity of a wireless multihop network,” in
*Proceedings of the 3rd ACM International Symposium on Mobile Ad Hoc Networking and Computing (MOBIHOC '02)*, pp. 80–91, June 2002. View at Scopus - L. Shu, C. Wu, Y. Zhang, J. Chen, L. Wang, and M. Hauswirth, “NetTopo: beyond simulator and visualizer for wireless sensor networks,” in
*Proceedings of the 2nd International Conference on Future Generation Communication and Networking (FGCN '08)*, pp. 17–20, December 2008. View at Publisher · View at Google Scholar · View at Scopus - L. Shu, Z. Zhou, M. Hauswirth, D. Le Phuoc, P. Yu, and L. Zhang, “Transmitting streaming data in wireless multimedia sensor networks with holes,” in
*Proceedings of the 6th International Conference on Mobile and Ubiquitous Multimedia (MUM '07)*, pp. 24–33, Oulu, Finland, December 2007. View at Publisher · View at Google Scholar · View at Scopus - A. Cerpa and D. Estrin, “ASCENT: adaptive self-configuring sensor networks topologies,” in
*Proceedings of the IEEE Computer and Communications Societies (INFOCOM '02)*, pp. 1278–1287, June 2002. View at Scopus - J. Deng, Y. S. Han, W. B. Heinzelman, and P. K. Varshney, “Scheduling sleeping nodes in high density cluster-based sensor networks,”
*Mobile Networks and Applications*, vol. 10, no. 6, pp. 825–835, 2005. View at Publisher · View at Google Scholar · View at Scopus - T. He, S. Krishnamurthy, J. A. Stankovic et al., “Energy-efficient surveillance system using wireless sensor networks,” in
*Proceedings of the 2nd International Conference on Mobile Systems, Applications and Services (MobiSys '04)*, pp. 270–283, 2004. View at Scopus - W. B. Heinzelman, A. P. Chandrakasan, and H. Balakrishnan, “An application-specific protocol architecture for wireless microsensor networks,”
*IEEE Transactions on Wireless Communications*, vol. 1, no. 4, pp. 660–670, 2002. View at Publisher · View at Google Scholar · View at Scopus - K. Wu, Y. Gao, F. Li, and Y. Xiao, “Lightweight networks,”
*Mobile Networks and Applications*, vol. 10, no. 6, pp. 837–852, 2005. View at Publisher · View at Google Scholar - F. Ye, G. Zhong, J. Cheng, S. Lu, and L. Zhang, “PEAS: a robust energy conserving protocol for long-lived sensor networks,” in
*Proceedings of the 23th IEEE International Conference on Distributed Computing Systems (ICDCS '03)*, pp. 28–37, May 2003. View at Scopus - W. Ye, J. Heidemann, and D. Estrin, “An energy-efficient MAC protocol for wireless sensor networks,” in
*Proceedings of the IEEE Computer and Communications Societies (INFOCOM '02)*, pp. 1567–1576, New York, NY, USA, June 2002. View at Scopus - T. Van Dam and K. Langendoen, “An adaptive energy-efficient MAC protocol for wireless sensor networks,” in
*Proceedings of the 1st International Conference on Embedded Networked Sensor Systems (SenSys '03)*, pp. 171–180, Los Angeles, Calif, USA, November 2003. View at Scopus - G. Lu, B. Krishnamachari, and C. S. Raghavendra, “An adaptive energy-efficient and low-latency MAC for data gathering in wireless sensor networks,” in
*Proceedings of 18th International Parallel and Distributed Processing Symposium (IPDPS '04)*, pp. 3091–3098, April 2004. View at Scopus - T. Zheng, S. Radhakrishnan, and V. Sarangan, “PMAC: an adaptive energy-efficient MAC protocol for wireless sensor networks,” in
*Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS '05)*, p. 237, April 2005. View at Scopus - J. Polastre, J. Hill, and D. Culler, “Versatile low power media access for wireless sensor networks,” in
*Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems (SenSys '04)*, pp. 95–107, November 2004. View at Scopus - M. Buettner, G. V. Yee, E. Anderson, and R. Han, “X-MAC: a short preamble MAC protocol for duty-cycled wireless sensor networks,” in
*Proceedings of the 4th International Conference on Embedded Networked Sensor Systems (SenSys' 06)*, pp. 307–320, November 2006. View at Publisher · View at Google Scholar · View at Scopus - A. El-Hoiydi and J. D. Decotignie, “WiseMAC: an ultra low power MAC protocol for multi-hop wireless sensor networks,” in
*Proceedings of the 1st International Workshop on Algorithm Aspects of Wireless Sensor Networks*, vol. 3121 of*Lecture Notes in Computer Science*, pp. 18–31, 2004. - E. Shih, S. H. Cho, N. Ickes et al., “Physical layer driven protocol and algorithm design for energy-efficient wireless sensor networks,” in
*Proceedings of the 7th Annual International Conference on Mobile Computing and Networking (MOBICOM '01)*, pp. 272–286, July 2001. View at Scopus - S. Kumar, T. H. Lai, and J. Balogh, “On k-coverage in a mostly sleeping sensor network,” in
*Proceedings of the 10th Annual International Conference on Mobile Computing and Networking (MOBICOM '04)*, pp. 144–158, October 2004. View at Scopus - P. Berman, G. Calinescu, C. Shah, and A. Zelikovsky, “Power efficient monitoring management in sensor networks,” in
*Proceedings of the IEEE Wireless Communications and Networking Conference (WCNC '04)*, pp. 2329–2334, 2004. - W. R. Heinzelman, A. Chandrakasan, and H. Balakrishnan, “Energy-efficient communication protocol for wireless microsensor networks,” in
*Proceedings of the 33rd Annual Hawaii International Conference on System Siences (HICSS '00)*, p. 223, January 2000. View at Scopus - A. Sinha and A. Chandrakasan, “Dynamic power management in wireless sensor networks,”
*IEEE Design and Test of Computers*, vol. 18, no. 2, pp. 62–74, 2001. View at Publisher · View at Google Scholar · View at Scopus