# Power and rate allocation for video conferencing in cellular networks

- Chao Yang
^{1}and - Scott Jordan
^{1}Email author

**2013**:31

**DOI: **10.1186/1687-1499-2013-31

© Yang and Jordan; licensee Springer. 2013

**Received: **22 August 2012

**Accepted: **22 December 2012

**Published: **13 February 2013

## Abstract

We consider resource allocation for semi-elastic applications such as video conferencing. We propose to model user utility as a sigmoid function of the average bit rate over multiple time slots. The goal is to maximize the total expected user utility over time through allocation of downlink power and subcarriers in each time slot. We propose resource allocation that considers both the average rate achieved so far and the future expected rate, and show how the future expected rate can be estimated by modeling the probability that a user will be allocated a subcarrier in a future time slot. The algorithm can be implemented in a distributed fashion by an exchange of price and demand amongst users, the network, and an intermediate power allocation module. To reduce the complexity, we also propose a greedy algorithm to maximize incremental utility in the current time slot. The performance is illustrated using numerical results.

### Keywords

Communication system traffic control Cellular networks Video conferencing## 1 Introduction

Video applications constitute a rapidly increasing proportion of the total traffic on cellular networks. It is now estimated that video comprises one third of downstream North American mobile Internet access peak period traffic[1]. Most of this video traffic is streaming encoded using either Adobe Flash or MPEG. Some of this video traffic is video conferencing, e.g., Apple’s FaceTime for iPhones and Skype’s video conferencing application for smartphones. For such applications, variable bit rate video encoding algorithms are typically used, e.g., MPEG. For real-time use, such as required to support video conferencing, best-effort service can result in unacceptable performance. Fourth generation (4G) cellular networks will integrate voice, video, and data applications using packet switching. As a consequence, resource allocation should take into account application characteristics when best-effort packet switching would not result in acceptable performance. There are two issues.

First, as in other study on network resource allocation, there is a potential gain from employing the concept of utility. The most common objective video quality metric is peak signal-to-noise ratio (PSNR). Many studies of subjective video quality, however, have observed that users evaluation of video quality levels off at high PSNRs. This has provided motivation for modeling utility as a sigmoid function of throughput[2, 3], i.e., convex at rates less than a threshold and concave at rates above that threshold. A sigmoid function also reflects the layered coding structure of MPEG video, which exhibits increasing returns with rate below a threshold and decreasing returns with rate above that threshold.

Second, video encoding algorithms often use a *group of pictures* as a central concept, and intentionally vary the bit rate over different frames within this group. Network resource allocation should thus be cognizant of this structure. Some researchers have proposed that resource allocation should satisfy some type of delay deadline, e.g., delay constraint[4–7]. However, none of these articles use sigmoid utility functions.

We are thus motivated to look for a resource allocation method that uses sigmoid utility functions (rather than hard performance constraints or utility proportional to PSNR) and that takes into account the group of pictures structure (rather than using long term rate constraints). We posit here that for video conferencing applications, user utility should be a sigmoid function, not of the *instantaneous* transmission rate, but of the *average* rate over *one or more groups of pictures*.

In this article, we consider allocation of downlink power and subcarriers in orthogonal frequency division multiplexing (OFDM) 4G cellular systems for semi-elastic applications. The user’s satisfaction is modeled by a sigmoid function of the average rate over a time window. The goal is to create algorithms that allocate power and subcarriers in each time slot in a manner that optimizes total average user utility over time. The difficulty with maximizing utility over many time slots is that the system should consider both the current channel and the likely achievable average rates by the end of the time window. For instance, if a user’s channel is poor at the beginning of a time window, should the system allocate resources for this user or should it wait to see if the user’s channel improves later in the time window? If a user’s accumulated rate in a time window is low, when should the system respond by increasing the user’s resource allocation and when should the system give up on the user’s performance in this time window and allocate resources to other users?

The article proceeds as follows. In Section 2, we pose the resource allocation problem. In Section 3, we review related work. In Section 4, we consider a non-causal system in which at the beginning of each time window the network knows the channel gains of each user in each time slot of the window. While knowing all the future information is unrealistic, this will serve as an upper bound to causal systems. We illustrate how a dual problem formulation can be used to allocate power and subcarriers in each time slot of the time window. The complexity can be reduced by distributing the resource allocation process amongst users, the network, and intermediate power allocation modules. The network allocates power and subcarriers, and charges the power allocation module a shadow price for power in each time slot. The power allocation module translates this price per unit power into a price per unit rate, and resells the system resources to users. Users choose desired rates based on the cost and the resulting utility. We pose an iterative algorithm that determines near-optimal shadow prices in each time window.

In the remainder of the article, we consider causal systems which must make resource allocation decisions in each time slot without knowledge of the channel gains of users in future time slots. The challenge is to decide how the resource allocation in the current time slot should be based on the average rate achieved so far in the time window and on the likely achievable rate during the remainder of the time window. In Section 5, we propose a resource allocation policy that considers both the average rate achieved so far and the future expected rate. We show how this future expected rate can be estimated by modeling the probability that a user will be allocated a subcarrier in a future time slot. We show that although maximization of the expected utility due to future rate is prohibitively complex, maximization of the utility of the expected average rate over the time window can be near-optimally solved in a distributed fashion using a similar exchange of price and demand. In Section 6, we design a resource allocation policy that considers the average rate achieved so far and ignores future rate, by only attempting to maximize the total *incremental utility* of the current slot. We show how this allocation can be iteratively determined in a distributed fashion amongst user, network, and power allocation modules by exchanging shadow prices and desired rates and powers.

Finally, in Section 7 we illustrate the performance of these algorithms using numerical results. We find that the non-causal algorithm is near-optimal, with some sub-optimality when resources are severely constrained and a significant number of users are unable to achieve rates in the concave portion of the utility curve. The greedy causal algorithm is similar to that of the non-causal algorithm when resources are severely constrained, but lags as resources become more plentiful. The reason is that although the greedy algorithm can react to a poor channel by allocating fewer resources, it does not consider future rates and thus may not decrease allocations enough. The algorithm with prediction of future expected rates closes a portion of this gap by allocating resources in a balanced way based on both current channel and likely future channels.

