- Research
- Open access
- Published:

# Equal rate resource allocation for multiuser OFDM

*EURASIP Journal on Wireless Communications and Networking*
**volume 2012**, Article number: 344 (2012)

## Abstract

The performance of multicarrier systems can be enhanced by the water filling strategy, in which different rates and powers are allocated to subcarriers. However, the induced large signalling overhead leads to less transmission efficiency. To suppress this effect this article proposes an alternative strategy by dynamically assigning the same rate to each subcarrier per user. First, we quantify the asymptotic limits of its instantaneous per-symbol performance loss compared to water filling. Then, we apply this strategy to weighted sum rate maximization subject to minimum required rates and limited transmission power. Due to the simplicity of the proposed strategy, a low-complexity method is given, which can be used for other resource allocation problems in multi-carrier systems with small modifications. Simulations demonstrate that the instantaneous per-symbol performance loss of our method compared to the water filling strategy becomes insignificant if the number of users is large. The proposed method has even better performance for fast time-varying channels with respect to the signalling overhead. Moreover, given the subcarrier assignment from the proposed method, water filling can be performed and the output is close to the primal optimum.

## Introduction

Orthogonal frequency division multiplexing (OFDM) divides the whole transmission band into multiple subcarriers to combat the inter-symbol interference. This allows for allocating different rates and powers to subcarriers according to channel characteristics so that the system performance is enhanced. There are two basic resource allocation problems [1]. One is the margin-adaptive (MA) problem, where the transmission power is minimized subject to a fixed rate. The other aims at maximizing the data rate subject to limited transmission power, so called the rate-adaptive (RA) problem. Both can be solved by the well-known water filling approach. As a result different rates and powers are allocated to subcarriers.

The resource allocation is executed at the transmitter, while channel state information is usually measured at receivers. Receivers must be notified about the employed allocation and coding scheme, thus, inducing a significant signalling overhead is required [2]. The faster channels change, the more frequently the resource allocation scheme alters. The temporal channel variation highly depends on the velocity of receivers and reflectors between transmitters and receivers. For multiuser resource allocation, even though the channel rapidly changes for only one user, the resource allocation scheme has to be updated frequently. Therefore, water filling may degrade in fast time-varying environments.

In [3, 4], the same power is assigned to subcarriers achieving certain data rates. Since each data rate corresponds to a certain mapping and coding scheme, dynamic mapping and coding schemes cannot be identified from the allocated power. Thus, the signalling overhead still remains large. To reduce the signalling overhead, [5] suggests to cluster subcarriers into blocks. If the number of subcarriers in one block is large, the performance impairs severely. In contrast, the overhead is not significantly reduced. The same power and rate are statically allocated to a fixed number of subcarriers, which have greater channel gain-to-noise ratios (CNRs) [6]. This fixed number is known to the receiver, which implies that the subcarrier assignment does not adapt to the channel conditions. The same signal-to-noise ratios are obtained over all subcarriers in [7]. However, the resulting performance loss may be very large, when the channel frequency selectivity is severe.

Different from previous studies, this article proposes to dynamically allocate to the same rate to all subcarriers assigned to a user, while the rates to subcarriers of different users may differ. In doing so, the signalling overhead is drastically reduced, such that the overall performance is improved. It follows that the resource allocation scheme can be more efficiently updated after changing the subcarrier assignment than for water filling. Consequently, an easily implementable and low-cost heuristic can be designed. Compared to the conventional multiuser resource allocation [8], minimum rate constraints [9] are included to become closer to practical requirements. This results in additional challenges for the heuristic design, since the rate constraints fulfilled at equality and inequality have to be separated. The proposed method has linear complexity in the number of users and subcarriers and only small performance loss compared to the dual optimum [10, 11], which has the closest performance to exhaustive search. Moreover, a constant rate is allocated to subcarriers in wireless local area networks (WLAN) [12]. In our proposed strategy, the same rate but different powers are allocated.

Thus, we only change the scale of the symbol mapper according to the resource allocation scheme. In this sense, only minor modifications are needed and the proposed strategy can be applied with simple modifications.

The remainder of this article is organized as follows. In Section ‘Preliminaries’, the considered multiuser resource allocation problem is formulated including signalling overhead, when water filling and the proposed strategies are applied. Water filling achieves the best instantaneous per-symbol performance, when the signalling overhead is not considered. Theoretical asymptotic limits are given for the instantaneous per-symbol performance loss of the proposed strategy applied to single-user resource allocation in Section ‘Single-user resource allocation’. The equal-rate resource allocation is specified for a fixed subcarrier assignment in Section ‘Multiuser resource allocation given subcarrier assignment’. Subsequently, a heuristic is designed to determine the multiuser subcarrier assignment in Section ‘Heuristic subcarrier assignment’. Simulation results are presented in Section ‘Simulation results’.

