Resource Allocation Algorithms for OFDMA Downlink

10 downloads 0 Views 407KB Size Report
brief overview of OFDMA, followed by section III's motivation and statement of ... The problem statements below are adapted from the systems described in [1], [2] ...
Resource Allocation Algorithms for OFDMA Downlink Eric Lai EE359 Research Project Report under direction of Professor Andrea Goldsmith Autumn Quarter 2009, Stanford University

I. Introduction and Motivation Orthogonal Frequency Division Multiple Access (OFDMA) is a technology that has become increasingly important to wireless systems over the past decade. It is, in fact, considered one of the two “cornerstone technologies of next generation wireless networks”, with Multiple-Input Multiple-Output (MIMO) systems being the other [7]. OFDMA is an expansion upon the basic principles of the single-user Orthogonal Frequency Division Multiplexing (OFDM) technology, and is designed to accommodate wideband multi-user systems. This technique yields advantages including – but not limited to – small inter-symbol interference (ISI), potential for highly-efficient resource use, and greater capacity than older Time Domain Multiple Access (TDMA) and Code Division Multiple Access (CDMA) technologies [5]. The key trade-off, however, is much higher complexity in OFDMA systems; multi-user systems using this technology must now dynamically manage the sharing of bandwidth and power resources among many users who each have distinct sets of requirements. Thanks to much research invested in this area, a number of resource allocation algorithms have been constructed to manage this complexity, enabling OFDMA to become the basis for some of the fourth-generation (4G) wireless systems in development. This report surveys four such algorithms from this area of research. First, section II provides a brief overview of OFDMA, followed by section III’s motivation and statement of the resource allocation problems, with a brief discussion of the various approaches. Section IV delves into the algorithms by Kivanc et al. [1], Wong et al. [2], Ergen et al. [3], and Seong et al. [4], restating and re-notating them in a standard format as best as possible so that there is a basis for comparison. Section IV includes discussion of these algorithms and their computational efficiency, an important factor for real-time applications. Section V takes a look back and continues section III’s discussion of the various approaches, comparing and contrasting system assumptions. Finally, section VI wraps up the report, and section VII notes some areas for further study.

II. OFDMA Overview OFDMA technology takes an available wideband channel and divides it in the frequency domain into multiple narrower channels, each with its own subcarrier (hence the oft-used phrase “multicarrier modulation” in conjunction with OFDM technologies). This frequency division is assumed to be fine enough such that these subchannels experience only flat (narrowband) fading. Users in an OFDMA system are each assigned distinct and non-overlapping subsets of the subcarriers, and communicate with the base station over their dedicated set of subchannels. The complexity arises in the allocation of subcarriers to users. Firstly, users in an OFDMA system will generally experience different fading environments, and thus the signal-to-noise ratio (SNR) and received power variations seen by one user will differ from that seen by another. Secondly, different users have different Quality of Service (QoS) requirements, dictating the SNRs and received powers required at their receivers. Thirdly, there may either be total power constraints or requirements to minimize consumed power. Lastly, wireless channels are subject to constant change in real life, so

FINAL 2009/12/04

resource allocation techniques must be fast enough to keep up with changing user environments if realtime applications are to be feasible. Now, in any multi-user system, there is a distinction between the uplink and the downlink. The former describes user-to-base-station communications, whereas the latter describes base-station-to-user communications. As described by Goldsmith in Ch. 14 of [8], these two cases are different due to “fundamental differences between these channel models”. As a result, resource allocation algorithms – particularly those for power – will be different for these two cases. This report will focus on papers describing the downlink allocation algorithms for subcarriers. Power allocation algorithms will not be presented unless inseparable from the subcarrier allocation algorithms, but even then, the report will focus only on analysis of the subcarrier allocations. (The reason for this is analysis of both subcarrier and power allocation may prove to be a large enough task for multiple reports.)

III. Problem Statements The problem statements below are adapted from the systems described in [1], [2], [3], and [4]. The notation developed here is somewhat different than those used in the papers, since the aim here is to standardize terminology so that comparisons can be drawn. In section III.A., the problems of interest are motivated and developed, with discussion of the different approaches in papers [1]~[4]. As is done in [6] and [7], a clear listing of the notation used in the rest of the report is provided, placed in Appendix A. In section III.B., the optimization problems described in this section are formally stated in mathematical terms.

III.A. Problem Development Consider an OFDMA system with a single base station and 𝐾 users. Each user has a different QoS requirement, described by different required rates of communication, denoted 𝑅𝑘0 for the 𝑘 th user. The total bandwidth available is 𝐵, and this is divided into 𝑁 subcarriers and corresponding subchannels, such that users experience flat fading on these subchannels. It is assumed that the transmitter at the base station has channel state information (CSI) fed back from all receivers in the system, so that it is able to allocate resources accordingly. All four algorithms to be examined below are constructed to determine an optimal allocation of subcarriers to users, in which each subcarrier is used by exactly one user. In terms of notation, let 𝐼𝑘 (𝑛) ∈ 0,1 be an indicator variable of whether the 𝑘th user is assigned the 𝑛th carrier (with 1 indicating assignment). Alternatively, the assignment of subcarriers to users can be described in terms of sets: let 𝑆𝑘 denote the set of subcarriers assigned to user 𝑘. Both of these ways of denoting subcarrieruser assignment are presented here because the algorithms in papers [2] and [3] use the former while the algorithms in papers [1] and [4] use the latter. Changing one form of notation to the other would be inconsequential in furthering and/or simplifying the analysis, but would actually hamper statement of the respective algorithms in the next section. For completeness, the two forms of notation are related as follows: 𝑆𝑘 = 𝑛 𝐼𝑘 (𝑛) = 1 . Beyond this general statement of the problem, the four papers diverge in their approaches – indeed, in their very definitions of the objective of “optimal allocations”. In the first paper, the optimization objective is perhaps the most straightforward out of the four: to allocate the subcarriers to users such that user data rates are met while minimizing total power [1]. The second paper imposes not only a rate-based constraint, but applies a power constraint as well: its objective is to maximize the total system data rate subject to a total power limit, with the additional constraint of maintaining a required proportionality between the users’ data rates [2]. Note that in this case, users do not have absolute rate requirements, but only relative rate requirements. The third paper, however, approaches the problem by

