Open Access

Optimal offline broadcast scheduling with an energy harvesting transmitter

EURASIP Journal on Wireless Communications and Networking20132013:197

https://doi.org/10.1186/1687-1499-2013-197

Received: 2 December 2012

Accepted: 30 June 2013

Published: 18 July 2013

Abstract

We consider an energy harvesting transmitter broadcasting individual data to two receivers. Data packets intended for each user are assumed to arrive at arbitrary but known instants. The goal is to minimize the total transmission time of the packets arriving within a certain time window, using the energy harvested during this time. Energy harvests are also modelled to occur at known discrete instants. An achievable rate region with structural properties satisfied by the two-user additive white Gaussian noise broadcast channel capacity region is assumed. Structural properties of power and rate allocations are established, as well as the uniqueness of the optimal policy. An iterative algorithm, DuOpt, is devised for efficient solution of this offline problem. DuOpt is compared with the sequential unconstrained minimization (SUMT) solution technique on randomly generated problem instances and is observed to solve the problem two orders of magnitude faster on average than SUMT.

Keywords

Packet schedulingEnergy harvestingAWGN broadcast channelEnergy-efficient scheduling

1 Introduction

The basic offline problem of energy-efficient packet transmission scheduling [15] is to assign code rates (consequently, transmission durations) to a set of packets whose arrival times are known beforehand, so that they are all transmitted within a given time window with minimum total energy. The solution needs to strike a trade-off between energy efficiency and delay: lowering energy expenditure per bit of information calls for lowering transmission rates, which causes delay. Recently, the dual problem of minimizing transmission duration of a given amount of data has been formulated with a model where energy gets “harvested” or replenished at certain known instants [6]. The irregularity in the availability of energy introduced additional richness to the problem.

While in former formulations, transmission rate needs to be adapted to the arrival rate of information, in [6], it is adapted to the rate of generation of energy. The practical motivation for this formulation was the case of a communication system that relies on energy harvesting from the environment (e.g., through solar, thermal, vibration sources) to supply its battery [7]. When the delay constraints for the data are relatively relaxed (considering the energy harvesting time scale) and battery size is small, as in the case of a distributed wireless sensor network (consider, for example, a structural monitoring WSN on a building, bridge or aircraft, where most of the data is for periodic network maintenance where battery replacement for nodes is out of the question such that the network has to sustain itself energy obtained from vibrations [8]), it will be reasonable to adapt transmit power and rate to the availability of energy [9]. By conservatively transmitting at low power during low energy harvest periods, the communication node may increase its longevity, such that it will not need to entirely power off until the next recharge. Nodes could thus achieve what is sometimes termed ‘perpetual operation’ by self-sustaining on environmental energy.

The point-to-point problem in [6] was recast for finite energy storage [10] and for a fading wireless channel [11]. The formulation has been extended to a broadcast channel (BC) in [12, 13], considering a static pool of data to be sent at the beginning of the schedule. The same BC problem was also studied under a limited battery constraint [14].

The problem in [12] and [13] has recently been reformulated in [15] by relaxing the assumption that data are ready at the beginning of the schedule. The sender (transmitter) gets replenished with arbitrary amounts of energy as well as data packets of arbitrary length destined to each user at arbitrary points in time. The rates at which information is transmitted to each user, given a total instantaneous power, are assumed to be selected from an achievable rate region that obeys certain structural properties satisfied by the additive white Gaussian noise (AWGN) BC. This paper, extending the work in [15], shows the uniqueness of the optimal power and rate allocation for the problem and exhibits a fast algorithm for obtaining it.

The choices of power level and the rates to individual receivers across time is called a schedule. An optimal scheduling policy is defined to be one that transmits all the bits that have arrived within a certain time window, W, in the minimum possible amount of time Topt ≥ W. The policy is allowed to use as many energy harvests as it needs, provided it respects causality (no energy or data are transmitted before it becomes available).

The problem considered in this paper is an offline problem, where data arrival and energy harvest instants and amounts are assumed to be known in advance. Although this kind of prior information of data and energy arrivals may not be possible in all practical settings, analysis of the offline optimal solution nevertheless shed light on the nature of a good power/rate policy and boundaries on the best performance. Moreover, in many scenarios, energy harvest processes are predictable (e.g., solar energy harvest rate determined by daily and seasonal irradiation patterns), and data arrivals could also be deterministic depending on session or protocol requirements (e.g., periodic transmissions made by a sensor node). The offline assumption could be a good approximation in the case of predictable processes.

Online formulations have also appeared in the literature. For example, Chen et al. and Gatzianas et al. [16, 17] develop online scheduling policies for multihop networks on finite-horizon and infinite horizon problem formulations, respectively. In [18], another finite-horizon throughput maximization problem is investigated. Considering fading conditions, a dynamic programming solution is proposed. Similarly, Ozel et al. [19] also addresses the optimal online solution through stochastic dynamic programming. Online formulations tend to be sensitive to the particulars of the stochastic models assumed for data and energy processes and consequently do not often lead to clean structural results (with the exception of threshold-type results, e.g., [20]) which is another aspect that makes the offline approach attractive.

This paper essentially bridges the formulation that considered offline scheduling of data that become available at arbitrary points in time [1, 2] (where there is no energy harvesting) and the formulation in which chunks of energy becoming available at arbitrary points in time [11, 12] on a BC (where data are pooled at the beginning). We employ some of the methods of [2] to strictly address this more general problem. The contribution of this paper can also be described as an extension to the BC problem considered in [6]. Specifically, this paper completes the results of [1, 2, 11, 12] with the following novel contributions: (1) establishment of structural properties of the transmission time minimizing scheduling policy in the energy harvesting BC with packet arrivals, (2) the uniqueness of the optimal policy, (3) an iterative algorithm, DuOpt, which is proved to return the optimal schedule when all the data of the user with the weaker channel is pooled, observed on numerical examples to solve the problem in the general case as well, (4) comparison of the computation time of the proposed method against solving the same problem with the well-known sequential unconstrained minimization technique (SUMT). It is shown in section 2 that in an optimal policy, transmit power used is constant within each epoch and may only rise from one epoch to the next so that once it starts, the transmitter never lowers its power until it finally goes silent. On the other hand, the transmitter should increase its power only under certain conditions. These conditions, along with other structural properties of power and rate are established in section 3. Next, the uniqueness of the optimal policy is established under the condition that all of the weak user’s bits are available at the beginning. In section 5, the DuOpt Algorithm, which returns a feasible schedule carrying the same structural properties that the optimal is shown to have, is described. It is proved that DuOpt returns the optimal schedule when all the data of the user with the weaker channel has been pooled at the beginning of the schedule. Next, through defining an equivalent convex problem, which proves the uniqueness of the optimal solution in the general case, the optimum is shown to be attainable using SUMT in section 6. Finally, studying numerical examples in section 7, DuOpt is observed to be much faster than SUMT in converging to the optimal solution found by the latter, even when the data pooling condition is lifted.

We start by making the problem statement precise in the next section.

2 System model

We consider a BC with one transmitter and two receivers. Arbitrary amounts of energy, {E i < ∞ ,i = 1,2,…}, as well as data intended for each user { B i ( 1 ) , B i ( 2 ) < , i = 1 , 2 , } become available to the sender at arbitrary times t i . A possible sequence of data and energy arrivals is illustrated in Figure 1. E(t) denotes the total energy that has been harvested in [ 0,t) (regardless of how much of it has been used.) Similarly, B(1)(t) and B(2)(t) denote the total number of bits destined to the first and second user, respectively, that the sender has obtained in [ 0,t). The interval between any two sequential arrival events (regardless of energy or data) will be called an inter-arrival epoch. The length of the i th epoch is ξ i  = t i  − ti − 1.
Figure 1

System Model. Example for (a) a sequence of energy and data arrivals, (b,c) the corresponding E(t) and B(t), and (d) the schedule P(t) and {r1i,r2i}.

Arrival times and amounts of energy and bits in the time window t [ 0,W) are known by the sender at t = 0. It is assumed that harvested energy and data are stored in infinite capacity buffers and available for use instantaneously as they arrive. It is also assumed that code rate and transmission power decisions can be changed instantaneously. However, codeword block lengths will be chosen such that each codeword is sent completely within a single epoch (note that starting and ending times of epochs are known ahead of time), so that no arrival event occurs during a codeword. Consequently, the power and rate pair decision will be fixed throughout each codeword.

We are interested in minimizing the total transmission time for packets arriving by a certain time W < , so W.L.O.G., set B(i)(t) = B(i)(W) for t > W, i = 1,2. A schedule, which is a sequence of power and rate allocations, is feasible if it sends B(1)(W) <  bits to the first user and B(2)(W) <  to the second user (with a certain level of reliabilitya), without violating causality (at any time, using available energy and data by that time). We are interested in finding among all feasible schedules one with the smallest completion time, Topt.

The structure of the achievable rate region will be based on the two-user AWGN BC. The capacity region of a two-user discrete time AWGN BC with average power constraint P, noise variance σ2, where the first user’s channel gain (s1 >0) is larger than the second user’s (s2 >0), consists of rate pairs (r1,r2) satisfying:
r 1 1 2 log 2 1 + α s 1 P σ 2 , r 2 1 2 log 2 1 + ( 1 α ) s 2 P α s 2 P + σ 2
(1)

where α, (0 ≤ α ≤ 1), denotes the fraction of P used for the first user [21]. Since s1 > s2, the first user will be referred as the “strong user” and the second as the “weak user”. We assume that the relative channel gains of the users stay fixed throughout the scheduling period. This models the case of static channels, or when channel variations are too slow with respect to the scheduling period, or channel variations are small with respect to the difference of path loss between the users, such as when one user is markedly more distant to the transmitter than the other.

