Optimal Offline Broadcast Scheduling with an Energy Harvesting Transmitter
Abstract
We consider an energy harvesting transmitter broadcasting data to two receivers. Energy and data arrivals are assumed to occur 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 that becomes available during this time. An achievable rate region with structural properties satisfied by the twouser AWGN BC capacity region is assumed. Structural properties of power and rate allocation in an optimal policy are established, as well as the uniqueness of the optimal policy under the condition that all the data of the “weaker” user are available at the beginning. An iterative algorithm, DuOpt, based on block coordinate descent that achieves the same structural properties as the optimal is described. Investigating the ways to have the optimal schedule of two consecutive epochs in terms of energy efficiency and minimum transmission duration, it has been shown that DuOpt achieves best performance under the same special condition of uniqueness.
I Introduction
The basic offline problem of energyefficient packet transmission scheduling [2, 3, 4, 5] 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 tradeoff between energy and delay based on the observation that energy per bit with many ideal and suboptimal coding schemes is convex and monotone increasing with rate. Recently, the problem has been reformulated with a model where energy gets “harvested” or replenished at certain known instants [6].
While in the former formulations transmission rate needs to be adapted to the arrival rate of information here it is adapted to the generation rate of energy. Considering both of theses effects introduces a richness to the problem on top of the initial model. The pointtopoint problem in [6] was recast for finite energy storage [7] and for a wireless fading channel [8]. The formulation has been extended to an AWGN BC in [9, 10], 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 [11].
The problem in [9] and [10] is reformulated in [14] relaxing the assumption that data is ready at the beginning of the schedule. This paper, extending the work in [14], considers the broadcast problem where, given an average transmit power constraint, rates are picked from an achievable rate region which obeys certain structural properties satisfied by the AWGN BC. 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 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, in the minimum possible amount of time . The policy is allowed to use as many energy harvests as it needs, provided it respects causality (no energy is used before it is harvested.) 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 a widely applicable assumption to realworld problems, results obtained from this work help us understand the nature of an optimal solution and boundaries on the best performance. Online formulations have also appeared in the literature. Notably, [12, 13] develop online scheduling policies for multihop networks on finitehorizon and infinite horizon problem formulations, respectively.
To minimize the overall transmission duration, rates to the individual users should be chosen in a way such that transmission is fast and energy efficiency is satisfied. However, as we choose higher rates, we loose from energy efficiency. Balancing between fast and energy efficient transmission, the decision of rates needs to be based on the sequence of energy harvests and data arrivals.
This paper essentially bridges the work that considered scheduling on a Broadcast Channel data that becomes available at arbitrary points in time [2] and work that considered chunks of energy becoming available at arbitrary points in time [9]. It can also be viewed as the multiuser correspondent of the second problem considered in [6]. The main contributions are: (1) to establish structural properties of the optimal schedule, (2) the uniqueness of the optimal policy when all weaker user data is ready at the beginning, (3) an iterative algorithm which returns the optimal schedule under the same condition. It is shown in Section II 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 III. Next, the uniqueness of the optimal policy is established under the condition that all of the weaker user’s bits are available at the beginning. Finally, an iterative algorithm (that we refer to as DuOpt) based on the nonlinear block descent method which returns a feasible schedule carrying the same structural properties that the optimal is shown to have, is described. It has been shown that DuOpt returns the optimal schedule in case of static pool of weaker user data at the beginning of the schedule. We start by giving the problem statement in the next section.
Ii System Model
Consider a broadcast channel with one transmitter and two receivers. Arbitrary amounts of energy, , as well as data for each user become available to the sender at arbitrary times . A possible sequence of data and energy arrivals is illustrated in Fig. 1. denotes the total energy that has been harvested in (regardless of how much of it has been used.) Similarly, and denote the total number of bits destined to the first and second user, respectively, that the sender has obtained in . The interval between any two sequential arrival events (regardless of energy or data) will be called an interarrival epoch. The length of the epoch is .
In this offline problem, all the future arrival times and amounts of energy and bits are known by the sender at . It is also assumed that harvested energy and data are available for use instantaneously as they arrive, and 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 , so W.L.O.G., set for , . A schedule, which is a sequence of power and rate allocations, is feasible if it sends bits to the user and to the user (with a certain level of reliability^{1}^{1}1The 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.), 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, .
The structure of the achievable rate region will be based on the twouser AWGN BC. The capacity region of a twouser discrete time AWGN BC with average power constraint , noise variance , where the user’s channel gain () is larger than the user’s (), consists of rate pairs satisfying:
(1) 
where , (), denotes the fraction of used for the user. Since , the user will be referred as the “stronger user”, and the as the “weaker user”. From (1) each user’s rate can be expressed as a function of the other’s and , as , . The rate functions and defined on will be assumed to satisfy the following properties:

