# A Novel Energy-Efficient Reception Method Based on Random Network Coding in Cooperative Wireless Sensor Networks

Authors: Yulun Cheng; Longxiang Yang
Journal: International Journal of Distributed Sensor Networks
 (2015)

---

## Abstract

This paper presents an opportunistic reception (OR) algorithm for energy-efficient transmission in cooperative wireless sensor networks (WSNs), where the characteristics of random linear network coding and the energy consumption property of WSNs are jointly considered. In OR, the sensor nodes in intermediate cluster generate the independent coding vector through simple forwarding or decoding-recoding manners opportunistically, so that the number of received packets can be reduced. To evaluate the algorithm, we derive the average number of received packets, the transmitting nodes, and decoding failure probability under specific assumption. The obtained theoretical and simulation results verify the effectiveness offered by the proposed approach.


---

## Body

## 1. Introduction

Due to the wide range of applications, wireless sensor networks (WSNs) have attracted numerous research interests in recent years, such as target tracking [1], military surveillance [2], and environment monitoring [3]. In most cases, the sensor nodes in WSNs are equipped with low-complexity hardware and single antenna, which restrain their communication quality in wireless fading channels. Therefore, transmission reliability becomes one of the key issues in the applications of WSNs.Cooperative communication (CC) [4] is one approach to improve transmission reliability of single-antenna devices. A transmitting node that uses CC can share its packet with neighboring nodes, and then these nodes can transmit the packet to the intended receiver cooperatively, thereby creating a virtual multiple-input-multiple-output (MIMO) system. The intended receiver can obtain diversity gains by combining the received signals, which brings a signal-to-noise ratio (SNR) advantage over the single-input-single-output (SISO) case. Several works have focused on the applications of CC in WSNs (cooperative WSNs); for example, Li et al. [5] proposed a space time block code- (STBC-) based cooperative scheme to improve the bit error rate (BER), while Cui et al. [6] employed CC to reduce the transmission energy of the sensor nodes. All these cooperative schemes require strict synchronization between the nodes; however, due to the inexpensive hardware and limited resources, strict synchronization is difficult to be realized in WSNs, which deteriorates the performance of CC [7].On the other hand, by means of combining the incoming packets at intermediate nodes in the networks, network coding (NC) [8] brings a breakthrough to the transmission efficiency. As a class of NC, Li et al. demonstrated that the network throughput can achieve the max-flow-min-cut bound through linear network coding (LNC) [9]. Furthermore, Koetter and Médard [10] presented an algebraic framework to construct the NC coefficient for LNC. On the basis of that, random LNC (RLNC) [11–13] was proposed to reduce the complexity and make LNC to be deployed as the distributed manner. RLNC enables the intermediate nodes to select combination coefficient randomly from a Galois field of size q, while the incoming packets are also treated and combined as a vector over this field. In this way, RLNC provides a simple, yet effective, approach to improve the latency [14] and delay-tolerance [15] in wireless networks.The distributed deployment and simplicity of RLNC loose the synchronization requirement, which makes it very suitable to be deployed in cooperative WSNs. Recent work [16] has employed RLNC to increase the redundancy of the original packets, so that the transmission reliability of the cooperative WSNs can be improved. In [16], the intermediate node tries to receive and combine all the incoming packets to construct its linear independent coding vector (CV). However, since the sensor nodes are usually deployed in hostile circumstances and powered by limited batteries, energy consumption [17, 18] is another important issue in cooperative WSNs. For popular sensor transceiver today, the receiving circuit energy consumption of a packet is even larger than the transmitting one, because decoding is a rather complex operation requiring a lot of computing power, which has been a big threat to the lifetime of the networks [19]. Therefore, it indicates that, for cooperative WSNs, not only transmission reliability [16] but also energy consumption characteristic should be taken into consideration in RLNC scheme design.In this paper, we propose an opportunistic reception (OR) algorithm to reduce the received packets at the intermediate nodes. Different from the former work [16], by considering some characteristics of RLNC, our OR algorithm enables the intermediate sensor nodes to generate independent CV through simple forwarding or decode-and-select manners opportunistically. To examine its performance, the average number of received packets, the transmitting nodes, and decoding failure probability are derived under specific assumption. In this way, our study provides a trade-off between energy efficiency and transmission reliability for cooperative WSNs.The remainder of this paper is organized as follows. Section2 describes the system model. The proposed OR algorithm is presented in Section 3, and the corresponding performances are theoretically analyzed in Section 4. Simulation results are presented and compared for performance evaluation in Section 5. Finally, Section 6 concludes the paper.


