Abstract
Wireless Sensor Networks (WSNs) are composed of small wireless nodes equipped with sensors, a processor, and a radio communication unit, all normally powered by batteries. For most WSN applications, the network is expected to function for several months or years. In the common monitoring application scenario, adjacent nodes in a WSN often sense spatially correlated data. Suppressing this correlation can significantly improve the lifetime of the network. The maximum possible network data compression can be achieved using distributed source coding (DSC) techniques when nodes encode at Slepian-Wolf rates. This paper presents contributions to the lifetime optimization problem of WSNs in the form of two algorithms: the Updated-CMAX (UCMAX) power-aware routing algorithm to optimize the routing tree and the Rate Optimization (RO) algorithm to optimize the encoding rates of the nodes. The two algorithms combined offer a solution that maximizes the lifetime of a WSN measuring spatially correlated data. Simulations show that our proposed approach may significantly extend the lifetime of multihop WSNs with nodes that are observing correlated data.
1. Introduction
Wireless Sensor Networks have a wide range of possible applications like environmental monitoring, home automation, military, industrial, and medical applications [1]. Network designers must consider factors such as the environment, cost, and hardware, while engineering a particular WSN. Different applications will prompt different architectural constraints and requirements [2]. For some applications, network designers will need to focus on bounded delivery time of sensed events to the Base Station (BS), for example, Tsunami warning systems. Other applications require the WSN to function for several months or years before being replaced, and designers are thus more concerned about the lifetime of the network, such as in environmental monitoring systems [3]. Since the network lifetime has been the main challenge in the design of many WSN applications [4], we address the problem of maximizing the network lifetime in this paper.
The nodes in WSNs are mostly powered by batteries. The energy of the batteries is utilized by the main building blocks of a node: the sensors, the processor, and the radio unit. The radio is known to be the most energy consuming component of the node [5, 6]. For most WSNs, the radio unit has four functional modes: sleep, active, transmit and receive. The transmit, and receive modes have the highest power consumption while the sleep mode has the lowest power consumption. To improve the lifetime of the network (the lifetime of a WSN has many definitions [7]: some consider it to be the timespan from network startup to the death of a certain percentage of the nodes, others define it as the timespan from startup to the loss of coverage of a certain percentage of the monitored area), the node's radio has to be switched to sleep mode as much as possible. In this paper, we accomplish this by reducing the size of the packets through the application of lossless compression techniques which remove the redundancy in the spatially correlated sensed data. Lossless compression can be achieved by Source Coding techniques. Two lossless Source Coding methodologies for WSNs are described in the literature: Explicit Communications (EC) [8–10] and distributed source coding (DSC) [11–14].
The EC coding technique eliminates the redundancy in the spatially correlated sensed data while routing all data to the Base Station. Each node compresses its own sensed data according to the data flow passing through it from other nodes in the routing tree. The problem of finding the optimum routing path that achieves maximum compression with minimum network power consumption using EC is proven to be NP-hard [9]. The EC encoding process requires intensive processing at each sensor node to compress its sensed data, especially when the node has to forward compressed data from other nodes: the routing node needs to uncompress the data flow before being able to encode its own data in order to remove the redundancy due to spatial correlation.
The other methodology used for applying lossless source coding in WSNs is DSC. The concept of DSC was introduced by Slepian and Wolf in [15]. They derived the admissible rate region of two correlated sources and proved that two source encoders can compress their input data to a total rate which equals their joint entropy, without communication between the encoders, on condition that they are jointly decoded. Since, many authors have proposed source encoding systems that almost achieve the Slepian-Wolf theoretical limit. In [16], the authors used Coset Coding for compressing one of the two sources, while using the second source's data at the decoder to predict the data of the first source. In [17, 18], the authors used turbo codes and reached near the Slepian-Wolf theoretical limit. Their coding techniques are based on sending the data of the first node to the base station without coding, while encoding the second node's output with a turbo encoder and then send some parity bits of the encoder's output to the Base Station. The decoder at the BS uses the parity bits together with the data from the first node to estimate the second node's data. In [19–21], the authors implemented DSC using Low-Density Parity-Check (LDPC) codes. Turbo codes and LDPC codes enable DSC implementations which almost reach the Slepian-Wolf theoretical limit [17, 21]. Using the DSC theory, Cristescu et al. [22] studied how optimizing the rates of the nodes can minimize the network's total power consumption, but they did not address optimizing the lifetime of the network.
We propose contributions to the lifetime maximization problem of WSNs through the formulation of the problem's optimization equations and the development of algorithms which assign data rates and routing paths to the network nodes. The paper is organized as follows: we review the prior work on DSC for WSN in Section 2. We derive a system of equations for the optimal DSC rates and introduce the routing and rate assignment algorithms in Section 3. In Section 4, simulations results of the optimization algorithms are shown and discussed. We conclude the paper in Section 5.
2. Prior Work on DSC for WSNs
For a random source X, a rate