## 2 System model and problem formulation

### 2.1 System model

*K*users, with

*N*subcarriers. The bandwidth of each subcarrier is

*B*which is assumed to be less than the coherence bandwidth of the channel so that the channel response can be considered flat. The rate of user

*k*on subcarrier

*n*in time slot

*t*is:

*p*

_{k,n,t}is the power allocated, |

*H*

_{k,n,t}| is the channel gain,

*I*is the interference power and

*δ*

^{2}is the noise power. The channel gain is assumed to be a stationary Markov process and the fading on different subcarriers is assumed to be independent to each other. The base station is assumed to know the channel gain of each user on each subcarrier in the current time slot and the conditional density$f\left(\left(\right)close="|">|{H}_{k,n,\tau}{|}^{2}|{H}_{k,n,t}{|}^{2}\right)$ for future slots

*τ*. The total rate of user

*k*in time slot

*t*is the sum of the rate over all subcarriers:

### 2.2 Utility model

We propose to model a user’s utility as a sigmoid function over the average rate over a time window. Both the choice of a sigmoid function and of an average rate over a time window deserve discussion.

There are two classes of quality assessment methods commonly proposed in the literature. Objective quality assessment typically uses PSNR as an evaluation criterion. Many articles have thus proposed that network resources should be allocated to maximize the average PSNR, see e.g.,[8, 9], sometimes subject to long term average rate constraints, see e.g.,[10, 11]. This approach essentially equates user utility with PSNR. However, a major disadvantage of PSNR is that it cannot reflect users’ subjective satisfaction of performance. Many studies have shown that at high PSNRs, perception of incremental quality falls off with increasing PSNR. On this basis, many studies have turned to subjective quality assessment, usually directly measuring a user’s satisfaction with video quality, and representing performance by the mean opinion score (MOS)[12].

Some articles have thus proposed that utility of multimedia applications be modeled as a sigmoid function of the throughput[2, 3]. A sigmoid utility function also reflects the layered coding structure of MPEG video. The initial convex portion reflects the rate required to transmit the base video layer. The concave portion reflects the use of incremental rate to transmit enhancement layers; every additional enhancement layer increases user satisfaction, but with decreasing returns. Sigmoid utility functions are widely used to evaluate the performance and make resource allocation of video and other semi-elastic applications[13–16]. The relationships among *PSNR*, *MOS* and various utility functions constitute the domain of many research projects; we refer to the reader interesting in these mappings to[3] which explores this mapping through multimedia experiments over Android-based smartphones.

In addition, video encoding algorithms often use a *group of pictures* as a central concept, and intentionally vary the bit rate over different frames within this group. Network resource allocation should thus be cognizant of this structure. Despite the common use of PSNR to rate video quality, allocating network resources subject to a long term rate constraint does not reflect the group of pictures structure of the video decoder, and thus may not maximize video quality. As a consequence, some researchers have proposed replacing long term average rate constraints with some type of delay deadline, see e.g.,[4] which minimizes wireless resource usage subject to statistical delay and loss constraints,[5] which maximizes concave utility subject to delay constraints,[6] which minimizes the expected end-to-end distortion subject to delay constraints, and[7] which minimizes the error propagation of a group of pictures subject to delay constraints. However, none of these articles use sigmoid utility functions.

*T*time slots which correspond to the transmission time for one or more groups of pictures. For video, the time window is likely to be chosen to be one of more group of pictures. At time

*t*, denote the contribution toward the average rate during the current time window by${S}_{k,t}=\frac{1}{T}\sum _{\tau =1}^{t}{R}_{k,\tau}$. The utility of user

*k*is assumed to be a function

*U*

_{ k }(

*S*

_{k,T}) which maps the average rate achieved in a time window,

*S*

_{k,T}, to the level of the satisfaction perceived by the application. There exists an inflection point${S}_{k,T}^{f}$ such that

*U*

_{ k }is convex for${S}_{k,T}<{S}_{k,T}^{f}$ and concave for${S}_{k,T}>{S}_{k,T}^{f}$. We denote the rate at the maximum average utility by${S}_{k,T}^{{}^{\prime}}$, namely${S}_{k,T}^{{}^{\prime}}=arg\phantom{\rule{.2em}{0ex}}\underset{{S}_{k,T}}{max}{U}_{k}/{S}_{k,T}$.

### 2.3 Problem formulation

**p**

_{ t }= {

*p*

_{k,n,t},∀

*k*,

*n*}. Each subcarrier can be allocated to at most one user; thus denote the feasible set of power and subcarrier allocations by

**A**

_{ t }= {

**p**

_{ t }s.t. ∀

*n*,

*p*

_{k,n,t}> 0 for at most one user

*k*}. The goal is to maximize the total expected user utility within the time window under a constraint that the total transmitted power in the current time slot not exceed the power supply

*P*:

where past allocations and rates, {**p**_{
τ
},1 ≤ *τ* < *t*} and {*r*_{k,n,τ},1 ≤ *τ* < *t*}, and past and current channels, {*H*_{k,n,τ},1 ≤ *τ* ≤ *t*,∀*k*,*n*}, are known.

As discussed in the Introduction, the novel part of this maximization problem is the use of a sigmoid utility function and its dependence upon the average rate achieved over a time window. The major challenge of this problem is that power allocation in the current time slot affects not only the current rate but also the utility that may be earned at the end of the time window. The system should consider both the current channel and the likely achievable average rates by the end of the time window. For instance, suppose that it is early in the time window and a user currently faces a worse than average channel. Policies for inelastic applications would respond to a poor channel by increasing power, while policies for elastic applications would respond by allocating less power and waiting for a better channel. However, for video conferencing, utility is a function of the average rate over a time window, not of instantaneous rate, and it is a sigmoid function. Should the network allocate *less* than average power, figuring that later in the time window it can make up the difference? Does this depend on the auto-correlation of the channel? If late in the time window this user has experienced an average rate that places it in the convex portion of the utility function, should the network respond by increasing the transmission power? Alternatively, should the network give up on this user obtaining decent performance in this time window, and use the power to increase the utility of other users?