## 2. System Model

We consider multihop clustered WSNs, in which a source node in the source cluster sends data to a sink with the aid of several intermediate clusters, as depicted in Figure1. Each cluster is composed of n sensor nodes, and the operation of the system is broken into rounds. It is assumed that the source node has data to send in each round.Figure 1
System model of cooperative WSNs.The transmission round consists of four phases, as shown in Figure2. Phase I is the intrasource cluster broadcasting, as shown in Figure 2(a); the source node splits the original data into m packets as P=(P1,…,Pk,…,Pm)T and then broadcasts it to the other nodes in the source cluster, named as rSi, i=1,…,n. It is assumed that the intracluster communication is error-free, so rSi randomly selects a 1×m CV VSi=(VSi(1),…,VSi(k),…,VSi(m)) and combines all the incoming packets to generate its data as(1)PSi=VSi·P.Note that Pk, VSi(k), and PSi are the elements over Galois field of size q and VSi(k) is randomly selected with probability 1/q.Figure 2
Transmission procedure of cooperative WSNs.
(a)
Phase I
(b)
Phase II
(c)
Phase III
(d)
Phase IVPhase II is the source-intermediate cluster transmission, as depicted in Figure2(b). In this phase, each rSi transmits its outgoing packet to the intermediate cluster in the next hop. Note that the outgoing packet encapsulates both CV VSi and data PSi. Each sensor node in the intermediate cluster, named as rIi, tries to receive all the packets [16] from the source cluster. After that, it recodes all the successfully received data as(2)PIi=AIi·…,PSj,…,PSkT.AIi=(…,AIi(j),…,AIi(k)) is also a randomly selected L-length vector over Galois field, where L is the number of successfully received packets at rIi. With (1), we rewrite the coded data PIi as the product of a CV and P:(3)PIi=VIi·P,where VIi=AIi·[…,VSjT,…,VSkT]T. After that, each rIi reencapsulates VIi and PIi into its outgoing packet, and the recoding and reencapsulation procedure is shown in Figure 3.Figure 3
Recoding and recapsulation procedure.Phase III is the inter-intermediate clusters communications, as shown in Figure2(c). In this phase, if rIi fails to receive all the incoming packets in Phase II, it keeps silent. Otherwise, rIi sends its recapsulated packet to the next cluster. The remaining intermediate clusters perform the operation in the same manner as the one in Figure 2(b), so the coded packets are delivered one by one, until the last cluster near the sink.Phase IV is the decoding phase, in which the sink tries to receive all the packets from the last cluster nearby, as shown in Figure2(d). We assume that(4)PD=PI′1,…,PI′k,…,PI′wTis the w received coded data, and (5)VD=VI′1T…,VI′kT,…,VI′wTTis the w received CVs, in which PI′k and VI′k are extracted from the packet of rI′k. Thus, (4) can be rewritten as(6)PD=VD·P,and if no less than m out of the CVs in VD are linearly independent, the original data P can be recovered through Gaussian elimination [11]. Otherwise, the decoding failure occurs at sink.


## 3. Opportunistic Reception Algorithm

