International Journal of Digital Multimedia Broadcasting

Volume 2011 (2011), Article ID 786915, 12 pages

http://dx.doi.org/10.1155/2011/786915

## Utility-Based Joint Routing, Network Coding, and Power Control for Wireless Ad Hoc Networks

School of Computer Science and Technology, Key Laboratory on High Performance Computing, University of Science and Technology of China, Anhui Province 230026, China

Received 1 December 2010; Accepted 1 March 2011

Academic Editor: Zongpeng Li

Copyright © 2011 Kaiqian Ou 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

Energy saving and high delivery reliability are two essential metrics in wireless ad hoc networks. In this paper, we propose a joint power control and network coding (PCNC) scheme which regulates the transmission power to reduce the overall energy usage and uses network coding to improve reliability by reducing the number of packet retransmissions. To argue for PCNC scheme, we investigate both unicast and multicast routing scenarios. To evaluate routing optimality, we adopt expected utility as a metric, which integrates energy cost, reliability, and benefit value. Based on the expected utility, we explore the optimality in both unicast and multicast routing. For unicast routing, we propose an optimal algorithm. We show the NP-hardness of multicast routing problem, and also design a heuristic solution. Results from simulations demonstrate that PCNC improves the performance in terms of expected utility compared with existing techniques.

#### 1. Introduction

Wireless ad hoc networks drew lots of attention in recent years because of its potential applications in various areas. However, ad hoc networks suffer the energy shortage due to the limited power supply devices [1, 2] and unreliable communication caused by the unstable wireless medium [3, 4]. Therefore, *saving energy* and *improving message delivery reliability* are two important issues in the design of wireless ad hoc protocols.

Wireless communications (e.g., sending a message) are usually the most energy-consuming events in wireless networks. Thus, one of the most straight approaches to reduce energy consumption is decreasing the transmission power at the senders. However, decreasing the transmission power will reduce the reliability of the link, which may incur packet loss during data propagation [5]. Packet loss leads to packet retransmissions, which consumes more energy. To balance energy cost and reliability, several approaches have been proposed, especially, transmission power control (TPC) and network coding (NC).

TPC, which has been studied in [5, 6], focuses on adjusting transmission power level on each sender to reduce the energy consumption. In [5], TPC is applied to study the tradeoff between end-to-end reliability and energy consumption based on the probability link model. Different from [5], Li et al*.* [6] integrated TPC with retransmission to address the problem of energy-efficient reliable routing for wireless ad hoc networks. With TPC, the transmission power can be decreased at each node for the packet retransmissions. Their experimental results also demonstrate the benefits of adopting TPC and retransmission.

Recently, NC has received extensive research attentions in networking area. Instead of just forwarding the input packets, a relay node with NC encodes input packets into some encoded ones and sends them out. After receiving the required number of encoded packets, a receiver can decode out the original packets. Recent work [7] shows that NC can improve reliability by reducing the number of packet retransmissions in wireless lossy networks.

Motivated by the advantages of TPC (reducing transmission power) and reliability benefit of NC (reducing retransmission times), this paper studies the tradeoff between energy cost and reliability using a joint power control and network coding (PCNC) scheme. We will study the benefits of PCNC on unicast and multicast in wireless ad hoc network and adopt a widely used metric, *expected utility* [8–11], which integrates link cost, link stability, and system benefit to evaluate the performance of the system. We define the system utility as
where the cost of a system is the total expected energy consumption, and the benefit of a system is the gain of successful message delivery, and is the reliability of the routing. Delivery reliability and energy cost depend on not only routing path, but also how to conduct TPC and NC at senders. Therefore, the challenge is that a routing algorithm based on PCNC needs to determine not only the optimal routing path (or tree), but also the optimal combination of transmission power assignment and coding strategy at each sender.

The main contributions of our work are summarized as follows. (1)We systematically integrate routing, TPC, and NC in wireless ad hoc networks based on utility metric. (2)For unicast, we propose an optimal routing algorithm to determine the maximum utility path with the optimal combination of transmission power assignment and coding strategy at each sender along the path. (3)For multicast, we show that finding an optimal multicast tree to maximize the expected utility is NP-hard and propose a heuristic approach named MIEUDF. (4)Simulation results show that our proposed routing schemes outperform existing schemes in terms of expected utility in both unicast and multicast scenarios.