FINAL 2009/12/04

setting absolute constraints for both users’ rates and the total power, with total power being the primary optimization objective while making a seeming best effort to satisfy user rate requirements [3]. This approach intuitively seems to be potentially infeasible, since rate and power are key tradeoffs in wireless system design, and constraining both may lead to non-existence of solutions. Further discussion of this will be postponed to later sections of this report, but it will be seen that solutions are “best-effort” in meeting requirements. Finally, the fourth paper presents two different problems: the weighted sum rate maximization and the weighted sum power minimization problems [4]. Only the latter accounts for user rate requirements, and so it will be the focus of this report. The approach taken in this treatment is similar to that in paper [1], except it minimizes a weighted sum of the users’ power allocations – allowing for further optimization beyond equal power weighting for all users – while seeking to meet user rate requirements [4]. Now, a last main difference to note between the papers is in their description of transmission power requirements. Papers [1] and [3] stipulate only required received powers by users, and lump factors such as modulation schemes and desired bit error rates (BERs) into a placeholder function – denoted 𝑓𝑝 (∙) here – that calculates the required received power. As for the channel, these two papers only consider the power gains, denoted here as 𝐻𝑘 (𝑛) 2 , the power gain experienced by the 𝑘th user on the 𝑛th subchannel; neither of these papers directly addresses the impact of noise and SNR on subcarrier allocation. Papers [2] and [4], on the other hand, assume additive white Gaussian noise (AWGN) on each subchannel with noise power 𝜎𝑘2 (𝑛), the only difference being that paper [2] considers this power to be constant for all 𝑘 and 𝑛. For notational simplicity, these two papers combine the power gains and noise power into a single term, denoted here as 𝛼𝑘 𝑛 = 𝐻𝑘 𝑛 2 /𝜎𝑘2 (𝑛), such that the received SNR by user 𝑘 on subchannel 𝑛 is given by 𝑝𝑘 (𝑛) ⋅ 𝛼𝑘 (𝑛), where 𝑝𝑘 (𝑛) is the transmission power to user 𝑘 on subchannel 𝑛 . As for modulation schemes and BERs, paper [2] assumes M-level QAM and uses the BER relation for MQAM to relate rate and power [2]. Paper [4], however, does not use these factors in deriving a solution to the optimization problem. The significance of these different considerations of received power and noise will be examined in section V below.

III.B. Formal Problem Statements As stated beforehand, the general problem being solved is the same for papers [1]~[4], but the specific assumptions, optimization constraints, and goals are different for each. Provided here is a mathematical presentation of the problems being solved by the papers’ algorithms. Note that in all of the papers except for paper [4], the shared system constraints are, with adapted notation from [2], [3]: 𝑝𝑘 𝑛 ≥ 0, for all 𝑘, 𝑛 𝐼𝑘 𝑛 ∈ {0,1} 𝐾−1 𝑘=0 𝐼𝑘 (𝑛) = 1, for all 𝑛. The first constraint is the usual physical requirement that transmitted power cannot be negative. The second constraint states that a subcarrier is either not assigned or completely assigned to a user. The last constraint requires that each subcarrier be assigned to one user (i.e. all subcarriers should be used). Paper [1]: Optimization goal:

𝑁−1 𝐾−1

min

𝑟 𝑘 (𝑛)

Subject to constraints:

𝑝𝑘 (𝑛) 𝑛 =0 𝑘=0

𝑁−1

𝑟𝑘 (𝑛) ≥ 𝑅𝑘0 , for all 𝑘 𝑛=0

FINAL 2009/12/04

𝐾−1

(1 − 𝛿[𝑟𝑘 (𝑛)]) ≤ 1, for all 𝑛 𝑘=0

Where: 𝑝𝑘 (𝑛) =

𝑓 𝑟𝑘 𝑛 𝐻𝑘 (𝑛)

2

[1]. This is a fairly uncomplicated problem statement; the goal is to minimize total transmitted power to the users while maintaining their minimum data rate requirements. The second constraint requires that whatever the transmission rate 𝑟𝑘 𝑛 is for the 𝑘 th user on the 𝑛 th subchannel, the corresponding transmission power 𝑝𝑘 𝑛 sent to the user must be such that the received power is sufficient to satisfy the BER requirement of the current modulation scheme for that transmission rate. The last constraint ensures that each carrier is used by at most one user. This last constraint is stated somewhat differently from the paper, in an attempt to correct an apparent typo there. The 𝛿[∙] is the Kronecker delta function [1], taking on a value of 1 when its argument is 0, and taking on value 0 elsewhere. Note that this constraint is simply a combination of the second and third shared system constraints stated beforehand. Paper [2]: Assumption: Square MQAM with Gray bit mapping such that rate capacity per unit bandwidth is 𝑟𝑘 𝑛 = log 2 ⁡ (1 + 𝑝𝑘 (𝑛) ⋅ 𝛼𝑘 (𝑛)), where 𝛼𝑘 𝑛 = 𝛼𝑘 (𝑛)/Γ, with Γ = − ln 5 ⋅ BER /1.6 being an SNR gap due to required BER for MQAM [2]. Optimization goal: max

