# Suboptimal Rate Adaptive Resource Allocation for  Downlink OFDMA Systems

Authors: Sanam Sadr; Alagan Anpalagan; Kaamran Raahemifar
Journal: International Journal of Vehicular Technology
 (2009)

---

## Abstract

This paper aims to
study the performance of low complexity adaptive
resource allocation in the downlink of OFDMA
systems with fixed or variable rate requirements
(with fairness consideration). Two suboptimal
resource allocation algorithms are proposed
using the simplifying assumption of transmit
power over the entire bandwidth. The objective
of the
first algorithm is to maximize the total throughput while
maintaining rate proportionality among the users. The proposed
suboptimal algorithm prioritizes the user with the highest
sensitivity to the subcarrier allocation, and the variance over the
subchannel gains is used to define the sensitivity of each user.
The second algorithm concerns rate adaptive resource allocation in
multiuser systems with fixed rate constraints. We propose a
suboptimal joint subchannel and power allocation algorithm which
prioritizes the users with the highest required data rates. The main
feature of this algorithm is its low complexity while achieving
the rate requirements.


---

## Body

## 1. Introduction

Emerging wireless communication systems attempt to support large number of users with flexible Quality of Service (QoS) requirements. They aim not only for higher data rate capabilities but also to support mobility.  In the Fourth Generation (4G) wireless networks, users will have access to different services with a single device while roaming across multiple wireless networks [1]. To fulfill such service requirements,  the wireless channel is the first and most fundamental challenge in broadband applications. Nonline-of-sight (NLOS) environment, relative mobility between the transmitter and the receiver, noise and interference from other signals result in an unpredictable time varying channel with frequency selective-multipath fading nature. Other challenges arise from the scarcity of radio resources, that is, the frequency spectrum and the total transmit power. The multipath nature of the channel leads to severe intersymbol interference (ISI) while the limited availability of the frequency spectrum necessitates spectrum sharing which leads to interference among the users. To solve these issues, intelligent radio resource allocation algorithms are necessary both in the physical and media access control (MAC) layers.Orthogonal Frequency Division Multiplexing (OFDM) is a physical layer specification based on multicarrier transmission which has been widely adopted in industry and standards, for example, IEEE 802.11 and IEEE 802.16. It was shown in [2] that multicarrier modulation can solve the multipath problem without reducing the data rate. The idea is to divide the broadband channel into N narrowband subchannels each with a bandwidth much smaller than the coherence bandwidth of the channel so that they are assumed to undergo flat fading.The advantages of multicarrier transmission when applied in multiuser systems are due to multiuser diversity and frequency selectivity. The former states that the broadband channel and hence the subchannels seen by different users vary independently due to different locations of the users. The latter results from the frequency selectivity of the channel and states that even for each user, different subcarriers suffer from different fading levels. Adaptive modulation is based on this characteristic where the power and the modulation scheme for each subchannel is matched with its fading level. When adaptive modulation is combined with multiuser diversity, not only the power is adaptively allocated to the subchannels but also, the subchannels are adaptively assigned to different users based on their channel gains. This is the principle of Orthogonal Frequency Division Multiple Access (OFDMA) which is one of the promising MAC layer schemes and has been adopted in, for example, IEEE 802.16.In OFDMA systems, both challenges of wireless communications are addressed: (1) utilizing OFDM as the physical layer to combat ISI and multipath fading; (2) adaptively allocating the limited power and frequency spectrum, which in this case are subchannels, to the users to optimize the spectral efficiency of the system. As reported in literature, significant improvement is made in spectral efficiency when adaptive resource allocation algorithms are applied, for example, [3]. All these algorithms however, are based on the assumption of perfect channel state information (CSI) in the beginning of each transmission block. Also, the channel is assumed to be quasistatic, that is, does not change within each block.In the beginning of each transmission block, the channel is estimated at the receiver and fed back to the transmitter (e.g., base station in the downlink). The resource allocation algorithms then assign the subcarriers to the users and the power to the subcarriers based on the instantaneous CSI. Both channel prediction and resource allocation algorithms should run fast enough to be practical in future wireless communications especially to support high speed mobility (e.g., vehicular mobility up to 250 kmph in IEEE 802.22 standards under development [4]). Therefore, the goal of the proposed algorithms is not just to reach the optimal solution but to consider the complexity of the algorithm and choose a method which is also practical in real time applications.The problem of resource allocation in an OFDMA system is formulated as an optimization problem to minimize or maximize a parameter of the system with certain conditions specified in one or more constraints. Many dynamic resource allocation algorithms and optimization techniques have been proposed in literature for the downlink of an OFDMA system. The ultimate goal of all is to reach the highest throughput with the minimum transmit power either with the users' data rates as the constraint and the total transmit power as the objective (e.g., [3, 5, 6]) or with the constraint on the power and the total throughput of the system as the objective, also referred to as rate adaptive (RA) (e.g., [7–11]). There is also a third category of algorithms (e.g., [12–16]) which consider fairness and are developed to achieve the highest possible throughput while maintaining some predetermined proportionality among the users within the power budget.In this paper, two low complexity suboptimal algorithms are proposed with the objective of maximizing the total throughput with fixed and variable rate constraints. The low complexity of the proposed algorithms is due to the simplifying assumption of equal transmit power on all the subcarriers in the system. In simulations, the performance of the algorithms is compared with the existing solutions in terms of total data rate and fairness.


### 1.1. Contribution and Organization of the Work

In Section2, the problem of rate adaptive resource allocation is formulated. The main contribution of this work, presented in Section 3, is on the sum capacity of a multiuser OFDM system with proportional rate constraints. Since the optimal solution to the problem of constrained fairness is extremely computationally complex to obtain, we propose a low-complexity suboptimal algorithm consisting of only subcarrier allocation where the power spectral density is assumed to be flat on the entire bandwidth. This assumption is based on the results of the single-user power allocation obtained in [17]. In performing the subcarrier allocation, users' variance on subchannel gains is used to prioritize the users to choose their best available subchannel. The next contribution of this work, also presented in Section 3, includes a suboptimal algorithm for rate adaptive resource allocation with fixed rate constraints. The simulation results show that this algorithm achieves the predetermined required data rate of all the users in the system.The simulation results and performance comparison of all the proposed methods are presented in Section4. In Section 5, we summarize the contributions of this work.


## 1.1. Contribution and Organization of the Work