The rest of the paper is organized as follows. We first introduce related work in Section 2. Section 3 gives the preliminaries, which show the network coding scheme and the link model. The utility metric is described in Section 4. In Section 5, we propose the optimal routing algorithm for unicast session. The heuristic solution of multicast routing is proposed in Section 6. The simulation results are presented in Section 7. Finally, we conclude the paper in Section 8.

#### 2. Related Work

Transmission power control (TPC), which allows a sender to adjust its transmission power level, is used to improve the performance of the network. Correia et al. [12] adopted TPC to decrease energy consumption while maintaining the reliability of the channel in wireless sensor networks. Pierpaolo et al. [13] proposed a distributed TPC method to improve the energy efficiency of routing algorithms in ad hoc networks. By integrating TPC with retransmission, Li et al. [6] proposed energy-efficient reliable routing schemes in wireless ad hoc networks.

Network coding (NC) is an approach pioneered by Ahlswede et al. [14], with which a relay node encodes the input packets and outputs the encoded ones. It has been shown that NC offers exciting benefits in terms of throughput, reliability, cost, and delay in wireless networks [15–18]. Specifically, the reliability gain of NC was studied recently in [7, 19, 20]. The work in [19] confirmed that NC could increase the reliability by reducing the number of transmissions in unicast communication. In multicast, the work in [7, 20] showed that NC improves network reliability.

A new metric called *expected utility* was developed and shown achieving a better performance than other metric (cost and reliability)[10]. Later, expected utility was widely used to evaluate system performance [8, 9, 11]. Based on expected utility metric, M. M. Lu and J. Wu [8] applied network coding to routing problems in unreliable wireless environments and demonstrated that network coding improves the system performance. J. Wu, M. Lu, and F. Li [9] explored the optimality of opportunistic routing (OR) for a utility-based routing, and studied [11] the data-gathering problem in wireless sensor networks by adopting the utility-based metric.

#### 3. Preliminaries

We summarize the main notations used in this paper in Table 1. Suppose that a given message consisting of equal-size packets is assigned with a benefit value , that is, the system will obtain benefit value for each destination successfully receiving the message.

##### 3.1. Network Coding Scheme and Assumptions

Network coding scheme allows intermediate node(s) between the source and destination(s) to encode the incoming packets, and then forward the encoded ones. In this paper, we assume that the given original message is divided by source node into fixed-sized packets, . In this paper, we assume that random linear network coding over a finite field is adopted in the wireless network, that is, a transmitted packet is a linear combination of with coefficients are randomly selected from [21]. Some more assumptions on coding scheme are as follows. (1)There is a limitation on the number of encoded packets of a message transmitted (also called *pre-determined number*) at each sender , denoted as , which is adjustable as in [8]. If no limitation on the number of transmitted packets, the power cost may be extremely high for energy-limited devices. (2)An intermediate node will transmit its pre-determined number of encoded packets only when it has received independent encoded packets. Without this assumption, more energy consumption is wasted on sending useless packets that cannot be used to reconstruct the original message.

Based on the above coding scheme, a message is transmitted hop-by-hop from source to destination in form of encoded packets. However, a message is not guaranteed to be successfully delivered to a destination, due to pre-determined number rather than unlimited number of transmitted encoded packets. The pre-determined number should reflect the importance of the corresponding message, because an important message requires high reliability and more encoded packets being transmitted. The increment of the number of transmitted packets can directly increase the transmission reliability (see Section 4.3). Under this coding scheme, the tradeoff between expected energy consumption and message delivery reliability is explored in the rest of this paper.

##### 3.2. Link Model

In this paper, we use the similar link model in [5], which is also widely used in other works [22–24]. Assume that the transmitted packets are fixed-size of bits, and all nodes transmit at the same rate.

Consider the link shown in Figure 1, where a packet of a message is transmitted from node to through the zero mean additive white Gaussian noise (AWGN) channel. Following [5], the probability of packet successful reception is given by (this formula is achieved using AWGN channel with Rayleigh fading assuming the sender does not have information about the fading state, See [5] for more details) where is the packet size, is the distance between node and , is the chosen transmission power level at node , and is the propagation power loss exponent, usually assumed to be between 2 to 4. As in [5], the noise power and fading parameter are assumed to be constant across the network, denoted as . Since , , and are all assumed to be constant, a sender can adjust its transmission power to control the probability of packet successful reception over a link.