𝐼𝑘 𝑛 ,𝑝 𝑘 𝑛

Subject to constraints:

𝐵 𝑁

𝐾−1 𝑁−1

𝐼𝑘 𝑛 ⋅ log 2 (1 + 𝑝𝑘 (𝑛) ⋅ 𝛼𝑘 (𝑛)) 𝑘=0 𝑛 =0

𝐾−1 𝑁−1

𝐼𝑘 (𝑛) ⋅ 𝑝𝑘 (𝑛) ≤ 𝑃𝑡𝑜𝑡 𝑘=0 𝑛=0

𝑅𝑖 ∶ 𝑅𝑗 = 𝜙𝑖 ∶ 𝜙𝑗 , for all 𝑖, 𝑗 ∈ 0, … , 𝐾 − 1 , 𝑖 ≠ 𝑗 Where: 𝐵 𝑅𝑘 = 𝑁

𝑁−1

𝐼𝑘 (𝑛) ⋅ 𝑟𝑘 (𝑛) 𝑛=0

𝐾−1

𝜙𝑘 = 1 𝑘=0

[2]. In this problem statement, the optimization goal is to maximize the total rate of the system, subject to a total power limit 𝑃𝑡𝑜𝑡 , and to a set proportionality between users’ rates. Here, 𝑅𝑘 is the total rate assigned to the 𝑘th user, and 𝜙𝑘 is the normalized proportionality constant of the 𝑘th user. Again, note

FINAL 2009/12/04

that instead of meeting absolute user rate requirements (𝑅𝑘0 ), paper [2] seeks to meet relative user rate requirements. Paper [3]: In this report, the problem statement and algorithms from paper [3] are given as best-effort reconstructions. This is because paper [3] contains a number of self-inconsistencies with regard to notation and development, making it difficult to deduce the authors’ true meanings. As an immediately relevant example to this section of the report: in the problem statement given in equation (6) of paper [3], there is no consideration of users’ rate requirements 𝑅𝑘 even though the paper had just mentioned meeting these constraints (“…data rate of every user should be equal to the requirement 𝑅𝑘 ” [3]). Not only this, equation (6) of the paper treats the variable 𝑅𝑘 as rather the quantity to be maximized in the optimization problem (“We can formulate the resource allocation problem with an imposed power constraint as \\ max𝑐 𝑘,𝑛 ,𝛾 𝑘,𝑛 𝑅𝑘 …” [3]). Then finally, in the presented algorithm for solving this very optimization problem, the variable 𝑅𝑘 again becomes representative of a set rate requirement. Nonetheless, provided here is a best-effort reconstruction of paper [3]’s problem statement based partly on the problem presented in the paper, partly on the text of the paper, and partly on its presented algorithm (the interpretation of which was also subject to notational and logical difficulty – this will be discussed in section IV). Optimization goal: min

𝑚 𝑘 (𝑛),𝐼𝑘 (𝑛)

Subject to constraint:

𝑅𝑘0 − 𝑅𝑘 , for all 𝑘

𝐾−1 𝑁−1

𝑝𝑘 (𝑛) ⋅ 𝐼𝑘 (𝑛) ≤ 𝑃𝑡𝑜𝑡 𝑘=0 𝑛=0

Where:

𝑁−1

𝑅𝑘 =

𝑚𝑘 (𝑛) ⋅ 𝐼𝑘 (𝑛) 𝑛=0

𝑝𝑘 𝑛 =

𝑓𝑘 (𝑚𝑘 𝑛 , 𝐵𝐸𝑅𝑘 ) 𝐻𝑘 (𝑛) 2

𝑚𝑘 𝑛 is the transmitted bits per symbol for the 𝑘th user over the 𝑛th subchannel [3]. The primary difference between this reconstruction of the problem and that provided in the paper is in the optimization goal. Whereas the paper’s version omits 𝑅𝑘0 entirely, the version here acknowledges that while it may not be possible to fully satisfy users’ data rate requirements (due to presence of the total power restriction), it is still possible to try to meet the requirements as much as possible. This seems to more or less accurately reflect the approach taken by the algorithm in the paper. One point to note is that in paper [3], the rate requirement for users is not in units of bits per second, but rather in units of bits per symbol. However, this difference of units is inconsequential to the analysis in this report. Indeed, 𝑚𝑘 (𝑛) is entirely analogous to 𝑟𝑘 (𝑛) from before aside from the units. For comparison, the expression involving 𝑓𝑘 (∙) – the function calculating required received power – immediately above is equivalent to the expression involving 𝑓(∙) for paper [1].

FINAL 2009/12/04

Paper [4]: Assumption: Rate for 𝑘th user on 𝑛th subcarrier related to corresponding power by: 1 𝑟𝑘 𝑛 = 2 log 2 (1 + 𝛼𝑘 (𝑛) ⋅ 𝑝𝑘 (𝑛)). Optimization goal: 𝐾−1

min

𝜆𝑘 ⋅