Using capacity-achieving codes, the rate pair (r1,r2) can be selected from the boundary of the rate region, where inequalities in Equation 1 becomes equalities. Combining these equalities, power can be expressed in terms of the user rates, P = g(r1,r2). Moreover, each user’s rate can be expressed as a function of P and the other user’s rate, such as
r 1 = h 1 ( P , r 2 ) = 1 2 log 2 s 1 ( s 2 P + σ 2 ) s 2 σ 2 2 2 r 2 s 1 s 2 s 2
(2)
r 2 = h 2 ( P , r 1 ) = 1 2 log 2 s 2 P σ 2 + 1 s 2 s 1 ( 2 2 r 1 1 ) + 1 .
(3)

The rate functions h1 and h2 defined on + × + satisfy the following properties:

  1. (i)

    Nonnegativity: h1(P,r) ≥ 0,h2(P,r) ≥ 0.

     
  2. (ii)

    Monotonicity: h1(P,r), h2(P,r) are both monotone decreasing in r, and monotone increasing in P.

     
  3. (iii)

    Concavity: h1(P,r), h2(P,r) are strictly concave in P > 0 and r > 0: 2 h i ( P , r ) P 2 < 0 , 2 h i ( P , r ) r 2 < 0 , for i 1,2.

     
  4. (iv)

    2 h 1 ( P , r ) ∂r∂P 0 , 2 h 1 ( P , r ) ∂P∂r 0 .

     
  5. (v)

    2 h 2 ( P , r ) ∂r∂P = 0 , 2 h 2 ( P , r ) ∂P∂r = 0 .

     

The results in the rest of the paper will be valid for any rate function satisfying (i,ii,iii,iv,v), which are also satisfied by the AWGN BC [12].

It is established in the following lemma that one can limit attention to schedules that do not change their power and rate allocations within epochs. This is a simple and well-known consequence of our choice of concave rate functions, as has been proved previously in [12]: when there are no constraints, an even (equal across time) allocation is optimal. By definition, there are no data or energy arrivals during an epoch, hence an even allocation during an epoch is always possible. Given any schedule that has variation in an epoch, it can simply be modified to one with even rate, which will only improve the policy. In fact, proof of the claim is identical with the one stated and proved in Lemma 2 of [12]; however, we summarize it here for clarity.

Lemma 1.

In an optimal schedule, the power and rate pair remain constant within each epoch, except for the epoch during which the schedule ends.

Proof. During an epoch, there are no energy or data arrivals, hence a constant rate and power allocation is feasible. By concavity of the functions h1(P,r) and h2(P,r), and Jensen’s inequality, equalizing r2 across time minimizes the power needed to maintain a rate r1 in time, i.e., if r1 = α h1(P1,r21) + (1 − α)h1(P2,r22) and r1 = h1(P,α r21 + (1 − α)r22), then P ≤ α P1 + (1 − α)P2. Further details are given in [12]. As any allocation that is claimed to be optimal can be modified and can only be improved to obtain a constant rate and constant power across each epoch, one can limit attention to policies that has constant allocations within epochs. The only exception to this is the last epoch used by the schedule. In the last epoch, when the schedule ends, the power will drop to zero. ■