Slepian-Wolf coding for two correlated sources.
The achievable rate region according to the Slepian-Wolf coding theory is determined by the following equations:
The solution of this system of equations is shown in Figure 2. The minimum theoretical rate for the two correlated sources scenario is shown in Figure 2 with a red line. The two black dots at the corners of the optimum rate region correspond to the following rates:

Rate region for Slepian-Wolf encoding.
The Slepian-Wolf theory can be generalized to many sources [23]. If
Cristescu et al. [22] used the generalized Slepian-Wolf theory of multiple sources to optimize the encoding rates of WSN nodes. They set out to find an optimal transmission structure, that is, routing tree, and rate allocation for the nodes of a multihop WSN with multiple sensors
The node nearest to the BS has to encode at the rate of its entropy, while the second nearest node has to encode at the rate of the conditional entropy of itself given that the first source

Two nodes WSN.
3. Lifetime Optimization of WSN with Correlated Sensors
The above-mentioned code design, where side information is assumed available at the decoder, is called asymmetric Slepian-Wolf coding. For the network in Figure 3, the maximum network lifetime can be achieved by encoding at the symmetric Slepian-Wolf coding point, which is the green point shown in Figure 2. Most DSC designs can reach almost the theoretical limit by implementing asymmetric Slepian-Wolf coding [17–19, 26]. When using asymmetric Slepian-Wolf coding, the lifetime of the network shown in Figure 3 can be maximized by periodically switching coding rates between nodes every time interval T. If T is fixed, the lifetime of the network can be considered as the maximum multiple of this interval,
We model the WSN as a directed graph
The total flow at each node can be formulated as the difference between the output and the input data flows. If a node is a routing node, then the difference between its output and its input flows is zero. If the node is a source node, the difference between output and input flows is the rate of the node's encoded data:
The relation between the data rate
From (14) and (13), we derive that the data rate
From (9), (10), (11), and (15), we can see that lifetime optimization using DSC comprises two optimization problems: the rate optimization problem and the route optimization problem. This optimization problem is NP-hard since the routing optimization problem itself is NP-hard [28]. It is generally difficult to construct a routing tree that maximizes the network lifetime due to the involvement of two optimization objectives: maximizing the residual energy of each node and minimizing the network's total energy consumption. These two objectives are not necessarily complementary and might even conflict: a routing tree could, for example, minimize the network's total energy consumption by placing a high burden on a particular node. However, a routing algorithm, which uses link weights based on an exponential function of the network's resource utilization, has been shown to cope very efficiently with this optimization problem [29]. The authors of [29] assign to each edge a cost that is exponential in the currently occupied link capacity in order to optimize the throughput of the network. Furthermore, they derived bounds on the competitive ratio of their routing algorithm and proved that no other online routing algorithm can achieve a better competitive ratio. In [30], this routing algorithm was adapted to optimize the lifetime of Wireless Sensor Networks by updating the links' weights with the energy utilization of the nodes.
The authors of [31] use the same optimization criteria as in [30], and links are assigned cost functions which are exponential in the transmitter's energy utilization. In [32], algorithms based on the same exponential penalization are proposed to optimize the routing tree of heterogeneous networks, in which nodes differ in energy capacity. In all aforementioned related work, the energy consumed for the reception of data is neglected.
We developed two algorithms for optimizing the routes and the rates used in a WSN. The routing algorithm, which is an improvement of the CMAX algorithm described in [30], penalizes the network links according to an exponential function of the energy consumption for transmission and reception. Regarding the Slepian-Wolf rates optimization problem, it is known that for an optimal symmetric rate assignment in a network with more than 3 nodes the complexity of the decoder is difficult to implement practically [21]. The realization of the decoder becomes feasible if we allow the nodes to encode at asymmetric rates, that is, one node is decoded separately and its output is used as side information to decode the second node, then these two outputs are used as side information to decode the third node and so on. We developed the Rate Optimization (RO) algorithm which assigns asymmetric rates to the nodes. The algorithm first assigns the rates using MTP to minimize the network's total energy consumption, after which it performs a tradeoff between minimizing network energy and maximizing nodes' residual energy by swapping the rates of the nodes. The RO algorithm requires global knowledge of all nodes' rates and residual energies. Thus, the RO algorithm is centralized and is running at the BS, which broadcasts the updated rate assignment every periodic interval T. The routing algorithm is also executed at the BS every T seconds, and the new routes are broadcast together with the rates assignment.
3.1. Routing and Rates Optimization Algorithms
In order to explain our route optimization algorithm, we first describe how CMAX [30] works, on which our extension UCMAX is built. After the BS collected the nodes' residual energies, the CMAX algorithm runs the following three steps.
Step 1.
If all nodes have full energy (i.e.,
Step 2.
Find the shortest path between each node and the BS using Dijkstra's algorithm in the modified graph.
Step 3.
Let β be the length of the shortest path found in Step 2 (
The computational complexity of the CMAX algorithm is dominated by the shortest path computation (Step 2) and is
Most WSN nodes, that are available on the market today, consume more energy while in receive mode rather than in transmit mode, even when the node is transmitting at the maximum power. The widely used transceiver chip CC2420 [33] consumes 18.8 mA in the receive mode, while it consumes 17.4 mA in the transmit mode at maximum transmission power. The authors of [30–32] do not take into account the energy spent in the receive mode while optimizing the routing tree. We updated CMAX to include the reception costs by modifying the weights of the graph's edges. The Updated-CMAX (UCMAX) runs the following steps.
Step 1.
If all nodes have full energy (i.e.,
Step 2.
Find the shortest path between each sensor node and the BS using Dijkstra's algorithm in the modified graph.
UCMAX avoids to route network data through nodes with low residual energy. The Rate Optimization algorithm (RO) runs on top of the optimized routing tree found by UCMAX as follows.
Step 1.
Assign the rates to the nodes according to MTP using the routing tree found by UCMAX.
Step 2.
Calculate the total energy consumption of the network
Step 3.
Find the node with the minimum residual energy, let it be
Step 4.
Search for another node with lower data rate and higher residual energy and name it
Step 5.
Swap the rates between
Step 6.
Calculate the total network power with (19) and store it in a vector P. Go back to Step 4 and repeat for all possible rate switches. Choose the rate swap with the minimum total power in P and let us name the new total power
Step 7.
If
Step 8.
Go back to Step 3 and repeat until all possible rate switches are tested for all nodes.
Parameter z allows our optimization to balance between minimum total network energy and maximum per node energy. At
4. Simulations and Results
4.1. Experimental Setup
MatLab simulations are used to evaluate the performance of the optimization algorithm. We simulate an environment area of
Experiment parameters.
4.2. Simulation Results
The role of λ in the CMAX algorithm is studied in [30], where it acts as a penalty factor for using the links between nodes with low residual energy in the WSN. For
4.2.1. UCMAX versus CMAX
For both the
The lifetime of the network varies with γ in the UCMAX algorithm. At
To describe the advantage of UCMAX over CMAX, let us consider the network in Figure 4. Using the CMAX optimization algorithm, node

A two-node network with a Base Station.

Routing optimization for maximizing the network lifetime.
With UCMAX, the
4.2.2. RO Algorithm Evaluation
To compare the RO algorithm to MTP, we applied the RO algorithm on top of UCMAX. λ and γ are set to

Network lifetime with optimum rate algorithm.
4.2.3. Update Period T
In Figure 7 we show the effect of the update frequency of the routing tree and the encoding rates on the lifetime of the network. Before each update, the nodes need to communicate their residual energy to the BS, and the BS subsequently broadcasts the optimized routing tree and rates back to the nodes. We assume that the BS can encapsulate the routing tree and the rates of the nodes in one broadcast packet. When the BS broadcasts the packet, the nearest nodes receive the packet and then forward it to the nodes further in the network and so on. We consider that each node consumes energy equal to the reception and the transmission of one packet during the broadcast process and we neglect the energy spent in collecting the nodes' residual energies. By running the UCMAX and RO algorithms on the

Effect of update period T on the network lifetime.
5. Conclusion
In this paper we considered Wireless Sensor Networks placed in a specific geographical area, gathering correlated information from multiple nodes that forward their data to a Base Station. We addressed the maximization of network lifetime through the application of distributed source coding for the compression of the spatially correlated data. The motivation for using DSC instead of Explicit Communication is the possibility of decomposing the optimization problem in two separate problems: optimizing the routes and the rates independently. The paper presents two algorithms: the first one is a routing optimization algorithm and the second one is a rate optimization algorithm. The first algorithm, the Updated-CMAX algorithm (UCMAX), improves the CMAX algorithm, as presented in the literature, by taking into account the energy utilization of nodes in receive mode. The second algorithm, the Rate Optimization algorithm (RO), balances between minimizing total network energy consumption and the per node energy consumption while assigning Slepian-Wolf encoding rates. The RO algorithm assigns low rates to nodes with low residual energy and higher rates to nodes with excessive energy.
Our experiments show that UCMAX provides a significant improvement in terms of network lifetime in comparison to CMAX. With respect to the minimum total network Slepian-Wolf rates, our RO algorithm improved lifetime by 17%. The two algorithms combined provide a full-optimized solution that maximizes the lifetime of networks collecting correlated data. The optimal update period between successive rate and route optimizations is also derived by taking into account the broadcasting energy consumption needed to send the optimized rate and route assignments from the Base Station.
Footnotes
Acknowledgments
The work presented in this paper was supported by EMECW (Erasmus Mundus External Corporation Window lot3) and the FWO (Fonds Wetenschappelijk Onderzoek), project G.0219.09N.