𝑝 𝑘 (𝑛)

𝑘=0

𝑝𝑘 (𝑛) 𝑛∈𝑆𝑘

Subject to constraints: 𝑟𝑘 (𝑛) ≥ 𝑅𝑘0 , for all 𝑘 𝑛∈𝑆𝑘

𝑝𝑘 𝑛 ≥ 0, for all 𝑘, 𝑛 𝑆𝑖 ∩ 𝑆𝑗 = ∅, for 𝑖 ≠ 𝑗 𝐾−1

𝑆𝑘 ⊆ {0, … , 𝑁 − 1} 𝑘=0

Where:

𝜆𝑘 ’s are constant weights with 𝜆𝑘 ≥ 0 for all 𝑘

[4]. This optimization problem is straightforward: a weighted sum of the transmitted powers is to be minimized, while meeting users’ rate requirements. The last three constraints are almost exactly the same as the shared constraints for papers [1]~[3] stated before, except not all subcarriers are required to be assigned to a user (this is seen from the last constraint here). One implicit point to note is that a subcarrier is assigned to a user if and only if the power allocated for that user on that subcarrier is non-zero. That is, 𝑛 ∈ 𝑆𝑘 ⟺ 𝑝𝑘 𝑛 > 0. To unify this set notation with the indicator variable from before, the above statements are also equivalent to 𝐼𝑘 𝑛 = 1.

IV. Algorithms and Discussion With the optimization problems now stated and general notation documented, this section presents and discusses the algorithms given in papers [1]~[4]. Again, unless otherwise noted, the solutions provided here will be notationally and structurally different from those given in the papers, but their content will remain the same. This is done to standardize the presentation in this report and to ease the subsequent discussion. The motivation behind each solution will be described, with key assumptions and features highlighted. However, full derivations will not be provided in this report, and interested readers are referred to the original papers for further information (though the papers themselves often do not give full derivations either). Paper [1]:

FINAL 2009/12/04

In the first paper, the full optimization problem is argued to be “computationally intractable” because of its degrees of freedom and discrete nature, lending itself to “computationally intensive” methods of solution if attempted directly [1]. Thus, the problem is separated into two stages – a method that the paper admits is “good, but not necessarily optimal”, but which still can “achieve comparable performance” to more intensive methods [1]. The first stage of solution determines the number of subcarriers to be assigned to each user, denoted 𝑁𝑘 for the 𝑘th user. Then, with this set of {𝑁𝑘 }, the second stage determines the actual allocation of subcarriers to users. Central to this solution, however, is an important simplifying assumption of the paper: any given user experiences constant channel gain across all subcarriers, where this constant gain is the average of the actual subcarrier gains for that user. In mathematical form, this assumption is: 𝑁−1 2 𝑛=0 𝐻𝑘 (𝑛) 𝐻𝑘2 = , 𝑁 where 𝐻𝑘2 is the assumed channel power gain for the 𝑘th user on all subcarriers. With this assumption, the optimization problem can be rewritten as follows for the first stage: Optimization goal:

𝐾−1

min 𝑁𝑘

Subject to constraints:

𝑁𝑘 ⋅ 𝑘=0

𝑓 𝑅𝑘0 𝑁𝑘 𝐻𝑘2

𝐾−1

𝑁𝑘 = 𝑁 𝑘=0

𝑁𝑘 ∈ Where:

𝑅𝑘0 , … , 𝑁 , for all 𝑘 𝑅𝑚𝑎𝑥

𝑅𝑚𝑎𝑥 is the maximum rate possible for any subcarrier

[1]. This problem formulation is a direct consequence of the above simplifying assumption; the optimization goal is still power minimization, except now it is assumed all 𝑁𝑘 subcarriers of the 𝑘th user carry the same data rates and thus require the same transmitted power. The first constraint requires that all 𝑁 subcarriers be used, and the second constraint requires that the minimum data rate be met for all users. The new term 𝑅𝑚𝑎𝑥 implies an unstated assumption in the paper that all the subcarriers are identical in terms of Shannon capacity (and thus noise, assuming same power restrictions). This is also an unrealistic assumption, but one that helps simplify the solution. Note that the optimization parameter has now changed from the rate 𝑟𝑘 (𝑛) in the original problem statement to the subcarrier allocation 𝑁𝑘 of this new problem. A similar problem transformation will be noted for paper [2] as well, and reflects upon the underlying trade-off between algorithmic simplicity and optimality in such system design. The two stages of the solution can now be presented, formatted in pseudo-code. Note that paper [1] actually provides two algorithms for the second stage, but only the computationally simpler one is selected for this report. Stage 1: Subcarrier Allocation // initialization for 𝑘 = 0, … , 𝐾 − 1

FINAL 2009/12/04

𝑁𝑘 =

𝑅𝑘0 𝑅𝑚𝑎𝑥

end // part A while 𝐾−1 𝑘=0 𝑁𝑘 > 𝑁 𝑘 = arg min 𝑁𝑘 𝑁𝑘 = 0 end

𝑘

// part B while 𝐾−1 𝑘=0 𝑁𝑘 < 𝑁 for 𝑘 = 0, … , 𝐾 − 1 𝑁𝑘 + 1 𝑅𝑘0 𝑁𝑘 𝑅𝑘0 Δ𝑃𝑘 = 𝑓 − 𝑓 𝑁𝑘 + 1 𝑁𝑘 𝐻𝑘2 𝐻𝑘2 end 𝑘 = arg min Δ𝑃𝑘 𝑘