In Section2, the problem of rate adaptive resource allocation is formulated. The main contribution of this work, presented in Section 3, is on the sum capacity of a multiuser OFDM system with proportional rate constraints. Since the optimal solution to the problem of constrained fairness is extremely computationally complex to obtain, we propose a low-complexity suboptimal algorithm consisting of only subcarrier allocation where the power spectral density is assumed to be flat on the entire bandwidth. This assumption is based on the results of the single-user power allocation obtained in [17]. In performing the subcarrier allocation, users' variance on subchannel gains is used to prioritize the users to choose their best available subchannel. The next contribution of this work, also presented in Section 3, includes a suboptimal algorithm for rate adaptive resource allocation with fixed rate constraints. The simulation results show that this algorithm achieves the predetermined required data rate of all the users in the system.The simulation results and performance comparison of all the proposed methods are presented in Section4. In Section 5, we summarize the contributions of this work.


## 2. Optimization Problem

In the downlink of an OFDMA system, the base station applies the combined subcarrier and power allocation algorithm to assign subcarriers to different users and the number of bits/OFDM symbol from each user to be transmitted on each subcarrier. The power allocated to each subcarrier is then determined by the number of assigned bits as well as the corresponding modulation scheme. Along with each OFDM symbol, the subcarrier and bit allocation information is sent to the receivers via a separate control channel; therefore, each user needs only to decode the bits on its respective assigned subcarriers. In this section, we formulate the optimization problem under consideration.It is assumed that there areK users and N subcarriers in the system. The wireless channel is modeled as frequency selective Raleigh fading. Additive white Gaussian noise (AWGN) is present with single-sided noise power spectral density (PSD) level of N0 for all subcarriers of all users. The continuous data rate in bits/s for the kth user Rk in a zero margin system is given by
(1)Rk=BN∑n=1Nck,nlog2(1+γk,n)=BN∑n=1Nck,nlog2(1+pk,n|Hk,n|2N0(B/N)),
where B is the total bandwidth of the system, ck,n is the subcarrier assignment index indicating whether the kth user occupies the nth subcarrier or not, B/N=1/T and T is the OFDM symbol duration. γk,n and Hk,n are the SNR and the channel gain of the nth subcarrier for the kth user and pk,n is the power allocated to the kth user in the nth subcarrier.In practical modulation schemes, the transmit powerpk,n and hence the signal-to-noise ratio (SNR) have to be adjusted according to the required BER. In [3], the required receive power for supporting rk,n bits per symbol in the case of M-level QAM with square signal constellations at a given BER Pe is given by
(2)f(rk,n)=N03[Q-1(Pe4)]2(2rk,n-1),
where
(3)Q(x)=12π∫x∞e-t2/2dt.
However, to formulate the resource allocation problem in this paper, the approximate expression is used for BER. In [18], the BER of a square MQAM with Gray bit mapping in AWGN as a function of received SNR γk,n and number of bits rk,n has been approximated tight to within 1 dB for rk,n≥2 and BER≤10-3 as
(4)BERMQAM(γk,n)≈0.2exp[-1.5γk,n2rk,n-1],
solving for rk,n, we have
(5)rk,n=log2(1+γk,nΓ),
where Γ=-ln(5BER)/1.5. γk,n/Γ  is the effective SNR which has been adjusted according to the desired BER and the modulation scheme. The power loss Γ which is the difference between the SNR needed to achieve a certain transmission data rate for a practical system and the theoretical limit is called the SNR gap.The optimization problem is then formulated as(6)Objective:maxck,n,pk,nBN∑k=1K‍∑n=1Nck,nlog2(1+pk,n|Hk,n|2N0(B/N)Γ),subject  toC1:ck,n∈{0,1},∀k,n,C2:∑k=1Kck,n=1,∀n,C3:pk,n≥0,∀k,n,C4:∑k=1K‍∑n=1Nck,npk,n≤Ptotal,C5:  RateConstraints.The constraints are denoted by C1–C5. The first two constraints are on subcarrier allocation to ensure that each subchannel is assigned to only one user. The next two constraints are on power allocation wherePtotal is the total transmit power of the system. C5 denotes the rate constraints of the system.The optimization problem, given in (6) is generally very difficult to solve. It involves binary variables ck,n for subcarrier assignment and continuous variables pk,n for power allocation. The additional constraint in C5 further increases the difficulty in finding the optimal solution because the feasible set is not convex. Ideally, the subcarrier and power allocation should be carried out jointly which leads to high computational complexity. Therefore, low complexity algorithms with accepted performance are much preferable than complex optimal solutions.To reduce the complexity, the proposed algorithms in literature have split the allocation process into several steps based on valid simplifying assumptions in each step. It was shown in [8] that the data rate of a multiuser OFDM system is maximized when each subcarrier is assigned to only  one user with the best channel gain for that subcarrier and the total transmit power is distributed over the assigned subcarriers by the water filling policy. Hence, the total throughput is maximized regardless of users' rate requirements. A common approach (e.g., in [3, 13]) in order to make the problem tractable (by converting it into a convex optimization problem) is to relax the constraint on ck,n to allow it to take any real value on the half-open interval (0,1].Another simplifying assumption (e.g., in [13–15]) is to use a flat energy distribution over the entire bandwidth. This approach would significantly reduce the complexity of the allocation process as it transforms the problem into only subcarrier allocation with only N parameters to optimize. However, this complexity reduction is only worthy if the performance degradation is negligible compared to optimal water filling method. It has been shown in [17] that in a single user zero margin system, the total data rate is close to the optimal solution even with flat transmit PSD as long as the energy is poured only into subchannels with good channel gains. This approach has been adopted in this paper.Two cases of rate constraints for C5 in (6) are considered in this work: proportional and fixed rate constraints. The former attempts to ensure predetermined equal or nonequal rate proportionality among the users referred to as constrained-fairness [19]. Each case is described next followed by the proposed algorithm.


## 3. Proposed Suboptimal Algorithms

### 3.1. Proportional Rate Constraints

In this section, we propose a suboptimal algorithm with the objective of maximizing the total throughput of the system while rate proportionality is to be maintained among the users according to(7)R1:R2:⋯:RK=α1:α2:⋯:αK.{α1,α2,…,αK} is the set of predetermined proportional constraints where αk is a positive real number with αmin=1 for the user with the least required proportional rate.In [13], a flat transmit power of Ptotal/N is used for all the subcarriers in the system. In the process of subcarrier allocation, two goals take place alternatively: one is to maintain fairness among the users by giving priority to the user with the least achieved rate to choose the next subcarrier; the other is to increase the total data rate by allocating the best available subcarrier to that user. Authors in [16] modified the proposed algorithm in [13] by redistributing the power among each user's assigned subcarriers with water filling policy and updating the users' data rates with the new power allocation before assigning the next subcarrier. Authors in [14, 15] adopted a two-step approach: in the first step, the algorithm outlined in [13] is employed for subcarrier allocation. In the second step, the power is reallocated between the users and then among the subcarriers through the use of water filling to enforce the rate proportionality among the users. The authors in [12] proposed an auction algorithm where the gain difference between the best and the second best subchannel is used to prioritize the user to choose the next available subcarrier.