In this section, we introduced two adjustable parameters at each sender , transmission power level and pre-determined number of transmitted packets. In the next section, we will analyze how these adjustable parameters at senders affect energy consumption and message delivery reliability, and hence the expected utility.

#### 4. Utility Metric Model

In this section, we first introduce utility metric for both unicast path and multicast tree as functions of energy consumption and transmission reliability. Then, we study how to calculate energy consumption and message link/path reliability based on TPC and NC.

##### 4.1. Utility for Unicast

We first consider a simple case, where a source node sends a message to a destination node using a link , as illustrated in Figure 1. Denote *pre-determined energy consumption* at node as which is defined as the transmission power times the pre-determined number of transmitted packets and *message link reliability* as which is defined as the probability of independent encoded packets being successfully received by . The system has the probability of to obtain benefit value at the cost of , and may consume energy obtaining zero benefit with the probability of with less than independent encoded packets being successfully received by . The expected utility over this link is

We then consider a general case with single destination where source node sends the message to destination over path , as shown in Figure 2. For a multihop path scenario, the probability of destination successfully receiving the message is *message path reliability*, that is, the probability that a message is successfully transmitted over all links along rather than message link reliability in Formula (3). Let denote the message path reliability from node to along the path. According to network coding scheme described in Section 3.1, each intermediate node will relay the message to its downstream node only after it successfully receives the message from the source. So, . Since the probability of destination successfully receiving the message is , the system gets expected benefit . For an intermediate node , the probability of consuming pre-determined energy is equal to the probability that the message is successfully transmitted from source to , that is, . Therefore, expected energy consumption at node is equal to . The total expected energy cost along the path is the sum of the expected energy consumption at each sender, that is, . Then, the expected utility of path , denoted as , is expected benefit contributed by the single destination minus the total expected energy cost at all senders along the path
where .

##### 4.2. Utility for Multicast

We consider the scenario consisting of multiple destinations where a source node sends the message to multiple destinations through a multicast tree as shown in Figure 3. Let be the multicast tree, and be the *set of destinations*, including all leaves and some intermediate nodes of . A node may contribute benefit value to the system with a probability of because the probability of node successfully receiving the message is . Let be the *set of senders* on the tree, including the source and all intermediate nodes. A node may have pre-determined energy consumption with a probability of because node consumes energy only after it successfully receives the message from the source . We use to represent the expected utility of tree . The expected utility of the multicast tree is the aggregated benefit of all destinations minus the total expected energy cost at all senders on the tree:
where .

##### 4.3. Energy Consumption and Message Reliability

In this subsection, we study how to calculate energy consumption and message link reliability based on the two parameters at each sender, transmission power and pre-determined number of transmitted packets.

Let be a link, where node is the sender and node is 's downstream node. Assume that the transmission power and the pre-determined number of transmitted packets at are and , respectively. According to the definition of predetermined energy consumption,

In the following, we are to calculate based on and . From (2), the * packet delivery reliability over link *, that is, the probability of a packet being successfully transmitted over a link can be obtained as

Since the message link reliability is the probability that independent encoded packets being successfully transmitted over link , we can calculate by summing up the probability that exactly packets successfully transmitted over the link. Without loss of generality, we assume that different packet transmissions are independent. Therefore, the packet transmissions can be regarded as a Bernoulli experiment. So, the probability of successfully receiving exact packets follows binomial distribution, .

By summing up the total probabilities that exact () out of packets are successfully received by node , we obtain the expression of the message link reliability over link as where .

From (6) and (8), the predetermined energy consumption at , , and the massage link reliability over link , , both depend on the adjustable transmission power and pre-determined number of transmitted packets at sender . In the following, we use to denote the predetermined energy consumption at node , and to denote the message link reliability over link .

By applying (6) and (8) to (4) or (5), we can calculate the expected utility for a given path or tree based on the transmission power level and the pre-determined number of transmitted packets at each sender.

#### 5. Unicast Routing

In this section, we will model unicast routing and propose an optimal unicast routing algorithm.

##### 5.1. Problem Statement