𝑁𝑘 = 𝑁𝑘 + 1 end Stage 2: Subcarrier Assignment // initialization for 𝑘 = 0, … , 𝐾 − 1 𝑆𝑘 = {} end // assignment for 𝑛 = 𝑟𝑎𝑛𝑑_𝑜𝑟𝑑𝑒𝑟(0, … , 𝑁 − 1) 𝒦 = 0, … , 𝐾 − 1 𝑘 = arg max 𝐻𝑘 (𝑛) 2 𝑘∈𝒦

while 𝑠𝑖𝑧𝑒 𝑆𝑘 == 𝑁𝑘 𝒦 = 𝒦\ 𝑘 𝑘 = arg max 𝐻𝑘 (𝑛) 2 𝑘∈𝒦

end 𝑆𝑘 = 𝑆𝑘 ∪ 𝑛 end [1]. Stage 1 of this algorithm allocates carriers to each user by first meeting all user rate requirements (initialization step), then allocating the remaining carriers to users for whom the carrier increments increase the total power the least (part B). In the event that not all user rate requirements can be satisfied, users who would otherwise use the least number of carriers (and by the equal subcarrier channel assumption, those who require the least rate) are penalized (part A). Stage 2 of this algorithm then abandons the equal subcarrier channel assumption, and assigns to each user those subchannels on which the user experiences the best channel. From the algorithm above, it is first apparent that the solution is not optimal due to the initial assumption that users experience uniform gains across all subcarriers. Even though the second stage of

FINAL 2009/12/04

the solution assigns subcarriers based on actual channel gains, the granularity introduced by separating the overall optimization problem into these two parts makes an optimal solution difficult. Nonetheless, for large numbers of subcarriers and sufficient decorrelation of users’ channel variations over the entire bandwidth of interest, this algorithm is able to converge on near-optimal solutions by nature of its construction. The key feature of this algorithm is its simplification of problem complexity. The original problem required optimization over the variables 𝑟𝑘 (𝑛) , of which there are 𝑁 ⋅ 𝐾 , and which are discretely related (since only one user can have nonzero 𝑟𝑘 (𝑛) at a time). So, the complexity of this original problem is ≫ 𝑂(𝑁 ⋅ 𝐾). However, the complexities of the two stages of the above algorithm are 𝑂 𝑁 ⋅ 𝐾 [1]. (For the first stage, this complexity arises from part B.) Thus, computation time is significantly reduced using this scheme over attempting to find an optimal solution. Paper [2]: In the second paper, not unlike in the first paper, it is pointed out that the optimization problem of interest is difficult to solve without intensive computation. Thus, paper [2] also divides the problem into multiple stages. The first two stages are, in fact, analogous to those in paper [1]; the number of subcarriers to be allocated to each user is first determined before the actual subcarrier assignments are chosen. The second two stages concern subsequent power allocation and (as mentioned before) will not be covered here since it does not affect subcarrier assignments in this scheme. First, a simplifying relaxation of the proportionality constraint is made to help with the solution of the problem. Whereas the original problem requires: 𝑅𝑖 ∶ 𝑅𝑗 = 𝜙𝑖 ∶ 𝜙𝑗 , for all 𝑖, 𝑗 ∈ 0, … , 𝐾 − 1 , 𝑖 ≠ 𝑗 the new constraint is [2]: 𝑁𝑖 ∶ 𝑁𝑗 = 𝜙𝑖 ∶ 𝜙𝑗 , for all 𝑖, 𝑗 ∈ 0, … , 𝐾 − 1 , 𝑖 ≠ 𝑗. This simplification belies the underlying assumption that after power allocation, the proportionality between rates and the proportionality between number of subcarriers will be (roughly) the same between users [2]. A parallel will be drawn with paper [1] in the subsequent section. Now, the subcarrier allocation algorithm can be presented: Stage 1: Subcarrier Allocation for 𝑘 = 0, … , 𝐾 − 1 𝑁𝑘 = 𝜙𝑘 ⋅ 𝑁 end 𝐾−1 ∗

𝑁 =𝑁−

𝑁𝑘 𝑘=0

Stage 2: Subcarrier Assignment // initialization for 𝑘 = 0, … , 𝐾 − 1 𝑅𝑘 = 0 for 𝑛 = 0, … , 𝑁 − 1 𝐼𝑘 𝑛 = 0 end end 𝑝 = 𝑃𝑡𝑜𝑡 /𝑁 𝒩 = {0, … , 𝑁 − 1}

FINAL 2009/12/04

// part A for 𝑘 = 0, … , 𝐾 − 1 𝑛 = arg max 𝛼𝑘 (𝑛) 𝑛∈𝒩

𝐼𝑘 𝑛 = 1 𝑁𝑘 = 𝑁𝑘 − 1 𝒩 = 𝒩\ 𝑛 𝐵 𝑅𝑘 = 𝑅𝑘 + log 2 1 + 𝑝 ⋅ 𝛼𝑘 (𝑛) 𝑁 end // part B while 𝑠𝑖𝑧𝑒 𝒩 > 𝑁 ∗ 𝒦 = 0, … , 𝐾 − 1 𝑅𝑘 𝑘 = arg min 𝑘∈𝒦 𝜙𝑘 𝑛 = arg max 𝛼𝑘 (𝑛) 𝑛∈𝒩