#### 3.1.1. Algorithm1: User's Perspective

The first algorithm is proposed based on the sensitivity of the users to the subcarrier allocation and the sensitivity of the user is measured in terms of how frequency selective is the channel from the user's perspective. The proposed algorithm is based on prioritizing the critical (most sensitive) user in the system and equal power distribution is assumed across all subchannels. To describe the method, consider the variance of the subchannel gains for each user. A snapshot of the channel characteristics for a system with two users and eight subchannels is shown in Figure1.Figure 1
A snapshot of the channel with two users and eight subchannels.As shown in Figure1, the channel gains of user 1, have a small variance of 0.1073 while user 2 has subchannels with channel gains changing from 1.6989 to 4.1256 and the variance of 1.5617. This information is shown in Table 1. It is due to multiuser diversity that a subchannel is rarely in deep fade for all the users. As a result of frequency selectivity of the channel, different subchannels of the same user experience different levels of fade. However, how different they undergo fading could be measured by their channel gain variance as indicated in Table 1.Table 1
The channel characteristics of a two-user system shown in Figure1.
User numberUser 1User 2Variance0.10731.5617Min channel gain0.69290.9229Max channel gain1.69894.1256Considering subcarrieri and subcarrier j for the kth user, the change in data rate of the kth user due to assigning subcarrier i instead of subcarrier j, ΔRk(i,j) is given by
(8)ΔRk(i,j)=Rk(i)-Rk(j)=BN[log2(1+γk,i)-log2(1+γk,j)]=BNlog2(1+pk,i|Hk,i|21+pk,j|Hk,j|2),
where Rk(i) and Rk(j) are the kth user's achieved data rates on subcarriers i and j, respectively. Without loss of generality, we assume that Hk,i>Hk,j. The maximum change in the achieved rate of the kth user is then given by
(9)ΔRk,max=BNlog2(1+p(Hk,mean+sk)21+p(Hk,mean-sk)2),
where Hk,mean is the average channel-to-noise ratio for user k, sk is the kth user's channel gain standard deviation from the mean and a flat transmit power p is assumed on all the subcarriers. Now if sk is zero then ΔRk(i,j)=0 implying that it results in no difference in the kth user's data rate whether it chooses subcarrier i or subcarrier j. However, as sk increases, so does ΔRk(i,j) increasing the sensitivity of the user's data rate to the subcarrier allocation.In [13–16], the user with the least proportional data rate has the priority to choose the next subcarrier. In our proposed algorithm, priority is given to the critical user with the largest change over its channel gains to choose its best subcarrier. However, if a user has a large variance and this characteristic continues to hold, then this user ends up getting all the subchannels while the others get nothing. To solve this problem, it is assumed that the proportion of the subcarriers assigned to each user is approximately the same as the rate constraints as in (7). Hence
(10)N1:N2:⋯:NK=α1:α2:⋯:αK,Nk=⌊αkN∑k=1Kαk⌋,
where Nk is the number of subcarriers to be assigned to user k and αk is the kth user's proportional rate constraints.The proposed algorithm is described below. In the first step, all the variables are initialized.A and A* are the sets of available (unallocated) and allocated subcarriers respectively. N* is the sum of minimum number of subcarriers initially required by the users derived from (10) and U is the set of all users.In the second step, the sensitivity parameter,Vk, is calculated. Although the variance of the subchannel gains has been used to explain the method, it is not the best parameter to mathematically compare the sensitivity of the users to subcarrier allocation. Instead, the sensitivity is measured using the formula define in (12) as
(11)Vk=(∑n=1NHk,n)2N∑n=1NHk,n2.
This formula has been used both in deriving the simulation results and calculating the complexity.At each iteration, the critical user chooses its best subcarrier and the assigned subcarrier is eliminated from the set. Once userk gets the allotment of Nk subcarriers, that user can no longer be assigned more subchannels. The remaining subchannels are allocated in the final step. We can have different scenarios based on the flexibility in the objective of the algorithm and the number of unallocated subchannels.Scenario 1
If adherence to the proportionality constraints needs to be strictly enforced, then the user with the least achieved proportional data rate should be given priority to choose the best available subcarrier.Scenario 2
If a rough proportionality is acceptable, each user gets at most one subcarrier. In order to further increase the total rate, the user with the largest channel gain chooses the first share.In the simulation results, we refer to this algorithm as Algorithm1.Algorithm 1
(i) Initializationck,n=0,∀k,nRk=0,∀kA={1,2,…,N},A*=∅,N*=∑k=1KNkU={1,2,…,K}Sort all the subcarriers N for all the users K.(ii) Subcarrier Allocation(a) for m=1 to N*Vk=((∑n=1NHk,n)2/N∑n=1NHk,n2)∀n∈A/sensitivity parameter is calculated/updated for each user;k=argminVk,(ifNk>0)/the critical user is found;n=argmaxn∈AHk,n,/the best available subchannel is found and allocated;ck,n=1,Nk=Nk-1,A=A-{n}andA*=A*∪{n},/the subchannel is eliminated from the set;Rk=Rk+(B/N)log2(1+γk,n). /the rate is updated;(b) while A≠∅Scenario 1:k=argmin(Rk/αk),n=argmaxn∈AHk,n,ck,n=1,Nk=Nk+1,A=A-{n}andA*=A*∪{n},Rk=Rk+(B/N)log2(1+γk,n).Scenario 2:forn=1to(N-N*)k=argmaxk∈UHk,n,ck,n=1,Nk=Nk+1,Rk=Rk+(B/N)log2(1+γk,n),U=U-{k}.end


#### 3.1.2. Fairness Index

The fairness index is defined as [19]
(12)F=(∑k=1Kαk)2K∑k=1Kαk2,
with the maximum value of 1 to be the fairest case in which all users would achieve the same data rate. Based on the above equation, we define a new parameter Fp to examine the performance of the algorithm in maintaining proportionality which is given by
(13)Fp=(∑k=1KRk/αk)2K∑k=1K(Rk/αk)2,
where Rk and αk are the achieved rate and the proportional rate constraint for the kth user respectively. Fp is a real number in the interval (0,1] with the maximum value of 1 for the case that the achieved rate proportions among the users are the same as the predetermined set {αk}k=1K.


### 3.2. Fixed Rate Constraints