In a wireless ad hoc network, a source node initiates a unicast session to send a message to a destination . The problem is to find a unicast path to deliver the message from to such that the expected utility is maximized. Let be a unicast path from to , be the message path reliability from source to node along the path , where is a node on . Let be the pre-determined energy consumption at sender . According to (4), the expected utility along path is
where is the set of senders on path . Then, the maximum utility unicast problem can be formulated as
where is a feasible path from to , is the set of transmission power levels available at each sender, is the maximum possible power level, is the set of the feasible pre-determined number of transmitted packets (*note: at least ** packets must be received by a node; otherwise, the destination cannot reconstruct the original message*). In Formula (10), and can be calculated according to Formula (6) and (8), respectively.

The difficulty of optimal unicast routing is that the routing algorithm needs to determine not only the optimal routing path, but also the optimal selections of both transmission power and pre-determined number of transmitted packets at each sender along the path.

##### 5.2. Optimal Solution

In this subsection, we propose an optimal unicast routing algorithm. An important observation is that the calculation of path utility can be conducted in a recursive way. Consider a path , as shown in Figure 2. Define the expected utility of subpath from to as the *remaining expected utility* (REU) of node , denoted as . Specially, and because the initial benefit value of the message is . From (4), the recursive expression of REU is

Therefore, we can recursively apply Formula (11) starting from destination to calculate the expected utility of any sub-path. Since and , each iterative step of the calculation will reduce REU from the original value of . To find the maximum utility path to destination is equal to finding the minimum REU reduction path starting from the destination. So, the utility-based routing problem is similar to shortest path problem. But there are some differences: (1) our problem measures the distance in terms of expected utility rather than cost; (2) the solution of our problem requires to determine not only the next hop but also the values of both the transmission power and the pre-determined number of transmitted packets at each sender.

Based on the Dijkstra's algorithm for shortest path problem, we design a routing Algorithm 1 to maximize the expected utility from a source node to a destination node.

In Algorithm 1, is the set of all nodes in a network. and are the transmission power and pre-determined number of transmitted packets at , respectively. and are the corresponding optimal values of and to maximize the expected utility over the link . The existence of and is guaranteed by the following theorem.

Theorem 1. *For any link , the optimal values of both transmission power level and pre-determined number of transmitted packets exist such that the expected utility over the link is maximized.*

*Proof. *See The appendix.

The algorithm starts from the destination with the initial message benefit value and REUs of other nodes are initially set to . At the beginning, consists of all nodes in the network. In each iteration, this algorithm not only selects the node that reduces the REU to the least, that is, the node with largest REU will be removed from , but also determines the corresponding optimal values of the transmission power and pre-determined number of transmitted packets at the selected node. The REU will be reduced at each intermediate node going backwards from the destination to the source node. When source is selected and removed from , the algorithm stops and outputs optimal path from to . Since Algorithm 1 is similar to Dijkstra algorithm, the time complexity of Algorithm 1 is .

When a routing path for a given source-destination pair is determined, the source divides the message into packets, generates encoded packets, and transmits them using transmission power to its downstream node along the optimal path. Only after receiving linearly independent packets from the upstream node, an intermediate node begins to send encoded packets with optimal transmission power to the next hop.

#### 6. Multicast Routing

In this section, we first formulate the maximum utility multicast routing problems, which is shown to be NP-hard. Then, a heuristic solution for multicast routing problem is proposed.

##### 6.1. Problem Statement

Given a wireless network with a set of nodes , a source node initiates a multicast session and sends a message to a set of destinations . It is to find a multicast tree to deliver the message from the source to all destinations such that the expected utility is maximized. The problem is called maximum-utility multicast routing problem (MUMRP).

Let be the message path reliability from source to a node along a muticast tree . Denote the set of senders on as . Let be the pre-determined energy consumption at sender . According to Formula (5), the expected utility of tree is

Then, the MUMR problem can be formulated as where is a feasible multicast tree connecting the source to all destinations in . and are the same as in Section 5. In (13), and can be calculated according to Formulae (6) and (8), respectively.

The difficulty to find a multicast tree with maximum-utility lies in that it not only determines the optimal tree but also optimal values of transmission power and pre-determined number of transmitted packets at each sender of the tree.

The maximum-utility broadcast routing problem (MUBRP) is a special case of MUMRP. If the reliability of eligible links is 1 and pre-determined number of packets is fixed across the network, MUBRP can be reduced to the geometric minimum broadcast cover problem (GMBC) [25], which is shown to be NP-hard. Hence, MUBRP and further MUMRP are both NP-hard. In the following, we design heuristic solutions for MUMRP.