To facilitate the analysis, we simplify the above model to a two-hop one, which is the basic building block of more complex multihop networks. Firstly, according to the principle of RLNC [11], it should be confirmed that the only purpose of combining all the incoming packets at the sensor nodes [16] is nothing else but generating linearly independent CV. From this perspective, the linear combination in (3) can be replaced by the following two manners. (1) Forwarding: since VSi and VSj are randomly selected by rSi and rSj, ∀i,j∈{1,…,n}, i≠j, it is naturally guaranteed that they are linearly independent of each other at high probability; in other words, they can be directly employed as the CV of the sensor nodes in intermediate cluster. For example, rI1 and rI2 can simply forward the packets from rS1 and rS2, respectively, without receiving and combining other packets anymore. (2) Decoding-recoding: if rIi successfully receives m packets, the received data can be written as(7)PI=VS·P,in which(8)PI=PI1,…,PIk,…,PImT,VS=VS1T,…,VSkT,…,VSmTT.rIi can decode P by solving (7), and, then, it locally recodes P as(9)PIi=AIi·P.In this way, rIi successfully generates linearly independent CV while further reception is also avoided.By considering the above two characteristics, we propose a reception algorithm for the nodes in intermediate cluster to reduce the received packets. LetLj be the number of successfully received packets at rIj. ΦU is the index set of the nodes which fail to generate independent CV, while ΦS1 and ΦS2 are those which generate independent CV due to forwarding and decoding-recoding, respectively. Fj is the flag to identify whether rIj is selected from ΦS1, through the valuetrue orfalse. Thus, the pseudocode description of the proposed algorithm is presented in Algorithm 1.Algorithm 1:OR algorithm.
Initialization:ΦU={1,…,n},ΦS1=ΦS2=⌀. Lj=0, Fj = true, ∀j∈ΦU.
(1)for  i=1 to n,
(2) rSi transmits its packet.
(3)  for  ∀j∈ΦU,
(4)rIj receives and updates Lj.
(5)if  Lj==1 && Fj=true,
(6)   j is removed from ΦU to ΦS1.
(7)elseif  Lj==m && Fj=false,
(8)    j is removed from ΦU to ΦS2.
(9)end if
(10)end for
(11)Select an element w from ΦS1 with probability 1/|ΦS1|,
(12)rIw forwards its received packet in Phase III,
(13)ΦS1=ΦS1-{w}.
(14) for  ∀j∈ΦS1,
(15)Fj=false, j is removed from ΦS1 to ΦU.
(16)end for
(17)for  ∀j∈ΦS2,
(18)ΦS2=ΦS2-{j},
(19)rIj decodes and recodes P by (7) and (9),
(20)rIj transmits the packet in Phase III.
(21)end for
(22)end forWe propose an example to illustrate the effectiveness of OR algorithm. As depicted in Figure4, an OR process is presented when m=2, n=4. In Figure 4(a), rS1 successfully broadcasts its packet to all the nodes in intermediate cluster, except for rI1, which experiences link failure. According to the reception state, Li is updated, i=1,2,3,4, while indexes 2, 3, and 4 are removed from ΦU to ΦS1. Figure 4(b) depicts the node selection in ΦS1; that is, one of the nodes in ΦS1 is selected to generate its CV by the manner of forwarding. Here, we assume that index 3 is selected, so it is deleted while the others are removed from ΦS1 to ΦU. Besides, rI3 is ready to transmit and will not receive packets anymore. In Figure 4(c), rS2 broadcasts and all the nodes in intermediate cluster try to receive, except for rI3. Similarly, Li is updated and index i is classified into ΦS1 or ΦS2 according to the rules of OR. In Figure 4(d), since index 1 is the only element of ΦS1, rI1 is selected to forward the packet of rS2. Meanwhile, because ΦS2={2,4}, rI2 and rI4 will generate their CVs by the decoding-recoding. Thus, all the nodes are ready to transmit, without further reception from rS3 and rS4. In this example, 1+2×3=7 packets are received in total. Comparing with 4×4=16 packets by the manner of combination [16], the merit of OR is revealed.Figure 4
An example of OR process.
(a)
(b)
(c)
(d)


## 4. Performance Analysis

To evaluate the performance of OR, we derive the mathematical expectation of the received packets, the transmitting nodes, and the decoding failure probability whenm=2, n=4. (In fact, it is difficult to exhaust all the cases with large values ofm andn. However, the low parameters do not influence the evaluation result of this paper. On the other hand, it has been proved in [20] that m=2 is optimal for NC and n=4 can also be used to describe the cluster with many nodes, in which 4 are alive while the others are asleep.) For simplicity, it is assumed that all incoming links at any sensor node exhibit the same value of failure probability P.


### 4.1. Mathematical Expectations of the Received Packets and Transmitting Nodes