if 𝑁𝑘 > 0 𝐼𝑘 𝑛 = 1 𝑁𝑘 = 𝑁𝑘 − 1 𝒩 = 𝒩\ 𝑛 𝐵 𝑅𝑘 = 𝑅𝑘 + log 2 1 + 𝑝 ⋅ 𝛼𝑘 (𝑛) 𝑁 else 𝒦 = 𝒦\ 𝑘 end end // part C 𝒦 = 0, … , 𝐾 − 1 for all 𝑛 ∈ 𝒩 𝑘 = arg max 𝛼𝑘 (𝑛) 𝑘∈𝒦

𝐼𝑘 𝑛 = 1

𝑅𝑘 = 𝑅𝑘 + 𝒦 = 𝒦\ 𝑘 end

𝐵 log 2 1 + 𝑝 ⋅ 𝛼𝑘 (𝑛) 𝑁

[2]. Stage 1 of this algorithm is straightforward: assign to each user the minimum number of subcarriers that it requires. This is exactly the same approach to allocation as in paper [1], and in doing so both ensure that the minimum user rate requirements are met, if possible. But if not possible, paper [1] has a built-in scheme to make a best effort to meet the rate requirements of those users who need the most rate, whereas paper [2] makes no such recovery provisions. In stage 2, the algorithm assigns subcarriers to users, prioritizing those who see the best channels. The key simplifying assumption for this algorithm occurs in stage 2: the algorithm there makes the initial assumption that all subcarriers have equal power allocation [2]. After all subcarriers are assigned, the power assignment algorithms discard this assumption. This is not unlike the assumption in paper [1] that all users experience constant channel gains across subcarriers; here, too, an initial assumption is made that makes one part of the problem easier, after which the assumption can be

FINAL 2009/12/04

discarded and the solution iterated. By inference from the two algorithms examined so far, then, much of the complexity in solving subcarrier-power allocation problems is the fact that there are 𝑁 ⋅ 𝐾 different channel characteristics seen by all users over all subcarriers. The order of complexity of this algorithm is, as found in the paper: 𝑂(𝐾) for stage 1, 𝑂(𝐾 ⋅ 𝑁 ⋅ log 2 𝑁) for stage 2. Both of these are much better complexity times than the ≫ 𝑂(𝐾 ⋅ 𝑁), possibly non-iterable complexity of the fully general optimization problem. (In fact, paper [4] gives such a fully optimal, general solution, and its complexity is found to be 𝑂(𝑁 ⋅ 𝐾 3 ) [4].) Paper [3]: Unlike in the first two papers, the third paper treats subcarrier allocation and power allocation together, being subject to both absolute rate and power constraints. As discussed in section III of the report, however, paper [3] contains a number of notational and logical inconsistencies, so presented here is an attempted best-effort reconstruction of the paper’s intended meaning. (Indeed, the very presentation of the algorithms in paper [3] is confusing. For instance: if clauses do not have well-defined endings; at least one of the algorithm steps does not make sense in the order given, but requires reading of the text for proper placement; logical error leading to potential for an infinite loop in the algorithm; notation of variables with and without bars above them is inconsistent; etc.). First, introducing some additional algorithm-specific notation (adapted from [3]): 𝑃𝑐𝑢𝑟𝑟 : the running total of power usage 𝑝𝑘,𝑚 (𝑛): the power required to transmit at 𝑚 bits/symbol for the 𝑘th user over the 𝑛th subchannel: 𝑓𝑘 𝑚, 𝐵𝐸𝑅𝑘 𝑝𝑘,𝑚 𝑛 = 𝐻𝑘 𝑛 2 𝑀: the maximum number of bits per symbol supported by any subcarrier. As can be seen, this paper too makes the implicit assumption that all subcarriers are identical in terms of Shannon capacity seen by all users. Now, the algorithm given in [3] is in two stages, the first being primarily a subcarrier assignment stage, and the latter being a power optimization stage. Both involve assignment/reassignment of subcarriers, however, and so both will be shown here (though the latter in simpler form). Stage 1: Subcarrier Assignment // initialization for 𝑘 = 0, … , 𝐾 − 1 𝑅𝑘 = 𝑅𝑘0 for 𝑛 = 0, … , 𝑁 − 1 𝐼𝑘 𝑛 = 0 end end 𝑚=𝑀 𝑃𝑐𝑢𝑟𝑟 = 0 𝒩 = 0, … , 𝑁 − 1 𝒦 = 𝑟𝑎𝑛𝑑_𝑜𝑟𝑑𝑒𝑟{0, … , 𝐾 − 1} // assignment while (true) 𝑘 = 𝑛𝑒𝑥𝑡_𝑒𝑙𝑒𝑚_𝑜𝑓(𝒦), (with wrap-around) 𝑛 = arg min 𝑝𝑘 ,𝑚 (𝑛) 𝑛∈𝒩

𝑚𝑘 𝑛 = 𝑚

FINAL 2009/12/04

𝑅𝑘 = 𝑅𝑘 − 𝑚 𝐼𝑘 𝑛 = 1 𝒩 = 𝒩\ 𝑛 𝑃𝑐𝑢𝑟𝑟 = 𝑃𝑐𝑢𝑟𝑟 + 𝑝𝑘 ,𝑚 (𝑛) if 𝑃𝑐𝑢𝑟𝑟 > 𝑃𝑡𝑜𝑡 or max 𝑅𝑘 < 𝑚 𝑘