The optimization problem with fixed rate constraints is formulated the same as in (6). The only difference is in C5 which indicates that the achieved data rate for each user Rk should be equal or larger than its minimum required data rate denoted by Rk,min. Hence
(14)Rk≥Rk,min∀k.This problem was addressed by Yin and Liu [7]. The assumptions in the algorithm proposed in [7] are as follows: first, it is assumed that the number of the subcarriers and the power allocated to each user depend on its rate requirement and its average channel condition. Second, the amount of power assigned to each user is assumed to be proportional to the number of allocated subcarriers. The algorithm starts with resource allocation determining the number of subcarriers and the power to be allocated to each user followed by a second step of subcarrier assignment and bit loading. A Hungarian algorithm is used to solve the assignment problem while water flling is applied for power allocation.When the objective was to ensure fairness among the users, the subcarrier allocation introduced in [13] was shown to achieve close to optimal performance with very low complexity. With a slight change in this method, a very simple algorithm is obtained which could apply to a class of rate-adaptive optimization problem with minimum rate requirements.In this method, instead of prioritizing the user with the minimum achieved data rate (or proportional data rate in case of proportional-fairness), the user with the highest data rateto achieve  is giving priority to choose the next subcarrier. The method is illustrated below. Figure 2 shows two users with different required data rates denoted by Ri,min and Rj,min.Figure 2
Prioritizing the user with the highest data rate to achieve.The achieved data rates are denoted byRi and Rj respectively. In this method, the user that requires the highest data rate, that is, the jth user with (Rj,min-Rj) to achieve, is given priority to choose the next subcarrier although it is the user that already has achieved a higher data rate. Note that if the rate constraints are equal for all the users, that is, Ri,min=Rj,min=Rmin (complete fairness), then the user requiring the largest data rate k̂:(15)k̂=argmaxk(Rmin-Rk)=argminkRkwould become the user with the minimum achieved data rate, which is the max-min problem presented by Rhee and Cioffi [13].The proposed joint subcarrier and power allocation algorithm is described below. First, all the parameters are initialized. The second step consists ofN iterations. In each iteration, the user with the highest required data rate is given priority to choose its best available subcarrier. Assuming a flat transmit power over the entire bandwidth, each subcarrier adds an equal portion of the total power (Ptotal/N) to the user it has been assigned to. The current power of each user Pk is then allocated to its subcarriers by either water filling policy as in [16] or a greedy algorithm. After each iteration, the assigned subcarrier is excluded from the set of available subcarriers A, and the difference between the original required data rate and the achieved data rate becomes the new data rate constraint for each user.The procedure continues till all the subcarriers are assigned to the users or all the users achieve their rate requirements. In case there are unused subcarriers, they would be assigned to their best user in the system to further increase the total throughput (not shown above), or may be reserved for future use. By reallocating the power in each iteration, we ensure that each user has achieved its maximum data rate within its allocated power. Therefore, the goal of supporting the users' required rates is combined with the goal of maximizing the total throughput of the system. In the simulation results, the proposed algorithm is referred to as Algorithm2.Algorithm 2
(i) Step1: Initializationck,n=0,∀k,nRk=0,∀kA={1,2,…,N},U={1,2,…,K}.(ii) Step2: Subcarrier Allocationwhile (A≠∅orU≠∅):k=argmaxk∈U(Rk,min-Rk),n=argmaxn∈AHk,n,ck,n=1,A=A-{n},Rk(updated with water filling policy),ifRk≥Rk,minthenU=U-{k}.end


## 3.1. Proportional Rate Constraints

In this section, we propose a suboptimal algorithm with the objective of maximizing the total throughput of the system while rate proportionality is to be maintained among the users according to(7)R1:R2:⋯:RK=α1:α2:⋯:αK.{α1,α2,…,αK} is the set of predetermined proportional constraints where αk is a positive real number with αmin=1 for the user with the least required proportional rate.In [13], a flat transmit power of Ptotal/N is used for all the subcarriers in the system. In the process of subcarrier allocation, two goals take place alternatively: one is to maintain fairness among the users by giving priority to the user with the least achieved rate to choose the next subcarrier; the other is to increase the total data rate by allocating the best available subcarrier to that user. Authors in [16] modified the proposed algorithm in [13] by redistributing the power among each user's assigned subcarriers with water filling policy and updating the users' data rates with the new power allocation before assigning the next subcarrier. Authors in [14, 15] adopted a two-step approach: in the first step, the algorithm outlined in [13] is employed for subcarrier allocation. In the second step, the power is reallocated between the users and then among the subcarriers through the use of water filling to enforce the rate proportionality among the users. The authors in [12] proposed an auction algorithm where the gain difference between the best and the second best subchannel is used to prioritize the user to choose the next available subcarrier.


### 3.1.1. Algorithm1: User's Perspective