In OR algorithm,rIj is able to generate independent CV only in the following 2 cases: (1) index j∈ΦS1 as well as j is selected from ΦS1; (2) index j∈ΦS2. Let V and VV denote these two events, respectively, and we denote d as the number of the sensor nodes that generate independent CV. In this way, CV generation can be presented by a d-size vector which consists of V and VV. For example, (V, VV) represents the event that in total 2 sensor nodes generate independent CV through cases (1) and (2), respectively. Thus, all cases of CV generations can be described by such vectors, as shown in Table 1.Table 1
All cases of CV generations.
d
Vector description
1
(V)
2
(V, V), (V, VV)
3
(V, V, V), (V, V, VV), (V, VV, VV)
4
(V, V, V, V), (V, V, V, VV), (V, V, VV, VV), (V, VV, VV, VV)In Table1, when d=1, a possible sample of (V) can be written as (V1, O, O, O). These 4 elements represent the reception situation of the 4 sensor nodes in intermediate cluster after Phase II, where V1 denotes that a node successfully receives the packet from rS1, while O represents that a node fails to receive all the incoming packets. To derive the probability of each case, we introduce the following lemma.Lemma 1.
In the proposed OR algorithm, if the CV generation is represented by a vector consisting of only one element V, then the sensor nodes that fail to generate independent CV can successfully receive at mostm-1 packets.Proof.
IfrIi successfully receives m packets, the index i will be included in ΦS2 and rIi will generate CV by (7) and (9), so the corresponding vector description will contain the element VV, which contradict the hypothesis.With Lemma1, it can be deduced that, in all samples of (V), the sensor nodes that fail to generate independent CV can receive at most 1 (m=2) packet. Thus, all possible samples of (V) can be listed in Table 2.Table 2
All possible realizations of (V).
Case
Possible sample
1
(V1, O, O, O), (V2, O, O, O),  (V3, O, O, O), (V4, O, O, O)
2
(V1, V1, O, O), (V2, V2, O, O), (V3, V3, O, O), (V4, V4, O, O)
3
(V1, V1, V1, O), (V2, V2, V2, O), (V3, V3, V3, O), (V4, V4, V4, O)
4
(V1, V1, V1, V1), (V2, V2, V2, V2), (V3, V3, V3, V3), (V4, V4, V4, V4)LetPi denote the probability of the event that {d=i}, i=0,1,2,3,4. In Table 2, the event {d=1} can be divided into 4 cases; for each case, the probability is denoted as P1i, so P1 can be expressed as(10)P1=Pr⁡d=1=∑i=14P1i.Each case is further divided, and P1i can be written as(11)P1i=∑jP1ij,where P1i(j) denotes the probability of the jth sample of case i in Table 2. Let N denote the total number of the received packets by intermediate cluster per transmission round, and its mathematical expectation can be written as(12)EN=∑k=04∑i∑jPkijNkij,where Nki(j) is the number of received packets in the corresponding sample. E(N) can be used to evaluate the average energy consumption of the network by the reception per round.We takeP12(1) as an example to show the derivation. As listed in Table 2, it can be derived as(13)P121=Pr⁡sample=V1,V1,O,O=42P8211-P121-PP3,where 42P8 stands for the probability that 2 out of 4 nodes in intermediate cluster fail to receive all the incoming packets. In this sample, the remaining 2 nodes both successfully receive the packet from rS1, and one of them is selected with probability 1/2 to forward this packet, so the factor 21 in (13) stands for the above event. (1-P)P3 accounts for the probability that a node successfully receives the packet from rS1, but it is selected to neither forward nor successfully receive the rest of incoming packets. Meanwhile, we can calculate N12(1)=1+4+4+4=13 for this sample, since the node that is selected to simply forward receives only one packet, while the others receive all 4 incoming ones.In Table1, for the vector descriptions that only contain the element V, the possible samples and probabilities can be derived in similar way. For the ones that contain both V and VV, we take (V, VV) as an example. We denote Vi and ViVj as the samples of V and VV, respectively. Thus, the following lemma can be proved.Lemma 2.
In OR algorithm, all the realizations of (V, VV) can be written as the form of(Vi,ViVj), ∀i,j∈{1,2,3,4}, i≠j.Proof.
If a sample of (V, VV) can be expressed as(Vm,ViVj), m≠i, then according to OR it can be concluded that, besides Vm and ViVj, the sample must contain the element Vi. This fact indicates that the realization is a case of (V, V, VV), which contradicts the assumption.With Lemma2, all the samples of (V,VV) can be expressed as in Table 3, where Φ31={O,V1}, Φ32={O,V2}, and Φ33={O,V3}. The calculation is similar to the one of (V); for example, let P21(2) denote the probability of (V1,V1V2,V1,O), and it can be written as(14)P212=Pr⁡sample=V1,V1V2,V1,O=134131211-P4P7,while N21(2)=1+2+4+4=11. In this way, all the possible samples and probabilities of (V, VV) can be derived, so as the ones that contain both V and VV in Table 1. By substituting these results into (12), E(N) can be obtained. The derivations of the other possible samples and probabilities listed in Table 1 are presented in the appendix.Table 3
All possible realizations of (V, VV).
Case
Possible sample
1
(
V
1
,
V
1
V
2
,
V
i
,
V
i
), ∀Vi∈Φ31
2
(
V
1
,
V
1
V
3
,
V
i
,
V
i
), ∀Vi∈Φ31
3
(
V
1
,
V
1
V
4
,
V
i
,
V
i
), ∀Vi∈Φ31
4
(
V
2
,
V
2
V
3
,
V
i
,
V
i
),  ∀Vi∈Φ32
5
(
V
2
,
V
2
V
4
,
V
i
,
V
i
),  ∀Vi∈Φ32
6
(
V
3
,
V
3
V
4
,
V
i
,
V
i
),  ∀Vi∈Φ33Similarly, the mathematical expectation of transmitting nodesE(d) can be obtained as(15)Ed=∑i=04diPi,where Pi is derived in the Appendix. E(d) can be used to evaluate the average energy consumption of the network by the transmission per round.