Nonnegativity: .

Monotonicity: , are both monotone decreasing in , and monotone increasing in .

Concavity: , are concave in and : ,, for .

,

,
The results in the rest of the paper will be valid for any rate function satisfying (1)(5), which are also satisfied by the AWGN BC [9].
It is straightforward to show that one can restrict attention to feasible schedules that do not change their power and rate allocations within epochs.
Lemma 1
In an optimal schedule, the power and rate pair remain constant within all epochs, except for the epoch during which the schedule ends.
Proof. During an epoch, there are no energy or data arrivals and the claim is identical with the one stated and proved in Lemma 2 of [9]. The power will drop to zero when the schedule ends, which is in general within (and not necessarily at the end of) the last epoch used by the schedule.
With this, we will take rate and power assignments constant during an epoch. Let be the total transmit power and be the rate assigned to the user during epoch . Similarly, represent the power assigned to user during epoch . We are now ready to state the problem in terms of power and rate allocations to epochs, more precisely, an assignment of power and the stronger user’s rate to each epoch (the weaker user’s rate is thus determined). A final technical assumption will be useful in stating the problem: we shall assume that there is some such that there is at least one feasible schedule that ends within the first epochs. In other words, is an upper bound for epochs to be considered. In problem statement, denotes the last epoch of an optimal schedule, where .
Problem 1
Transmission Time Minimization of Data Arriving at Arbitrary Points on an Energy Harvesting BC:
Minimize:  
subject to:  
(2)  
(3)  
(4) 
We will refer to (2) and (3) 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 inequality in (2) holds with equality, we shall say that energy constraint is active. Similarly, equality case in (3) will be referred as a data constraint being active. Finally, the feasibility constraint (4), ensures 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.
Iii 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.
Due to space constraints, the proofs of the following results (Lemma 2 through Lemma 4) are omitted, and given in [18].
Lemma 2
(For proof see [18]) Consider an optimal schedule that ends during epoch . Power is nondecreasing with epoch index, i.e, for .
As stated in Lemma 2 power cannot decrease, yet may rise in time. In the next Lemma we note what is necessary condition for such a rise to occur in an optimal policy.
Lemma 3
(For proof see [18]) In an optimal policy, power can only rise at (end of epoch ) if at least one of the conditions below holds:

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

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

The weaker user’s data constraint is active and data arrival to the weaker user occurs at time .
The next set of results illustrate the structure of rate allocation in conjunction with the power allocation in an optimal policy.
Corollary 1
(For proof see [18]) In an optimal policy,

If power increases upon a data arrival for the second user, data to be sent to the weaker user have been finished by this event.

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

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.
In the rest, some properties will be proved under the condition that all weaker user data is available at the beginning. We shall abbreviate this condition as follows:
Definition 1
Weaker User Full Buffer Condition (WUFBC) is said to be satisfied whenever all of the data of the weaker user is available at the beginning of transmission. That is, .
The following lemma states an important feature of the stronger user rate distribution under WUFBC.
Lemma 4
(For proof see [18]) Consider two consecutive epochs and of a given schedule, ending at and by 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 stronger user’s rate is constant throughout , and . Furthermore, the rate may jump up at (staying constant otherwise) if at least one of the below is true:

There is data arrival to the stronger user at and all the data that arrived before has been transmitted by .