The first algorithm is proposed based on the sensitivity of the users to the subcarrier allocation and the sensitivity of the user is measured in terms of how frequency selective is the channel from the user's perspective. The proposed algorithm is based on prioritizing the critical (most sensitive) user in the system and equal power distribution is assumed across all subchannels. To describe the method, consider the variance of the subchannel gains for each user. A snapshot of the channel characteristics for a system with two users and eight subchannels is shown in Figure1.Figure 1
A snapshot of the channel with two users and eight subchannels.As shown in Figure1, the channel gains of user 1, have a small variance of 0.1073 while user 2 has subchannels with channel gains changing from 1.6989 to 4.1256 and the variance of 1.5617. This information is shown in Table 1. It is due to multiuser diversity that a subchannel is rarely in deep fade for all the users. As a result of frequency selectivity of the channel, different subchannels of the same user experience different levels of fade. However, how different they undergo fading could be measured by their channel gain variance as indicated in Table 1.Table 1
The channel characteristics of a two-user system shown in Figure1.
User numberUser 1User 2Variance0.10731.5617Min channel gain0.69290.9229Max channel gain1.69894.1256Considering subcarrieri and subcarrier j for the kth user, the change in data rate of the kth user due to assigning subcarrier i instead of subcarrier j, ΔRk(i,j) is given by
(8)ΔRk(i,j)=Rk(i)-Rk(j)=BN[log2(1+γk,i)-log2(1+γk,j)]=BNlog2(1+pk,i|Hk,i|21+pk,j|Hk,j|2),
where Rk(i) and Rk(j) are the kth user's achieved data rates on subcarriers i and j, respectively. Without loss of generality, we assume that Hk,i>Hk,j. The maximum change in the achieved rate of the kth user is then given by
(9)ΔRk,max=BNlog2(1+p(Hk,mean+sk)21+p(Hk,mean-sk)2),
where Hk,mean is the average channel-to-noise ratio for user k, sk is the kth user's channel gain standard deviation from the mean and a flat transmit power p is assumed on all the subcarriers. Now if sk is zero then ΔRk(i,j)=0 implying that it results in no difference in the kth user's data rate whether it chooses subcarrier i or subcarrier j. However, as sk increases, so does ΔRk(i,j) increasing the sensitivity of the user's data rate to the subcarrier allocation.In [13–16], the user with the least proportional data rate has the priority to choose the next subcarrier. In our proposed algorithm, priority is given to the critical user with the largest change over its channel gains to choose its best subcarrier. However, if a user has a large variance and this characteristic continues to hold, then this user ends up getting all the subchannels while the others get nothing. To solve this problem, it is assumed that the proportion of the subcarriers assigned to each user is approximately the same as the rate constraints as in (7). Hence
(10)N1:N2:⋯:NK=α1:α2:⋯:αK,Nk=⌊αkN∑k=1Kαk⌋,
where Nk is the number of subcarriers to be assigned to user k and αk is the kth user's proportional rate constraints.The proposed algorithm is described below. In the first step, all the variables are initialized.A and A* are the sets of available (unallocated) and allocated subcarriers respectively. N* is the sum of minimum number of subcarriers initially required by the users derived from (10) and U is the set of all users.In the second step, the sensitivity parameter,Vk, is calculated. Although the variance of the subchannel gains has been used to explain the method, it is not the best parameter to mathematically compare the sensitivity of the users to subcarrier allocation. Instead, the sensitivity is measured using the formula define in (12) as
(11)Vk=(∑n=1NHk,n)2N∑n=1NHk,n2.
This formula has been used both in deriving the simulation results and calculating the complexity.At each iteration, the critical user chooses its best subcarrier and the assigned subcarrier is eliminated from the set. Once userk gets the allotment of Nk subcarriers, that user can no longer be assigned more subchannels. The remaining subchannels are allocated in the final step. We can have different scenarios based on the flexibility in the objective of the algorithm and the number of unallocated subchannels.Scenario 1
If adherence to the proportionality constraints needs to be strictly enforced, then the user with the least achieved proportional data rate should be given priority to choose the best available subcarrier.Scenario 2
If a rough proportionality is acceptable, each user gets at most one subcarrier. In order to further increase the total rate, the user with the largest channel gain chooses the first share.In the simulation results, we refer to this algorithm as Algorithm1.Algorithm 1
(i) Initializationck,n=0,∀k,nRk=0,∀kA={1,2,…,N},A*=∅,N*=∑k=1KNkU={1,2,…,K}Sort all the subcarriers N for all the users K.(ii) Subcarrier Allocation(a) for m=1 to N*Vk=((∑n=1NHk,n)2/N∑n=1NHk,n2)∀n∈A/sensitivity parameter is calculated/updated for each user;k=argminVk,(ifNk>0)/the critical user is found;n=argmaxn∈AHk,n,/the best available subchannel is found and allocated;ck,n=1,Nk=Nk-1,A=A-{n}andA*=A*∪{n},/the subchannel is eliminated from the set;Rk=Rk+(B/N)log2(1+γk,n). /the rate is updated;(b) while A≠∅Scenario 1:k=argmin(Rk/αk),n=argmaxn∈AHk,n,ck,n=1,Nk=Nk+1,A=A-{n}andA*=A*∪{n},Rk=Rk+(B/N)log2(1+γk,n).Scenario 2:forn=1to(N-N*)k=argmaxk∈UHk,n,ck,n=1,Nk=Nk+1,Rk=Rk+(B/N)log2(1+γk,n),U=U-{k}.end


### 3.1.2. Fairness Index

The fairness index is defined as [19]
(12)F=(∑k=1Kαk)2K∑k=1Kαk2,
with the maximum value of 1 to be the fairest case in which all users would achieve the same data rate. Based on the above equation, we define a new parameter Fp to examine the performance of the algorithm in maintaining proportionality which is given by
(13)Fp=(∑k=1KRk/αk)2K∑k=1K(Rk/αk)2,
where Rk and αk are the achieved rate and the proportional rate constraint for the kth user respectively. Fp is a real number in the interval (0,1] with the maximum value of 1 for the case that the achieved rate proportions among the users are the same as the predetermined set {αk}k=1K.


## 3.1.1. Algorithm1: User's Perspective