𝑚 =𝑚−1 end 𝑁−1 if 𝑚 == 1 and 𝐾−1 𝑘=0 𝑛=0 𝐼𝑘 𝑛 < 𝑁 and 𝑃𝑐𝑢𝑟𝑟 > 𝑃𝑡𝑜𝑡 run subroutine below; keep updated 𝑚 from subroutine else if 𝒩 == ∅ break end end // subroutine start 𝑘 , 𝑛, 𝑚 = arg max 𝐼𝑘 (𝑛) ⋅ 𝑝𝑘,𝑚 (𝑛) 𝑘,𝑛,𝑚

𝑚𝑘 𝑛 = 𝑚 − 1 𝑃𝑐𝑢𝑟𝑟 = 𝑃𝑐𝑢𝑟𝑟 − 𝑝𝑘 ,𝑚 𝑛 + 𝑝𝑘 ,(𝑚 −1) (𝑛) 𝑚 =𝑚−1 end Stage 2: Power Optimization The algorithms in this stage use some complex notation that will introduce unneeded clutter. Since the focus of this stage is power optimization through modification of subcarrier assignments, only a high-level description of these algorithms is provided, sufficient for subsequent complexity analysis. // routine A for (every user) while (∃ power reduction to be had by moving a bit in one assigned subcarrier to another) do bit transfer, update total power end end // routine B for (every pair of users) for (every pairing of subcarriers from the two users with the same assigned rate) if (swapping the assigned subcarriers between the two users results in power reduction) swap the subcarriers, update total power end end end [3]. The process by which stage 1 of this algorithm satisfies – or attempts to satisfy – user rate requirements is generally as follows: users are assigned subchannels on which they are able to sustain the highest bits per symbol at the lowest power cost. Then, the algorithm iterates by decrementing the bits per symbol being allocated whenever the running total power exceeds the set limit, and by decreasing the rate

FINAL 2009/12/04

on the most power-expensive assigned subcarriers. In stage 2, the algorithm simply seeks to reduce total power by swapping subcarrier bits and subcarrier assignments as possible. The key point to note for this algorithm is that – unlike the algorithms of the first two papers – users’ rate requirements are not guaranteed to be met even if it is feasible. As mentioned in an earlier section of this report, this is a consequence of the hard constraint on power in the problem being solved by this algorithm. By observation of the if-else statement of stage 1, it is possible for the assignment algorithm to terminate as long as the power constraint is met and all subcarriers are assigned. Nonetheless, the algorithm makes a best effort to meet these user rate requirements by construction. The complexity of this algorithm can be estimated by counting loops, and is 𝑂(𝑀 ⋅ 𝐾 ⋅ 𝑁) for stage 1, 𝑂 𝑁 ⋅ 𝐾 for stage 2 routine A, and 𝑂(𝐾 ⋅ 𝑁 2 ) for stage 2 routine B. Thus, this algorithm is more computationally intensive than those of papers [1] and [2], even if ignoring the stage 2 power optimizations routines. However, it is significantly different from the other algorithms in that it is suited for applications with strict power restrictions. Paper [4]: Unlike the iterative algorithm approaches of the above three papers, the solution approach in the fourth paper is based more heavily on mathematical formulation and analysis. The paper identifies its optimization problem (as given in section III above) as being a generally non-convex optimization problem, but amenable to Lagrangian techniques, though solutions are not necessarily optimal [4]. However, the paper shows that with large enough 𝑁, the problem does become convex, such that the solutions become optimal [4]. Here, as in paper [3], the method of solution optimizes on rate and power jointly. Shown here are the results of the Lagrangian techniques and high-level approach (the ellipsoid method of solving a complex optimization problem is not restated here; further information can be found in [9]): Notation: 𝝁 = 𝜇1 , … , 𝜇𝐾 are the Lagrange multipliers ∙ + ≡ max⁡ (∙, 0) Solution: Apply ellipsoid method to optimize: max 𝑔(𝝁) 𝝁

Where:

𝑁−1

𝐾−1

𝑔𝑛′ (𝝁) +

𝑔 𝝁 = 𝑛 =0

𝜇𝑘 ⋅ 𝑅𝑘 𝑘=0

𝜇𝑘 log 2 1 + 𝛼𝑘 (𝑛) ⋅ 𝑝𝑘 (𝑛) 𝑘 2 𝜇𝑘 1 + 𝑝𝑘 𝑛 = − 2 ⋅ 𝜆𝑘 ⋅ ln 2 𝛼𝑘 (𝑛) 𝑔𝑛′ (𝝁) = min 𝜆𝑘 ⋅ 𝑝𝑘 𝑛 −

[4]. Note that here, the implicit subcarrier assignments are given by: 𝜇𝑘 𝑆𝑘 = 𝑛 𝑘 == arg min 𝜆𝑘 ⋅ 𝑝𝑘 𝑛 − log 2 1 + 𝛼𝑘 (𝑛) ⋅ 𝑝𝑘 (𝑛) 2 𝑘 for 𝑘 = 0, … , 𝐾 − 1.

FINAL 2009/12/04

This algorithm finds the optimal solution to the subcarrier-power allocation problem in a theoretical manner, first by forming Lagrangian functions and then water-filling in power [4]. As can be observed, the complexity of computation is much higher here than for the previous algorithms; in fact, the complexity of this method is 𝑂(𝑁 ⋅ 𝐾 3 ) [4]. Thus, this solution becomes very expensive to compute with increasing numbers of users and subcarriers – a problem that highlights the motivations of papers [1]~[3]: to find methods of solution that require much less computation but which at least approximate the optimal solution.