An energy harvest occurs at and all of the power has been used for the stronger user during epoch .
We investigate the unique solution of Problem 1 in the next section.
Iv 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 is equal to .
Proof. To reach contradiction, consider an optimal schedule that consumes less energy than it harvested and has leftover energy in its energy buffer at . The remaining energy in the buffer could have been used in the last epoch to decrease the transmission completion time, which contradicts the minimality of . Hence, this schedule cannot be optimal.
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 powerrate allocation achieving .
Proof. Suppose that there are two distinct optimal schedules, and , which have equal power and rate assignments until and differ for the first time at epoch . Consider that the corresponding power allocation vectors, and , also differ at epoch such that and . First, assume that remains constant after epoch , i.e., . By definition, both schedules end at . The total energy consumption of would be less than that of by , i.e., , which contradicts Lemma 5. Hence, total transmit power of cannot remain constant after . Since total transmit power is nondecreasing (See Lemma 2), it should increase after epoch and before the end of transmission, i.e., . Since there are no data arrivals for the weaker 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 having been transmitted (cf. conditions (a) or (c) in Lemma 3). As , has not consumed all the available energy at the end of epoch . Hence, must have transmitted all the bits arrived until , which means that has transmitted at least the same number of bits to both users while consuming less energy than between and , which contradicts the optimality of . Therefore, if there are two distinct optimal schedules, and , their power allocation vectors cannot be different, i.e., .
Now, consider two rate pair vectors, and , where and . Let the rate of the stronger user in , stay constant after . By Lemma 4 rate of the stronger user cannot decrease, hence the rate of the stronger user in would be larger than that of after epoch , i.e., . Since both schedules end transmission at the same time, transmits fewer bits to the stronger user than does, which contradicts the fact that optimal schedule transmits all the packet arrivals by the end of transmission. Therefore, the rate of the stronger user in cannot stay constant after epoch . Now suppose that rate of the stronger user in increases at the end of epoch , i.e., . This increase cannot be due to (1) in Lemma 4 because has transmitted more bits to the stronger user by , i.e., . Moreover, this increase cannot be due to (2) in Lemma 4 since rate of the weaker user in is greater than zero in epoch , i.e., . Hence rate of stronger user in cannot increase after epoch . Finally, rate of the stronger user in 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.
V The DuOpt Algorithm
The problem in [9] which is a special case of Problem 1, where both users’ data is available at the beginning, was shown to be solved in [9] by the FlowRight algorithm [15]. 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 . 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 and respectively. In each iteration, DuOpt sequentially updates rates and powers of two consecutive epochs at a time, i.e., epochs , until all epochs are updated. Then, starting from the first epoch pair, DuOpt continues with the next iteration. DuOpt stops after iterations such that , where is the transmission completion time, is the number of epochs used at the end of 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.
Local Optimizations
Let denote the energy used during the epoch and denote the number of bits transmitted to the user during epoch at the end of iteration. Suppose that DuOpt is at the iteration and running a local optimization over epoch pair . The values of and , have already been found by previous local optimizations. At the end of this optimization, and will be determined; , and 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 gap^{2}^{2}2A gap is a time period with zero power allocation. if transmission ends before the end of epoch. This gap is used in the next local optimization to further reduce the transmission time via transferring bits or energy between epochs and ; 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 [9]. 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, , to transmit bits to each user using the energy available in epoch pair , i.e., . On the other hand, energy minimization aims to find the minimum energy, , to transmit bits to each user in two epoch durations, i.e., , and excess energy, , is transferred to the epoch in order to conserve energy. Both of the optimizations respect energy and bit causalities, i.e., and , . For details of the local optimization, see [18].
Suppose that all the feasible packets have been transmitted until the end of the epoch and there are still packets to arrive after . Then, further minimization of transmission completion time of sequential epochs before will be suboptimal. On the other hand, we can minimize the energy consumption until 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 , DuOpt uses the energy minimization function upto 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 epoch pair. Initially, the Flag is set to zero and DuOpt starts with performing time minimization on epoch pairs. During iteration, if all the feasible bits are transmitted by the epoch for , then the Flag is set to . In the following iterations, energy minimization function is used up to epoch pair. Fig. 2 illustrates the Flag usage and the pseudocode in Algorithm 1 outlines the DuOpt algorithm.
Theorem 2
Following statements hold:

Successive iterations of DuOpt can only improve the schedule.

DuOpt stops and returns a schedule with .
Proof.

