Multiuser Joint Energy-Bandwidth Allocation with Energy Harvesting - Part I: Optimum Algorithm & Multiple Point-to-Point Channels

# Multiuser Joint Energy-Bandwidth Allocation with Energy Harvesting - Part I: Optimum Algorithm & Multiple Point-to-Point Channels

Zhe Wang, Vaneet Aggarwal, Xiaodong Wang Z. Wang and X. Wang are with the Electrical Engineering Department, Columbia University, New York, NY 10027 (e-mail: {zhewang, wangx}@ee.columbia.edu).V. Aggarwal is with AT&T Labs-Research, Bedminster, NJ 07921 USA (e-mail: vaneet@research.att.com).This paper was presented in part at the 2014 IEEE International Symposium on Information Theory (ISIT), Honolulu, HI, USA, Jul. 2014.
###### Abstract

In this paper, we develop optimal energy-bandwidth allocation algorithms in fading channels for multiple energy harvesting transmitters, each may communicate with multiple receivers via orthogonal channels. We first assume that the side information of both the channel states and the energy harvesting states is known for time slots a priori, and the battery capacity and the maximum transmission power in each time slot are bounded. The objective is to maximize the weighted sum-rate of all transmitters over the time slots by assigning the transmission power and bandwidth for each transmitter in each slot. The problem is formulated as a convex optimization problem with constraints, where is the number of the receivers, making it hard to solve with a generic convex solver. An iterative algorithm is proposed that alternatively solves two subproblems in each iteration. The convergence and the optimality of this algorithm are also shown. We then consider the special case that each transmitter only communicates with one receiver and the objective is to maximize the total throughput. We develop efficient algorithms for solving the two subproblems and the optimal energy-bandwidth allocation can be obtained with an overall complexity of . Moreover, a heuristic algorithm is also proposed for energy-bandwidth allocation based on causal information of channel and energy harvesting states.

Bandwidth allocation, convergence analysis, convex optimization, energy harvesting, energy scheduling.

## I Introduction

With the rapid development of energy harvesting technologies, a new paradigm of wireless communications that employs energy harvesting transmitters has become a reality [1]. The renewable energy source enables the flexible deployment of the transmitters and prolongs their lifetimes [1][2]. State-of-the-art techniques can provide fairly accurate short-term prediction of the energy harvesting process, which can be used to assist energy scheduling [3][4]. To make the best use of the harvested energy for wireless communications, many challenging research issues arise [5][6][7][8][9]. In particular, optimal resource (energy, bandwidth, etc.) scheduling is key to the design of an efficient wireless system powered by renewable energy sources.

For a single transmitter with energy harvesting, a number of works addressed the energy scheduling problem with non-causal channel state information. For static channels, [10] proposed a shortest-path-based algorithm for the energy scheduling. [7] analyzed the optimality properties based on the energy causality and the optimal energy scheduling algorithm was also provided. For fading channels, a staircase water-filling algorithm was proposed in [11] for the case of infinite battery capacity; with finite battery capacity, [12] studied the energy flow behavior with an energy harvesting device and proposed a directional water-filling method. Taking the maximum transmission power into account, [5] proposed a dynamic water-filling algorithm to efficiently obtain the energy schedule to maximize the achievable rate. Energy scheduling for multiuser systems with energy harvesting transmitters has also been considered. In [9], the general capacity region for a static multiple-access channel (MAC) was characterized without considering the constraints on the battery capacity and the maximum transmission power. [13] discussed the optimal power policy for energy harvesting transmitters in a two-user Gaussian interference channel. In [14], the optimal energy scheduling algorithm was proposed for a static broadcast channel with finite battery capacity constraint. Considering both the finite battery capacity and the finite maximum transmission power, the iterative dynamic water-filling algorithm was extended to the fading MAC channel [6]. Moreover, the scheduling problem in the Gaussian relay channel with energy harvesting was discussed in [8].