##### 6.2. Heuristic Solution for MUMRP

In this subsection, we propose a heuristic solution for MUMRP. For MUMRP, each destination node in will contribute benefit value with successful message reception in a multicast session. Based on Prim's algorithm, we propose a greedy-based heuristic,* maximum incremental expected utility destination first* algorithm (MIEUDF), which greedily inserts a path that connects a destination to the current tree such that the incremental expected utility (IEU) of the added destination is maximized. The IEU of the new added destination is defined as its expected benefit minus corresponding expected energy cost. The MIEUDF algorithm iteratively adds the destination with the maximum IEU from the set of remaining destinations to an existing tree. The algorithm in pseudocode is presented in Algorithm 2. In Algorithm 2, denotes the IEU of destination . The aggregated expected utility of the multicast tree is denoted as . The multicast tree generated is recorded in .

The algorithm starts with a tree consisting of only the source node and being zero. At the beginning, the IEU of each destination is assigned with the expected utility along the optimal path from source to itself generated by Algorithm 1. The optimal path from source to any destination is recorded as , and all generated optimal paths build up a tree rooted at .

At each step of *Repeat* loop in the algorithm, the destination with largest IEU, say , is removed from and connected to the existing tree through its optimal path, and contributes to . For any relay node along the new inserted branch of tree , its transmission power and pre-determined number of transmitted packets, and , will be determined. Then, IEU of any other destination will be increased by the expected energy cost along the inserted branch if share some sub-path with the branch, because the expected energy consumption for the sharing sub-path has been included in the newly inserted branch. During each iterative step, not only a destination is connected to the existing , but also the corresponding optimal values of the transmission power and pre-determined number of transmitted packets of the newly added senders are determined. When is empty, the algorithm stops and outputs a multicast tree connecting the source to all destinations in . Since Algorithm 2 calls Algorithm 1 times, its time complexity is .

After multicast routing tree is determined, divides the message into packets, generates encoded packets, and broadcasts the encoded packets to its downstreaming nodes along the tree using transmission power . Only after receiving linearly independent packets from its parent node, an intermediate node in the tree begins to send encoded packets to its children with transmission power level .

#### 7. Simulation

In this section, we give an evaluation of our proposed PCNC-based utility routing algorithms. To evaluate the performance of PCNC-based utility routing scheme (PCNC), we compare PCNC with two existing methods: power control with retransmission-based routing scheme (PCRE) and NC-based routing scheme (NC).

Compared with PCNC, PCRE only allows original packets to be transmitted in a network. With PCRE, the transmission power of sender will be adjusted to the optimum power that maximizes the expected utility. For comparison purposes, the redundancy ratio in PCNC is calculated, and then this ratio will be used as the average times of retransmission for each packet at each forward node in PCRE.

Compared with PCNC, each sender in NC scheme will simply adjust its transmission power to be proportional to the distance between itself and its intended receiver and will select the optimum number of encoded packets transmitted to maximize expected utility. In the following simulations, the transmission power of each sender will be adjusted to , where is the corresponding distance between the sender and its intended receiver, as in [8, 9].

##### 7.1. Simulation Settings

We set up the simulations in a square field, where nodes are randomly deployed. All nodes are homogeneous with the same available transmission power set . We set , . The path-loss exponent and constant are set to 2 and 5, respectively.

For unicast routing, we fix the position of the source and the destination at locations (2,2) and (18,18), respectively. Other nodes are randomly deployed. For multicast routing, we randomly deploy nodes including source . We conduct the experiments with different numbers of nodes and different numbers of packets in a message. The experiments are conducted 50 times for each setting, and the average is used to compare the performances of the three comparable algorithms.

##### 7.2. Simulations for Unicast Routing

For unicast routing, we conduct experiments with two benefit values, 3000 and 6000.

We first evaluate the impact of message size on utility-based unicast routing schemes. In the experiments, the message size varies from 4 to 12, with a fixed total number of nodes 30. The experimental results are shown in Figure 4. We observe that PCNC outperforms PCRE and NC with various value under two benefit values, and both PCNC and NC achieve much more expected utility than PCRE, whose utilities are almost negative. The significant performance gap between PCNC/NC and PCRE is because that NC makes any encoded packet transmitted identically useful for recovering a message, and gives redundancy for a whole message rather than a single packet using retransmission scheme. With the same pre-determined number of transmitted packets, NC increases the message delivery reliability significantly compared with retransmission, especially with larger . Hence, with PCRE, the initial benefit value will be reduced rapidly to negative, going backwards from the destination to the source. Compared with NC, PCNC increases the expected utility about 17%~125% with benefit value 3000, and 8%~28% with benefit value 6000, respectively. The reason that PCNC has better performance over NC is that with TPC, each intermediate node has more alternative choices on transmission power rather than fixed to , and thus optimal choice can reduce power consumption and hence increase the expected utility.