## 3 Related study

For both elastic and inelastic applications, both non-utility based and utility based resource allocation methods have been proposed and thoroughly studied.

For inelastic applications, non-utility based resource allocation methods (such as margin adaption) generally attempt to minimize usage of wireless resources (typically power or channels)[17]. Utility based resource allocation methods generally model the utility of inelastic applications as a step function of rate, which reflects the requirement to achieve a constant bit rate if this user is active. The objective is then to maximize total user utility and bin-packing methods are often proposed to allocate resources[18].

For elastic applications, the most common non-utility based approaches attempt to maximize capacity or to minimize usage of wireless resources given a set of active users, see e.g.,[19–21]. Utility based resource allocation methods generally model the utility of elastic applications as a concave function of rate, which reflects the lack of any minimum rate requirement. Maximization of total user utility is often proposed using standard convex optimization methods[22–26].

For semi-elastic applications, there is less literature. A few articles model user utility as a sigmoid function of *instantaneous* rate or bandwidth. Lee et al.[13] consider both scheduling and user selection for CDMA systems, and propose using pricing to select which users are active and to allocate power. Hande et al.[14] similarly consider sigmoid utility functions under a single resource constraint, and give conditions under which the Nash equilibrium using marginal cost pricing is optimal. Kuo et al.[15] model utility as a sigmoid function of bandwidth, and design heuristic algorithms to choose a near optimal bandwidth allocation. However, we are unaware of any research literature on power allocation when utility is a function of the *average bit rate over a period of time*.

The optimization problem (1) could be framed as a stochastic dynamic programming problem. The base station may have knowledge of past allocations and rates, {**p**_{
τ
},1 ≤ *τ* < *t*} and {*r*_{k,n,τ},1 ≤ *τ* < *t*}, and past and current channels, {*H*_{k,n,τ},1 ≤ *τ* ≤ *t*,∀*k*,*n*}. However, since the channel is assumed to be Markov, it will suffice to consider the set of current channel gains over all users and subcarriers, denoted by **H**_{
t
}= {*H*_{k,n,t},∀*k*,*n*}, and the set of contributions as of time *t* − 1 toward the average rate of all users in the current time window, denoted by **S**_{t−1}= {*S*_{k,t−1},∀*k*}.

*Q*(

**H**

_{ t },

**S**

_{t−1}). A causal version of the problem (1) would require the determination of a resource allocation policy

*Q*that maximizes total expected user utility. Denote the expected incremental utility from the current slot

*t*to the end of the window achieved under policy

*Q*by${V}_{t}^{Q({\mathbf{H}}_{t},{\mathbf{S}}_{t-1})}$. The optimal resource allocation policy would allocate the power in time slot

*t*,

**p**

_{ t }, to maximize the incremental utility earned in the current time slot plus the expected incremental utility earned in future time slots. This can be stated recursively as:

To complete the framing as a stochastic dynamic programming problem, we need the channel gains, power levels, and achieved rates to be discrete variables. Suppose we quantize the channel gain on each subcarrier into *Z*_{
H
} levels and the achieved rates for each users into *Z*_{
R
}levels. Then the state (**H**_{
t
},**S**_{t−1}) has${Z}_{H}^{\mathit{\text{NK}}}{Z}_{R}^{K}$ levels. The complexity of stochastic dynamic programming is well known to suffer a curse of dimensionality in the number of levels of the state[27]. It follows that such an approach is computationally prohibitive for any reasonably sized systems. We are thus motivated to search for less computationally complex approaches to resource allocation.

## 4 Non-causal version

We first consider a non-causal system in which at the beginning of each time window the network knows the channel gains of each user in each time slot of the window. Such knowledge removes (for the time being) the challenge of consideration of how current resource allocation affects future utility. While knowing all the future information is unrealistic, this will serve as an upper bound to causal systems.

Because all of the channel gains are known at the beginning of each time window in this version, the resource allocation decisions for power and subcarriers can be made jointly for all users and all time slots within the window. The multiple time slot decisions are thus transformed into a single decision at the beginning of each time window. This will allow full consideration of the variation of channel for each user from time slot to slot and of the average bit rate during the time window achieved as a result of allocations made in each slot.

*KNT*fixed point equations. We are thus motivated to solve a dual problem[28]. The idea, used previously for strictly concave utility functions[29], is to separate the determination of each user’s rate (here

*S*

_{k,T}) and the allocation of power (here

**p**) using a set of intermediate variables

**d**= {

*d*

_{ k }} as bounds on the achieved rates. A similar decomposition can be applied to sigmoid utility functions, transforming problem (1) into:

*λ*

_{ k }} are the Lagrangian multipliers associated with the rate constraints and μ= {

*μ*

_{ t },1 ≤

*t*≤

*T*} are the Lagrangian multipliers associated with the power constraints. The dual function is then given by:

For strictly concave utility functions, the dual problem always gives the same solution as the primal problem. However, for non-concave utility functions, the dual problem may result in a sub-optimal solution. The amount of the sub-optimality is measured by the duality gap${\overline{J}}^{\ast}-{U}_{\mathit{\text{tot}}}^{\ast}$. If all downlink power is allocated in all timeslots, i.e.,$\sum _{k=1}^{K}\sum _{n=1}^{N}{p}_{k,n,t}=P,\forall t$, and the target rate is achieved for all users, i.e., *R*_{
k
}= *d*_{
k
},∀*k*, then the duality gap is zero. Otherwise, the duality gap is positive. It can be shown that the gap is bounded[30]. We further investigate the amount of sub-optimality in simulation results in Section 7.