In this paper, we consider a multiuser system with multiple transmitters, each powered by a renewable energy source. Each transmitter communicates with its designated receivers and is constrained by the availability of the energy, the capacity of the battery, and the maximum (average) transmission power. Moreover, a frequency band is shared by all transmitters and we assume orthogonal channel access to avoid interference. We aim to obtain the optimal joint energy-bandwidth allocation over a fixed scheduling period based on the available information on the channel states and energy harvesting states at all transmitters, to maximize the weighted sum of the achievable rate.

Consider the special case of equal weights and each transmitter communicates with only one receiver. Then, without energy harvesting, TDMA is optimal for the maximum unweighted sum-rate, i.e., at any time the link with the highest rate takes all bandwidth. However, for energy harvesting transmitters, TDMA is no longer optimal. This is because the finite battery capacity leads to energy discharge and waste by some transmitters that are not scheduled to transmit in a time slot. Therefore, to make the best use of the harvested energy, multiple transmitters should split the frequency band and transmit in a same slot. In this paper, we assume that the channel is flat fading and therefore each transmitter only needs to be allocated a portion of the total bandwidth.

We first consider the non-causal case, i.e., the energy harvesting and the channel fading can be predicted for the scheduling period, and formulate a convex optimization problem with variables and constraints, where is the number of receivers and is the number of scheduling time slots. Since the computational complexity of a generic convex solver becomes impractically high when the number of constraints is large [15], we will develop an iterative algorithm that alternates between energy allocation and bandwidth allocation. We will show that this algorithm converges to the optimal solution of the joint energy-bandwidth scheduling problem. For the special case that each transmitter only communicates with one receiver and all weights are equal, optimal algorithms to solve the energy and bandwidth allocation subproblems are also the optimal energy-bandwidth allocation algorithm that obtained a computational complexity of . We then consider the causal case, where the harvested energy and the channel gain can only be observed at the beginning of the corresponding time slot. We propose a suboptimal energy-bandwidth allocation algorithm that follows a similar structure of the noncausal optimal solution. Simulation results demonstrate that both the proposed non-causal and causal algorithms achieve substantial performance improvement over some heuristic scheduling policies.

The remainder of the paper is organized as follows. In Section II, we describe the system model and formulate the joint energy-bandwidth scheduling problem. In Section III, we propose an iterative algorithm to obtain the optimal energy-bandwidth allocation and prove its convergence and optimality. Optimal algorithms for energy allocation and bandwidth allocation, respectively, are further developed in Section IV for the special case that each transmitter only communicates with one receiver and all weights are equal. In Section V, a suboptimal causal algorithm is proposed. Simulation results are provided in Section VI. Finally, Section VII concludes the paper.

## Ii System Model and Problem Formulation

### Ii-a System Model

Consider a network consisting of transmitters and receivers sharing a total bandwidth of Hz, where and each transmitter may communicate with multiple receivers. We assume a scheduling period of time slots and no two transmitters can transmit in the same time slot and the same frequency band. Denote as the normalized bandwidth allocation for link in time slot . We consider a flat and slow fading channel, where the channel gain is constant within the entire frequency band of Hz and over the coherence time of seconds, which is also the duration of a time slot. Assuming that each time slot consists of time instants, we denote as the symbol sent to the receiver of link at instant in slot . The corresponding received signal at receiver is given by

 Ymki=hmkXmki+Zmki (1)

where represents the complex channel gain for link in slot , and is the i.i.d. complex Gaussian noise. We denote and denote as the transmission energy consumption for link in slot . Without loss of generality, we normalize both and to ; then, and become the transmission power and the allocated bandwidth of link in slot , respectively. For link , the upper bound of the achievable channel rate in slot can be written as [16]. Moreover, we denote as the scheduling period, as the set of transmitters, and as the set of receivers. Further, we denote as the set of receivers of transmitter , where for all .

Assume that each transmitter is equipped with an energy harvester and a buffer battery, as shown in Fig. 1. The energy harvester harvests energy from the surrounding environment. We denote as the total energy harvested up to the end of slot by transmitter . Since in practice energy harvesting can be accurately predicted for a short period [3][4], we assume that the amount of the harvested energy in each slot is known. Moreover, the short-term prediction of the channel gain in slow fading channels is also possible [17]. Therefore, we assume that and are known non-causally before scheduling. Note that such non-causal assumption also leads to the performance upper bound of the system. We will relax this assumption and consider causal knowledge of the channels and energy harvesting in Section V.