## Preliminaries

We consider a multiuser OFDM system with one transmitter, *K* users and *N* subcarriers. Perfect channel knowledge is assumed at the transmitter, where resource allocation is executed. A resource allocation scheme is effective for *L* OFDM symbols, while *L* is determined by temporal channel variation and the time duration of one OFDM symbol. In a fast time-varying environment *L* cannot be large. For example, one frame in the worldwide interoperability for microwave access (WiMAX) [13] is composed of 48 OFDM symbols. The resource allocation scheme is updated for every *L* OFDM symbols via the signalling overhead. There are 2^{M}data rates that may be allocated to each subcarrier. It means that *M* bits are necessary to identify one discrete rate. According to [2], if the water filling strategy is used, *NM* bits are required for expressing one resource allocation scheme and sent at first. Thereafter, data symbols follow. Note that *N*⌈ log_{2}(*K*)⌉ bits are always needed to notify each receiver of which subcarriers are assigned to it. This amount is constant in this study.

We aim at maximizing the weighted sum rate subject to limited transmission power and individual minimum rate required by users. When the water filling strategy is adopted, it is stated as

The non-negative power and rate allocated to subcarrier *n* for user *k* is denoted by *p*_{k,n} and *r*_{k,n}, respectively. They are related by the equality constraint, where *g*_{k,n}is the CNR of subcarrier *n* of user *k*. Once subcarrier *n* is assigned to a user, *M* bits must be sent at first for every *L* OFDM symbols. The average rate for signalling over each subcarrier is *M*/*L*. The achieved rate for user *k* is weighted by positive *w*_{
k
}, which is given by the system for the purpose of fairness control among users. Each user requires a minimum rate *R*_{
k
}, expressed by the second constraint. The transmission power is limited to *P*, illustrated by the third constraint. The set of users is referred to as \left(\right.separators="">\n \n K\n \n. The set \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n \n contains the subcarriers assigned to user *k*. We denote the cardinality of \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n \n by *s*_{
k
}. One subcarrier is assigned to at most one user at any specific time to avoid interference to each other, illustrated by the last constraint in (1). The variables of problem (1) are *r*_{k,n}, *p*_{k,n} and \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n ,\n k\n =\n 1\n ,\n \u2026\n ,\n K\n ,\n n\n =\n 1\n ,\n \u2026\n ,\n N.\n \n

The dual optimum of (1) can be obtained by the dual method [10]. The Karush-Kuhn-Tucker conditions [14] are applied to (1), where *K* + 1 dual variables appear. Then, the ellipsoid method is used to let these dual variables iteratively converge. The number of iterations is related to \left(\right.separators="">\n \n O\n \n \n \n \n (\n K\n +\n 1\n )\n \n \n 2\n \n \n \n \n \n[8, 15]. In each iteration (*K* + 1)*N* equations must be calculated. Hence, the complexity for determining the dual optimum of (1) is \left(\right.separators="">\n \n O\n (\n N\n \n \n K\n \n \n 3\n \n \n )\n \n. The concrete solution is available in [11]. This can be viewed as the extension from single-user water filling to multiuser water filling, where different rates and powers are allocated to subcarriers to meet transmission constraints.

To notify receivers of the employed resource allocation scheme with a smaller signalling overhead, the same rate *r*_{
k
} may be allocated to the subcarriers assigned to user *k*=1,…,*K*. Then, only *KM* bits are sufficient to distinguish data rates for all subcarriers. The signalling overhead is reduced by (*N*−*K*)*M* bits. The resource allocation problem (1) can be rewritten as

In (1), *M* bits must be sent for each *subcarrier* to identify the employed rate in the current *L* OFDM symbols. Thus, on average *M*/*L* bits/OFDM symbols must be additionally achieved over each *subcarrier*. In (2), only *M* bits of signaling overhead is necessary for each *user*. Hence, on average *M*/*L* bits/OFDM symbols must be additionally achieved for each *user*. Thus, each minimum required rate is increased by *M*/*L* for signalling. In the following, we first extract two classical single-user resource allocation problems to quantify the instantaneous per-symbol performance loss of the proposed strategy. Thereafter, a heuristic method is designed to solve (2). The variables of problem (1) are *r*_{
k
},*p*_{k,n} and \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n ,\n k\n =\n 1\n ,\n \u2026\n ,\n K\n ,\n n\n =\n 1\n ,\n \u2026\n ,\n N.\n \n

## Equal rate resource allocation