*∂*

*f*

_{2,n,t}/

*∂*

*p*

_{k,n,t}= 0, the solution of (7) is

Denote the relationship between Φ_{k,n,t}and |*H*_{k,n,t}|^{2} as Φ_{k,n,t}(|*H*_{k,n,t}|^{2}). If the user can obtain the subcarrier, Φ_{k,n,t} should be greater than 0. Using (8), it follows that Φ_{k,n,t}= 0 if and only if |*H*_{k,n,t}|^{2} < *T* *μ*_{
t
}ln2(*δ*^{2} + *I*)/(*B* *λ*_{
k
}). Thus we define the inverse of Φ_{k,n,t}at |*H*_{k,n,t}|^{2} = 0 as${\mathrm{\Phi}}_{k,n,t}^{-1}\left(0\right)=T{\mu}_{t}ln2({\delta}^{2}+I)/\left(B{\lambda}_{k}\right)$. When Φ_{k,n,t}> 0, Φ_{k,n,t} is a monotonically increasing function of |*H*_{k,n,t}|^{2}, and thus if$|{H}_{k,n,t}{|}^{2}<{\mathrm{\Phi}}_{k,n,t}^{-1}(0)$, the user cannot obtain subcarrier *n*.

## 5 Resource allocation with expectation of future rate

Having established the form of the optimal non-causal resource allocation, we now turn to formulation of causal resource allocation methods. Causality, combined with Markov channels, implies that resource allocation should be based on the set of current channels and accumulated rates (**H**_{
t
},**S**_{t−1}). In addition, the system may have knowledge of the joint distribution of channels in current and future time slots, e.g., the auto-correlation of channels. The principal challenge is thus allocate resources in the current time slot given the average rate achieved so far in the time window and the likely achievable rate during the remainder of the time window.

In this section, we design a resource allocation policy that considers both the average rate achieved so far and the *expected* future rate. To estimate allocation in the future time slots in the current time window, we assume that the base station knows the channel gain |*H*_{k,n,t}| for all users and subcarriers in the current time slot *t* and the conditional density$f\left(\left(\right)close="|">|{H}_{k,n,\tau}{|}^{2}|{H}_{k,n,t}{|}^{2}\right)$ for future slots *τ* in the current time window.

*k*rate in time slot

*τ*under scheduling policy

*Q*by${E}^{Q({\mathbf{H}}_{t},{S}_{t-1})}\left({R}_{k,\tau}\right|{\mathbf{H}}_{t})$. Then the expected user

*k*rate from time slot

*t*through the end of the time window is given by${R}_{k,F}={R}_{k,t}+\sum _{\tau =t+1}^{T}{E}^{Q({\mathbf{H}}_{t},{\mathbf{S}}_{t-1})}\left({R}_{k,\tau}\right|{\mathbf{H}}_{t})$. Denote the incremental utility of the expected average rate over the time window under scheduling policy

*Q*by${W}_{t}^{Q({\mathbf{H}}_{t},{\mathbf{S}}_{t-1})}$. This interchange transforms (2) into:

where the latter constraint places limits on the expected power allocated in future time slots.

*k*rate is the sum of the expected future user

*k*rate on each subcarrier:

*Q*subcarrier

*n*will be assigned to user

*k*at time slot

*τ*by

*P*(

*p*

_{k,n,τ}> 0). If this probability is known, then the expected future user

*k*rate on subcarrier

*n*could be found by:

since the channel fading is assumed to be a Markov process and the fading on different subcarriers are assumed to be independent to each other. The required probability estimate is given by the following property:

### Property 1

Let policy *Q* be dictated by *λ*_{
k
}and *μ*_{
τ
}.

### Proof 1

*See* Appendix 1*.* □

*d*

_{ k }as a lower bound on the average rate

*R*

_{k,F}/

*T*. Then Equation (6), which determines the target rate for each user in the non-causal system, will become:

in the causal system.

The decomposition indicates a method of distributing the optimization. The determination of rate in (14) indicates a role for each user, while the determination of Lagrangian multipliers μ indicates a role for the network. These two roles must be done in coordination. The decomposition suggests to us that there should be an intermediate power allocation module which determines the Lagrangian multipliers λ in (14) and determines the powers **p** in (8). The communication between the users, power allocation module, and network is illustrated in Figure2. The allocations can be determined iteratively as follows, where the iteration number is denoted by a superscript *i*:

**User algorithm**: Given${\lambda}_{k}^{i}$,${d}_{k}^{i+1}=arg\phantom{\rule{.2em}{0ex}}\underset{{d}_{k}}{max}\left[{U}_{k}\right({S}_{k,t-1}+{d}_{k})-{\lambda}_{k}^{i}{d}_{k}]$.

**Network algorithm**: Given tentative power and subcarrier allocations **p**_{
t
}∈ **A**_{
t
},$\forall \tau \in [t,T],{\mu}_{\tau}^{i+1}={[{\mu}_{\tau}^{i}+{s}_{B}^{i}{z}_{B}^{i}]}^{+}$, where${s}_{B}^{i}$ is a positive scalar stepsize, and${z}_{B}^{i}=\text{sgn}\left(\sum _{k=1}^{K}\sum _{n=1}^{N}{p}_{k,n,t}^{i}-P\right)$ when *τ* = *t* and${z}_{B}^{i}=\text{sgn}\left(E\left(\sum _{k=1}^{K}\sum _{n=1}^{N}{p}_{k,n,\tau}^{i}|{\mathbf{H}}_{t}\right)-P\right)$ when *τ* > *t*.