For transmitter , assuming that the battery has a limited capacity and is empty initially, then the battery level at the end of slot can be written as

 Bkn=Bk−1n+(Ekn−Ek−1n)−k∑κ=1∑m∈Mnpκm−k∑κ=1Dκn, (2)

where represents the energy discharge (waste) for transmitter in slot . Moreover, must satisfy for all .

We assume that each transmitter has a maximum per-slot transmission energy consumption, , such that for . With the maximum transmission energy and the limited battery capacity, some of the harvested energy may not be able to be utilized, and is therefore wasted, i.e., may necessarily be strictly positive in some slots. Then, the constraints on the battery level can be written as

 0≤Ekn−k∑κ=1∑m∈Mnpκm−k∑κ=1Dκn≤Bmaxn. (3)

Moreover, we denote as the discharge allocation. Note that, we assume controllable energy discharge, i.e., the energy can be discharged and wasted anytime, even when the battery is not full.

###### Remark 1

In the transmitter model, both the maximum transmission energy and the battery capacity are finite. If the harvested energy is ample, part of the energy has to be discharged even if the transmitter transmits at the maximum (available) transmission energy in each slot. That is, is due to the incoming energy being large enough that it cannot be used for transmission or storage.

### Ii-B Problem Formulation

Define . We use upper bounds of the achievable channel rate over a weighted sum of the links and slots as the performance metric, given by

 CW(P,A)=∑m∈MWm∑k∈Kakm⋅log(1+pkmHkmakm), akm∈[0,1],pkm∈[0,∞) , (4)

where is the energy allocation, is the bandwidth allocation, and is the weight set. In particular, when for all , becomes the throughput of the network.

Note that, both and can be zero in (4). However, if , the channel rate of link in slot is zero, even if the energy allocation , thus is actually wasted. However, we still treat the pair as feasible as long as .

We formulate the following energy-bandwidth allocation problem:

 maxP,A,DCW(P,A) (5)

subject to

 ⎧⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩0≤Ekn−∑kκ=1∑m∈Mnpκm−∑kκ=1Dκn≤Bmaxn∑Mi=1aki=1akm≥0∑m∈Mnpkm≤Pnpkm≥0Dkn≥0 (6)

for all and .

### Ii-C Optimal Energy Discharge Allocation

To efficiently solve the problem in (5)-(6), we consider a two-stage procedure. In the first stage, we obtain the optimal energy discharge allocation such that

 maxP,A,D=D∗CW(P,A)=maxP,A,DCW(P,A) (7)

with the constraints in (6). And in the second stage, we use and define the energy expenditure for transmission as

 ~Ekn≜Ekn−k∑κ=1Dκn∗ . (8)

Then we solve the following problem:

 maxP,ACW(P,A) (9)

subject to

 ⎧⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩~Ekn−Bmaxn≤∑kκ=1∑m∈Mnpκm≤~Ekn∑Mi=1aki=1∑m∈Mnpkm≤Pnpkm≥0akm≥0 (10)

for all and .