Suppose that DuOpt is running its iteration. After the local optimization on epoch pair, we obtain and reset the values of . If the Flag is not placed before epoch pair, i.e., , then the aim of the local optimization will be energy minimization. Following the local optimization on epoch pair, the excess energy will be transferred to . 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 , then the aim of the local optimization on epoch pair will be time minimization. After the local optimization the transmission completion time of the bits in epochs will either be equal to or before the end of the epoch . That is, a gap may occur within epoch pair. In the next local optimization, this gap would propagate to the epoch [9]. During the 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., . 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 iteration, i.e., . If neither excess energy nor gap occurs during local optimizations, then transmission completion time would not be decreased and DuOpt would stop.

In Part1 we have shown that transmission completion time, , is strictly decreasing in each iteration; meanwhile it is bounded below by . Therefore, the iterations of DuOpt stop and return a schedule .
Optimality of the DuOpt algorithm under WUFBC
Theorem 3
If WUFBC is guaranteed, the schedule returned by DuOpt is optimal, i.e., .
Proof. Suppose that DuOpt stopped and returned a schedule , with completion time . Let be the unique optimal schedule with transmission completion time . We will now prove that . Let us suppose , then these schedules have to differ in either the power allocation or rate allocation (or both). First, suppose and for some . We will show that this case is impossible. There are two possible cases for epoch : (i) , (ii) . Let us begin with the first case.

We assumed . If stays constant after epoch till the end of transmission, this would mean that consumes more energy than until , 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 for some before the end of transmission. As has been able to use more energy than the optimal schedule until , the optimal schedule cannot have run into an energy constraint at , hence the rise in the power can only be due to a data constraint at , i.e., all the bits arrived have been transmitted by the optimal schedule until . In order to contradict the assumption that , 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 stronger user up to , i.e., . As we have shown above, should have transmitted all the bits available until . However, if we compare the weaker user bits transmitted by both schedules until , we observe that transmits more bits to the weaker user than does, because . 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 , i.e., there is some such that for and . But we shall now show that this is not possible. First consider the case that . From Lemma 4, the stronger user’s rate cannot decrease under WUFBC. If , then transmits more bits to the weaker user than does by , i.e., . However, at the end of epoch, cannot send more bits to weaker user because should have transmitted all the weaker user bits. Therefore, should increase before , i.e., at the end of epoch , where . We have , hence either one of the two conditions in Lemma 4 must hold. Since , until , has transmitted more bits to the stronger user than does; therefore, all the stronger user’s bits arrived have not been transmitted by at the end of epoch . Also, . Hence neither of the two conditions in Lemma 4 holds and stronger user’s rate cannot increase at , which implies . Thus, we are left with the case . If , then , which contradicts the fact that DuOpt respects bit feasibility. Hence, stronger user’s rate in cannot remain constant after epoch . Then we should have and . Since there is an increase in the stronger user rate, at least one of the conditions in Lemma 4 should hold at . However, we have and , 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 is not possible.

Now consider the case . 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 increases after epoch. This increase cannot be due to an energy constraint, since consumes more energy than 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, transmits all the feasible data until the increase in power. This implies that while consuming less energy, transmits at least the same number of bits than does, which contradicts the optimality of . Thus, power of cannot increase after epoch . 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, we power of should stay constant after epoch until . Now, we will analyze the rate assignments for both schedules. Let the transmission of end in epoch for and suppose that . At the epoch there are three possible cases: , and . We will first consider the case and prove that this is not possible. Let and consider the rate of the stronger user in after epoch. It cannot stay constant until , because it contradicts the fact that transmits all the feasible bits before , i.e., . Since the stronger user’s rate in cannot decrease by Lemma 4, it should increase at the end of epoch for , i.e., . However, we have and which implies that none of the conditions in Lemma 4 holds and the stronger user’s rate in cannot increase after epoch . Hence, we conclude that . Now we consider the case . Suppose that the stronger user’s rate in increase at epoch for . This increase in stronger user’s rate requires that at least one of the conditions in Lemma 4 should hold. However, we have and , so the stronger user’s rate in cannot increase, i.e., . Since the stronger user’s rate in cannot decrease by Lemma 4, it should stay constant until .
Thus far we have shown that if is different than , then cannot have higher power level than until . Moreover, if power level of becomes lower than that of , then it should stay constant until and if the stronger user’s rate of becomes lower than that of , then it should stay constant until . These results are shown in the general case in Fig. 3.
Now, let and be the number of bits transmitted to the weaker user till by and till by , respectively. Then, we have
(5) From (5), transmits more bits to the weaker user than