### 4.2. Decoding Failure Probability

As defined in Section2, the decoding failure probability can be expressed as(16)Pf=Pr⁡s<m=∑i=0nPr⁡s<m∣d=iPi,where s denotes the number of independent CVs at sink. In [21], it has been proved that two randomly selected CVs are correlated with each other at very small probability (5.63 × 10−8) when q=256. In fact, small values of q increase the correlation of randomly selected CVs, which will dominate the decoding performance. On the other hand, too large value is also unnecessary, which increases the complexity. Hence, we assume that s equals the number of successfully received packets by sink. In our studied case, m=2, n=4, and it is assumed that all incoming links at sink exhibit the same failure probability Prd. Thus, Pr⁡(s<m∣d=i) can be written as(17)Pr⁡s<2∣d=i=1,i=0,1,Pr⁡s<2∣d=2=1-1-Prd2,Pr⁡s<2∣d=3=Prd3+311-PrdPrd2,Pr⁡s<2∣d=4=Prd4+411-PrdPrd3.By substituting (17) and Pi into (16), the decoding failure probability can be obtained.


## 4.1. Mathematical Expectations of the Received Packets and Transmitting Nodes

In OR algorithm,rIj is able to generate independent CV only in the following 2 cases: (1) index j∈ΦS1 as well as j is selected from ΦS1; (2) index j∈ΦS2. Let V and VV denote these two events, respectively, and we denote d as the number of the sensor nodes that generate independent CV. In this way, CV generation can be presented by a d-size vector which consists of V and VV. For example, (V, VV) represents the event that in total 2 sensor nodes generate independent CV through cases (1) and (2), respectively. Thus, all cases of CV generations can be described by such vectors, as shown in Table 1.Table 1
All cases of CV generations.
d
Vector description
1
(V)
2
(V, V), (V, VV)
3
(V, V, V), (V, V, VV), (V, VV, VV)
4
(V, V, V, V), (V, V, V, VV), (V, V, VV, VV), (V, VV, VV, VV)In Table1, when d=1, a possible sample of (V) can be written as (V1, O, O, O). These 4 elements represent the reception situation of the 4 sensor nodes in intermediate cluster after Phase II, where V1 denotes that a node successfully receives the packet from rS1, while O represents that a node fails to receive all the incoming packets. To derive the probability of each case, we introduce the following lemma.Lemma 1.
In the proposed OR algorithm, if the CV generation is represented by a vector consisting of only one element V, then the sensor nodes that fail to generate independent CV can successfully receive at mostm-1 packets.Proof.
IfrIi successfully receives m packets, the index i will be included in ΦS2 and rIi will generate CV by (7) and (9), so the corresponding vector description will contain the element VV, which contradict the hypothesis.With Lemma1, it can be deduced that, in all samples of (V), the sensor nodes that fail to generate independent CV can receive at most 1 (m=2) packet. Thus, all possible samples of (V) can be listed in Table 2.Table 2
All possible realizations of (V).
Case
Possible sample
1
(V1, O, O, O), (V2, O, O, O),  (V3, O, O, O), (V4, O, O, O)
2
(V1, V1, O, O), (V2, V2, O, O), (V3, V3, O, O), (V4, V4, O, O)
3
(V1, V1, V1, O), (V2, V2, V2, O), (V3, V3, V3, O), (V4, V4, V4, O)
4
(V1, V1, V1, V1), (V2, V2, V2, V2), (V3, V3, V3, V3), (V4, V4, V4, V4)LetPi denote the probability of the event that {d=i}, i=0,1,2,3,4. In Table 2, the event {d=1} can be divided into 4 cases; for each case, the probability is denoted as P1i, so P1 can be expressed as(10)P1=Pr⁡d=1=∑i=14P1i.Each case is further divided, and P1i can be written as(11)P1i=∑jP1ij,where P1i(j) denotes the probability of the jth sample of case i in Table 2. Let N denote the total number of the received packets by intermediate cluster per transmission round, and its mathematical expectation can be written as(12)EN=∑k=04∑i∑jPkijNkij,where Nki(j) is the number of received packets in the corresponding sample. E(N) can be used to evaluate the average energy consumption of the network by the reception per round.We takeP12(1) as an example to show the derivation. As listed in Table 2, it can be derived as(13)P121=Pr⁡sample=V1,V1,O,O=42P8211-P121-PP3,where 42P8 stands for the probability that 2 out of 4 nodes in intermediate cluster fail to receive all the incoming packets. In this sample, the remaining 2 nodes both successfully receive the packet from rS1, and one of them is selected with probability 1/2 to forward this packet, so the factor 21 in (13) stands for the above event. (1-P)P3 accounts for the probability that a node successfully receives the packet from rS1, but it is selected to neither forward nor successfully receive the rest of incoming packets. Meanwhile, we can calculate N12(1)=1+4+4+4=13 for this sample, since the node that is selected to simply forward receives only one packet, while the others receive all 4 incoming ones.In Table1, for the vector descriptions that only contain the element V, the possible samples and probabilities can be derived in similar way. For the ones that contain both V and VV, we take (V, VV) as an example. We denote Vi and ViVj as the samples of V and VV, respectively. Thus, the following lemma can be proved.Lemma 2.
In OR algorithm, all the realizations of (V, VV) can be written as the form of(Vi,ViVj), ∀i,j∈{1,2,3,4}, i≠j.Proof.
If a sample of (V, VV) can be expressed as(Vm,ViVj), m≠i, then according to OR it can be concluded that, besides Vm and ViVj, the sample must contain the element Vi. This fact indicates that the realization is a case of (V, V, VV), which contradicts the assumption.With Lemma2, all the samples of (V,VV) can be expressed as in Table 3, where Φ31={O,V1}, Φ32={O,V2}, and Φ33={O,V3}. The calculation is similar to the one of (V); for example, let P21(2) denote the probability of (V1,V1V2,V1,O), and it can be written as(14)P212=Pr⁡sample=V1,V1V2,V1,O=134131211-P4P7,while N21(2)=1+2+4+4=11. In this way, all the possible samples and probabilities of (V, VV) can be derived, so as the ones that contain both V and VV in Table 1. By substituting these results into (12), E(N) can be obtained. The derivations of the other possible samples and probabilities listed in Table 1 are presented in the appendix.Table 3
All possible realizations of (V, VV).
Case
Possible sample
1
(
V
1
,
V
1
V
2
,
V
i
,
V
i
), ∀Vi∈Φ31
2
(
V
1
,
V
1
V
3
,
V
i
,
V
i
), ∀Vi∈Φ31
3
(
V
1
,
V
1
V
4
,
V
i
,
V
i
), ∀Vi∈Φ31
4
(
V
2
,
V
2
V
3
,
V
i
,
V
i
),  ∀Vi∈Φ32
5
(
V
2
,
V
2
V
4
,
V
i
,
V
i
),  ∀Vi∈Φ32
6
(
V
3
,
V
3
V
4
,
V
i
,
V
i
),  ∀Vi∈Φ33Similarly, the mathematical expectation of transmitting nodesE(d) can be obtained as(15)Ed=∑i=04diPi,where Pi is derived in the Appendix. E(d) can be used to evaluate the average energy consumption of the network by the transmission per round.