We consider the following greedy strategy to obtain the energy discharge allocation by assuming that each transmitter transmits at the maximum power in each slot, i.e.,

 {Dkn=max{Bk−1n+Ekn−Ek−1n−∑kκ=1∑m∈Mnpkm−Bmaxn,0}∑m∈Mnpkm=min{Pn,Bk−1n+Ekn−Ek−1n}, k=1,2,…,K (11)

for all .

Note that, following (11), the total discharged energy is minimized and thus the amount of the energy used for transmission is maximized. Intuitively, this way the feasible domain becomes the largest, providing the best performance for transmission energy scheduling. Specifically, given a feasible bandwidth allocation , the achievable rate of each link is non-decreasing with respect to the transmission energy, and the battery of each transmitters operates independently. Therefore, following the same lines of the proof in [6], the optimality of (11) can be established. In particular, using any feasible energy discharge corresponding to the minimal energy wastage, the optimal value of (9) is same, which is no less than the optimal value under any feasible energy discharge allocation with non-minimal energy wastage.

###### Lemma 1

The discharge allocation given by (11) is the optimal to the problem in (5)-(6), i.e., it satisfies (7), where the LHS of (7) is subject to the constraints in (10) and the RHS is subject to the constraints in (6).

Note that, is continuous and jointly concave with respect to and for . Then, the problem in (9)-(10) is a convex optimization problem and can be solved by a generic convex solver, whose complexity becomes impractically high when the number of constraints is large [15], which in this case is . To reduce the computational complexity, we will develop an efficient algorithm in this paper, which exploits the structure of the optimal solution.

### Ii-D K.K.T. Conditions for Non-Zero Bandwidth Allocation

The problem in (9)-(10) is a convex optimization problem with linear constraints. When the objective function is differentiable in an open domain, the K.K.T. conditions are sufficient and necessary for the optimal solution [15]. Note that, (4) is non-differentiable at . To use the K.K.T. conditions to characterize the optimality of the problem in (9)-(10), we consider the following approximation:

 PW(ϵ):maxP,ACW(P,A) (12)

subject to

 ⎧⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩~Ekn−Bmaxn≤∑kκ=1∑m∈Mnpκm≤~Ekn∑Mi=1aki=1∑m∈Mnpkm≤Pnpkm≥0akm≥ϵ (13)

for all , where is a small positive number. In particular, is the original problem in (9)-(10).

###### Lemma 2

When , the optimal value of converges to the optimal value of the problem in (9)-(10), i.e., .

###### Proof:

Since the objective function is continuous with respect to and the constraints in (13) are all linear, we have that the optimal solution of is continuous with respect to , i.e., . Therefore, we have . \qed

By introducing the auxiliary variables , , and and converting the constraints in (13) into the Lagrangian multiplier, we can define the Lagrangian function for as

 L≜ M∑m=1WmK∑k=1akm⋅log(1+pkmHkmakm) −N∑n=1K∑k=1(∑m∈MnpkmK∑κ=kλκn−λkn~Ekn) +N∑n=1K∑k=1(∑m∈MnpkmK∑κ=kμκn−μkn(~Ekn−Bmaxn)) −K∑k=1αk(M∑m=1akm−1) +K∑k=1M∑m=1βkm(akm−ϵ) .

Then, the following K.K.T. conditions, which are sufficient and necessary for the optimal solution to the convex optimization problem in (12)-(13), are obtained from the Lagrangian function:

 Hkm1+pkmHkm/akm=(vkn−ukn)/Wm, k∈K, n∈N, m∈Mn (14) log(1+pkmHkmakm)−pkmHkmakm+pkmHkm=(αk−βkn)/Wm, k∈K, n∈N, m∈Mn (15) λkn⋅(k∑κ=1∑m∈Mnpκm−~Ekn)=0, k∈K, n∈N (16) μkn⋅(k∑κ=1∑m∈Mnpκm−~Ekn+Bmaxn)=0, k∈K, n∈N (17) αk⋅(M∑m=1akm−1)=0, k∈K (18) βkm⋅(akm−ϵ)=0, k∈K, m∈M (19)

together with the constraints in (13), and for all , , and , where in (14)

 ukn≜K∑κ=kμκn, vkn≜K∑κ=kλκn . (20)

## Iii Iterative Algorithm and its Optimality

In this section, we will first decompose the energy-bandwidth allocation problem in (12)-(13) into two subproblems, and then propose an iterative algorithm to solve . We will prove that the iterative algorithm converges to the optimal solution to the problem in (9)-(10).

### Iii-a Iterative Algorithm

To efficiently solve problem in (12)-(13), we first decompose it into two groups of subproblems, corresponding to energy allocation and bandwidth allocation, respectively.

• Given the bandwidth allocation , for each , obtain the energy allocation by solving the following subproblem:

 EPn:maxpm,m∈Mn∑m∈MnWmK∑k=1akm⋅log(1+pkmHkmakm) (21)

subject to

 ⎧⎪ ⎪ ⎪⎨⎪ ⎪ ⎪⎩~Ekn−Bmaxn≤∑kκ=1∑m∈Mnpκm≤~Ekn∑m∈Mnpkm≤Pnpkm≥0,m∈Mn, k∈K . (22)
• Given the energy allocation , for each , obtain the bandwidth allocation by solving the following subproblem:

 BPk(ϵ):maxakM∑m=1Wm⋅akm⋅log(1+pkmHkmakm) (23)

subject to

 {∑Mi=1aki=1akm≥ϵ, m∈M . (24)

To obtain the optimal solution to the original problem in (9)-(10), we propose an iterative algorithm that alternatively solves EP for all and BP for all , with a diminishing over the iterations. To perform the algorithm, we initially set , and solve to obtain the initial . In each iteration , we first solve BP to update for all , where is a pre-specified positive value; with the updated , we then solve EP to update for all .

The proposed iterative algorithm is summarized in Algorithm 1 and its block diagram is shown in Fig. 2.
Algorithm 1 - Iterative Energy-Bandwidth Allocation Algorithm    1: Initialization , , , Choose any , Solve EP for all to generate the initial Specify the maximum number of iterations , the convergence tolerance  2: Energy-Bandwidth Allocation REPEAT ,  Solve BP to update for all  Solve EP to update for all UNTIL OR

In the next subsection, we will show that Algorithm 1 converges and the pairwise optimal and can be obtained, which is also the optimal solution to the problem in (9)-(10).

We note that, is a convex optimization problem with variables and constraints. The computational complexity of using the generic convex solver is non-linear with respect to the number of the variables and constraints, which may be impractically high when and become large. Using Algorithm 1, the optimal solution to can be obtained by solving convex optimization subproblems which contains or variables and constraints. Therefore, the overall computational complexity can be significantly reduced with Algorithm 1 for large and .

### Iii-B Proof of Optimality

We first give the following proposition.

###### Proposition 1

Given any bandwidth allocation , the optimal energy allocation for the problem EP is unique. Also, given the energy allocation such that , the corresponding optimal bandwidth allocation for the problem BP is unique.

###### Proof:

This proposition can be obtained by verifying the strict concavity of with respect to given , and with respect to given . \qed

Given a pair , if is the optimal solution to EP for all given , and is the optimal solution to BP for all given , we say that and are pairwise optimal for . We also note that, for each subproblem, its K.K.T. conditions form a subset of those of given the other primal variables, where any two subsets contain no common dual variable. Then, if the primal variables are pairwise optimal, the K.K.T. conditions in each corresponding subset are satisfied and hence all K.K.T. conditions of are satisfied, i.e., the pairwise optimal solution is also the optimal energy-bandwidth allocation for .

###### Theorem 1

The energy-bandwidth allocation is the optimal solution to for any , if and only if, is optimal to given for all , and is optimal to given for all .

We note that, for , when , the objective value is zero for all feasible bandwidth allocations. Therefore, we can fix as the optimal bandwidth allocation for this case in Algorithm 1. Then, by Proposition 1, we have that the optimal solution to each subproblem in Algorithm 1 is unique. The next theorem establishes the optimality of Algorithm 1. The proof is given in Appendix A.

###### Theorem 2

Algorithm 1 converges; and the converged solution is the optimal solution to the problem in (9)-(10).

Note that, the convergence is due to the expansion of the feasible domain by reducing resulting in the increasing objective value over iterations. The optimality can be proved by first verifying the pairwise optimality of the solution upon convergence and then showing it cannot be suboptimal.

## Iv Special Case: Throughput Maximization for Multiple Point-to-Point Channels

In this section, we consider the special case that each transmitter can only communicate with one receiver and all links have the same weight, i.e., and for all . The energy and bandwidth allocation subproblem can be rewritten as

 EPn:maxpnK∑k=1akn⋅log(1+pknHknakn) (25)

subject to

 {~Ekn−Bmaxn≤∑kκ=1pκn≤~Ekn0≤pkn≤Pn, k∈K , (26)

and

 BPk(ϵ):maxakN∑n=1akn⋅log(1+pknHknakn) (27)

subject to

 {∑Ni=1aki=1akn≥ϵ, n∈N , (28)

respectively.

### Iv-a Solving Epn: Discounted Dynamic Water-Filling

Given , since EP is a subproblem of the problem in (12)-(13), its K.K.T. conditions form a subset of those of the original problem, given by (14), (16) and (17).

To develop an efficient algorithm, we first rewrite the K.K.T. condition in (14) as

 pkn=akn⋅(1vkn−ukn−1Hkn) . (29)

Since the energy allocation must satisfy , (29) can be further written as

 pkn=min{Pn,akn⋅[1vkn−ukn−1Hkn]+} . (30)

Comparing the K.K.T. conditions in (14) with (24) in [6], the only difference is the scaling factor . Following the same analysis in [6], we have the following theorem.

###### Theorem 3

Given any bandwidth allocation , a feasible energy allocation is an optimal solution to (9)-(10), if and only if it follows the discounted water-filling rule in (30), where the water level may increase only at a battery depletion point (BDP) such that , and decrease only at a battery fully charged point (BFP) such that .

Theorem 3 gives the necessary and sufficient conditions for the optimal energy allocation given any bandwidth allocation. Given the set of BDP/BFPs corresponding to the optimal energy allocation, the optimal energy allocation and the corresponding the water level for the segment between two adjacent BDP/BFPs, and , can be written as

 (31)

where is the water level of a segment such that

 b∑κ=a+1pκn=min{(b−a)Pn,~Ebn−~Ean+(I(a is BFP)−I(b% is BFP))Bmaxn} , (32)

with being an indicator function given by

 I(A)≜{1,if A is true0,otherwise . (33)

Specifically, (31)-(32) represent the water-filling operation in a segment between two optimal BDP/BFPs, as mentioned in Theorem 3. Also, (32) ensures that with the energy allocation the boundary points and are the desired BDP/BFPs.

In [6], to obtain the optimal energy schedule for a single energy harvesting transmitter, a dynamic water-filling algorithm is proposed that recursively performs the “forward search” and “backward search” operations on a water-filling attempting basis, i.e., in the above two operations we perform conventional water-filling on each “target” segment (some consecutive slots). Using the dynamic water-filling algorithm, the set of the optimal BDP/BFPs can be obtained and the corresponding water level between two adjacent BDP/BFPs satisfies the optimality conditions for the energy scheduling problem. Then, it is easy to verify that, by replacing the conventional water-filling in the dynamic water-filling algorithm by the water-filling operations defined in (31)-(32), we can still obtain the optimal BDP/BFPs set for the energy allocation subproblem and thus the optimal energy allocation can be finally obtained. We call the new algorithm the discounted dynamic water-filling algorithm, whose computational complexity is [6].

### Iv-B Solving Bpk(ϵ): Bandwidth Fitting Algorithm

We first note that, when and , the channel rate achieved by transmitter in slot is zero. Therefore, in a slot such that , any feasible bandwidth allocation is optimal, achieving the maximum channel rate . However, in a slot where , in order to maximize the channel rate, the transmitter with zero energy allocation must be allocated with the minimal bandwidth, i.e., . We denote the energy allocation as the non-zero energy allocation and, in the remainder of this subsection, we will obtain the optimal bandwidth allocation given a non-zero energy allocation.

Since BP is a subproblem of the problem given in (12)-(13), its K.K.T. conditions form a subset of those of the original problem, given by (15), (18) and (19).

Given a non-zero energy allocation, since we know that the transmitter with zero energy allocation should be allocated with the minimal bandwidth, we rewrite the K.K.T. condition related to the transmitters with the non-zero energy allocation in (15) as

 −log(aknakn+pknHkn)−(1−aknakn+pknHkn)=αk−βkn (34)

for all , and all such that .

Denoting as the solution to the following equation,

 −log(y(αk,βkn))−(1−y(αk,βkn))=αk−βkn, (35)

from (34)-(35), we then have

 akn=pknHkn⋅z(αk,βkn) , (36)

where

 z(αk,βkn)≜y(αk,βkn)1−y(αk,βkn) , (37)

and .

By (19), we have that must be zero when . Then we divide into two sets: and . Then, (36) can be rewritten as

 akn={pknHknz(αk,0),%whenn∈Tk,pkn>0pknHknz(αk,βkn), when n∈¯Tk,pkn>0, (38)

where and

 pknHknz(αk,βkn)=ϵ, n∈¯Tk . (39)

Also, we have

 akn=ϵ≥pknHknz(αk,βkn), when pkn=0 . (40)

Substituting (38) and (40) into the constraints , we further have

 |¯Tk|⋅ϵ+∑n∈TkpknHknz(αk,0)=1 . (41)

Next, we characterize the optimality condition for the bandwidth allocation problem BP given the non-zero energy allocation, as follows.

###### Theorem 4

Given any energy allocation , the bandwidth allocation is the optimal to , if and only if, for every , it satisfies

 akn=(1−|¯Tk|⋅ϵ)pknHkn∑i∈TkpkiHki, (42)

and for any , it satisfies

 akn=ϵ≥(1−|¯Tk|⋅ϵ)pknHkn∑i∈TkpkiHki , (43)

for all .

###### Proof:

Rearranging (41), we have

 z(αk,0)=1−|¯Tk|⋅ϵ∑n∈TkpknHkn . (44)

Necessity: When , we have and thus . Substituting (44) to (38), we have (42). When , we have and thus .

Note that, since is the solution to (35), which is an equation of the form for which increases when decreases for , we see that increases as increases. Then, we have increases as increases given , thus . Since , we further have

 pknHknz(αk,βkn)≥pknHknz(αk,0) . (45)

Substituting (39) or (40), and (44) into the LHS and RHS of (45), respectively, we get (43).

Sufficiency: For the transmitters with zero energy allocation, it is easy to verify that the minimal bandwidth allocation is optimal. For other transmitters, since , by (36), we must have and thus . Note that, by (35), and is one-to-one mapping. Therefore, for any satisfying the sufficient conditions in Theorem 4, we can always find the corresponding dual variables and in (41) and (39), satisfying all the K.K.T. conditions. \qed

Intuitively, Theorem 4 states that the optimal bandwidth allocation should be proportional to the transmission “condition”, i.e., . In particular, if the desired bandwidth allocation for transmitter is less than the minimal requirement , should be set as the minimal requirement . Based on Theorem 4, we propose the following iterative bandwidth fitting algorithm. Initially, we set and . In each iteration, we calculate the bandwidth allocation by (42) with the current and . We denote as a “violation set”, containing the elements in that violate the definition of . Then, we move all from to . This iterative process ends when is empty. Finally, with the obtained and , the optimal allocation can be calculated by (42)-(43).

The procedure of the algorithm is summarized as follows:
Algorithm 2 - Iterative Bandwidth Fitting Algorithm    1: Initialization ,  2: Bandwidth Fitting FOR such that REPEAT   Calculate by (42) for all   Set the violation set   Move all from to UNTIL ENDFOR  2: Bandwidth Allocation Obtain with and by (42)-(43) for all such that

Note that, Algorithm 2 will terminate in at most iterations since the elements transfer between and is one-directional. Moreover, for all such that , at the end of the last iteration, since is empty, we have that the condition in (42) is satisfied by all and we have for all . Also, for all other , obviously we have . If (43) is also satisfied, we can further claim that with the obtained and , Algorithm 2 gives an optimal bandwidth allocation.

The next result shows that, at the end of each iteration (including the last iteration), with the obtained , (43) is satisfied. The proof is given in Appendix B.

###### Proposition 2

For all , which is obtained by Algorithm 2 at the end of each iteration, (43) is satisfied for all such that