Accordingly, let P i  be the total transmit power and r j i  be the rate assigned to the j th user during epoch i. Let P j i  represent the power assigned to j th user during epoch i. We are now ready to state the problem in terms of power and rate allocations to epochs, more precisely, an assignment of total power and the strong user’s rate to each epoch (the weak user’s rate is then determined by r2i = h2(P i ,r1i). A final technical assumption will be useful in stating the problem: we shall assume that there is some kup <  such that there is at least one feasible schedule that ends within the first kup epochs. In other words, kup is an upper bound for both the number of epochs and the number of harvests to be considered (please see  1a). If k + 1 denotes the number of epochs used by an optimal schedule, then k + 1 ≤ kup.

Problem 1.

Transmission time minimization of data arriving at arbitrary points on an energy harvesting BC:
Minimize: T = T ( { P i , r 1 i } 1 i k up ) subject to: P i 0 , 0 r 1 i h 1 ( P i , 0 ) , r 2 i = h 2 ( P i , r 1 i ) i = 1 k P i ξ i E ( t k ) i = 1 k P i ξ i + P ( k + 1 ) ( T i = 1 k ξ i ) E ( T )
(4)
i = 1 k r 1 i ξ i B ( 1 ) ( t k ) , i = 1 k r 2 i ξ i B ( 2 ) ( t k )
(5)
for k = 1 , 2 , ... , k = max { i : j = 1 i ξ j < T } i = 1 k r 1 i ξ i + r 1 ( k + 1 ) ( T i = 1 k ξ i ) = B ( 1 ) ( W )
(5a)
i = 1 k r 2 i ξ i + r 2 ( k + 1 ) ( T i = 1 k ξ i ) = B ( 2 ) ( W ) .
(5b)

We will refer to Equations 4 and 5 as energy and data causality constraints, respectively, as these ensure no energy is consumed and no bit is transmitted before becoming available. In addition, when the k th inequality in Equation 4 holds with equality, we shall say that k thenergy constraint is active. Similarly, equality case in Equation 5 will be referred as a data constraint being active. Finally, the feasibility constraints (Equations 5a and 5b) ensure all the data bits destined to each user are transmitted.

In the next section, we investigate structural properties that any optimal schedule has to satisfy.

3 Structure of an optimal policy

Lemma 1 recorded that in an optimal schedule, power can only change upon a data arrival or energy harvest. The next result states that when power changes, it can only increase. The key to the proof is that more “bits per Joule” can be sent by evenly distributing energy across a time interval (i.e., maintaining a constant power level, which is a consequence of the convexity properties of our rate functions.) If an even distribution of power requires transferring energy or bits to the latter epoch, it can always be done; hence, total transmit power never decreases in time, but power may increase in time because even distribution of power may result in unmet causality constraints. We state these results in Lemma 2.

Lemma 2.

Consider an optimal schedule that ends during epoch k + 1. Power is non-decreasing with epoch index, i.e, P i  ≤ Pi + 1for i = 1,2,… k.

Proof. See Appendix. ■

As stated in Lemma 2, power cannot decrease, yet may rise in time like a staircase function formed bands of constant power that last for several epochs (see Figure 1d). In the next lemma, we note a necessary condition for such a rise to occur in an optimal policy.

Lemma 3.

In an optimal policy, power can only rise at t i (end of epoch i) if at least one of the conditions below holds:
  1. a.

    Energy constraint is active at point t i . (i.e., the ith energy constraint is active)

     
  2. b.

    The data constraints for both users are active at point t i . (i.e., the set of constraints in Equation 5)

     
  3. c.

    The weak user’s data constraint is active and data arrival to the weak user occurs at time t i .

     

Proof. See Appendix. ■

The next set of results illustrate the structure of rate allocation in conjunction with the power allocation in an optimal policy.

Corollary 1.

In an optimal policy,

  1. 1.

    If power increases upon a data arrival for the weak user, all available data destined to the weak user have been transmitted by this point in time.

     
  2. 2.

    If power rises upon a data arrival for the strong user, all available bits have been sent by this event.

     
  3. 3.

    If power increases upon an energy harvest, all energy available at the beginning of the former constant power band has been consumed by this energy harvest.

     
Proof.
  1. 1.

    Suppose that power increases upon a bit arrival for the weak user occurring at t i . As there is no energy constraint at t i , bringing power levels closer does not contradict with the energy causality in this case. This implies that conditions (b) or (c) stated in Lemma 3 must hold. However, we know that there is a data arrival for the weak user at t i ; so, if (b) were true, then (c) would be true as well. Therefore, condition(c) holds in either case.

     
  2. 2.

    Suppose that power increases upon a bit arrival for the first user. With similar reasoning to part 1, condition (a) of Lemma 3 cannot hold. As there is also no data arrival for the weak user, condition (b) must be satisfied.

     
  3. 3.

    As there is no data arrival at the time when power increases, the only possibility that power increases upon an energy harvest is condition (a) of Lemma 3.

     

In the rest, some properties will be proved under the assumption that weak user data constraint would not be active. This assumption is guaranteed if all the weak user data is ready at the beginning. We shall abbreviate this condition as follows:

Definition 1.

Weak user full buffer condition (WUFBC) is said to be satisfied whenever all of the data of the weak user is available at the beginning of transmission. That is, B(2)( W ) = B(2)(0).

The following lemma states an important feature of the strong user’s rate policy under WUFBC.

Lemma 4.

Consider two consecutive epochs i and i + 1 of a given schedule, ending at t i and ti + 1by definition, and suppose WUFBC holds for the problem instance. The following is necessary for the rate and power allocation to these two epochs of the given schedule to be locally optimal: The strong user’s rate is constant throughout [ti−1,t i ), and [ t i , ti+1). Furthermore, the rate may jump up at t = t i (staying constant otherwise) if at least one of the below is true:
  1. 1.

    There is data arrival to the strong user at t = t i , and all the data that arrived before t i ?has been transmitted by t i .

     
  2. 2.

    An energy harvest occurs at t = t i , and all of the power has been used for the strong user during epoch i.

     

Proof. Suppose that r1i ≤ r1(i+1). Since WUFBC is assumed, weak user’s data constraint would never be active and one can find a better schedule by bringing the rates of the strong user closer by Lemma 6 of [12]b. Therefore, the strong user’s rate cannot decrease. However, the strong user’s rate may increase because it would violate either bit or energy causality to transfer some strong user bits from epoch i + 1 to i. First, it is against bit causality to transfer strong user bits from epoch i + 1 to epoch i, if the first condition holds. Secondly, if the second condition is satisfied, we cannot bring strong user’s rates in the two consecutive epochs closer to each other as doing so would violate energy causality. ■

We establish the uniqueness of the solution of Problem 1 under WUFBC in the next section.

4 Uniqueness of the optimum schedule under WUFBC

In the following lemma, we note that an optimal schedule uses all energy harvested by the time the schedule ends completely.

Lemma 5.

The energy consumed by an optimal schedule that ends at Toptis equal to E(Topt).

Proof. Note that, as E(Topt) is the total energy that has been harvested by Topt, it is impossible for the schedule to have consumed more than E(Topt). Hence it sufficies to show that the energy used by an optimal schedule cannot be less than E(Topt). Consider a schedule that completes the transmission of all data at Topt by consuming less energy than harvested and has leftover energy in its energy bufferc at Topt. The remaining energy in the buffer could have been used in the last epoch to strictly reduce the transmission completion time. This contradicts the optimality of Topt. Hence, we have proved that the energy used cannot be less than E(Topt). This in turn implies that the energy used must be exactly equal to E(Topt). ■

Next, we show the uniqueness of the optimal schedule under WUFBC.

Theorem 1.

There is a unique optimum schedule under WUFBC, i.e., a unique power-rate allocation achieving Topt.

Proof. See Appendix. ■

5 The DuOpt Algorithm

The problem in [12] which is a special case of Problem 1, where both users’ data is available at the beginning, was shown to be solved in [12] by the FlowRight Algorithm [22]. Along similar lines, we develop an algorithm that we call DuOpt for solving Problem 1 in its general form. As a matter of fact, DuOpt simply reduces to FlowRight when the given problem instance has all the data arriving at t = 0. Similarly to FlowRight, DuOpt starts with any feasible schedule and reduces the transmission completion time iteratively. Let the number of epochs and the transmission completion time of the initial schedule be kup and Tup, respectively. In each iteration, DuOpt sequentially updates rates and powers of two consecutive epochs at a time, i.e., epochs (1,2),(2,3),..., until all epochs are updated. Then, starting from the first epoch pair, DuOpt continues with the next iteration. DuOpt stops after N iterations such that N = min{n : Tn − 1T n  ≤ ϵ,i = 1,...,k n ,j = 1,2}, where T n  ≤ Tup is the transmission completion time, k n  ≤ kup is the number of epochs used at the end of n th iteration, and ϵ is a predefined threshold.

Hereafter, we will briefly outline the local optimizations over epoch pairs. In Theorem 2, it will be shown that local optimizations can only improve the schedule. We will also prove that under WUFBC, successive iterations strictly improves the schedule unless it is optimal.

5.1 Local optimizations

Let E i n denote the energy used during the i th epoch and b ji n denote the number of bits transmitted to the j th user during epoch i at the end of n th iteration. Suppose that DuOpt is at the n th iteration and running a local optimization over epoch pair (i,i + 1). The values of b jz n and E z n , z {1,2,...,i − 1} have already been found by previous local optimizations. At the end of this optimization, E i n and b ji n will be determined; E i + 1 n 1 , E i + 2 n 1 , and b j ( i + 1 ) n 1 will be reset to new values that conserve total energy consumption and data transmission in these epochs. The goal of the local optimization is surely to minimize the total transmission completion time of all the packet arrivals. Hence, it is logical to minimize the transmission time in the local optimization problem, which results in a gapd if transmission ends before the end of (i + 1)th epoch. This gap is used in the next local optimization to further reduce the transmission time via transferring bits or energy between epochs (i + 1) and (i + 2); hence, a new gap occurs at the end of the next local optimization. This new gap propagates to the end of the transmission resulting a reduction in the total transmission completion time [12]. However, in some cases, an epoch long gap occurs, and this gap is useless for the next local optimization, i.e., energy or data transfer between epochs in the next local optimization is impossible because of constraints. In that case, it is better to just spread the data out till the end of the second epoch in the local problem and minimize the energy consumption so that the excess energy can be used to further reduce the transmission time in the next local optimization. This leads to two different local optimization functions: time minimization and energy minimization. These functions both support the global objective in different ways. Time minimization aims to find the minimum amount of time, T ( i , i + 1 ) n , to transmit b j ( i , i + 1 ) n = b ji n 1 + b j ( i + 1 ) n 1 bits to each user using the energy available in epoch pair (i,i + 1), i.e., E ( i , i + 1 ) n 1 = E i n 1 + E i + 1 n 1 . On the other hand, energy minimization aims to find the minimum energy, E ( i , i + 1 ) n , to transmit b j ( i , i + 1 ) n bits to each user in two epoch durations, i.e., ξ i  + ξi+1, and excess energy, E i n 1 + E i + 1 n 1 E ( i , i + 1 ) n , is transferred to the (i + 2)th epoch in order to conserve energy. Both of the optimizations respect energy and bit causalities, i.e., E i n E ( t i ) s = 1 i 1 E s n and b ji n B ( j ) ( t i ) s = 1 i 1 b js n , j {1,2}. For details of the local optimization, see Appendix.

Suppose that all the feasible packets have been transmitted until the end of the i th epoch and there are still packets to arrive after t i . Then, further minimization of transmission completion time of sequential epochs before t i  will be suboptimal. On the other hand, we can minimize the energy consumption until t i  and use the excess energy to minimize the transmission completion time. Therefore, utilization of energy minimization for local optimizations in Problem 1 is very crucial. If it is guaranteed that current schedule uses at least the same amount of energy as optimal schedule until t i , DuOpt uses the energy minimization function up to to i th epoch pair and the time minimization function for the rest. In order to determine when to switch from energy minimization to time minimization, a Flag is placed at the i th epoch pair. Initially, the Flag is set to zero, and DuOpt starts with performing time minimization on epoch pairs. During the n th iteration, if all the feasible bits are transmitted by the i th epoch for i {1,2,...,k n }, then the Flag is set to i (Flag < i). In the following iterations, energy minimization function is used up to the i th epoch pair. Figure 2 illustrates the Flag usage and the pseudo-code in Algorithm 1 outlines the DuOpt Algorithm.
Figure 2

Illustration of DuOpt Flag. Illustration of the Flag and local optimizations, where all the feasible bits have been transmitted until the end of the fifth epoch; hence, a Flag is set to the fifth epoch pair, i.e., Equations 4 and 5. Energy minimization is performed upto epoch pair with the Flag, and time minimization is performed for the rest.

Algorithm 1 DuOpt Algorithm

Theorem 2.

The following statements hold:
  1. 1.

    Successive iterations of DuOpt can only improve the schedule.

     
  2. 2.

    DuOpt stops and returns a schedule with { r 1 i 8 , r 2 i 8 } .

     
Proof.
  1. 1.

    Suppose that DuOpt is running its n th iteration. After the local optimization on the i th epoch pair, we obtain { ( r 1 i n , r 2 i n ) , E i n } and reset the values of { ( r 1 ( i + 1 ) n 1 , r 2 ( i + 1 ) n 1 ) , E i + 1 n 1 , E i + 2 n 1 } . If the Flag is not placed before the i th epoch pair, i.e., Flag ≥ i, then the aim of the local optimization will be energy minimization. Following the local optimization on the i th epoch pair, the excess energy will be transferred to E i + 2 n 1 . In the next local optimization, this excess energy is either further transferred or is used to reduce the transmit time. On the other hand, if Flag < i, then the aim of the local optimization on the i th epoch pair will be time minimization. After the local optimization the transmission completion time of the bits in epochs, (i,i + 1) will either be equal to or before the end of the epoch (i + 1). That is, a gap may occur within i th epoch pair. In the next local optimization, this gap would propagate to the (i + 2)th epoch [12]. During the n th iteration of DuOpt, if a gap occurs or excess energy is transferred during local optimizations, then the gap (or the excess energy, respectively) will propagate to the last epoch pair resulting in an ultimate reduction the transmission completion time at the end of the iteration, i.e., T ( r 1 i n , r 2 i n ) < T ( r 1 i n 1 , r 2 i n 1 ) . If neither excess energy nor a gap occurs during local optimizations, then transmission completion time cannot be decreased and DuOpt will stop by definition.

    Both local optimizations are in favor of the next local optimization. Therefore, if in either one of the local optimizations, a gap occurs or excess energy is transferred, then it would propagate till the last epoch pair, and finally the transmission completion time would decrease at the end of n t h  iteration, i.e., T ( r 1 i n , r 2 i n ) < T ( r 1 i n 1 , r 2 i n 1 ) . If neither excess energy nor gap occurs during local optimizations, then transmission completion time would not be decreased and DuOpt would stop.

     
  2. 2.

    In Part 1, we have shown that transmission completion time, T ( r 1 i n , r 2 i n ) , is strictly decreasing in each iteration; meanwhile, it is bounded below by T O P T . Therefore, the iterations of DuOpt stop and return a schedule, { r 1 i , r 2 i } .

     

5.1.1 Optimality of the DuOpt Algorithm under WUFBC

Theorem 3.

Under WUFBC, the schedule returned by DuOpt is optimal, i.e., T ( { r 1 i , r 2 i } ) = T opt .

Proof. See Appendix.

6 SUMT Algorithm

Theorem 1 states that the solution of Problem 1 is unique under WUFBC. In order to generalize the uniqueness result, we shall introduce the following equivalent problem:

Problem 2.

Energy Consumption Minimization of an Energy Harvesting Transmitter with Data and Energy Arriving at Arbitrary Points on a BC:
Minimize : E = i = 1 k g ( r 1 i , r 2 i ) ξ i + g ( r 1 ( k + 1 ) , r 2 ( k + 1 ) ) × ( T i = 1 k ξ i ) subject to : k { 1 , .. , k } , k = max { i : j = 1 i ξ j T } r 1 k 0 , r 1 ( k + 1 ) 0 , r 2 k 0 , r 2 ( k + 1 ) 0 i = 1 k g ( r 1 i , r 2 i ) ξ i E ( t k )
i = 1 k r 1 i ξ i B ( 1 ) ( t k ) , i = 1 k r 2 i ξ i B ( 2 ) ( t k ) i = 1 k r 1 i ξ i + r 1 ( k + 1 ) ( T i = 1 k ξ i ) = B ( 1 ) ( W ) i = 1 k r 2 i ξ i + r 2 ( k + 1 ) ( T i = 1 k ξ i ) = B ( 2 ) ( W )
(6)

The objective function of Problem 2 is strictly convex as it is a weighted sum of g(r1i,r2i)‘s, i {1,2,...,k + 1} each of which are strictly convex and increasing [23]. The set of constraints (6) are also convex by the same reasoning, and the rest of the constraints are linear. Hence, Problem 2 is a strictly convex problem, with a unique solution.

The power function P = g(r1,r2) can be rearranged to obtain an energy function E = 1 T g ( B 1 T , B 2 T ) , where E is the energy consumption, T is the transmission deadline and B1 and B2 are the total data to be transmitted. For constant B1 and B2, this energy function turns out to be strictly decreasing with the transmission deadline in AWGN BC. Using this fact, it can be proved by induction that energy consumption of a multi-epoch optimal schedule is a strictly decreasing function of transmission deadline. Hence, there is a unique transmission completion time by which an optimal policy consumes a given amount of energy, and vice versa. Now, suppose that schedules S1 and S2 are optimal solutions of Problems 1 and 2, defined with the deadline T, respectively. Both schedules must consume the same amount of energy since the opposite claim would contradict the optimality of the schedules: S2 cannot use more energy by T than S1, by definition. Suppose less energy is used, implying that S1 has used some extra energy to deliver the same amount of data as S2. However, this extra energy could be used in the last epoch to decrease the completion time by a nonzero amount, which would contradict optimality. Therefore, S1 and S2 are two schedules completing the transmission of the same amount of data at the same time by consuming same amount of energy. Hence, the solution of Problem 1 having a transmission completion time of Topt, is also a solution to Problem 2 with transmission deadline Topt. Combining this result with the uniqueness of the solution of Problem 2, we conclude that the solution of Problem 1 is also unique [24]. Next, we consider the solution of Problem 2.

Gradient descent and Newton’s method are two commonly used techniques for solving linear equality constrained convex problems. Problem 2 is strictly convex but has both linear equality and convex inequality constraints. Interior-point methods are utilized for solving inequality constrained convex problems [23]. Specifically for this problem, we use the sequential unconstrained minimization technique (SUMT) which has been proposed by Fiacco and McCormick [25]. SUMT Algorithm converts a constrained convex problem into an unconstrained problem by adding penalty terms into objective function.

The main objective of the SUMT method is to minimize F(r) = E(r) + μ P(r), where E(r) is the objective function of Problem 2, μ is the penalty parameter, and P(r) is the penalty function. P(r) forces the solution to satisfy all the constraints, and μ is used to control the effect of P(r). Selecting a sufficiently large μ, we can reach the optimal solution with an arbitrarily small error. However, choosing a very large μ might also have some computational disadvantages, and choosing a very small μ might also lead to a slow convergence or early termination [26]. Hence, an arbitrary small penalty parameter, i.e., μ = 1, is selected at the beginning of algorithm and doubled after each iteration of the SUMT Algorithm until a predefined maximum value, i.e., μmax = 1010, is reached. Starting from an initial rate vector, SUMT Algorithm updates the rate vector, r, in each iteration by utilizing the generalized Newton’s method and then increase the penalty parameter. The algorithm terminates if either μ reaches the maximum value or P(r) is smaller than a predefine threshold ϵ S . Algorithm 2 represents the pseudo code of the SUMT Algorithm.

Algorithm 2 SUMT Algorithm

So far, we have seen that Problem 2, which minimizes the energy consumption given a transmission deadline, can be solved by SUMT Algorithm, and Problem 2 is equivalent of Problem 1 by means of solutions. As total energy consumption of an optimal schedule is a strictly decreasing function of total transmission time [24], we can find lower and upper bounds on the transmission completion time of Problem 1 using the SUMT Algorithm. Then, we iteratively narrow down the distance between the bounds and finally obtain the solution of Problem 1 within some error, i.e., ϵ>0. A pseudo code of this algorithm is given in Algorithm 3.

Algorithm 3 Time minimization with SUMT Algorithm

7 Convergence rate and examples

The main difference between the two algorithms described above for solving Problem 1 is the parameter update procedure. DuOpt acts like a block coordinate descent technique (while, strictly speaking, it is not) and optimizes only a portion of parameters (rates and powers in consecutive epochs) at a time; whereas SUMT updates all parameters at the same time.

In the SUMT Algorithm, after finding an upper and a lower bound on the transmission completion time, using bisection method that the distance between the lower and the upper bound is halved in each iteration. The average number of iterations is at most log 2 ( ξ ̄ ϵ ) , where ξ ̄ is the average epoch length. Hence, the number of iterations does not depend on the epoch count and has a complexity of O(1). In each iteration, Newton’s method, which scales well the problem size (number of epochs) [23], is performed. In every step of Newton’s method a 2k × 2k Hessian matrix is constructed and its inverse is calculated. Computational complexity of matrix inversion with Gaussian elimination is polynomial with O(n3), yet it can be as low as O(n2 log(n)) theoretically, which is the lower bound on matrix multiplication. Since the average iteration count for SUMT and the step count of Newton’s method, does not change with epoch count, the complexity of SUMT Algorithm, which is determined by complexity of Newton’s step, is polynomial. We have simulated DuOpt and SUMT Algorithms on randomly generated problem instances with different lengths and observed that simulation time for both algorithms increase quadratically as the number of epochs increases. The termination time of DuOpt Algorithm is almost two orders of magnitude shorter than the SUMT Algorithm, as the number of epochs is varied (see Figure 3).
Figure 3

Comparison of DuOpt and SUMT Algorithms. Average computation time (log scale) versus number of epochs for the optimal solutions of Problem 1 with DuOpt and SUMT Algorithms: Solid blue line is the average computation time of the optimal schedule with DuOpt and black dashed line represents the computation time of SUMT Algorithm. A two-user AWGN BC with 1-KHz bandwidth and noise spectral density of N0 = 10− 12 W/Hz is considered. Path loss factors on the links of the strong and the weak user are assumed to be s1 = 70 and s2 = 75 dB, respectively. There is a probability of 0.25 that no energy harvest occurs at the start of an epoch. With probability 0.75 energy harvest amounts (in W) are chosen from a Pareto distribution with parameters b = 2 and α = 2. Similarly, there is a probability of 0.25 that no data arrival occurs; otherwise, data arrival amounts (in Kbits) are selected from a Pareto distribution with parameters b = 4, α = 2 and then rounded to the nearest integer.

We should also compare the memory requirements of algorithms. In each step of DuOpt, only two consecutive epochs are considered; therefore, memory requirement of an iteration is constant across a varying number of epochs. On the other hand, SUMT constructs a Hessian matrix in each iteration and the size of this matrix increases quadratically with increasing number of epochs. The only drawback of DuOpt seems to be the termination process. In SUMT Algorithm, the ultimate distance of the optimal schedule is known at the beginning of each iteration, and this distance is halved at each iteration. However, transmission time reduction of DuOpt Algorithm can be erratic and may induce an early termination. We have observed that controlling total power levels before termination is very useful in DuOpt Algorithm. If the total power level decreases greater than a predefined threshold, i.e., an ϵ of average power level, then we should not let the algorithm terminate.

Next, we will illustrate and discuss some properties of the optimal schedule on two numerical examples. In both examples, we consider a two-user AWGN BC with 1-Khz bandwidth with noise spectral density N0 = 10− 12 W/Hz. Path losses from the sender to the strong and the weak user are assumed to be 70 and 75 dB, respectively. First, we will consider a WUFBC such that 25 Kbits of data to be transmitted to the weak user is ready at the beginning of the schedule and 8, 25,12, 20, and 15 Kbits of data to be transmitted to the strong user arrives at respective times 0, 2, 4, 8, and 10 s. Energy harvesting profile is assumed to be 3, 10, 4, 7, 13, 3, 5, 8, 6, and 12 J at respective times 0, 3, 5, 8, 9, 10, 11, 13, 15, and 17 s. The main objective in this example is to transmit the given data arrivals as soon as possible. Under these circumstances, we run both DuOpt and SUMT Algorithms on a 3-GHz Core2Duo processor and obtain the optimal schedule (See Figure 4) in 0.3 and 8.7 s, respectively. The optimal schedule finalize the transmission at t = 12.903 s with a total power allocation vector 1.000, 1.000, 2.800, and 5.710 W and the strong user power allocation vector of 0.150, 0.708, 0.708, and 1.399 W with durations 2, 1, 5, and 4.903 s.
Figure 4

Numerical Example 1. A numerical example of optimal schedule for Problem 1. Top figure (a) illustrates the energy harvest and bit arrival sequences and the transmission completion time: 3, 10, 4, 7, 13, 3, 5, 8, 6, and 12 J of energy is harvested at respective times 0, 3, 5, 8, 9, 10, 11, 13, 15, and 17 s; and 8, 25, 12, 20, and 15 Kbits of the strong user data arrive at respective times 0, 2, 4, 8, and 10 s whereas 25 Kbits of the weak user data is ready at the beginning. Optimal schedule finalized at t = 12.903 s by transmitting 80 and 25 Kbits to the the strong and the weak user, respectively. Bottom figure (b) depicts the strong user power level and the total power level during transmission. Blue line represents the total transmitter power level, P t , whereas the red line represents the power reserved for transmission to the strong user, P s , during transmission. Total power levels and the strong user power levels are 1.000, 1.000, 2.800, and 5.710 W and 0.150, 0.708, 0.708, and 1.399 W with durations 2, 1, 5, and 4.903 s.

The following example illustrates a general scenario, i.e., transmitter has energy harvest and data arrivals for both users after the beginning of the schedule: 15, 12, and 8 Kbits of data to be transmitted to the strong user arrives at times 0, 5, and 8 s; and 2, 6, and 12 Kbits of the weak user data arrives at 0, 2, and 5 s. Energy harvesting profile is assumed to be 1, 2, 1, 2, 2, 1, 2 J at times 0, 2, 5, 7, 8, 10, and 12 s. The main objective in this example is to transmit the given data arrivals as soon as possible. Under these circumstances, we run both DuOpt and SUMT Algorithms on a 3-GHz Core2Duo processor and obtain the optimal schedule (See Figure 5) in 0.5 and 4.3 s, respectively. The optimal schedule finalize the transmission at t = 9.531 s with a total power allocation vector 0.254, 0.297, 1.300, 1.580, and 1.580 W and the strong user power allocation vector of 0.111, 0.051, 0.150, 0.150, and 0.364 W with durations 2, 3, 2, 1, and 1.531 s.
Figure 5

Numerical Example 2. A numerical example of optimal schedule for Problem 1. Top figure illustrates the energy harvest and bit arrival sequences and the transmission completion time: 1, 2, 1, 2, 2, 1, and 2 J of energy is harvested at times 0, 2, 5, 7, 8, 10, and 12 and 15, 12, and 8 Kbits of the strong user data arrives at 0, 5, and 8 s whereas 2, 6, and 12 Kbits of the weak user data arrives at 0, 2, and 5 s. Optimal schedule finalize at t = 9.531 s by transmitting 35 and 20 Kbits to the strong and the weak users, respectively. Bottom figure depicts the strong user power level and the total power level during transmission. Blue line represents the total transmitter power level, P t , whereas the red line represents the power reserved for transmission to the strong user, P s , during transmission. Total power levels and the strong user power levels are 0.254, 0.297, 1.300, 1.580, and 1.580 and 0.111, 0.051, 0.150, 0.150, and 0.364 W with durations 2, 3, 2, 1, and 1.531 s, respectively.

As stated in Lemma 2, the total power is non-decreasing in both examples, and it increases only if at least one of the conditions in Lemma 3 occurs, i.e., in the first example energy constraint is active at t = 3 and both energy and the strong user data constraints are active at t = 8, whereas in the second example the weak user data constraint is active at t = 2, both the weak and the strong user data constraint is active at t = 5 and finally energy constraint is active at t = 7. We should also note that, as stated in Lemma 4, the strong user power is non-decreasing in the first example, yet it increases at t = 2 due to the strong user data constraint and at t = 8 s due to both energy and the strong user data constraints. However, in the second example, both the weak and the strong user powers decrease and increase during transmission due to packet arrivals. The weak user power in the second example decrease at t = 8 in order to preserve the total transmit power at a constant level. On the other hand, the strong user power decreases at t = 2 while the total power level increases. In fact, when only the weak user constraint is active, at t = 2 in the second example, it is optimal to preserve the sum of rates (not the sum of powers) at a constant level [24].

8 Conclusions

With the new advances in energy harvesting technologies, optimization of communication systems that depend on renewable energy resources has emerged as an important problem. A large body of recent research effort in the field has focused on transmission scheduling policies.

This paper continued the work on to the solution of the previous formulation of the problem stated in [12] and [13]. In particular, it aimed to find the power and rate allocation policy in a broadcast channel with two users, that minimizes the total transmission completion time of data that becomes available at arbitrary points in time, with energy that is harvested at arbitrary points in time. It should be noted that this line of work relies on offline problem formulations where exact knowledge of data and energy arrival events is assumed. The approach is useful for obtaining structures and guidelines as well as benchmarks for online problems which may be more applicable in practical transmission scenarios.

In this study, structural properties about the solution of the general optimal offline broadcast packet scheduling policy for an energy harvesting broadcast channel have been established. The uniqueness of the optimal policy has been shown. An iterative algorithm, DuOpt, that returns a feasible schedule is devised and the algorithm is shown to possess the same structural properties with the optimal. Moreover, DuOpt was shown to obtain the unique optimal policy under the WUFBC. By devising a convex problem that is shown to be equivalent to the general problem, an alternative iterative algorithm that utilizes the SUMT is proposed. SUMT converges to the optimal transmission completion time without the WUFB condition assumption. However, it is observed on numerical examples that DuOpt iterations converges on average two orders of magnitude faster and DuOpt returns the same schedule as the one found by SUMT. This makes us believe that DuOpt converges to the optimal solution even in lieu of the WUFBC condition, and it achieves this much faster than standard optimization methods.

Endnotes

a The achievable rate regions will be implicitly assumed to correspond to a certain constant tolerable error probability respecting which it is possible to transmit a finite number of bits with a finite amount of energy per bit.

b Lemma 6 of [12] originates from the observation in [13] (See Lemma 4 and Corollary 1 in) that there is a cut-off level for the total power, below which no power is assigned to the weak user.

c The term “energy buffer” refers to an abstraction of an energy storage unit such as a rechargeable battery. A realistic battery would have imperfections: not all energy harvested can be retrieved, and there is a finite capacity for storage. On the other hand, the energy buffer abstraction can store an arbitrary amount E i  at time t i , all of which can be used after t i . This abstraction could model the net energy, taking into account any leakage or other imperfections, that becomes available at t i  after the battery is charged between ti − 1 and t i .

d A gap is a time period with zero power allocation.

Appendix

Proof of Lemma 2

The claim is that power is non-decreasing with epoch number i. Equivalently, power is non-decreasing in time. To show this, we will argue that given a schedule in which power decreases at some time t i , this schedule can only be improved by equating the power levels before and after t i . Consider a time interval (τ1,τ2), so that power is constant at P1 > 0 during (τ1,t i ), and at P2 < P1 during (t i ,τ2). As illustrated in Figure 6, let t=τ2 − τ1, and the lengths of the constant-power slots be β t and (1 − β)t, where 0< β  < 1 in order to have two epochs exactly. Denote the rate pairs in the first and second slots as (r11, r21) and (r12, r22), respectively.
Figure 6

Transmission scheme of Lemma 2. Illustration of the transmission scheme used in proof of Lemma 2.

We will show that keeping the total consumed energy constant, and transferring some amount of energy Δ E from the first slot to the second such that power levels are reallocated closer to each other, the sender can transmit at least the same number of bits within the same duration. Let us denote the average rate of the weak user as r 2 ̄ β r 21 + ( 1 β ) r 22 . Provided r21 > 0, the sender could transfer some energy and some of user 2’s bits from the first epoch to the second while keeping user 1’s rates r11 and r12 constant. As energy and bits are simply being deferred for later use, this operation does not violate feasibility. Specifically, let
P 1 = P 1 ( 1 β ) ΔP , P 2 = P 2 + βΔP ,
(7)
such that the new power allocation to the slots ( P 1 , P 2 ) is satisfying P 2 < P 2 P 1 < P 1 . With this new allocation, the weak user’s rate in the first slot is h 2 ( P 1 , r 11 ) < h 2 ( P 1 , r 11 ) = r 21 > 0 . Its new average rate over the duration of t is:
r 2 ̄ ̄ = h 2 ( P 1 , r 11 ) β + h 2 ( P 2 , r 12 ) ( 1 β ) h 2 ( P 1 , r 11 ) β + h 2 ( P 2 , r 12 ) ( 1 β ) = r 2 ̄ .
(8)

This is shown by straightforward application of the properties listed in section 2.

Equation 8 follows from the fact that
h 2 ( P 1 , r 11 ) β + h 2 ( P 2 , r 12 ) ( 1 β ) h 2 ( P 1 , r 11 ) β h 2 ( P 2 , r 12 ) ( 1 β ) 0
(9)
for all β = {0,1} with equality achieved at β = 0,1.
f ( β ) = h 2 ( P 1 ( 1 β ) ΔP , r 11 ) β + h 2 ( P 2 + βΔP , r 12 ) ( 1 β ) h 2 ( P 1 , r 11 ) β h 2 ( P 2 , r 12 ) ( 1 β )
(10)

The concavity of f(β) in β combined with the fact that, f(β) is zero for β values {0,1} implies that Equation 9 holds.

The first- and second-order derivatives of f with respect to β are the followinge
∂f ∂β = h 2 ( P 1 ( 1 β ) ΔP , r 11 ) h 2 ( P 2 + βΔP , r 12 ) + β h 2 x ( P 1 ( 1 β ) ΔP , r 11 ) ( ΔP ) + ( 1 β ) h 2 x ( P 2 + βΔP , r 12 ) ( ΔP ) h 2 ( P 1 , r 11 ) + h 2 ( P 2 , r 12 )
(11)
2 f β 2 = 2 ( h 2 x ( P 1 ( 1 β ) ΔP , r 11 ) ( ΔP ) h 2 x ( P 2 + βΔP , r 12 ) ( ΔP ) 0 ) + β h 2 xx ( P 1 ( 1 β ) ΔP , r 11 ) ( ΔP ) 2 0 + ( 1 β ) h 2 xx ( P 2 + βΔP , r 12 ) ( ΔP ) 2 0 0
(12)
In the remaining case which is r21 = 0, we know that r11 > 0 must hold (as P1 > 0). In this case, the allocation can similarly be improved by bringing power levels closer and transferring some of the first user’s bits to the right, while keeping the rate allocation of the weak user unchanged. Let r 1 ̄ β r 11 + ( 1 β ) r 12 be the average rate of the strong user over the duration t. After the reallocation, the average rate of the strong user becomes
r 1 ̄ ̄ = h 1 ( P 1 , r 21 ) β + h 1 ( P 2 , r 22 ) ( 1 β ) h 1 ( P 1 , r 21 ) β + h 1 ( P 2 , r 22 ) ( 1 β ) = r 1 . ̄
(13)
Equation 13 follows from the fact that
h 1 ( P 1 , r 21 ) β + h 1 ( P 2 , r 22 ) ( 1 β ) h 1 ( P 1 , r 21 ) × β h 1 ( P 2 , r 22 ) ( 1 β ) 0
(14)
for all β = {0,1} with equality achieved at β = 0,1.
q ( β ) = h 1 ( P 1 ( 1 β ) ΔP , r 21 ) β h 1 ( P 2 , r 22 ) ( 1 β ) + h 1 ( P 2 + βΔP , r 22 ) ( 1 β ) h 1 ( P 1 , r 21 ) β.

We can show that Equation 14 holds by proving q(β) is concave in β.

The first- and second-order derivatives of q with respect to β are the followingf:
∂q ∂β = h 1 ( P 1 ( 1 β ) ΔP , r 21 ) h 1 ( P 2 + βΔP , r 22 ) + β h 1 x ( P 1 ( 1 β ) ΔP , r 21 ) ( ΔP ) h 1 ( P 1 , r 21 ) + ( 1 β ) h 1 x ( P 2 + βΔP , r 22 ) ( ΔP ) + h 1 ( P 2 , r 22 )
2 q β 2 = 2 ( h 1 x ( P 1 ( 1 β ) ΔP , r 21 ) ( ΔP ) h 1 x ( P 2 + βΔP , r 22 ) ( ΔP ) 0 ) + β h 1 xx ( P 1 ( 1 β ) ΔP , r 21 ) ( ΔP ) 2 0 + ( 1 β ) h 1 xx ( P 2 + βΔP , r 22 ) ( ΔP ) 2 0 0
(15)

According to the properties listed in section 2, Equation 15 always holds if r21 ≥ r22. Hence q is concave in β, if r21 = 0. We conclude that a policy that contains a drop in power level is sub-optimal. ■

Proof of Lemma 3

To reach contradiction, suppose that power increases at time t i (Pi+1 > P i ). We will show that if none of the conditions (a), (b), or (c) hold, then it is possible to improve the schedule by transferring some energy from the (i + 1)th epoch to the i th. Assuming the i th epoch length is β t and the (i + 1)th is (1 − β)t, after bringing power levels closer,
P i = P i + βΔP , P i + 1 = P i + 1 ( 1 β ) ΔP.
(16)

Observe that if we treat P i  as P2 and Pi + 1 as P1, then Equation 16 becomes identical with Equation 7. This implies that at least the same number of bits could be transmitted to the weak user, if we can bring power levels closer while keeping the strong user’s rates constant. In addition to this, the allocation could also be improved by bringing power levels while keeping the weak user’s rates constant in case r2(i) ≥ r2(i + 1). Consequently, Equations 8 and 13 hold.

It is straightforward that we cannot bring power levels any closer when condition (a) holds, due to the energy causality constraint. Secondly, it also doesn’t yield a better schedule, if we can not transfer data from the latter epoch to the former (condition (b)). When it is possible to transfer some positive amount of energy from the (i+1)th epoch to the i th, as shown in Equation 8, we can always improve allocation while keeping the rates of the strong user the same. Although bringing power levels closer while keeping the rates of the strong user the same is not feasible in case weak user’s data constraint is active, we may still improve allocation as proved in Equation 13. Nevertheless, this time we require r2(i) ≥ r2(i+1). As rate of the weak user can only rise upon a data arrival for the weak user in case the weak user’s data constraint is active, condition (c) describes the last case that we may not improve allocation by bringing power levels closer.

We have thus shown that this set of three conditions contains all the cases in which power can rise, if none of these hold, then power cannot rise. It is straightforward to show that this set cannot be further reduced by finding counterexamples for the claim that if any one of (a), (b), or (c) is satisfied, then power may rise at time t i . ■

Proof of Theorem 1

Suppose that there are two distinct optimal schedules, SA and SB, which have equal power and rate assignments until ts − 1 and differ for the first time at epoch s. Consider that the corresponding power allocation vectors, PA and PB, also differ at epoch s such that P i A = P i B , i { 1 , 2 , .. , s 1 } and P s A < P s B . First, assume that PA remains constant after epoch s, i.e., P i A = P s A , i > s . By definition, both schedules end at Topt. The total energy consumption of SA would be less than that of SB by Topt, i.e., i = 1 k P i A ξ i + ( T opt t k + 1 ) P k + 1 A < i = 1 k P i B ξ i + ( T opt t k + 1 ) P k + 1 B , which contradicts Lemma 5. Hence, the total transmit power of SA cannot remain constant after t s . Since total transmit power is non-decreasing (See Lemma 2), it should increase after epoch s and before the end of transmission, i.e., P u A < P u + 1 A , u { s , s + 1 , ... , k } . Since there are no data arrivals for the weak user, the increase in total transmit power is either due to energy constraint being met or due to all the packets arrived by the time t u  having been transmitted (cf. conditions (a) or (c) in Lemma 3). As i = s u P i A ξ i < i = s u P i B ξ i , SA has not consumed all the available energy at the end of epoch u. Hence, SA must have transmitted all the bits arrived until t u , which means that SA has transmitted at least the same number of bits to both users while consuming less energy than SB between t0 and t u , which contradicts the optimality of SB. Therefore, if there are two distinct optimal schedules, SA and SB, their power allocation vectors cannot be different, i.e., PA = PB.

Now, consider two rate pair vectors, RA and RB, where ( r 1 i A , r 2 i A ) = ( r 1 i B , r 2 i B ) , i { 1 , 2 , .. , s 1 } and r 1 s A < r 1 s B . Let the strong user’s rate in SA, { r 1 j A } stay constant after ts − 1. By Lemma 4, rate of the strong user cannot decrease; hence, the rate of the strong user in SB would be larger than that of SA after epoch s, i.e., r 1 ( j + 1 ) A = r 1 s A < r 1 s B r 1 j B , j { s , s + 1 , ... , k 1 } . Since both schedules end transmission at the same time, SA transmits fewer bits to the strong user than SB does, which contradicts the fact that optimal schedule transmits all the packet arrivals by the end of transmission. Therefore, the rate of the strong user in SA cannot stay constant after epoch s. Now, suppose that rate of the strong user in SA increases at the end of epoch u, i.e., r 1 u A < r 1 ( u + 1 ) A , u { s , s + 1 , ... , k } . This increase cannot be due to (1) in Lemma 4 because SB has transmitted more bits to the strong user by t u , i.e., i = 1 u r 1 i A ξ i < i = 1 u r 1 i B ξ i . Moreover, this increase cannot be due to (2) in Lemma 4 since rate of the weak user in S A  is greater than zero in epoch u, i.e., r 2 u A = h 2 ( P u , r 1 u A ) > h 2 ( P u , r 1 u B ) 0 . Hence rate of strong user in SA cannot increase after epoch s. Finally, rate of the strong user in SA cannot decrease (See Lemma 4) as this would also contradict optimality. Hence, there cannot be two optimal schedules with different rate pair vectors.

As both the power allocation vector and the rate pair vector of an optimal schedule are unique, we conclude that the optimal schedule is unique under WUFBC. ■

Details of the local optimization

Consider the local optimization problem given in Figure 7, where B i j  is the data arrival for the i th user and E j is the energy harvest at the beginning of j th epoch for i,j {1,2}. T1 is the length of the first epoch and T2 is the transmit duration in the second epoch. Let P i j  and r i j  be the power and rate assigned to the i th user during j th epoch after optimization. The energy and data causality constraints for the local optimization problem are as follows:
E 1 P 11 · T 1
B 11 r 11 · T 1
B 21 r 21 · T 1 .
Figure 7

Two-epoch problem. Illustration of the local optimization problem with two epochs. B i j  represents the data arrival for the j th user at the beginning of the i th epoch. Similarly, E i  represents the energy harvest at the beginning of the i th epoch.

The structure of the solution changes if either one of the constraints satisfied with equality. Since there are three different constraints, after optimization, one will encounter one of the 23 = 8 results. We have studied all eight cases and derived solutions to each one of them for both energy minimization and time minimization functions. In each case, the solution can be calculated analytically for energy minimization or it can be found iteratively for time minimization functions. Before starting the optimization, if one already knows which constraints should be satisfied with equality, then the result could be obtained solving just that case. Otherwise, one should compute the results for each case and then select the best oneg that respects energy and bit causalities. Next, we will analyze one of the cases and present the algorithms for both energy and time minimization functions. The analyses of the remaining cases can be done in a similar fashion [24].

Local optimization when only strong user data constraint is active

One of the possible structures of the local optimal solution is when only the strong user data constraint is active. In this case, total transmit power level in local optimal solution should be constant (See Lemma 3). Under this condition, a possible illustration of optimal power allocation is depicted in Figure 8. Since the total power should stay constant during transmission, we should have P11 + P21 = P12 + P22. Moreover, we should have P11 ≤ P12 since only the strong user bit causality is met.
Figure 8

A solution for the two-epoch problem. Optimal power allocation for the strong and the weak users if only the strong user data causality constraint is active. Dark-shaded levels represent the strong user’s power levels, whereas the light-shaded ones represent the weak user’s power levels. The total transmit power stays constant.

For a given transmission completion time T1 + T2, the optimum schedule that minimize energy consumption can be found as follows:
P 11 = σ 2 s 1 ( 2 2 B 11 T 1 1 ) , P 12 = σ 2 s 1 ( 2 2 B 12 T 2 1 )
(17)
P 22 = P 11 + P 21 P 12
(18)
B 2 = B 21 + B 22 = T 1 2 log 2 1 + P 21 s 2 P 11 s 2 + σ 2 + T 2 2 log 2 1 + P 22 s 2 P 12 s 2 + σ 2 .
(19)
From Equations 18 and 19, we derive
P 21 = 1 s 2 2 2 B 2 ( P 11 s 2 + σ 2 ) T 1 ( P 12 s 2 + σ 2 ) T 2 1 T 1 + T 2 P 11 + σ 2 s 2 .
(20)
Then, total energy consumed in two epochs is calculated by
E min = ( P 11 + P 21 ) ( T 1 + T 2 ) .
(21)

Minimum energy to transmit B1 = B11 + B12 and B2 = B21 + B22 bits to the users in two epochs, E m i n , can be calculated by setting T2 as the length of the second epoch in Equation 21.

Substituting Equations 17 and 18 into Equation 19 and arranging terms, we obtain
B 2 = T 1 2 log 2 E 1 + E 2 T 1 + T 2 + σ 2 s 2 σ 2 s 1 ( 2 2 B 11 T 1 1 ) + σ 2 s 2 + T 2 2 log 2 E 1 + E 2 T 1 + T 2 + σ 2 s 2 σ 2 s 1 ( 2 2 B 12 T 2 1 ) + σ 2 s 2 = T 1 + T 2 2 log 2 E 1 + E 2 T 1 + T 2 + σ 2 s 2 T 1 2 log 2 σ 2 s 1 ( 2 2 B 11 T 1 1 ) + σ 2 s 2 T 2 2 log 2 σ 2 s 1 ( 2 2 B 12 T 2 1 ) + σ 2 s 2
The first and second order derivatives of B2 with respect to T2 are as follows:
B 2 T 2 = 1 2 log 2 E 1 + E 2 T 1 + T 2 + σ 2 s 2 1 2 ln ( 2 ) 1 + σ 2 s 2 T 1 + T 2 E 1 + E 2 1 2 log 2 σ 2 s 1 2 2 B 12 T 2 + σ 2 s 1 s 2 s 1 s 2 + B 12 T 2 1 1 + s 1 s 2 s 2 2 2 B 12 T 2
2 B 2 T 2 2 = 1 2 ln ( 2 ) ( T 1 + T 2 ) 1 + σ 2 s 2 T 1 + T 2 E 1 + E 2 2 2 ln ( 2 ) B 12 2 s 1 s 2 s 2 2 2 B 12 T 2 T 2 3 1 + s 1 s 2 s 2 2 2 B 12 T 2 2 < 0
(22)
As shown in Equation 22, second derivative of B2 is always negative for s1 > s2, which implies that B2 is a strictly concave function of T2. As T2 goes to infinity, B2 is as follows:
lim T 2 B 2 = T 1 2 log 2 s 2 s 1 ( 2 2 B 11 T 1 1 ) + 1 s 2 s 1 B 12 + ( E 1 + E 2 ) s 2 2 ln ( 2 ) σ 2 >

Since B2 is a strictly concave function of T2 and goes to a finite number as T2 goes to infinity, B2 is an increasing strictly concave function of T2 and there is a unique B2 for each value of T2.

In time minimization, we have E1, E2, T1, B2 = B21+B22, B21, B22; s1 and s2 are constant terms and T2 is transmission time within the second epoch which is to be minimized. Since B2 is an increasing concave function of T2, we iteratively find T2 that sends exactly B2 bits to weak user by using bisection method. Minimum time to transmit B1 = B11 + B12 and B2 bits to the users in these two epochs can be calculated by T min ( 2 ) = T 1 + T 2 . Algorithm 4 presents a pseudo-code of time minimization algorithm for the case that only the strong user bit causality event occurs.

Algorithm 4 Local time minimization algorithm when only the strong user data constraint is active

Proof of Theorem 3

Suppose that DuOpt stopped and returned a schedule { r 1 i , r 2 i } S D u , with completion time T ( { r 1 i , r 2 i } ) T D u . Let Sopt be the unique optimal schedule with transmission completion time Topt. We will now prove that SDu = Sopt. Let us suppose SDu ≠ Sopt, then these schedules have to differ in either the power allocation or rate allocation (or both). First, suppose P i D u = P i opt , i { 1 , 2 , ... , s 1 } and P s D u P s opt for some s. We will show that this case is impossible. There are two possible cases for epoch s: (i) P s D u > P s opt and (ii) P s D u < P s opt . Let us begin with the first case.
  1. (i)

    We assumed P s D u > P s opt . If P opt stays constant after epoch s till the end of transmission, this would mean that S Du consumes more energy than S opt until T opt, which would contradict the fact that optimal schedule consumes all the harvested energy till the end of transmission. Therefore, the power of the optimal schedule must increase at the end of epoch (s + m) for some m ≥ 0 before the end of transmission. As S Du has been able to use more energy than the optimal schedule until t s + m, the optimal schedule cannot have run into an energy constraint at t s + m, hence the rise in the power can only be due to a data constraint at t s + m, i.e., all the bits arrived have been transmitted by the optimal schedule until t s + m. In order to contradict the assumption that P s D u > P s opt , we will now analyze the rate assignments for both schedules. First, let us focus on the case that both schedules use exactly the same rates for the strong user up to t s + m, i.e., r 1 i D u = r 1 i opt , i { s , ... , s + m } . As we have shown above, S opt should have transmitted all the bits available until t s + m. However, if we compare the weak user bits transmitted by both schedules until t s + m, we observe that S Du transmits more bits to the weak user than S opt does, because i = 1 s + m ( r 2 i D u r 2 i opt ) ξ i = i = s s + m ( r 2 i D u r 2 i opt ) ξ i = i = s s + m ( h 2 ( P i D u , r 1 i D u ) h 2 ( P i opt , r 1 i opt ) ) ξ i > 0 . On the other hand, DuOpt respects bit causality, i.e., DuOpt does not transmit bits that have not arrived yet, so we reach contradiction. That is, rates cannot stay constant up to t s + m, i.e., there is some k {1,2,...,s + m − 1} such that r 1 i D u = r 1 i opt for i < k and r 1 k D u r 1 k opt . But we shall now show that this is not possible. First consider the case that r 1 k D u < r 1 k opt . From Lemma 4, the strong user’s rate cannot decrease under WUFBC. If r 1 i D u = r 1 k D u , i { k , ... , s + m } , then S Du transmits more bits to the weak user than S opt does by t s + m, i.e., i = 1 s + m ( r 2 i D u r 2 i opt ) ξ i = i = k + 1 s + m ( r 2 i D u r 2 i opt ) ξ i = i = k + 1 s + m ( h 2 ( P i D u , r 1 i D u ) h 2 ( P i opt , r 1 i opt ) ) ξ i > 0 . However, at the end of the (s + m)th epoch, S Du cannot send more bits to weak user because S opt should have transmitted all the weak user bits. Therefore, r 1 D u should increase before t s + m, i.e., at the end of epoch k + n, where 0 < n < (s + m − k). We have r 1 ( k + n ) D u < r 1 ( k + n + 1 ) D u ; hence, either one of the two conditions in Lemma 4 must hold. Since i = 1 k + n ( r 1 i opt r 1 i D u ) ξ i > 0 , until t k + n, S opt has transmitted more bits to the strong user than S Du does; therefore, all the strong user’s bits arrived have not been transmitted by S Du at the end of epoch (k + n). Also, r 2 ( k + n ) D u = h 2 ( P k + n D u , r 1 ( k + n ) D u ) > h 2 ( P k + n opt , r 1 ( k + n ) opt ) 0 . Hence neither of the two conditions in Lemma 4 holds and strong user’s rate cannot increase at t k + n, which implies r 1 k D u r 1 k opt . Thus, we are left with the case r 1 k D u > r 1 k opt . If r 1 i opt = r 1 k opt , i { k , ... , s + m } , then i = 1 s + m ( r 1 i D u r 1 i opt ) ξ i > 0 , which contradicts the fact that DuOpt respects bit feasibility. Hence, strong user’s rate in S opt cannot remain constant after epoch k. Then we should have r 1 i opt = r 1 k opt , i { k , ... , k + n } and r 1 ( k + n ) opt < r 1 ( k + n + 1 ) opt . Since there is an increase in the strong user rate, at least one of the conditions in Lemma 4 should hold at t k + n. However, we have i = 1 k + n ( P i D u P i opt ) ξ i > 0 and i = 1 k + n ( r 1 i D u r 1 i opt ) ξ i > 0 , which tells us that neither one of the conditions in Lemma 4 holds, which implies that this final case is also not possible. Hence, we conclude that the case P s D u > P s opt is not possible.

     
  2. (ii)

    Now consider the case P s D u < P s opt . We will prove that this case is also not possible by following a similar method to the one in case (i). First, suppose that the power of S Du increases after s th epoch. This increase cannot be due to an energy constraint since S opt consumes more energy than S Du does until the increase in power. Hence, it should be due to data constraint and under WUFBC both user data constraints should be active. That is, S Du transmits all the feasible data until the increase in power. This implies that while consuming less energy, S Du transmits at least the same number of bits than S opt does, which contradicts the optimality of S opt. Thus, power of S Du cannot increase after epoch s. Also, it cannot decrease in time; otherwise, a local optimization results in either a gap or excess energy that propagates till the end of the schedule and transmission duration decreases. Therefore, the power of S Du should stay constant after epoch s until T opt. Now, we will analyze the rate assignments for both schedules. Let the transmission of S opt end in epoch (s + m) for m ≥ 0 and suppose that r 1 i D u = r 1 i opt i < k , 0 < k < ( s + m ) . At the k th epoch, there are three possible cases: r 1 k D u > r 1 k opt , r 1 k D u < r 1 k opt , and r 1 k D u = r 1 k opt . We will first consider the case r 1 k D u > r 1 k opt and prove that this is not possible. Let r 1 k D u > r 1 k opt and consider the rate of the strong user in S opt after k th epoch. It cannot stay constant until T opt, because it contradicts the fact that S opt transmits all the feasible bits before T opt, i.e., i = 1 s + m ( r 1 i D u r 1 i opt ) ξ i > 0 . Since the strong user’s rate in S opt cannot decrease by Lemma 4, it should increase at the end of epoch (k + n) for 0 ≤ n < (s + m − k), i.e., r 1 ( k + n ) opt < r 1 ( k + n + 1 ) opt . However, we have i = 1 k + n ( r 1 i D u r 1 i opt ) ξ i > 0 and r 2 ( k + n ) opt = h 2 ( P k + n opt , r 1 ( k + n ) opt ) > h 2 ( P k + n D u , r 1 ( k + n ) D u ) 0 which implies that none of the conditions in Lemma 4 holds and the strong user’s rate in S Du cannot increase after epoch k. Hence, we conclude that r 1 k D u r 1 k opt . Now we consider the case r 1 k D u < r 1 k opt . Suppose that the strong user’s rate in S opt increase at epoch (k + n) for 0 ≤ n < (s + m − k). This increase in strong user’s rate requires that at least one of the conditions in Lemma 4 should hold. However, we have i = 1 k + n ( r 1 i D u r 1 i opt ) ξ i > 0 and r 2 ( k + n ) opt = h 2 ( P k + n opt , r 1 ( k + n ) opt ) > h 2 ( P k + n D u , r 1 ( k + n ) D u ) 0 , so the strong user’s rate in S Du cannot increase, i.e., r 1 k D u r 1 k opt . Since the strong user’s rate in S opt cannot decrease by Lemma 4, it should stay constant until T opt.

     

Thus far, we have shown that if SDu is different than Sopt, then SDu cannot have higher power level than Sopt until Topt. Moreover, if power level of SDu becomes lower than that of Sopt, then it should stay constant until Topt, and if the strong user’s rate of SDu becomes lower than that of Sopt, then it should stay constant until Topt. These results are shown in the general case in Figure 9.

Now, let b ~ 2 D u and b ~ 2 opt be the number of bits transmitted to the weak user till ts + m + l − 1 by SDu and till Topt by Sopt, respectively. Then, we have
b ~ 2 D u b ~ 2 opt = i = 1 s + m + l ξ i h 2 ( P i D u , r 1 D u ) i = 1 s + m + l ξ i h 2 ( P i opt , r 1 opt ) = i = k s 1 ξ i ( h 2 ( P i D u , r 1 D u ) h 2 ( P i opt , r 1 opt ) ) > 0 + i = s s + m + l ξ i h 2 ( P s D u , r 1 s D u ) i = s s + m ξ i h 2 ( P i opt , r 1 i opt ) > i = s s + m + l ξ i h 2 ( P s D u , r 1 s D u ) i = s s + m ξ i h 2 ( P i opt , r 1 i opt ) i = s s + m + l ξ i h 2 ( i = s s + m ξ i i = s s + m + l ξ i P i opt , r 1 s D u ) i = s s + m ξ i h 2 ( P i opt , r 1 i opt ) > i = s s + m + l ξ i i = s s + m ξ i i = s s + m + l ξ i h 2 ( P i opt , r 1 s D u ) i = s s + m ξ i h 2 ( P i opt , r 1 i opt ) = i = s s + m ξ i h 2 ( P i opt , r 1 s D u ) i = s s + m ξ i h 2 ( P i opt , r 1 i opt ) = i = s s + m ξ i ( h 2 ( P i opt , r 1 s D u ) h 2 ( P i opt , r 1 i opt ) ) > 0 > 0
(23)
From Equation 23, SDu transmits more bits to the weak user than Sopt does, then this final case also cannot happen. Therefore, we conclude that the schedule returned by DuOpt cannot be different than the unique optimal schedule, i.e., SDu = Sopt. ■
Figure 9

Comparison of the optimal schedule and the final schedule of DuOpt Algorithm. Illustration of the final case in the proof of Theorem 3.

Declarations

Acknowledgements

This work was supported by TUBITAK under grant 110E252. A preliminary version of some of these results was presented at ISIT 2011 St. Petersburg, Russia, Aug 2011 [15].

Authors’ Affiliations

(1)
Department of Electrical and Electronics Eng., METU

References

  1. Uysal-Biyikoglu E, Prabhakar B, Gamal AE: Energy-efficient packet transmission over a wireless link. IEEE Trans. Netw 2002, 10: 487-499. 10.1109/TNET.2002.801419View ArticleGoogle Scholar
  2. Uysal-Biyikoglu E, Gamal AE: Energy-efficient packet transmission over a multi-access channel. In Proc. IEEE Intl. Symposium on Information Theory. Lausanne, Switzerland; 30 June–5 July 2002:153-153.View ArticleGoogle Scholar
  3. Berry RA, Gallager RG: Communication over fading channels with delay constraints. IEEE Trans. on Inf. Theory 2002, 48: 1135-1149. 10.1109/18.995554MathSciNetView ArticleGoogle Scholar
  4. Nuggehalli P, Srinivashan V, Rao RR: Delay constrained energy efficient transmission strategies for wireless devices. In Proc. IEEE INFOCOM. IEEE, New York; 23–27 June 2002:1765-1772.Google Scholar
  5. Zafer MA, Modiano E: A calculus approach to energy-efficient data transmission with quality of service constraints. IEEE Trans. Netw 2009, 17: 898-911.View ArticleGoogle Scholar
  6. Yang J, Ulukus S: Optimal packet scheduling in an energy harvesting communication system. IEEE Trans. Commun 2012, 60: 220-230.View ArticleGoogle Scholar
  7. Gorlatova M, Sharma T, Shrestha D, Xu E, Chen J, Skolnik A, Piao D, Kinget P, Kymissis J, Rubenstein D, Zussman G: Prototyping Energy Harvesting Active Networked Tags (EnHANTs) with MICA2 Motes. In 2010 7th Annual IEEE Communications Society Conference on Sensor Mesh and Ad Hoc Communications and Networks (SECON). IEEE Boston, Massachusetts; 21–25 June 2010:1-3.View ArticleGoogle Scholar
  8. Dilhac JM: Presentation of Chist-ERA Project “SMARTER”. Brussels, Belgium); http://www.chistera.eu/projects/smarter
  9. Gorlatova M, Wallwater A, Zussman G: Networking low-power energy harvesting devices: Measurements and algorithms. In 2011 IEEE Proceedings on INFOCOM. (IEEE Shanghai, China; 10–15 April 2011:1602-1610.View ArticleGoogle Scholar
  10. Tutuncuoglu K, Yener A: Optimum transmission policies for battery limited energy harvesting nodes. IEEE Trans. Wireless Commun 2012, 11: 1180-1189.View ArticleGoogle Scholar
  11. Ozel O, Tutuncuoglu K, Yang J, Ulukus S, Yener A: Transmission with energy harvesting nodes in fading wireless channels: Optimal policies. IEEE J. Selected Areas Commun 2011, 29: 1732-1743.View ArticleGoogle Scholar
  12. Antepli MA, Uysal-Biyikoglu E, Erkal H: Optimal packet scheduling on an energy harvesting broadcast link. IEEE J. Selected Areas Commun 2011, 29: 1721-1731.View ArticleGoogle Scholar
  13. Yang J, Ozel O, Ulukus S: Broadcasting with an energy harvesting rechargeable transmitter. IEEE Trans. Wireless Commun 2012, 11: 571-583.View ArticleGoogle Scholar
  14. Ozel O, Yang J, Ulukus S: Broadcasting with a battery limited energy harvesting rechargeable transmitter. In International Symposium on Modeling and Optimization in Mobile, Ad Hoc and Wireless Networks (WiOpt). IEEE Princeton, NJ; May 2011:205-212.Google Scholar
  15. Ozcelik FM, Erkal H, Uysal-Biyikoglu E: Optimal offline packet scheduling on an energy harvesting broadcast link. In Proc. IEEE Intl. Symposium on Information Theory. Saint Petersburg, Russia, 31 July–5 August 2011; 2011:2886-2890.Google Scholar
  16. Chen S, Sinha P, Shroff NB, Joo C: Finite-horizon energy allocation and routing scheme in rechargeable sensor networks. In 2011 Proc. IEEE INFOCOM. IEEE Shanghai, China; 10–15 Apr 2011:2273-2281.View ArticleGoogle Scholar
  17. Gatzianas M, Georgiadis L, Tassiulas L: Control of wireless networks with rechargeable batteries. IEEE Trans. Commun 2010, 9: 581-593.Google Scholar
  18. Ho CK, Zhang R: Optimal energy allocation for wireless communications powered by energy harvesters. In Proc. IEEE Intl. Symposium on Information Theory. IEEE Austin, Texas, 13–18 June 2010; 2010:2368-2372.Google Scholar
  19. Ozel O, Yang J, Ulukus S, Tutuncuoglu K: A Yener, Adaptive transmission policies for energy harvesting wireless nodes in fading channels. In Information Sciences and Systems (CISS). IEEE Baltimore, MD; March 2011:1-6.Google Scholar
  20. Sharma V, Mukherji U, Joseph V, Gupta S: Optimal energy management policies for energy harvesting sensor nodes. Wireless Commun., IEEE Trans 2010, 9(4):1326-1336.View ArticleGoogle Scholar
  21. Cover TM, Thomas JA: Elements of Information Theory. Wiley, New York; 1991. Wiley Series in TelecommunicationsView ArticleGoogle Scholar
  22. Uysal-Biyikoglu E, Gamal AE: On adaptive transmission for energy efficiency in wireless data networks. IEEE Trans. Inf Theory 2004, 50: 3081-3094. 10.1109/TIT.2004.838355View ArticleGoogle Scholar
  23. Boyd S, Vandenberghe L: Convex Optimization. Cambridge University New, York; 2004.View ArticleGoogle Scholar
  24. Erkal H: Optimization of energy harvesting wireless communication systems Master’s thesis. Middle East Technical University, Dept. of Electrical and Electronics Engineering, Ankara, Turkey; 2011.Google Scholar
  25. Fiacco AV, McCormick GP: Nonlinear Programming; Sequential Unconstrained Minimization Techniques. Wiley, New York; 1968.Google Scholar
  26. Bazaraa MS, Sherali HD, Shetty CM: Nonlinear Programming: Theory and Algorithms. Wiley-Interscience, Hoboken; 2006.View ArticleGoogle Scholar

Copyright

© Erkal et al.; licensee Springer. 2013

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.