## 4.2. Decoding Failure Probability

As defined in Section2, the decoding failure probability can be expressed as(16)Pf=Pr⁡s<m=∑i=0nPr⁡s<m∣d=iPi,where s denotes the number of independent CVs at sink. In [21], it has been proved that two randomly selected CVs are correlated with each other at very small probability (5.63 × 10−8) when q=256. In fact, small values of q increase the correlation of randomly selected CVs, which will dominate the decoding performance. On the other hand, too large value is also unnecessary, which increases the complexity. Hence, we assume that s equals the number of successfully received packets by sink. In our studied case, m=2, n=4, and it is assumed that all incoming links at sink exhibit the same failure probability Prd. Thus, Pr⁡(s<m∣d=i) can be written as(17)Pr⁡s<2∣d=i=1,i=0,1,Pr⁡s<2∣d=2=1-1-Prd2,Pr⁡s<2∣d=3=Prd3+311-PrdPrd2,Pr⁡s<2∣d=4=Prd4+411-PrdPrd3.By substituting (17) and Pi into (16), the decoding failure probability can be obtained.


## 5. Simulation Results

We compare OR with NC based cooperative communication (NCCC) in [16], in terms of E(N), E(d), lifetime, and Pf. The simulation model follows the simplified two-hop one in Section 3 with m=2, n=4, and q=256. We define the lifetime as the time that the first node in intermediate cluster dies, which is widely used in the literatures. The energy model in [19] is employed, which has transmitting circuit energy of 45 nJ/packet and receiving circuit energy of 135 nJ/packet, and all the nodes have the initial energy of 500 mJ.Figure5 presents the mathematical expectation of received packet E(N) conditioned to the link failure probability P. For OR, the theoretical values are calculated by (12). It shows that our theoretical analysis perfectly matches the simulation results, and OR always yields less received packets comparing with NCCC. In the figure, the theoretical and simulation results also confirm that, for OR, the maximum and minimum values of E(N) are 16 and 7 when P=1 and 0, respectively. These points show the performance of OR when the link is in extreme state, for the sample (O, O, O, O) corresponds to N=16 while (V1,V1V2,V1V2,V1V2) corresponds to N=7. Due to less reception, OR consumes less receiving circuit energy than NCCC.Figure 5
Mathematical expectation of received packetE(N) versus P.Figure6 shows the mathematical expectation of transmitting nodes E(d) versus P. For OR, the theoretical values are calculated by (15). It shows that OR is close to NCCC when P is near 0, which indicates that these two algorithms supply similar redundancy for original data when the link is in good state. In brief, OR always enables less nodes to transmit under the same P. Combining this result with the one in Figure 5, we can conclude that OR consumes less energy than NCCC.Figure 6
Mathematical expectation of transmitting nodesE(d) versus P.Figure7 presents the lifetime comparisons, in which the minimal residual energy of the nodes is simulated after each round. The result shows that OR can support more transmission rounds than NCCC when the energy is exhausted. Besides, it also shows that when P=0.01, OR performs better than P=0.3. This result corresponds well with the one in Figure 5, because smaller value of P will yield less received packets, which dominate the energy consumption in the employed model.Figure 7
Lifetime comparisons.Figure8 depicts the gradient comparisons of the minimal residual energy presented in Figure 7. This metric essentially reflects the energy consumption per round. We observe that, for NCCC, the gradient is fixed to −585 nJ. This is due to the fact that each node will always receive 4 packets and transmit 1 per round. Comparing with NCCC, the result shows that OR always yields less gradient, and it fluctuates with time. This is caused by the dynamic manner selection, through which the nodes opportunistically generate their CVs. Moreover, it also shows that superior link quality yields smaller gradient for OR.Figure 8
Gradient comparisons.Figure9 depicts the decoding failure probability Pf versus P. It indicates that OR performs close to NCCC when P is near 0, which corresponds well with the result in Figure 6. Again, our theoretical analysis matches the simulations very well. On the other hand, the gap between the two compared algorithms grows as Prd increases, which shows that OR is less efficient under poor relay-sink links. However, different from our simplified model, the sink generally locates in the sink cluster in practice and hence the other sensor nodes in the sink cluster also help to receive, which yields superior reception performance even when Prd is in poor state.Figure 9
Decoding failure probabilityPf versus P.


## 6. Conclusion

In this paper, we proposed an energy-efficient OR algorithm to reduce the energy consumption of the sensor nodes in cooperative WSNs. The theoretical and simulation results show that OR outperforms NCCC in energy consumption, while it also obtains similar decoding failure probability to that of NCCC when the incoming links are in good state. The proposed algorithm provides a trade-off between energy efficiency and transmission reliability.



---

*Source: 238386-2015-06-01.xml*