The first algorithm is proposed based on the sensitivity of the users to the subcarrier allocation and the sensitivity of the user is measured in terms of how frequency selective is the channel from the user's perspective. The proposed algorithm is based on prioritizing the critical (most sensitive) user in the system and equal power distribution is assumed across all subchannels. To describe the method, consider the variance of the subchannel gains for each user. A snapshot of the channel characteristics for a system with two users and eight subchannels is shown in Figure1.Figure 1
A snapshot of the channel with two users and eight subchannels.As shown in Figure1, the channel gains of user 1, have a small variance of 0.1073 while user 2 has subchannels with channel gains changing from 1.6989 to 4.1256 and the variance of 1.5617. This information is shown in Table 1. It is due to multiuser diversity that a subchannel is rarely in deep fade for all the users. As a result of frequency selectivity of the channel, different subchannels of the same user experience different levels of fade. However, how different they undergo fading could be measured by their channel gain variance as indicated in Table 1.Table 1
The channel characteristics of a two-user system shown in Figure1.
User numberUser 1User 2Variance0.10731.5617Min channel gain0.69290.9229Max channel gain1.69894.1256Considering subcarrieri and subcarrier j for the kth user, the change in data rate of the kth user due to assigning subcarrier i instead of subcarrier j, ΔRk(i,j) is given by
(8)ΔRk(i,j)=Rk(i)-Rk(j)=BN[log2(1+γk,i)-log2(1+γk,j)]=BNlog2(1+pk,i|Hk,i|21+pk,j|Hk,j|2),
where Rk(i) and Rk(j) are the kth user's achieved data rates on subcarriers i and j, respectively. Without loss of generality, we assume that Hk,i>Hk,j. The maximum change in the achieved rate of the kth user is then given by
(9)ΔRk,max=BNlog2(1+p(Hk,mean+sk)21+p(Hk,mean-sk)2),
where Hk,mean is the average channel-to-noise ratio for user k, sk is the kth user's channel gain standard deviation from the mean and a flat transmit power p is assumed on all the subcarriers. Now if sk is zero then ΔRk(i,j)=0 implying that it results in no difference in the kth user's data rate whether it chooses subcarrier i or subcarrier j. However, as sk increases, so does ΔRk(i,j) increasing the sensitivity of the user's data rate to the subcarrier allocation.In [13–16], the user with the least proportional data rate has the priority to choose the next subcarrier. In our proposed algorithm, priority is given to the critical user with the largest change over its channel gains to choose its best subcarrier. However, if a user has a large variance and this characteristic continues to hold, then this user ends up getting all the subchannels while the others get nothing. To solve this problem, it is assumed that the proportion of the subcarriers assigned to each user is approximately the same as the rate constraints as in (7). Hence
(10)N1:N2:⋯:NK=α1:α2:⋯:αK,Nk=⌊αkN∑k=1Kαk⌋,
where Nk is the number of subcarriers to be assigned to user k and αk is the kth user's proportional rate constraints.The proposed algorithm is described below. In the first step, all the variables are initialized.A and A* are the sets of available (unallocated) and allocated subcarriers respectively. N* is the sum of minimum number of subcarriers initially required by the users derived from (10) and U is the set of all users.In the second step, the sensitivity parameter,Vk, is calculated. Although the variance of the subchannel gains has been used to explain the method, it is not the best parameter to mathematically compare the sensitivity of the users to subcarrier allocation. Instead, the sensitivity is measured using the formula define in (12) as
(11)Vk=(∑n=1NHk,n)2N∑n=1NHk,n2.
This formula has been used both in deriving the simulation results and calculating the complexity.At each iteration, the critical user chooses its best subcarrier and the assigned subcarrier is eliminated from the set. Once userk gets the allotment of Nk subcarriers, that user can no longer be assigned more subchannels. The remaining subchannels are allocated in the final step. We can have different scenarios based on the flexibility in the objective of the algorithm and the number of unallocated subchannels.Scenario 1
If adherence to the proportionality constraints needs to be strictly enforced, then the user with the least achieved proportional data rate should be given priority to choose the best available subcarrier.Scenario 2
If a rough proportionality is acceptable, each user gets at most one subcarrier. In order to further increase the total rate, the user with the largest channel gain chooses the first share.In the simulation results, we refer to this algorithm as Algorithm1.Algorithm 1
(i) Initializationck,n=0,∀k,nRk=0,∀kA={1,2,…,N},A*=∅,N*=∑k=1KNkU={1,2,…,K}Sort all the subcarriers N for all the users K.(ii) Subcarrier Allocation(a) for m=1 to N*Vk=((∑n=1NHk,n)2/N∑n=1NHk,n2)∀n∈A/sensitivity parameter is calculated/updated for each user;k=argminVk,(ifNk>0)/the critical user is found;n=argmaxn∈AHk,n,/the best available subchannel is found and allocated;ck,n=1,Nk=Nk-1,A=A-{n}andA*=A*∪{n},/the subchannel is eliminated from the set;Rk=Rk+(B/N)log2(1+γk,n). /the rate is updated;(b) while A≠∅Scenario 1:k=argmin(Rk/αk),n=argmaxn∈AHk,n,ck,n=1,Nk=Nk+1,A=A-{n}andA*=A*∪{n},Rk=Rk+(B/N)log2(1+γk,n).Scenario 2:forn=1to(N-N*)k=argmaxk∈UHk,n,ck,n=1,Nk=Nk+1,Rk=Rk+(B/N)log2(1+γk,n),U=U-{k}.end


## 3.1.2. Fairness Index

The fairness index is defined as [19]
(12)F=(∑k=1Kαk)2K∑k=1Kαk2,
with the maximum value of 1 to be the fairest case in which all users would achieve the same data rate. Based on the above equation, we define a new parameter Fp to examine the performance of the algorithm in maintaining proportionality which is given by
(13)Fp=(∑k=1KRk/αk)2K∑k=1K(Rk/αk)2,
where Rk and αk are the achieved rate and the proportional rate constraint for the kth user respectively. Fp is a real number in the interval (0,1] with the maximum value of 1 for the case that the achieved rate proportions among the users are the same as the predetermined set {αk}k=1K.


## 3.2. Fixed Rate Constraints

The optimization problem with fixed rate constraints is formulated the same as in (6). The only difference is in C5 which indicates that the achieved data rate for each user Rk should be equal or larger than its minimum required data rate denoted by Rk,min. Hence
(14)Rk≥Rk,min∀k.This problem was addressed by Yin and Liu [7]. The assumptions in the algorithm proposed in [7] are as follows: first, it is assumed that the number of the subcarriers and the power allocated to each user depend on its rate requirement and its average channel condition. Second, the amount of power assigned to each user is assumed to be proportional to the number of allocated subcarriers. The algorithm starts with resource allocation determining the number of subcarriers and the power to be allocated to each user followed by a second step of subcarrier assignment and bit loading. A Hungarian algorithm is used to solve the assignment problem while water flling is applied for power allocation.When the objective was to ensure fairness among the users, the subcarrier allocation introduced in [13] was shown to achieve close to optimal performance with very low complexity. With a slight change in this method, a very simple algorithm is obtained which could apply to a class of rate-adaptive optimization problem with minimum rate requirements.In this method, instead of prioritizing the user with the minimum achieved data rate (or proportional data rate in case of proportional-fairness), the user with the highest data rateto achieve  is giving priority to choose the next subcarrier. The method is illustrated below. Figure 2 shows two users with different required data rates denoted by Ri,min and Rj,min.Figure 2
Prioritizing the user with the highest data rate to achieve.The achieved data rates are denoted byRi and Rj respectively. In this method, the user that requires the highest data rate, that is, the jth user with (Rj,min-Rj) to achieve, is given priority to choose the next subcarrier although it is the user that already has achieved a higher data rate. Note that if the rate constraints are equal for all the users, that is, Ri,min=Rj,min=Rmin (complete fairness), then the user requiring the largest data rate k̂:(15)k̂=argmaxk(Rmin-Rk)=argminkRkwould become the user with the minimum achieved data rate, which is the max-min problem presented by Rhee and Cioffi [13].The proposed joint subcarrier and power allocation algorithm is described below. First, all the parameters are initialized. The second step consists ofN iterations. In each iteration, the user with the highest required data rate is given priority to choose its best available subcarrier. Assuming a flat transmit power over the entire bandwidth, each subcarrier adds an equal portion of the total power (Ptotal/N) to the user it has been assigned to. The current power of each user Pk is then allocated to its subcarriers by either water filling policy as in [16] or a greedy algorithm. After each iteration, the assigned subcarrier is excluded from the set of available subcarriers A, and the difference between the original required data rate and the achieved data rate becomes the new data rate constraint for each user.The procedure continues till all the subcarriers are assigned to the users or all the users achieve their rate requirements. In case there are unused subcarriers, they would be assigned to their best user in the system to further increase the total throughput (not shown above), or may be reserved for future use. By reallocating the power in each iteration, we ensure that each user has achieved its maximum data rate within its allocated power. Therefore, the goal of supporting the users' required rates is combined with the goal of maximizing the total throughput of the system. In the simulation results, the proposed algorithm is referred to as Algorithm2.Algorithm 2
(i) Step1: Initializationck,n=0,∀k,nRk=0,∀kA={1,2,…,N},U={1,2,…,K}.(ii) Step2: Subcarrier Allocationwhile (A≠∅orU≠∅):k=argmaxk∈U(Rk,min-Rk),n=argmaxn∈AHk,n,ck,n=1,A=A-{n},Rk(updated with water filling policy),ifRk≥Rk,minthenU=U-{k}.end