**Power allocation algorithm**: Given target rates **d**^{
i
}and Lagrangian multipliers${\mu}_{\tau}^{i}\phantom{\rule{1em}{0ex}}\forall \tau \in [t,T]$, allocate **p**_{
t
}using (8) and (9). Calculate *E*(*R*_{k,τ}|**H**_{
t
}) ∀*τ* ∈ [*t* + 1,*T*] using (11). Update${\mathit{\lambda}}^{i+1}={[{\mathit{\lambda}}^{i}+{s}_{P}^{i}{\mathbf{z}}_{P}^{i}]}^{+}$, where${s}_{P}^{i}$ is a positive scalar stepsize, and${\mathbf{z}}_{P}^{i}$ is any feasible direction that satisfies$\text{sgn}\left({\lambda}_{k}^{i+1}-{\lambda}_{k}^{i}\right)=\text{sgn}\left({d}_{k}^{i}-{R}_{k,F}/T\right)$.

where *ε*_{1} is a small constant.

*μ*

_{ t }is terminated when:

where *ε*_{2} is a small constant.

Resource allocation that considers both the average rate achieved so far and the future expected rate can thus be logically distributed by an exchange of price and demand amongst users, the network, and an intermediate power allocation module. The network algorithm and the power allocation algorithm are both run at the base station, and the user algorithm is run in the user’s wireless device. Messages must thus be exchanged between the base station and the user’s device communicating the rate prices λ^{
i
} and the target rates d^{
i
}.

This solves the challenge that power allocation in the current time slot affects not only the current rate but also the utility that may be earned at the end of the time window. We call the resulting algorithm, outlined as follows, dual iteration search with prediction (DIS Prediction). The complexity of subgradient updates is polynomial in the dimension of the dual problem, and thus the complexity of the DIS algorithm is polynomial in the number of users *K*.

**Dual iteration search with prediction**

Every slot, initialize${\mu}_{t}^{0}={\underset{\_}{\mu}}_{t}^{0}$, ∀*t* and${\lambda}_{k}=\underset{\_}{\lambda}$∀*k*

Repeat

Repeat

For current slot *t*, allocate subcarrier and power by (9) and (8)

For future slot *τ*, calculate${E}_{{\mathbf{H}}_{F}}\left(\sum _{k=1}^{K}\sum _{n=1}^{N}{p}_{k,n,\tau}|{\mathbf{H}}_{t}\right)$ by (13)

Update μ using (17)

Until (18)

If${\lambda}_{k}^{i+1}={\overline{\lambda}}_{k}$

If *R*_{k,F}= 0 then${d}_{k}^{i+1}=0$ Else${d}_{k}^{i+1}=\mathrm{\Delta}{R}_{k}^{{}^{\prime}}$

Else calculate

${d}_{k}^{i+1}=arg\phantom{\rule{.2em}{0ex}}\underset{{d}_{k}}{max}\left[{U}_{k}\right({S}_{k,t-1}+{d}_{k})-{\lambda}_{k}^{i}{d}_{k}]$

Update λ using (15)

Until (16)

However, our approach required an approximation by interchanging utility and expectation, which may cause some sub-optimality. This will be examined via numerical examples in Section 7.

## 6 Resource allocation without expectation of future rate

In this section, we design a simpler resource allocation policy that considers the average rate achieved so far but ignores the expected future rate.