V. Comparison of Approaches The main idea shared by all of the focus papers [1]~[4] is the high complexity associated with determining optimal resource allocation in OFDMA systems. Fittingly, the last paper reviewed gives the computationally-intensive fully-optimal solution. In retrospect, all of the problem formulations in papers [1]~[3] can be viewed as variations upon the general problem posed by paper [4]. Of course, the precise problem variation in each paper influenced the solution developed, but it can be seen that these variations suit each algorithm to different applications with different needs. In light of this finding, each of papers [1]-[3]’s sets of assumptions and/or methods of solution will be briefly revisited. Paper [1] gave perhaps the simplest variation of the general problem, with its main initial assumption being that all users experience constant channel gains. The solution satisfies all user rate requirements if possible, but if not gives precedence to those users requiring the highest data rates. Thus, the algorithm of paper [1] is suited for applications that seek to maximize throughput and that prioritize high-rate users (and thus most likely highest-paying in a wireless service provider perspective) users over others. Paper [2] assumes a set requirement for users’ data proportionality, and seeks to preserve this proportionality through subcarrier and power assignment. Thus, this algorithm is suited for applications in which a strict user hierarchy (based on service plans, for instance, from a wireless service provider perspective) is sought to be maintained. Lastly, paper [3], as seen before, strictly enforces the power limit while making a best effort to meet user rate requirements. Thus, paper [3]’s algorithm is most suited for power-constrained applications.

VI. Conclusion This report sought to survey four methods of solution to the OFDMA subcarrier allocation problem. First, the general OFDMA problem is given, followed by problem statements for each of the four focus papers of this report. Then, the algorithms given in the papers were presented, re-notated and restructured for ease of comparison. The key conclusion from this analysis is that the general resource allocation problem can be simplified to yield sub- (but potentially near-) optimal solutions, but that the method of simplification depends strongly upon the desired final application and its requirements.

VII. Directions for Future Study From the starting point of this literature survey, there are a number of different directions for potential future study. These include, but are not limited to: 1. Identifying and analyzing the allocation strategies used in real and in-development wireless systems; 2. Robustness testing and simulation of the above algorithms in scenarios in which not all simplifying assumptions are met; 3. Researching decentralized algorithms for distributed-system (ad-hoc) allocation algorithms, and determining if results from centralized systems can be used and/or adapted.

FINAL 2009/12/04

VIII. Appendix A: OFDMA System Parameters – Notation Note: algorithm-specific notation not defined here, but can be found in sections III and IV 𝐵

total bandwidth

𝑁𝑘

𝐾

total number of users

𝑝𝑘 𝑛 ≥ 0

𝑁

total number of subcarriers

𝑓𝑝 (∙)

𝑅𝑘0

rate requirement for 𝑘th user

𝐻𝑘 (𝑛)

assignment indicator of 𝑛th subcarrier to 𝑘th user set of subcarriers assigned to 𝑘th user

𝜎𝑘2 (𝑛)

𝐼𝑘 𝑛 ∈ {0,1} 𝑆𝑘

𝛼𝑘 (𝑛)

2

number of subcarriers to be assigned to 𝑘th user transmission power to 𝑘th user on 𝑛th subchannel function that calculates required received power given modulation scheme, BER, etc. power gain experienced by 𝑘th user on 𝑛th subchannel AWGN power for 𝑘th user on 𝑛th subchannel 𝐻𝑘 𝑛

2

/𝜎𝑘2 (𝑛)

IX. References Focus Papers: [1] Didem Kivanc, Guoqing Li, and Hui Liu, “Computationally Efficient Bandwidth Allocation and Power Control for OFDMA,” IEEE Trans. Wireless Commun., vol. 2, pp. 1150-1158, Nov. 2003. [2] Ian C. Wong, Zukang Shen, Brian L. Evans, and Jeffrey G. Andrews, “A Low Complexity Algorithm for Proportional Resource Allocation in OFDMA Systems,” IEEE Workshop on Signal Processing Systems (SIPS), 2004. [3] Mustafa Ergen, Sinem Coleri, and Pravin Varaiya, “QoS Aware Adaptive Resource Allocation Techniques for Fair Scheduling in OFDMA Based Broadband Wireless Access Systems,” IEEE Trans. Broadcasting, vol. 49, pp. 362-370, Dec. 2003. [4] Kibeom Seong, Mehdi Mohseni, and John M. Cioffi, “Optimal Resource Allocation for OFDMA Downlink Systems,” Proc. IEEE Int’l Symp. on Info. Theory (ISIT), pp. 1394-1398, July 2006. Supporting Sources: [5] Hujun Yin, Siavash Alamouti, “OFDMA: A Broadband Wireless Access Technology,” IEEE Proc. of Sarnoff Symposium, 2006. [6] Hongxiang Li and Hui Liu, “On the Optimality of OFDMA MIMO Channels,” Proc. 40th IEEE Asilomar Conf. Signals, Systems, and Computers (ACSSC), pp. 1757-1761, Oct. 2006. [7] Hongxiang Li, Younsun Kim, and Hui Liu, “OFDMA Capacity Analysis and Subcarrier Allocation in MIMO Channels,” 14th European Wireless (EW) Conf., June 2008. [8] Andrea Goldsmith. Wireless Communications. Cambridge: Cambridge U Press, 2005. [9] Stephen Boyd. “Ellipsoid Method.” Stanford University: EE392O Lecture Slides. .

FINAL 2009/12/04