We then evaluate the performance of the three algorithms with different numbers of nodes from 10 to 50. is set to 6 in these groups of simulations. The experimental results are shown in Figure 5. The expected utilities of three algorithms slightly increase as the number of nodes grows. This is because a larger number of nodes results in more routing path choices from the source to a destination, and more routing path choices may lead to better performance in terms of expected utility. We also observe that PCNC achieves the largest expected utility among the three algorithms, and PCRE attains the smallest expected utility. Compared with PCRE, PCNC and NC increase expected utility significantly under two benefit values. Compared with NC, PCNC increases the expected utility about 25%~36% with benefit value 3000, and 8%~14% with benefit value 6000, respectively.

##### 7.3. Simulation for Multicast

In this subsection, we evaluate the performance of our proposed heuristic MIEUDF for MUMRP. To evaluate the performance of MIEUDF, we also compare it with two other comparative methods, PCRE and NC. We use two benefit values 1000 and 2000 in the following experiments.

We first compare the performance of PCNC with two comparable algorithms, PCRE and NC, under different message sizes. The message size varies from 4 to 12. In this group of experiments, we limit the total nodes number to 20, including 10 destination node. These nodes are randomly dispersed in the target field. The experimental results is shown in Figure 6. From Figure 6, we observe that with various message sizes, the performance of PCNC is better than that of PCRE and NC under two benefit values 1000 and 2000. Note that PCRE in multicast scenarios achieves much higher expected utility than in unicasting scenarios, where almost all utilities are negative. It is because that a number of destinations contribute benefits to system in multicast instead of a single destination in unicast, and that the source may be deployed near to destination(s) rather than far away in unicast. Compared with PCRE, PCNC increases the expected utility by 76%~413% with benefit value 1000 and by 52%~523% with benefit value 2000. And compared with NC, PCNC increases the expected utility by 16%~70% with benefit value 1000 and by 5%~14% with benefit value 2000.

We also evaluate the performance of MIEUDF with different number of destinations in the target field. We set the total number of nodes to 40, and vary the number of destinations from 10 to 30. The message size is set to 8. Figure 7 illustrates the expected utilities of three schemes PCNC, PCRE, and NC under two benefit values 1000 and 2000. From Figure 7, we observe that PCNC achieves the expected utilities of multicast tree 3~6 times and 2~3 times greater than that of PCRE with benefit values 1000 and 2000, respectively. Additionally, compared with NC, PCNC increases the expected utilities of multicast tree by 10%~36% and by 4%~13% with benefit values 1000 and 2000, respectively.

From the above results, we conclude that the performance of our proposed heuristic MIEUDF based on PCNC is better than other two schemes, PCRE and NC. The reason is that PCNC-based heuristic not only applies NC to enhance the message delivery reliability but also selects the optimal transmission power to reduce power consumption, and hence increases the expected utility of multicast session.

#### 8. Conclusion

In this paper, we combine power control technique with network coding scheme to attain a tradeoff between energy consumption and message delivery reliability. We adopt a probability link model to reflect the relationship between transmission power and link reliability, and introduce a single metric expected utility to integrate energy consumption and reliability. Based on the expected utility metric, we propose an optimal algorithm to achieve the maximum expected utility for unicast routing, and design a heuristic for multicast routing problems, respectively. Simulation results demonstrate that our proposed scheme PCNC outperforms other two alternative schemes, PCRE and NC. In the future, we would like to extend the utility metric to analyze throughput, delay, and other performance metrics when power control technique is integrated with network coding schemes.

#### Appendix

*Proof of Theorem 1. *We first introduce a lemma. Then based on this lemma, we prove the correctness of Theorem 1.

Lemma 1. *For any link , if the transmission power of sender is fixed, then there exists an optimal pre-determined number of transmitted packets on node such that the expected utility over this link can be maximized.*