In this section, single-user and multiuser equal rate resource allocations are investigated. A heuristic solution is given for the considered problem (2).

### Single-user resource allocation

We first focus on resource allocation for a single user *k*. The signalling overhead is not considered here to investigate the instantaneous per-symbol performance loss of the proposed strategy. If the subcarrier assignment \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n \n for user *k* is fixed, the power and rate allocation can be easily determined. Let *P*_{
k
} denotes the transmission power for user *k*. A single-user MA resource allocation problem [1] with the proposed strategy applied is written as

where the transmission power is minimized while satisfying the required rate. Obviously, the allocated rate and power are *r*_{
k
}=*R*_{
k
}/*s*_{
k
} and \left(\right.separators="">\n \n \n \n p\n \n \n k\n ,\n n\n \n \n =\n (\n \n \n 2\n \n \n \n \n r\n \n \n k\n \n \n \n \n \u2212\n 1\n )\n /\n \n \n g\n \n \n k\n ,\n n\n \n \n \n, \left(\right.separators="">\n \n n\n \u2208\n \n \n S\n \n \n k\n \n \n \n, respectively. The optimum objective is

where *H*_{
k
} is the harmonic average of the CNRs \left(\right.separators="">\n \n \n \n g\n \n \n k\n ,\n n\n \n \n \u2223\n n\n \u2208\n \n \n S\n \n \n k\n \n \n }\n \n, derived as \left(\right.separators="">\n \n \n \n 1\n \n \n \n \n H\n \n \n k\n \n \n \n \n =\n \n \n 1\n \n \n \n \n s\n \n \n k\n \n \n \n \n \n \n \u2211\n \n \n n\n \u2208\n \n \n S\n \n \n k\n \n \n \n \n \n \n 1\n \n \n \n \n g\n \n \n k\n ,\n n\n \n \n \n \n \n. Compared to the water filling solution \left(\right.separators="">\n \n \n \n s\n \n \n k\n \n \n (\n \n \n \n \n 2\n \n \n \n \n R\n \n \n k\n \n \n /\n \n \n s\n \n \n k\n \n \n \n \n \n \n \n \n G\n \n \n k\n \n \n \n \n \u2212\n \n \n 1\n \n \n \n \n H\n \n \n k\n \n \n \n \n )\n \n from [1], the instantaneous per-symbol performance loss is

where *G*_{
k
} is the geometric average of the CNRs \left(\right.separators="">\n \n {\n \n \n g\n \n \n k\n ,\n n\n \n \n \u2223\n n\n \u2208\n \n \n S\n \n \n k\n \n \n }\n \n as \left(\right.separators="">\n \n \n \n G\n \n \n k\n \n \n =\n \n \n (\n \n \n \u220f\n \n \n n\n \u2208\n \n \n S\n \n \n k\n \n \n \n \n \n \n g\n \n \n k\n ,\n n\n \n \n )\n \n \n 1\n /\n \n \n s\n \n \n k\n \n \n \n \n \n. Its asymptotic limit is

The equation above implies that the performance loss is limited, when either the required rate or the number of users is large. This may be satisfied in large scale systems, where many users are served and each of them demands a large rate.

Similarly, the new strategy is applied to a single-user RA resource allocation problem [1] given \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n \n

where the data rate is maximized subject to the transmission power limit. The power and rate allocation can be easily derived by taking \left(\right.separators="">\n \n \n \n p\n \n \n k\n ,\n n\n \n \n =\n \n \n 1\n \n \n \n \n g\n \n \n k\n ,\n n\n \n \n \n \n (\n \n \n 2\n \n \n \n \n r\n \n \n k\n \n \n \n \n \u2212\n 1\n )\n \n to the power constraint, expressed as

where the associated water level is *μ*_{
k
}=*P*_{
k
}/*s*_{
k
} + 1/*H*_{
k
}. Compared to the water filling solution *s*_{
k
} log_{2}(*μ*_{
k
}*G*_{
k
}) from [1], the instantaneous per-symbol performance loss is

The performance loss (9) tends to

Similar to the previous asymptotic limit of performance loss for the single-user MA problem, the performance loss for the single-user RA problem is limited when a small number of subcarriers is assigned to user *k* or the transmission power is large.

Without considering the signalling overhead, Figure 1 shows the instantaneous per-symbol performance loss by the proposed strategy compared to water filling for the single-user MA problem (3). It approaches the limit (6) as the required rate increases. For the single-user RA problem (7), the performance loss by the proposed strategy is shown in Figure 2. It asymptotically reduces to zero (10). The maximum loss appears, when these two strategies employ different numbers of subcarriers. The asymptotic limit is 27.89 % in Figure 1, while the loss goes up to 7.4 % in Figure 2, since the CSI variation is very large with respect to the example subcarriers. Note that we want to give an example for these theoretical asymptotic limits, which can simply be repeated by readers. The performance loss with random CNRs is smaller than the special case. This can be explicitly seen from the simulation result for the multiuser case.

In water filling, different CNRs over subcarriers result in different allocated rates and powers. Compared to that, the single-user equal-rate resource allocation can be viewed as water filling over subcarriers having the equal CNR *H*_{
k
}, shown by (4) and (8). Thus, both strategies have the same water level given the same subcarrier assignment. When subcarrier assignment \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n \n for user *k* changes, only the harmonic average *H*_{
k
} needs to be updated to obtain the new sum power *P*_{
k
}with (4) or the new sum rate *s*_{
k
}*r*_{
k
}with (8). Then, we can interpret problem (2) as the multiuser water filling over subcarriers with equal CNRs for different users.

### Multiuser resource allocation given subcarrier assignment

The above interpretation can be used to solve (2) while relaxing the rate constraints, which will be met by an iterative processing later. Let \left(\right.separators="">\n \n K\n \n denotes the set including RA users and \left(\right.separators="">\n \n Q\n \n refer to the set including MA users. Given the subcarrier assignment for the RA users \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n ,\n k\n \u2208\n K\n \n, the power allocated to each RA user has to be decided by additionally considering the weights. This new problem can be stated as

where the power constraint must be met at equality due to the complementary slackness condition [14]. Then, the dual problem is to maximize \left(\right.separators="">\n \n \mathcal{L}\n (\n \nu \n ,\n {\n \n \n P\n \n \n k\n \n \n }\n )\n \n subject to *ν*≥0. Let the derivative \left(\right.separators="">\n \n \u2202\n \mathcal{L}\n (\n \nu \n ,\n {\n \n \n P\n \n \n k\n \n \n }\n )\n /\n \u2202\n \n \n P\n \n \n k\n \n \n =\n 0\n ,\n k\n \u2208\n K\n ,\n \n and the above problem can be solved as

where the sharing factor *ν* is

and *ν* *w*_{
k
} is the water level for user *k*. However, from (12), it can be seen that the power allocated to user *k* may be zero or not adequate to achieve the minimum required rate \left(\right.separators="">\n \n \n \n R\n \n \n k\n \n \n +\n \n \n M\n \n \n L\n \n \n \n. If this occurs on user *k*, we call him an MA user [1]. Then, user *k* has to be excluded from \left(\right.separators="">\n \n K\n \n and included in \left(\right.separators="">\n \n Q\n \n. The transmission power for user \left(\right.separators="">\n \n k\n \u2208\n Q\n \n is derived by solving problem (3) with the fixed rate \left(\right.separators="">\n \n \n \n R\n \n \n k\n \n \n +\n \n \n M\n \n \n L\n \n \n \n reached. The power for the remaining users in \left(\right.separators="">\n \n K\n \n is \left(\right.separators="">\n \n P\n \u2212\n \n \n \u2211\n \n \n k\n \u2208\n Q\n \n \n \n \n P\n \n \n k\n \n \n \n. Then, the power allocation (12) is recalculated for user \left(\right.separators="">\n \n k\n ,\n k\n \u2208\n K\n \n. This iterative procedure finishes until all minimum rate constraints are satisfied. This solution can be interpreted as water filling over different users \left(\right.separators="">\n \n k\n \u2208\n K\n \n. Hence, its complexity is \left(\right.separators="">\n \n O\n (\n KN\n )\n \n.

### Heuristic subcarrier assignment

Given the subcarrier assignment, the solution of (1) can be viewed as two-dimensional water filling over users and subcarriers, while the solution of (2) reduces to a one-dimensional water filling only over users by allocating an equal rate to subcarriers of each user. In [16], for the single user *k*, the sum power (4) can be depicted as an inverse unimodal function of *s*_{
k
} with subcarriers in \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n \n sorted in a descending order of the CNRs \left(\right.separators="">\n \n {\n \n \n g\n \n \n k\n ,\n n\n \n \n |\n n\n \u2208\n \n \n S\n \n \n k\n \n \n }\n \n, while different bit-error rates are achieved over subcarriers. We found in examples that this property remains for the proposed strategy. Then, the upgraded bisection method by inheriting the golden section method [17] can be used with complexity \left(\right.separators="">\n \n O\n \n \n log\n (\n \n \n s\n \n \n k\n \n \n )\n \n \n \n. In the following, a method to determine the multiuser subcarrier assignment is designed. It is composed of initialization and subcarrier adjustment.

#### Initialization for subcarrier assignment

We use the idea from [18], where the initialization has two steps. First, the cardinality, i.e., the number of subcarriers assigned to each user, is evaluated according to the average CNR over subcarriers and the rate and power constraints. After that, specific subcarriers are assigned to users according to these evaluated numbers. To fit the idea to our problem, we propose the cardinality evaluation, summarized in Algorithm 1. In each iteration, only one cardinality increases by one. If the sum power for reaching the minimum required rates is beyond the power limit, we add one to the cardinality that induces the largest power decrement. Otherwise, we add one to the cardinality, which results in the largest weighted sum rate to (11) without the minimum rate constraints considered.

##### Algorithm 1. Cardinality evaluation

1: \left(\right.separators="">\n \n 1\n /\n \n \n H\n \n \n k\n \n \n \u2190\n 1\n /\n N\n \n \n \u2211\n \n \n k\n =\n 1\n \n \n K\n \n \n 1\n /\n \n \n g\n \n \n k\n ,\n n\n \n \n ,\n k\n =\n 1\n ,\n \u2026\n ,\n K\n \n

2: *s*_{
k
}←1, *k*=1,…,*K*

3: **for** *i*=1,…,*N*−*K* **do**

4: **if**\left(\right.separators="">\n \n \n \n \u2211\n \n \n k\n =\n 1\n \n \n K\n \n \n \n \n s\n \n \n k\n \n \n (\n \n \n 2\n \n \n \n \n \n \n R\n \n \n k\n \n \n +\n \n \n M\n \n \n L\n \n \n \n \n \n \n s\n \n \n k\n \n \n \n \n \n \n \u2212\n 1\n )\n /\n \n \n H\n \n \n k\n \n \n \n P\n \n**then**

5: \left(\right.separators="">\n \n \n \n \n \n k\n \n \u0302\n \n \u2190\n arg\n \n \n max\n \n \n k\n =\n 1\n ,\n \u2026\n ,\n K\n \n \n \n \n \n \n \n \n \n \n s\n \n \n k\n \n \n /\n \n \n H\n \n \n k\n \n \n (\n \n \n 2\n \n \n \n \n \n \n R\n \n \n k\n \n \n +\n \n \n M\n \n \n L\n \n \n \n \n \n \n s\n \n \n k\n \n \n \n \n \n \n \u2212\n 1\n )\n \u2212\n (\n \n \n s\n \n \n k\n \n \n +\n 1\n )\n /\n \n \n H\n \n \n k\n \n \n (\n \n \n 2\n \n \n \n \n \n \n R\n \n \n k\n \n \n +\n \n \n M\n \n \n L\n \n \n \n \n \n \n s\n \n \n k\n \n \n +\n 1\n \n \n \n \n \u2212\n 1\n )\n \n \n \n \n \n

6: **else**

7: \begin{array}{l}\widehat{k}\leftarrow arg\underset{l=1,\dots ,K}{max}\left(\sum _{k=1,k\ne l}^{K}{w}_{k}{s}_{k}{\text{log}}_{2}\right.\left({w}_{k}{H}_{k}\frac{P+\sum _{k=1}^{K}{s}_{k}/{H}_{k}}{\sum _{k=1}^{K}{s}_{k}{w}_{k}}\right)+{w}_{l}({s}_{l}+1){\text{log}}_{2}\end{array}\left(\right.separators="">\n \n \n \n separators="">\n \n \n \n \n \n w\n \n \n l\n \n \n \n \n H\n \n \n l\n \n \n \n \n P\n +\n \n \n \u2211\n \n \n i\n =\n 1\n \n \n K\n \n \n \n \n s\n \n \n i\n \n \n /\n \n \n H\n \n \n i\n \n \n +\n 1\n /\n \n \n H\n \n \n l\n \n \n \n \n \n \n \u2211\n \n \n i\n =\n 1\n \n \n K\n \n \n \n \n s\n \n \n i\n \n \n \n \n w\n \n \n i\n \n \n +\n \n \n w\n \n \n l\n \n \n \n \n \n \n \n \n \n \n

8: **end if**

9: \left(\right.separators="">\n \n \n \n s\n \n \n \n \n k\n \n \u0302\n \n \n \n \u2190\n \n \n s\n \n \n \n \n k\n \n \u0302\n \n \n \n +\n 1\n \n

10: **end for**

Let \left(\right.separators="">\n \n N\n \n contains all subcarriers 1,…,*N* at first. In [18], *s*_{
k
}subcarriers are assigned to user *k* at one time and users get subcarriers in a row. The problem is that the last user has limited options, since better subcarriers have been taken by the previous users. Different from that, an additional iterative procedure is introduced to distribute subcarriers to users following the evaluated cardinalities from Algorithm 2. In each iteration, each user *k* obtains only \left(\right.separators="">\n \n \n \n \u015d\n \n \n k\n \n \n \n subcarriers. This number is smaller than the evaluated *s*_{
k
} and is determined by the geometric mean of {*s*_{1},…,*s*_{
K
}}. The process finishes when set \left(\right.separators="">\n \n N\n \n is empty. In doing so, each user has the chance to have subcarriers with relatively high CNRs. The complexity of our initialization is \left(\right.separators="">\n \n O\n (\n KN\n )\n \n.

##### Algorithm 2. Initialization of subcarrier assignments

1: \left(\right.separators="">\n \n \n \n \u015d\n \n \n k\n \n \n \u2190\n \u2308\n \n \n s\n \n \n k\n \n \n /\n \n \n (\n \n \n \u220f\n \n \n k\n =\n 1\n \n \n K\n \n \n \n \n s\n \n \n k\n \n \n )\n \n \n \n \n 1\n \n \n K\n \n \n \n \n \u2309\n ,\n k\n =\n 1\n ,\n \u2026\n ,\n K\n \n

2: **repeat**

3: **for** each *k*=1,…,*K* **do**

4: \left(\right.separators="">\n \n T\n \u2190\n {\n \n \n \u015d\n \n \n k\n \n \n subcarriers with the largest CNRs in\n N\n }\n \n

5: \left(\right.separators="">\n \n \n \n S\n \n \n k\n \n \n \u2190\n \n \n S\n \n \n k\n \n \n \u222a\n T\n \n

6: \left(\right.separators="">\n \n N\n \u2190\n N\n \u2216\n T\n \n

7: **end for**

8: **until**\left(\right.separators="">\n \n N\n =\n \u2205\n \n

#### Subcarrier adjustment

As before, \left(\right.separators="">\n \n K\n \n and \left(\right.separators="">\n \n Q\n \n denote the sets of RA and MA users, respectively. After the initialization, subcarrier *n* may be assigned to an MA or RA user or to no user. There are four cases of reassigning a subcarrier. First, removing a subcarrier from an MA user induces that the transmission power for this MA user increases and thus less sum rate is achieved for RA users. Second, after removing a subcarrier from an RA user, the achieved sum rate increases. Third, by adding a subcarrier to an MA user, the transmission power for this MA user decreases and hence more sum rate is achieved for RA users. Fourth, adding a subcarrier to an RA user results in an increased sum rate. Reassigning one subcarrier from one to another user is a combination of two of the four cases above.

In the inner loop of Algorithm 3, each subcarrier is successively adjusted among users to improve the objective of problem (2). This procedure repeats *I* times iteratively by the outer loop. Hence, we name our method iterative successive subcarrier adjustment (ISSA). Before each inner loop, the users are divided into sets \left(\right.separators="">\n \n K\n \n and \left(\right.separators="">\n \n Q\n \n according to the present subcarrier assignment by water filling over users as explained before. These two sets remain within one inner loop. As discussed before, if the subcarrier assignment varies, the sum power (4) for each user or the weighted sum rate in problem (11) can be recalculated by updating the associated harmonic average. Each subcarrier may be reassigned to *K*−1 users. The number of iterations *I* can be preliminarily determined. Alternatively, it can be adaptive to the channel condition and the transmission constraints by the iteration control similar to [19]. For example, the outputs of two successive iterations can be compared. If the difference is small, we return the output. For a given *I*, Algorithm 3 has complexity of \left(\right.separators="">\n \n O\n (\n KN\n )\n \n. Then, the proposed method has the overall complexity of \left(\right.separators="">\n \n O\n (\n KN\n )\n \n. Complexities are compared in Table 1, where the dual optimum to (1) has complexity \left(\right.separators="">\n \n O\n (\n N\n \n \n K\n \n \n 3\n \n \n )\n \n.

## Simulation results

In this section, simulations are performed to compare the proposed strategy to the dual optimum of (1). The simulation system consists of 128 subcarriers. Each minimum rate and each weight are uniformly distributed within [10,20] bits per OFDM symbol and [1, 10], respectively. The frequency selective channel is modeled as consisting of 16 independently Rayleigh distributed paths with an exponential decaying profile. The expected CNR of each subcarrier is normalized to −5 dB. The transmission power is limited to 20 dBW. Here, we show the performance loss of the proposed method in percent compared to the dual optimum.

For the considered multiuser resource allocation (1) and (2), Figure 3 plots the instantaneous per-symbol performance loss of the proposed heuristic solution of problem (2) compared to the dual optimum of problem (1), as \left(\right.separators="">\n \n (\n R\n \u2212\n \n \n R\n \n \u0304\n \n )\n /\n R\n \xd7\n 100\n %\n \n. As the number of iterations *I* increases, the gap between two neighboring iterations becomes smaller. It converges at *I*=5 on average in our simulation. The performance loss first increases and then decreases in the number of users for *I*=1. It only decreases in the number of users for *I*>1. As the number of users increases, user diversity grows and a higher rate can be achieved over each subcarrier. On the other hand, it is more likely that subcarriers are assigned to inappropriate users that may impact the achieved sum rate. In each iteration subcarriers are sequentially adjusted. In the case of *I*=1, once such an error occurs, it cannot be corrected. It is *not invertible*. Hence, the curve with *I*=1 first goes down due to the increase of user diversity and then goes up because of those non-invertible errors. In the cases of *I*>1, subcarriers can be readjusted several times and some errors become *invertible*. As *I* increases, more and more errors are corrected and performance is improved.

### Algorithm 3. Iterative successive subcarrier adjustment

1: **for** *i* ∈ {1,…,*I*}

2: \left(\right.separators="">\n \n (\n K\n ,\n Q\n ,\n \mu \n ,\n \n \n P\n \n \n 1\n \n \n ,\n \u2026\n ,\n \n \n P\n \n \n k\n \n \n )\n \u2190\n \n water filling over users

3: **for** each *n*∈{1,…,*N*}**do**

4: **if**\left(\right.separators="">\n \n \n \n \u2211\n \n \n k\n =\n 1\n \n \n K\n \n \n \n \n P\n \n \n k\n \n \n \n P\n \n**then**

5: adjust subcarrier *n* among MA users in \left(\right.separators="">\n \n Q\n \n to minimize \left(\right.separators="">\n \n \n \n \u2211\n \n \n k\n \u2208\n Q\n \n \n \n \n P\n \n \n k\n \n \n \n

6: **else**

7: adjust subcarrier *n* among RA users in \left(\right.separators="">\n \n K\n \n and MA users in \left(\right.separators="">\n \n Q\n \n to maximize the objective

8: **end if**

9: **end for**

10: **end for**

In [2], NM bits represent one resource water filling allocation scheme, where *M* bits are used to distinguish different available rates. There are LR \left(\right.separators="">\n \n \u2212\n \n NM data bits within *L* OFDM symbols. For the proposed strategy, KM bits are enough and \left(\right.separators="">\n \n L\n \n \n R\n \n \u0304\n \n \u2212\n KM\n \n data bits are contained in *L* OFDM symbols. If the water filling has a better performance, the following inequality must hold as

which is equivalent to

If the resource allocation is updated per frame, we define \left(\right.separators="">\n \n \n \n L\n \n \n (min)\n \n \n =\n M\n (\n N\n \u2212\n K\n )\n /\n (\n R\n \u2212\n \n \n R\n \n \u0304\n \n )\n \n, which is the minimum frame length for the case that water filling has a better performance than the proposed strategy. For comparison, we use for all *k* *w*_{
k
}=1 and *M*=6. The above inequality does not hold below the curve in Figure 4, which is much greater than 48, i.e., the frame length in WiMAX [13]. This implies that our strategy performs better for smaller *L*, i.e., fast time-varying channels. In practice, its performance is expected to be again better, since the overhead has to be transmitted at a rate much lower than the data rate to assure every user receives it correctly.

Finally, the output subcarrier assignment of the proposed heuristic method can be used to provide a solution to (1). Water filling, i.e., different powers and rates allocated to subcarriers, can be performed over the output subcarrier assignment. Then, a heuristic solution is obtained for (1). It is very close to the dual optimum of multiuser water filling (1), as shown in Figure 5. The performance loss becomes insignificant as *K* increases. The curves are the performance loss in percent compared to water filling, expressed as the ratio

It is equal to

At first, as the number of users increases, the user diversity becomes bigger and the sum rate by water filling grows significantly. Hence, the ratio above gets bigger and bigger. Then, as the number of users continues increasing, even though the user diversity still increases, the minimum require rates are more. To satisfy those minimum required rates, the sum rate becomes smaller. Thus, the ratio decreases in this range. When a subcarrier is assigned to an inappropriate user, the performance becomes worse. This probability becomes higher as the number of users increases.

It can be seen from Figures 3 and 5 that the gap between two neighboring numbers of iterations becomes smaller as *I* increases. However, it may occur that some occasional cases do not converge as *I* increases. In such a case we can set a maximum value for *I*.

## Conclusion

This article investigated resource allocation for multiuser OFDM. It proposed an equal rate allocation to the subcarriers assigned to one user. This resulted in a small signalling overhead and a low-complexity method of multiuser resource allocation. Asymptotic limits were given for the instantaneous per-symbol performance loss of the proposed strategy in the case of single-user resource allocation. With this strategy, a heuristic method was designed to maximize the weighted sum rate subject to the minimum rate constraint and the power limit. Simulations demonstrated that the proposed strategy has a better performance than water filling when channels vary rapidly. This method gave a near optimal subcarrier assignment to resource allocation problems with water filling applied. This implies that our method can be used for other resource allocation problems in multi-carrier systems with small modifications.

## References

Li Y, Stueber GL:

*Orthogonal Frequency Division Multiplexing for Wireless Communications*. Springer, New York; 2005.Gross J, Paoluzzi I, Karl H, Wolisz A: Throughput study for a dynamic OFDM-FDMA system with inband signaling. In

*Proc. IEEE VTC Spring, Volume 3*. Milan, Italy; 2004.Zhang Y, Leung C: Subchannel Power-Loading Schemes in Multiuser OFDM Systems.

*IEEE Trans. Veh. Technol*2009, 58: 5341-5347.Yu W, Cioffi JM: Constant-power waterfilling: performance bound and low-complexity implementation.

*IEEE Trans. Commun*2006, 54: 23-27.Liu K, Yin F, Wang W, Liu Y: An efficient greedy loading algorithm for adaptive modulation in OFDM systems. In

*Proc. IEEE PIMRC*. Berlin, Germany); pp. 2005Dardari D: Ordered subcarrier selection algorithm for OFDM-based high-speed WLANs.

*IEEE Trans. Wirel. Commun*2004, 3: 1452-1458. 10.1109/TWC.2004.833471Park CS, Lee KB: Transmit power allocation for BER performance improvement in multicarrier systems.

*IEEE Trans. Commun*2004, 52: 1658-1663.Seong K, Mohseni M, Cioffi JM: Optimal resource allocation for OFDMA downlink systems. In

*Proc. IEEE ISIT*. (Seattle, Washington; 2006.Xu W, Zhao C, Zhou P, Yang Y:

*Efficient adaptive resource allocation for multiuser OFDM systems with minimum rate constraints*. Glasgow, Scotland; 2007.Yu W, Lui R: Dual methods for nonconvex spectrum optimization of multicarrier systems.

*IEEE Trans. Commun*2006, 54: 1310-1322.Wunder G, Michel T: Optimal resource allocation for parallel Gaussian broadcast channels: minimum rate constraints and sum power minimization.

*IEEE Trans. Inf. Theory*2007, 53: 4817-4822.O’Hara B, Petrick A:

*IEEE 802.11 Handbook*. IEEE Press; 2005.Andrews JG, Ghosh A, Muhamed R:

*Fundamentals of WiMAX*. Prentice Hall; 2007.Boyd S, Vandenberghe L:

*Convex Optimization*. Cambridge University Press, Cambridge; 2004.Boyd S, Barratt C:

*Ellipsoid Method*. 2008. Lecture notes http://www.stanford.edu/class/ee364b/lectures/ Lecture notesLiu C, Schmeink A, Mathar R: Constant-rate power allocation under constraint on average BER in adaptive OFDM Systems.

*Proc. IEEE ICC*2010.Kiefer J: Sequential minimax search for a maximum.

*Proceedings of the American Mathematical Society*1953.Kivanc D, Li G, Liu H: Computationally efficient bandwidth allocation and power control for OFDMA.

*IEEE Trans. Wirel. Commun.*2003, 2: 1150-1158. 10.1109/TWC.2003.819016Shao RY, Lin S, Fossorier MPC: Two simple stopping criteria for turbo decoding.

*IEEE Trans. Commun*1999, 47: 1117-1120. 10.1109/26.780444

## Author information

### Authors and Affiliations

### Corresponding author

## Additional information

### Competing interests

The authors declare that they have no competing interests.

## Authors’ original submitted files for images

Below are the links to the authors’ original submitted files for images.

## Rights and permissions

**Open Access** This article is distributed under the terms of the Creative Commons Attribution 2.0 International License (https://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

## About this article

### Cite this article

Liu, C., Schmeink, A. & Mathar, R. Equal rate resource allocation for multiuser OFDM.
*J Wireless Com Network* **2012**, 344 (2012). https://doi.org/10.1186/1687-1499-2012-344

Received:

Accepted:

Published:

DOI: https://doi.org/10.1186/1687-1499-2012-344