## 4. Simulation Results

In this section, the performance of the proposed algorithms is compared with the suboptimal existing solutions in terms of total data rate and fairness.In  Section4.2, the performance of Algorithm 1 is compared with the algorithms proposed in [13, 14]. The reason for this comparison is as follows. Shen et al. [14] formulated the problem of maximizing the throughput with proportional rate constraints and derived the optimal power distribution for any given subcarrier allocation. They showed that by combining their method with the subcarrier allocation proposed in [13], their proposed algorithm would achieve 95% of the optimal performance in a two-user system. Therefore, it is assumed that the algorithm proposed in [14] performs almost close to optimum while giving the option of changing the proportional constraints in the system. Hence, the algorithm in [14] has been used for comparison with optimal performance but more computational complexity while [13] represents a low complexity suboptimal solution.Also, if the algorithm proposed in [14] is run for a chosen set of (predefined) proportional constraints, the achieved data rates are close to the highest achievable rates for that channel realization. These data rates are then used as the minimum rate requirements of the system for that channel realization to evaluate the performance of Algorithm 2 in Section 4.3.


### 4.1. Simulation Parameters

The wireless channel is modeled consisting of six independent Rayleigh fading multipaths with exponential power profile. The Clarke's model [20] characterizes each flat fading multipath. Normalized values of 1 W and 1 MHz are chosen for the total power and the bandwidth respectively to simplify the comparison. There are N=64 subcarriers in the system and perfect knowledge of subchannel gains is assumed. After each channel realization, different resource allocation algorithms were run using the same subchannel gains. A total of 1000 different channel realizations were used and the results were averaged.


### 4.2. Suboptimal Algorithm for Proportional Rate Constraints

The performance of Algorithm1 is presented in two parts. In the first part, the comparison is made with different rate proportionality among the users. In the second part, the rate constraints are set to be equal.(1) Nonequal Proportional Constraints
Figure3 shows the achieved spectral efficiency in Algorithm 1 and the method proposed in [14] for average SNR ranging from 10–40 dB. K=16 and the proportional constraints are randomly chosen from the set {1,2,4} for each channel realization. The average SNR is defined as Ptotal/N0B.Figure 3
Spectral efficiency versus average SNR forN=64 subcarriers, K=16 users, and BER=10-3.It can be seen that the proposed algorithm has achieved slightly higher total data rate. This advantage is due to relaxation of the proportionality constraints which were enforced in [14] through the reallocation of the power among the users and subcarriers.The comparison in terms of rate proportionality is shown in Figure4. The leftmost bars are the normalized constraints {ϕk}k=1K, where ϕk=αk/∑k=1Kαk. The same normalization is used for achieved data rates. It is shown that the method in [14] has better performance since it applies a second step of adaptive power allocation to enforce the proportionality among the users.Figure 4
Normalized capacity ratios per user forSNR=30 dB, K=16, and BER=10-3.To better examine the proportional fairness of these algorithms for different number of users, their performance is shown in Figure5 in terms of Fp using (13). It is shown that 0.999<Fp<1 for the proposed algorithm whereas Fp=1 for the method in [14].Figure 5
Fairness versus number of usersK=2~16, for SNR=30 dB and N=64.One of the aspects of proportional data rate resource allocation algorithms that should be investigated is how to determine the proportional constraints in a practical system [21]. Since these constraints specify users' service priorities, one simple example is to let users choose their constraints from a set of predetermined discrete values (as done in the simulations) according to their service requirements [21]. However, in this paper, the goal is to maximize the total throughput of the system given the proportional constraints and the total transmit power.(2) Equal Proportional Constraints
In this part,αk=1∀k, enforcing all the users to get the same amount of data rate. Figure 6 shows the comparison of the minimum user's capacity for K=2~16 users. User's average data rate for different number of users is also shown in Figure 7. It is seen that both minimum user's data rate and user's average data rate in the proposed algorithm are higher than those of the other two methods for different number of users which shows higher achieved overall capacity by increasing each user's achieved data rate.Figure 6
Minimum user's capacity versus number of users forN=64 subcarriers and BER=10-3.Figure 7
User's average capacity versus number of users. There areN=64 subcarriers and BER=10-3.The complexity of Algorithm1 is calculated according to the code given in Section 3.1.1. The first step,“Initialization’’, requires K multiplications and thus has a complexity of O(K). Then, N subchannels are sorted for K users with a complexity of O(KNlog2N). In the second step, part (a), ∑n=1NHk,n and ∑n=1NHk,n2 are calculated for K users, hence O(KN). Search for the user with the minimum Vk has a complexity of O(K) and the chosen user is assigned its best subchannel which has been sorted before. Once a subchannel is assigned, two subtractions, a multiplication and a division are required for K users to update Vk followed by a search for the critical user. In the worst case N*=N, hence the complexity of the second step is O(NK). Therefore, the overall complexity is O(KNlog2N).The complexity of the algorithm proposed in [14] has been described in [15] in detail. This algorithm has a stage of subcarrier allocation with a complexity of O(KNlog2N) followed by a second stage of power allocation, which requires an iterative method to solve K nonlinear variables followed by the water filling to be performed K times. The complexity of each iteration has been shown to be O(K) [14]. Furthermore, the existence of the power allocation scheme for each user should be checked [14, Figure  2] before performing water flling algorithm for each user. The algorithm proposed in [13] only consists of the step of subcarrier allocation with a complexity of O(KNlog2N).Compared to [14], Algorithm 1 does not have the computational complexity of the second stage of power allocation, which primarily comes from choosing the update direction in the iterative method. It also has better performance compared to [13] with the same complexity.


### 4.3. Suboptimal Algorithm with Fixed Rate Constraints

The performance of Algorithm2 is examined as follows: in each channel realization, the algorithm proposed in [14] is run for a desired set of proportional rate constraints. The achieved data rates are then adopted as the fixed rate requirements for Algorithm 2.In Figure8, the left bars are the rate constraints derived by running Shen's algorithm whereas the right bars are the achieved rates by Algorithm 2. It is seen that all the users have achieved their minimum rate requirements.Figure 8
Capacity per user forSNR=30 dB, K=16, and BER=10-3.In the proposed algorithm,N subchannels are sorted for K users hence, a complexity of O(KNlog2N). In the worst case, the allocation process repeats N times where each time, the search for a user is performed with the complexity of O(K). Also, at each iteration, water filling algorithm should be performed for the chosen user. The water filling algorithm is performed at least (N-K) times (when at least one subchannel is assigned to each user) and at most N times (when all the subchannels have been assigned to only one user).