*Proof. *Assume that a message consists of packets. Since the transmission power level of node , , is fixed, the packet link reliability over this link, denoted as , can be determined according to (2). Since both and are fixed, we drop the subscript of and as and , respectively. We use to represent pre-determined number of sender .

Based on (3) and (8), the expected utility over this link can be derived:

From the above equation, we can easily observe that the utility is a function of (only depending on the variable ). Thus, we use to denote the link expected utility. Then, we can derive the expression of :

Proving the existence of optimal pre-determined number to maximize is equal to proving that there exists an such that and ;

Since and are both constant, the decreasing rate of is larger than the increasing rate of , as increases. Therefore, for a sufficiently large , will be less than or equal to , which results in . Thus, Lemma 1 is proved.

*Proof of Theorem 1. *Suppose that there are discrete power levels available to node , that is, . The problem to prove there exist optimal values of both transmission power and pre-determined number of transmitted packets at node to maximize utility can be decomposed into subproblems with fixed transmission power according to discrete power levels.

Based on Lemma 1, an optimal pre-determined number of transmitted packets to maximize expected utility exists for each of these sub-problems. We use to represent the optimal pre-determined number of transmitted packets with corresponding transmission power level , respectively. We use to denote these utilities, where . The maximum utility among these utilities is the global optimum.

#### Acknowledgments

This paper was supported by the National Natural Science Foundation of China (NSFC) under Grant no. 61073038, and the National High Technology Research and Development Program of China under Grant no. 2009AA01A348.

#### References