The contribution toward the average rate in the current time window achieved by user *k* as of slot *t*−1 is given by *S*_{k,t−1}. This can be take into consideration by focusing on the *incremental utility* of user *k* in slot *t*, denoted by *Δ* *U*_{k,t}= *U*_{
k
}(*S*_{k,t−1} + *R*_{k,t}/*T*)−*U*_{
k
}(*S*_{k,t−1}), that would result from an allocation of power corresponding to a rate *R*_{k,t}.

*t*:

A similar approach to that used in the previous section can be used. The dual problem for (19) leads to a set of equations that describe the set of actions for users, the power allocation module, and the network in each time slot. From the point of view of users, the task remains the same; the utility minus cost, *U*_{
k
}(*S*_{k,t−1} + *d*_{
k
})−*λ*_{
k
}*d*_{
k
}. The network algorithm is simpler than that used in DIS Prediction; it now only need determine the Lagrangian multiplier *μ*_{
t
} for power in the current time slot, whereas in DIS Prediction the network algorithm had to determine not only *μ*_{
t
} but also {*μ*_{
τ
},*t* < *τ* ≤ *T*}. The task of the power allocation module is also simpler; it must determine the Lagrangian multipliers λ for rate as before but it now only considers the difference between the actual and desired rate in the current time slot rather than estimating future rate.

The communication between the users, power allocation module, and network is as illustrated in Figure2, and the allocations can be determined iteratively as follows, where the iteration number is denoted by a superscript *i*:

**User algorithm**: Given${\lambda}_{k}^{i}$,${d}_{k}^{i+1}=arg\phantom{\rule{.2em}{0ex}}\underset{{d}_{k}}{max}\left[{U}_{k}\right({S}_{k,t-1}+{d}_{k})-{\lambda}_{k}^{i}{d}_{k}]$.

**Network algorithm**: Given tentative power and subcarrier allocations **p**_{
t
}∈ **A**_{
t
},${\mu}_{t}^{i+1}={[{\mu}_{t}^{i}+{s}_{B}^{i}{z}_{B}^{i}]}^{+}$, where${s}_{B}^{i}$ is a positive scalar stepsize, and${z}_{B}^{i}=\text{sgn}\left(\sum _{k=1}^{K}\sum _{n=1}^{N}{p}_{k,n,t}^{i}-P\right)$.

**Power allocation algorithm**: Given target rates **d**^{
i
}and Lagrangian multipliers${\mu}_{t}^{i}$, allocate **p**_{
t
}using (8) and (9) and update${\mathit{\lambda}}^{i+1}={[{\mathit{\lambda}}^{i}+{s}_{P}^{i}{\mathbf{z}}_{P}^{i}]}^{+}$, where${s}_{P}^{i}$ is a positive scalar stepsize, and${\mathbf{z}}_{P}^{i}$ is any feasible direction that satisfies$\text{sgn}\left({\lambda}_{k}^{i+1}-{\lambda}_{k}^{i}\right)=\text{sgn}\left({d}_{k}^{i}-{R}_{k,t}^{i}/T\right)$.

We again propose to use subgradient methods for the iteration of *μ*_{
t
} and bisection methods for the iteration of *λ*_{
k
}. As above, we place bounds on each shadow cost, except that the upper bound${\overline{\lambda}}_{k}$ is now given by${\overline{\lambda}}_{k}=d{U}_{k}({S}_{k,t-1}+{R}_{k,t}/T)/d({R}_{k,t}/T)\left|\right({R}_{k,t}/T=\mathrm{\Delta}{R}_{k}^{{}^{\prime}})$ where$\mathrm{\Delta}{R}_{k}^{{}^{\prime}}=arg\phantom{\rule{.2em}{0ex}}\underset{{R}_{k,t}}{max}\left[{U}_{k}\right({S}_{k,t-1}+{R}_{k,t}/T)-{U}_{k}({S}_{k,t-1}\left)\right]/({R}_{k,t}/T)$.

Greedy allocation to maximize incremental utility in the current time slot can thus be implemented in a distributed fashion by an exchange of price and demand amongst users, the network, and an intermediate power allocation module. We call the resulting algorithm, outlined as follows, Dual iteration search greedy (DIS Greedy). Its performance will be compared to that of DIS Prediction in the following section.

**Greedy dual iteration search**

Every slot, initialize${\mu}_{t}^{0}={\underset{\_}{\mu}}_{t}^{0}$, ∀*t* and${\lambda}_{k}=\underset{\_}{\lambda}$∀*k*

Repeat

Repeat

For current slot *t*, allocate subcarrier and power by (9) and (8)

Update *μ*_{
t
}using (17)

Until (18)

If${\lambda}_{k}^{i}={\overline{\lambda}}_{k}$

If *R*_{k,t}= 0 then${d}_{k}^{i+1}=0$ Else${d}_{k}^{i+1}=\mathrm{\Delta}{R}_{k}^{{}^{\prime}}$

Else calculate

${d}_{k}^{i+1}=arg\phantom{\rule{.2em}{0ex}}\underset{{d}_{k}}{max}\left[{U}_{k}\right({S}_{k,t-1}+{d}_{k})-\underset{k}{\overset{i}{\lambda}}{d}_{k}]$

Update λ using (15)

Until (16)

## 7 Simulation results

*B*= 200 KHz,

*N*= 100,

*I*= 0.5,

*δ*

^{2}= 0.5,

*T*= 10, and

*P*varies from 0.01 to 0.1. We simulate

*K*= 10 users, with identical sigmoid utility functions given by:

where *a* = (5/6)^{1/3}/25 and *b* = −25/6. The utility function has a rate at the maximum average utility at average rate${S}_{k,T}^{{}^{\prime}}=250$ kbps.

where the correlation coefficient in consecutive time slots *ρ* = 0.5 and *v* ∼ *Exp*(1) is independent of |*H*_{k,n,t}|^{2} so that |*H*_{k,n,t}|^{2} has a Rayleigh distribution[31].

In this scenario, we set the convergence bounds for λ and *μ* to be very small so as to obtain accurate results. Correspondingly, convergence of *μ* required 20–50 iterations and convergence of λ required 200–1000 iterations. Iterations of *μ*^{
i
}are the domain of the network and power allocation algorithms, both of which are run at the base station, and thus these iterations may take minimal time. However, iterations of λ^{
i
}require communication between the base station and the user’s device. This number of iterations is unlikely to be feasible due to the signalling time required, and thus a larger convergence bound *ε*_{2} would be used in a real system. If channels change slowly enough, then acceptable convergence will occur over multiple time slots, and thus the proposed communication will be feasible. However, if channels change too quickly, e.g., due to high mobility, then we suggest that the time window *T* be lengthened to correspond to several group-of-pictures, and that the rate prices λ must be modified more slowly.

*P*. We also compare these algorithms to the utility that could be achieved in a non-causal scenario; the curve labeled DIS NC is generated by using a similar dual iteration search algorithm applied to the non-causal problem. As should be expected from any reasonable resource allocation strategy, the total utility is an increasing concave function of the total power

*P*for all three algorithms.

We first consider the performance of the non-causal algorithm. Recall that at the beginning of each time window, this algorithm has knowledge of the channel gains of each user in each time slot of the window. However, DIS NC is not optimal, since it solves the dual problem (3) instead of the primal problem (1). Sub-optimality will occur when there is a duality gap. Because direct solution of (1) is computationally intractable, to quantify the amount of sub-optimality, we calculate an upper bound (denoted in Figure3 as Upperbound) by substituting the solution of DIS NC into (4). We see that at low powers there is a significant performance gap between DIS NC and the upper bound. This gap is caused by users who under DIS NC are allocated average rates lower than${S}_{k,T}^{{}^{\prime}}$, the rate at the maximum average utility. In general, it is inefficient for users to have average rates below${S}_{k,T}^{{}^{\prime}}$, since the required resources could often be assigned in a manner that raises many of these users above the inefficient convex portion of the utility curve. As the base station power increases, the performance gap between DIS NC and the upper bound decreases, reflecting that all users now obtain rates above${S}_{k,T}^{{}^{\prime}}$ resulting in a duality gap of zero.

We turn next to the causal algorithm that includes future rate prediction, denoted DIS Prediction. Recall that this algorithm takes into account not only the current user channels on each subcarrier and each user’s average rate achieved so far in the time window, but also the expected future rate based on the conditional distribution of the channel in future time slots. As expected, the performance of DIS Prediction falls short of that of DIS NC.

Finally we turn to the causal greedy algorithm denoted DIS Greedy. Recall that this algorithm only takes into account the current user channels on each subcarrier and each user’s average rate achieved so far in the time window. As expected, the performance of DIS Greedy is lower than other two algorithms.

When the base station power is low, all three algorithms achieve similar performance. In this situation because power is limited and even DIS NC algorithm cannot achieve the optimal solution. Thus when *P* = 0.02, the performance of DIS NC even lower than other two algorithms. This indicates that a greedy approach that maximizes only the incremental utility in the current time slot is sufficient. Consideration of future achievable rate, even if known at the beginning of the time window, does not help. At higher base station powers, however, the performance gap becomes significant. Knowledge of future channels is now helpful. With increase of station powers, DIS NC provides optimal performance and DIS Prediction starts to outpace DIS Greedy by using its prediction of future rates.

*T*when

*P*= 0.06, as illustrated in Figure4 for each of 10 time slots. In slots 2,5,6,8, and 10, this user’s channel is relatively poor on most subcarriers. As a consequence, both DIS NC and DIS Greedy assign no system resources to this user in any of these slots. DIS NC knows at the beginning what the user’s channel will be for all 10 time slots, and it assigns substantial resources to this user during slots 1, 3, 7, and 9. In contrast, DIS Greedy must make decisions one slot at a time. It allocates fewer resources than DIS NC during slot 1, not aware of the number of time slots to come in which this user will have a poor channel. It attempts to catch up in slot 3, and further allocates a small amount of resources in slot 4. DIS Greedy acts similarly to DIS NC during slots 5 through 8. However, in slot 9, despite this user’s good channel it obtains no additional resources from DIS Greedy due to a combination of the rate achieved so far and the competition with other users. DIS Prediction starts by allocating similar resources in slots 1–2 as DIS Greedy. However, during slot 3 it allocates fewer resources than DIS Greedy, based on a prediction that the user’s channel will get better in future slots. During slots 4 through 6, it allocates no resources due to poor channels, and in slot 7 it allocates similar resources to DIS NC. The biggest difference occurs in slot 9, when DIS Prediction allocates a high level of resources due to a combination of the low rate achieved so far and a good channel.

*P*= 0.05. In Figure5, we illustrate the cumulative rate of a user who has poor channels in slots 5 through 9. The optimal noncausal strategy is to allocate substantial resources in slots 1, 3, and 4, due to the poor channels that will be suffered in future slots. However, not knowing this, both DIS Greedy and DIS Prediction allocate too few resources in slot 4, and then overcompensate during slot 10.

All of these results pertained to a system with users with identical utility functions. However, it can be envisioned that in some systems not all users will be equally valuable, and utility functions can be used to express such differences. To illustrate this, we briefly examine a system with *K* = 2 users with non-identical utility functions. User 1’s utility is as given above. User 2’s utility function given by *C* times that given above, with *C* varying from 0.1 to 2. We focus on the situation in which both user 1 and user 2 are not allocated enough resources to obtain a rate above${S}_{k,T}^{{}^{\prime}}$. The total available power is fixed at *P* = 1 and the value of *μ* is set to ensure that the power constraint is satisfied.

## 8 Conclusion

Resource allocation for video conferencing can benefit from modeling user satisfaction as a sigmoid function of the average bit rate over a time window of a group of pictures. Some articles proposed resource allocation based on the PSNR over groups of pictures subject to average rate constraints, and others proposed resource allocation based on sigmoid utility of the instantaneous rate. None have considered sigmoid utility over groups of pictures.

We considered power and subcarrier allocation in OFDM cellular systems for semi-elastic applications whose utility is a sigmoid function of the average bit rate over multiple time slots. We proposed a resource allocation policy that considers both the average rate achieved so far and the future expected rate. We show how future expected rate can be estimated by modeling the probability that a user will be allocated a subcarrier in a future time slot. Users are unaware of this prediction, but it requires additional work by the network and by the power allocation module. The network must estimate future prices for power. The power allocation module must use these price estimates to estimate future rate.

Then a greedy allocation algorithm is proposed. The network prices power in each time slot so that the demand for power equals the base station supply. A power allocation module assigns power and subcarriers in a manner that maximizes total user utility, and transforms the price for power into a price per unit rate for each user so that users modify their desired rate to match available resources.

The performance of each algorithm is illustrated using numerical results. When the base station power is low, both algorithms have similar performance, although neither makes optimal decisions for users who cannot achieve good average rates. When the base station power is moderate or high, the algorithm that uses the prediction of future rates outperforms the greedy algorithm by taking into account both expected future channels and expected final average rate.

We have focused in this article on the downlink. Any complete design will also require power and rate allocation on the uplink. The major difference in the uplink system model is that there are power constraints on each user rather than a sum power constraint. Thus, if a similar approach to that proposed here were adopted for the uplink, then the shadow price for base station downlink power would be replaced by a set of shadow prices for each active device’s uplink power. The determination of optimal power prices would therefore become more complex, perhaps requiring a subgradient algorithm instead of a bisection algorithm. Future research would be required to evaluate the resulting complexity.

## Appendix 1

**Proof of Property 1:**

*k*obtains subcarrier

*n*if and only if the following condition is satisfied for all other users$\widehat{k}\ne k$:

*p*

_{k,n,τ}from (8), this occurs if and only if:

*k*obtains subcarrier

*n*if and only if${\lambda}_{k}/{\lambda}_{\widehat{k}}>{r}_{\widehat{k},n,\tau}^{2}/{r}_{k,n,\tau}^{2}\phantom{\rule{1em}{0ex}}\forall \widehat{k}\ne k$, i.e., if and only if$\forall \widehat{k}\ne k$,

Property 1 directly follows.

## Declarations

### Acknowledgements

This study had been supported by the National Science Foundation. Portions of this study appeared in C Yang and S Jordan, Power and Rate Allocation for Video Conferencing in Cellular Networks, Allerton Conference on Communication, Control and Computing, Monticello, Illinois, September 2011, pp. 127–134.

## Authors’ Affiliations

## References

- Sandvine: Global Internet phenomena report. Tech. rep. (2011) http://www.sandvine.com
- Shenker S: Fundamental design issues for the future Internet.
*IEEE J. Sel. Areas Commun*1995, 13(7):1176-1188.View Article - Trestian R, Moldovan A, Muntean C, Ormond O, Muntean GM: Quality utility modelling for multimedia applications for android mobile devices. In
*IEEE International Symposium on Broadband Multimedia Systems and Broadcasting (BMSB)*. Seoul, Korea; 2012:1-6.View Article - Du Q, Zhang X: Statistical QoS provisionings for wireless unicast/multicast of multi-layer video streams.
*IEEE J. Sel. Areas Commun*2010, 28(3):420-433.View Article - Huang J, Li Z, Chiang M, Katsaggelos A: Joint source adaptation and resource allocation for multi-user wireless video streaming.
*IEEE Trans. Circ. Syst. Video Technol*2008, 18(5):582-595.View Article - Wu D, Ci S, Wang H, Katsaggelos A: Application-centric routing for video streaming over multihop wireless networks.
*IEEE Trans. Circ. Syst. Video Technol*2010, 20(12):1721-1734.View Article - Chen CM, Lin CW, Chen YC: Cross-layer packet retry limit adaptation for video transport over wireless LANs.
*IEEE Trans. Circ. Syst. Video Technol*2010, 20(11):1448-1461.View Article - Mansour H, Fallah Y, Nasiopoulos P, Krishnamurthy V: Dynamic resource allocation for MGS H.264/AVC video transmission over link-adaptive networks.
*IEEE Trans. Multimedia*2009, 11(8):1478-1491.View Article - Li P, Zhang H, Zhao B, Rangarajan S: Scalable video multicast with adaptive modulation and coding in broadband wireless data systems.
*IEEE/ACM Trans. Network*2012, 20(1):57-68.View Article - Zhang H, Zheng Y, Khojastepour M, Rangarajan S: Cross-layer optimization for streaming scalable video over fading wireless networks.
*IEEE J. Sel. Areas Commun*2010, 28(3):344-353.View Article - Kim IM, Kim HM: A new resource allocation scheme based on a PSNR criterion for wireless video transmission to stationary receivers over Gaussian channels.
*IEEE Trans. Wirel. Commun*2002, 1(3):393-401. 10.1109/TWC.2002.800538View Article - ITU-T recommendation P.800: Methods for subjective determination of transmission quality.
- Lee J, Mazumdar R, Shroff N: Downlink power allocation for multi-class wireless systems.
*IEEE/ACM Trans. Netw*2005, 13(4):854-867.View Article - Hande P, Shengyu Z, Mung C: Distributed rate allocation for inelastic flows.
*IEEE/ACM Trans. Netw*2007, 15(6):1240-1253.View Article - Kuo WH, Liao W: Utility-based radio resource allocation for QoS traffic in wireless networks.
*IEEE Trans. Wirel. Commun*2008, 7(7):2714-2722.View Article - Cheung MH, Mohsenian-Rad AH, Wong V, Schober R: Random access for elastic and inelastic traffic in WLANs.
*IEEE Trans. Wirel. Commun*2010, 9(6):1861-1866.View Article - Cioffi JM: Digital communications. Course Reader. 2003.http://www.stanford.edu/group/cioffi/
- Liu P, Zhang P, Jordan S, Honig M: Single-cell forward link power allocation using pricing in wireless networks.
*IEEE Trans. Wirel. Commun*2004, 3(2):533-543. 10.1109/TWC.2004.825363View Article - Jang J, Lee KB: Transmit power adaptation for multiuser OFDM systems.
*IEEE J. Sel. Areas Commun*2003, 21(2):171-178. 10.1109/JSAC.2002.807348View Article - Shen Z, Andrews J, Evans B: Adaptive resource allocation in multiuser OFDM systems with proportional rate constraints.
*IEEE Trans. Wirel. Commun*2005, 4(6):2726-2737.View Article - Wong CY, Cheng R, Lataief K, Murch R: Multiuser OFDM with adaptive subcarrier, bit, and power allocation.
*IEEE J. Sel. Areas Commun*1999, 17(10):1747-1758. 10.1109/49.793310View Article - Gao X, Nandagopal T, Bharghavan V: Achieving application level fairness through utility-based wireless fair scheduling. In
*Proc. GlobeCom*. San Antonio, Texas, USA; 2001:3257-3261. - Feng N, Mau SC, Mandayam N: Pricing and power control for joint network-centric and user-centric radio resource management.
*IEEE Trans. Commun*2004, 52: 1547-1557. 10.1109/TCOMM.2004.833191View Article - Song G, Li Y: Utility-based resource allocation and scheduling in OFDM-based wireless broadband networks.
*IEEE Commun. Mag*2005, 43(12):127-134.MathSciNetView Article - Zhou C, Honig M, Jordan S: Utility-based power control for a two-cell CDMA data network.
*IEEE Trans. Wirel. Commun*2005, 4(6):2764-2776.View Article - Yang C, Wang W, Zhang X: Multi-service transmission in multiuser cooperative networks. In
*Proc. WCNC*. Budapest, Hungary; 2009:1-5. - Berry R: Some dynamic resource allocation problems in wireless networks. In
*Proc. SPIE*. Denver, Colorado, USA; 2001:37-48. - Boyd S, Vandenberghe L:
*Convex Optimization*. Cambridge Univ. Press, Cambridge; 2004.View Article - Ng TCY, Yu W: Joint optimization of relay strategies and resource allocations in cooperative cellular networks.
*IEEE J. Sel. Areas Commun*2007, 25(2):328-339.View Article - Yang C, Jordan S: Resource allocation for semi-elastic applications in wireless networks. In
*IEEE Global Telecommunications Conference (GLOBECOM)*. Houston, Texas, USA; 2011:1-6. - Goldsmith A:
*Wireless Communications*. Cambridge Univ. Press, Cambridge; 2005.View Article

## Copyright

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.