## 4.1. Simulation Parameters

The wireless channel is modeled consisting of six independent Rayleigh fading multipaths with exponential power profile. The Clarke's model [20] characterizes each flat fading multipath. Normalized values of 1 W and 1 MHz are chosen for the total power and the bandwidth respectively to simplify the comparison. There are N=64 subcarriers in the system and perfect knowledge of subchannel gains is assumed. After each channel realization, different resource allocation algorithms were run using the same subchannel gains. A total of 1000 different channel realizations were used and the results were averaged.


## 4.2. Suboptimal Algorithm for Proportional Rate Constraints

The performance of Algorithm1 is presented in two parts. In the first part, the comparison is made with different rate proportionality among the users. In the second part, the rate constraints are set to be equal.(1) Nonequal Proportional Constraints
Figure3 shows the achieved spectral efficiency in Algorithm 1 and the method proposed in [14] for average SNR ranging from 10–40 dB. K=16 and the proportional constraints are randomly chosen from the set {1,2,4} for each channel realization. The average SNR is defined as Ptotal/N0B.Figure 3
Spectral efficiency versus average SNR forN=64 subcarriers, K=16 users, and BER=10-3.It can be seen that the proposed algorithm has achieved slightly higher total data rate. This advantage is due to relaxation of the proportionality constraints which were enforced in [14] through the reallocation of the power among the users and subcarriers.The comparison in terms of rate proportionality is shown in Figure4. The leftmost bars are the normalized constraints {ϕk}k=1K, where ϕk=αk/∑k=1Kαk. The same normalization is used for achieved data rates. It is shown that the method in [14] has better performance since it applies a second step of adaptive power allocation to enforce the proportionality among the users.Figure 4
Normalized capacity ratios per user forSNR=30 dB, K=16, and BER=10-3.To better examine the proportional fairness of these algorithms for different number of users, their performance is shown in Figure5 in terms of Fp using (13). It is shown that 0.999<Fp<1 for the proposed algorithm whereas Fp=1 for the method in [14].Figure 5
Fairness versus number of usersK=2~16, for SNR=30 dB and N=64.One of the aspects of proportional data rate resource allocation algorithms that should be investigated is how to determine the proportional constraints in a practical system [21]. Since these constraints specify users' service priorities, one simple example is to let users choose their constraints from a set of predetermined discrete values (as done in the simulations) according to their service requirements [21]. However, in this paper, the goal is to maximize the total throughput of the system given the proportional constraints and the total transmit power.(2) Equal Proportional Constraints
In this part,αk=1∀k, enforcing all the users to get the same amount of data rate. Figure 6 shows the comparison of the minimum user's capacity for K=2~16 users. User's average data rate for different number of users is also shown in Figure 7. It is seen that both minimum user's data rate and user's average data rate in the proposed algorithm are higher than those of the other two methods for different number of users which shows higher achieved overall capacity by increasing each user's achieved data rate.Figure 6
Minimum user's capacity versus number of users forN=64 subcarriers and BER=10-3.Figure 7
User's average capacity versus number of users. There areN=64 subcarriers and BER=10-3.The complexity of Algorithm1 is calculated according to the code given in Section 3.1.1. The first step,“Initialization’’, requires K multiplications and thus has a complexity of O(K). Then, N subchannels are sorted for K users with a complexity of O(KNlog2N). In the second step, part (a), ∑n=1NHk,n and ∑n=1NHk,n2 are calculated for K users, hence O(KN). Search for the user with the minimum Vk has a complexity of O(K) and the chosen user is assigned its best subchannel which has been sorted before. Once a subchannel is assigned, two subtractions, a multiplication and a division are required for K users to update Vk followed by a search for the critical user. In the worst case N*=N, hence the complexity of the second step is O(NK). Therefore, the overall complexity is O(KNlog2N).The complexity of the algorithm proposed in [14] has been described in [15] in detail. This algorithm has a stage of subcarrier allocation with a complexity of O(KNlog2N) followed by a second stage of power allocation, which requires an iterative method to solve K nonlinear variables followed by the water filling to be performed K times. The complexity of each iteration has been shown to be O(K) [14]. Furthermore, the existence of the power allocation scheme for each user should be checked [14, Figure  2] before performing water flling algorithm for each user. The algorithm proposed in [13] only consists of the step of subcarrier allocation with a complexity of O(KNlog2N).Compared to [14], Algorithm 1 does not have the computational complexity of the second stage of power allocation, which primarily comes from choosing the update direction in the iterative method. It also has better performance compared to [13] with the same complexity.


## 4.3. Suboptimal Algorithm with Fixed Rate Constraints

The performance of Algorithm2 is examined as follows: in each channel realization, the algorithm proposed in [14] is run for a desired set of proportional rate constraints. The achieved data rates are then adopted as the fixed rate requirements for Algorithm 2.In Figure8, the left bars are the rate constraints derived by running Shen's algorithm whereas the right bars are the achieved rates by Algorithm 2. It is seen that all the users have achieved their minimum rate requirements.Figure 8
Capacity per user forSNR=30 dB, K=16, and BER=10-3.In the proposed algorithm,N subchannels are sorted for K users hence, a complexity of O(KNlog2N). In the worst case, the allocation process repeats N times where each time, the search for a user is performed with the complexity of O(K). Also, at each iteration, water filling algorithm should be performed for the chosen user. The water filling algorithm is performed at least (N-K) times (when at least one subchannel is assigned to each user) and at most N times (when all the subchannels have been assigned to only one user).


## 5. Summary and Conclusions

In this paper, the problem of rate adaptive resource allocation is formulated with fixed and proportional rate constraints. Two suboptimal resource allocation algorithms are proposed and a flat transmit power is assumed on all the subcarrier in the system to lower the computational complexity.In Section3, we proposed a low complexity subcarrier allocation algorithm to maximize the total throughput while maintaining rate proportionality among the users. This algorithm, referred to as Algorithm 1, is based on prioritizing the critical users in the system with the highest variation of channel gains. The simulation results show improved performance in terms of total data rate with acceptable rate proportionality. This algorithm has better performance in a system where some users experience large variation of subchannel gains compared to others as shown in Table 1. If the users have almost the same variance among subchannel gains and this characteristic continues to hold throughout the allocation process, the algorithm reduces to one where each user (with no specific order) is assigned certain number of subcarriers proportional to its rate constraint degrading the performance.The second algorithm attempts to maximize the total data rate while supporting the users with their minimum rate requirements. In the proposed algorithm, referred to as Algorithm2, the subcarrier and the power allocation are carried out jointly without a separate stage of power allocation.



---

*Source: 891367-2009-08-18.xml*