- J. H. Chang and L. Tassiulas, “Energy conserving routing in wireless ad-hoc networks,” in
*Proceedings of the 19th Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE INFOCOM '00)*, pp. 22–31, Tel Aviv, Israel, March 2000. View at Scopus - Q. Li, J. Aslam, and D. Rus, “Online power-aware routing in wireless adhoc networks,” in
*Proceedings of the Annual ACM International Conference on Mobile Computing and Networking (ACM MOBICOM '01)*, pp. 97–107, Rome, Italy, July 2001. - A. Cerpa, M. Potkonjak, J. L. Wong, and D. Estrin, “Temporal properties of low power wireless links: modeling and implications on multi-hop routing,” in
*Proceedings of the 6th ACM International Symposium on Mobile Ad Hoc Networking and Computing (MOBIHOC '05)*, pp. 414–425, May 2005. View at Publisher · View at Google Scholar · View at Scopus - D. Couto, D. Aguayo, B. Chambers, and R. Morris, “Performance of multihop wireless networks : shortest path is not enough,”
*SIGCOMM Computer Communication Review*, vol. 33, no. 1, pp. 83–88, 2003. View at Google Scholar - A. Khandani, E. Modiano, J. Abounadi, and L. Zheng, “Reliability and route diversity in wireless networks,” in
*Proceedings of the Conference on Information Sciences and Systems (CISS '05)*, Baltimore, Md, USA, March 2005. - X.-Y. Li, Y. Wang, H. Chen, X. Chu, Y. Wu, and Y. Qi, “Reliable and energy-efficient routing for static wireless Ad Hoc networks with unreliable links,”
*IEEE Transactions on Parallel and Distributed Systems*, vol. 20, no. 10, pp. 1408–1421, October 2009. View at Publisher · View at Google Scholar - M. Ghaderi, D. Towsley, and J. Kurose, “Reliability gain of network coding in lossy wireless networks,” in
*Proceedings of the The 27th Conference on Computer Communications (IEEE INFOCOM '08)*, pp. 2171–2179, April 2008. - M. M Lu and J. Wu, “Erasure-coding based utility routing in multihop wireless network,” in
*Proceedings of the 6th IEEE International Conference on Mobile Ad-Hoc and Sensor Systems (IEEE MASS '09)*, pp. 168–177, Macau, China, October 2009. - J. Wu, M. Lu, and F. Li, “Utility-based opportunistic routing in multi-hop wireless networks,” in
*Proceedings of the 28th International Conference on Distributed Computing Systems (ICDCS '08)*, pp. 470–477, June 2008. View at Publisher · View at Google Scholar · View at Scopus - M. Lu and J. Wu, “Social welfare based routing in Ad Hoc networks,” in
*Proceedings of the 2006 International Conference on Parallel Processing (ICPP '06)*, pp. 211–218, August 2006. View at Publisher · View at Google Scholar · View at Scopus - M. Lu and J. Wu, “Utility-based data-gathering in wireless sensor networks with unstable links,”
*Lecture Notes in Computer Science*, vol. 49, no. 4, pp. 13–24, 2008. View at Google Scholar · View at Scopus - L. H. A. Correia, D. F. Macedo, A. L. dos Santos, A. A. F. Loureiro, and S. M. S. Nogueira, “Transmission power control techniques for wireless sensor networks,”
*Elsevier Computer Networks*, vol. 51, no. 17, pp. 4765–4779, 2007. View at Google Scholar - P. Bergamo, A. Giovanardi, A. Travasoni, D. Maniezzo, G. Mazzini, and M. Zorzi, “Distributed power control for energy efficient routing in AD Hoc networks,”
*Wireless Networks*, vol. 10, no. 1, pp. 29–42, 2004. View at Publisher · View at Google Scholar · View at Scopus - R. Ahlswede, N. Cai, S. Y. R. Li, and R. W. Yeung, “Network information flow,”
*IEEE Transactions on Information Theory*, vol. 46, no. 4, pp. 1204–1216, 2000. View at Publisher · View at Google Scholar · View at Scopus - J. Jin, T. Ho, and H. Viswanathan, “Comparison of network coding and non-network coding schemes for multi-hop wireless networks,” in
*Proceedings of the IEEE International Symposium on Information Theory*, pp. 197–201, July 2006. - M. Ghaderi, D. Towsley, and J. Kurose, “Reliability benefit of network coding,” Tech. Rep., Computer Science Department, University of Massachusetts Amherst, Amherst, Mass, USA, 2007. View at Google Scholar
- M. Kurth, A. Zubow, and J. P. Redlich, “Cooperative opportunistic routing using transmit diversity in wireless mesh networks,” in
*Proceedings of the 27th IEEE Communications Society Conference on Computer Communications (INFOCOM '08)*, pp. 1310–1318, Phoenix, Ariz, USA, April 2008. View at Publisher · View at Google Scholar · View at Scopus - K. Zeng, W. Lou, and H. Zhai, “On end-to-end throughput of opportunistic routing in multirate and multihop wireless networks,” in
*Proceedings of the 27th IEEE Communications Society Conference on Computer Communications (IEEE INFOCOM '08)*, pp. 816–824, April 2008. View at Publisher · View at Google Scholar - D. S. Lun, M. Médard, and R. Koetter, “Network coding for efficient wireless unicast,” in
*Proceedings of the IEEE International Zurich Seminar on Digital Communications*, pp. 74–77, February 2006. View at Publisher · View at Google Scholar · View at Scopus - C. Zhan, Y. Xu, J. Wang, and V. Lee, “Reliable multicast in wireless networks using network coding,” in
*Proceedings of the 6th IEEE International Conference on Mobile Adhoc and Sensor Systems (MASS '09)*, pp. 506–515, Macau, China, October 2009. View at Publisher · View at Google Scholar - T. Ho, M. Médard, R. Koetter et al., “A random linear network coding approach to multicast,”
*IEEE Transactions on Information Theory*, vol. 52, no. 10, pp. 4413–4430, 2006. View at Publisher · View at Google Scholar - A. E. Khandani, J. Abounadi, E. Modiano, and L. Zheng, “Reliability and route diversity in wireless networks,”
*IEEE Transactions on Wireless Communications*, vol. 7, no. 12, Article ID 4712690, pp. 4772–4776, 2008. View at Publisher · View at Google Scholar · View at Scopus - L. A. Petingi, “Reliability study of mesh networks modeled as random graphs,” in
*Proceedings of the International Conference on Mathematical Models for Engineering Science (MMES '10)*, pp. 85–93, November 2010. - J.-Q. Jin, T. Ho, and H. Viswanathan, “Comparison of network coding and non-network coding schemes for multihop wireless networks,” in
*Proceedings of the IEEE International Symposium on Information Theory*, pp. 197–201, July 2006. - M. Cagalj, J.-P. Hubaux, and C. Enz, “Minimumenergy broadcast in all-wireless networks: NP-completeness and distribution issues,” in
*Proceedings of the Annual ACM International Conference on Mobile Computing and Networking (ACM MOBICOM '02)*, pp. 172–182, Atlanta, Ga, USA, 2002.