Opportunistic Scheduling for OFDM Systems with Fairness Constraints

We consider the problem of downlink scheduling for multiuser orthogonal frequency-division multiplexing (OFDM) systems. Opportunistic scheduling exploits the time-varying, location-dependent channel conditions to achieve multiuser diversity. Previous work in this area has focused on single-channel systems. Multiuser OFDM allows multiple users to transmit simultaneously over multiple channels. In this paper, we develop a rigorous framework to study opportunistic scheduling in multiuser OFDM systems. We derive optimal opportunistic scheduling policies under three QoS/fairness constraints for multiuser OFDM systems—temporal fairness, utilitarian fairness, and minimum-performance guarantees. Our scheduler decides not only which time slot , but also which subcarrier to allocate to each user. Implementing these optimal policies involves solving a maximal bipartite matching problem at each scheduling time. To solve this problem e ﬃ ciently, we apply a modiﬁed Hungarian algorithm and a simple suboptimal algorithm. Numerical results demonstrate that our schemes achieve signiﬁcant improvement in system performance compared with nonopportunistic schemes.


INTRODUCTION
Emerging broadband wireless networks which support highspeed packet data with a different quality of service (QoS) demand more flexible and efficient use of the scarce spectral resource. In contrast to wireline networks, one of the fundamental characteristics of wireless networks is the timevarying and location-dependent channel conditions due to multipath fading. From an information-theoretic viewpoint, Knopp and Humblet showed that the system capacity can be maximized by exploiting inherent multiuser diversity in the wireless channel [1]. The basic idea is to schedule a single user with the best instantaneous channel condition to transmit at any one time. The technology has already been implemented in the current 3G systems, that is, 1xEV-DO [2] and high-speed downlink packet access (HSDPA) [3]. The idea has also recently been adopted in cognitive radio systems which are novel intelligent wireless communication systems providing highly reliable and efficient communications by exploiting unused radio spectrum [4,5].
Orthogonal frequency-division multiplexing (OFDM) is a popular multiaccess scheme widely used in DVB, wire-less LANs (e.g., 802.16, ETSI HIPERLAN/2), and ultra wideband (UWB) systems [6]. It is also a promising modulation scheme of choice proposed for many future cellular networks such as cognitive radio systems [7,8]. OFDM divides the total bandwidth into many narrowband orthogonal subcarriers, which are transmitted in parallel, to combat frequency-selective fading and achieve higher spectral utilization. OFDMA, a multiuser version of OFDM, allows multiple users to transmit simultaneously on the different subcarriers [9].
Good scheduling schemes in wireless networks should opportunistically seek to exploit the time-varying channel conditions to improve spectrum efficiency, thereby achieving multiuser diversity gain. However, the potential to transmit at higher data rates opportunistically also introduces an important tradeoff between wireless resource efficiency and level of satisfaction among individual users (fairness). For example, allowing only users close to the base station to transmit at high transmission rate may result in very high throughput, but may sacrifice the transmission of other users. Such a scheme cannot satisfy the increasing demand for QoS provisioning in broadband wireless networks.

EURASIP Journal on Wireless Communications and Networking
To solve this problem, Liu et al. described a framework for opportunistic scheduling to exploit the multiuser diversity while at the same time satisfying three long-term QoS/fairness constraints [10][11][12]. In that work, only a single user can transmit at each scheduling time. The authors of [1] show that this is optimal for single-channel systems such as TDMA. However, the same is not the case for multiplechannel systems.
In this paper, we propose an opportunistic scheduling framework for multiuser OFDM systems. We build on Liu's work by going from the single-channel to the multiplechannel case. We show how the system performance can be optimized by serving multiple users simultaneously over the different subcarriers. We focus on the downlink of an OFDM system. We derive our opportunistic scheduling policies under three long-term QoS/fairness constraints-temporal fairness, utilitarian fairness, and minimum-performance guarantees, which are similar in form to those of [12], but adapted to the setting of multiuser OFDM systems. We also state optimality conditions under each of these constraints. In particular, our scheduler decides not only which time slot but also which subcarrier to allocate to each user under the given QoS/fairness constraints. A stochastic approximation algorithm is used to calculate the control parameters online in the policies. To search over the optimal user subsets efficiently, we apply a modified bipartite matching algorithm. We also develop an efficient, low-complexity suboptimal algorithm-our experimental results illustrate that this algorithm achieves near-optimal performance. The remainder of this paper is organized as follows. In Section 2, we discuss related work on scheduling and fairness for OFDM. The system model is described in Section 3. In Section 4, we derive opportunistic scheduling policies under various fairness constraints and prove their optimality. In Section 5, we address some implementation issues, including control parameter estimation and the assignment problem that arises in implementing these policies. An optimal algorithm and an efficient suboptimal algorithm are proposed here. In Section 6, we present the numerical results to illustrate the performance of our policies. Finally, concluding remarks are given in Section 7.

RELATED WORK
Wireless scheduling has attracted a lot of recent attention. The authors of [13,14] extend the scheduling policies for wireline networks to wireless networks to provide short-term and long-term fairness bounds. However, they model a channel as being either "good" or "bad," which may be too simple in some situations. In [15][16][17], the authors study wireless scheduling algorithms when both delay and channel conditions are taken into account. Scheduling with short-term fairness constraints is also discussed in [10,18].
In [19,20], the authors present a scheduling scheme for the Qualcomm IS-856 (also known as HDR (high data rate)) system. Their scheduling scheme exploits time-varying channel conditions while satisfying a certain fairness constraint known as proportional fairness [21]. Although there has been considerable recent efforts on proportional fairness schedul-ing [22][23][24], to the best of our knowledge, there is currently no work considering multiuser OFDM systems with the three QoS fairness constraints we mentioned above. So in this paper we will focus on these three fairness constraints.
Opportunistic scheduling exploits the channel fluctuations of users. In [22], the authors use multiple "dumb" antennas to "induce" channel fluctuations, and thus exploit multiuser diversity in a slow fading environment. The authors of [25] show that with multiple antennas, transmitting to a carefully chosen subset of users has superior performance.
The resource management problem in OFDM systems has attracted a lot of research interest [26,27]. In [26], the authors propose an algorithm to minimize the total transmission power with minimum-rate constraints for users. Specifically, the algorithm allocates a set of subcarriers to each user and then determines the number of bits and transmission power on each subcarrier. In [27], the authors study the problem of dynamic subcarrier and power allocation with the objective to maximize the minimum of the users' data rates subject to a total transmission power constraint. All these studies show that dynamic resource allocation (in terms of bit, subcarrier, and power) schemes can achieve significant performance gains over traditional static allocations (such as TDMA-OFDM and FDMA-OFDM). However, none of the schemes described above exploit multiuser diversity. For delay-insensitive data service, we can expect to reap longterm performance benefits by exploiting multiuser diversity.
OFDM has been used in several applications in cognitive radio. To enhance spectrum efficiency, the spectrum pooling system allows a license owner to share underutilized licensed spectrum with a secondary wireless system during its idle times [8]. A preferred transmission mode of the secondary system is OFDM due to its inherent flexibility. In [28], the authors discuss the desired properties in designing physical layers of cognitive radio systems and claim that the modulation scheme based on OFDM is a natural approach that satisfies the desired properties.
Recently, there has been significant interest in opportunistic scheduling and fairness issues for multiple-channel systems [29][30][31][32][33]. In [31], the authors consider a totalthroughput maximization problem with deterministic and probabilistic constraints for multiple-channel systems. In [33], the authors consider opportunistic fair scheduling in downlink TDMA systems employing multiple transmit antennas and beamforming.
In [34], the authors introduce cross-layer optimization for OFDM wireless networks. The interaction between the physical layer and media access control (MAC) layer is exploited to balance the efficiency and fairness of wireless resource allocation. The authors consider proportional and max-min fairness.

SYSTEM MODEL
In this section, we describe the system model, assumptions, notation, and formulation of the scheduling problem.
The architecture of a downlink data scheduler for a single-cell multiuser OFDM system is depicted in Figure 1.

3
There is a base station (transmitter) with a single antenna communicating with N mobile users (receivers). Each user has different channel conditions over different subcarriers. By inserting pilot symbols in the downlink, the users can effectively estimate the channels. Every user should report its channel-state information over every subcarrier to the base station. All the channel-state information is sent to the subcarrier and bit allocation scheduler in the base station through feedback channels from all mobile users. The scheduling decision made by the scheduler is conveyed to the OFDM transmitter. The transmitter then assigns different transmission rates to scheduled users on corresponding subcarriers. The scheduler makes decisions once every time slot based on the channel-state information and the control parameters for fairness guarantees.
We assume that the base station knows the perfect channel-state information for each user over each subcarrier. The channel conditions for different users are usually independently varying in a multiuser system. Owing to frequency-selective fading, one user may experience deep fading in some subcarriers, but relatively good in other subcarriers. By dynamically assigning users to favorable subcarriers, the overall performance of the network can be increased from the multiuser diversity. In practice, requiring "perfect" channel-state information results in significant feedback overhead burden, which might be difficult to implement. We can view our current work as providing fundamental performance bounds on what is achievable with channel feedback.
The OFDM signaling is time slotted. The length of a time slot is fixed and the channel does not vary significantly during a time slot. The length of a time slot in the scheduling policy can be different from an actual time slot in the physical layer. It depends on how fast the channel conditions vary and how fast we want to track such changes.
We assume that there is always data for each user to receive, that is, the system has infinite backlogged data queues. We also assume that the transmission power is uniformly allocated to all subcarriers. In principle, performance can be improved further by allocating a different power level to each subcarrier. In a system with a large number of users, this improvement could be marginal because of statistical effects [22].
In this paper, we will focus on scenarios with large numbers of users, or heavy-traffic systems, where the number of users is greater than the number of available OFDM subcarriers. These scenarios can be regarded as an extreme situation for OFDM. But it is important to determine the impact of a large number of users, such as in [22]. Our goal is to maximize the system performance by exploiting the time-varying and frequency-varying channel conditions while maintaining certain QoS/fairness constraints.
Let i = 1, . . . , N be the index of users, and k = 1, . . . , K the index of subcarriers. Following [12], let ω t i,k be the instantaneous performance value that would be experienced by user i if it were scheduled to transmit over subcarrier k at time slot t. The ω t i,k comprise an N × K matrix, denoted as ω t . Usually, the better the channel condition of user i over subcarrier k, the larger the value of ω t i,k . Throughput (in terms of data rate bits/sec) is the most straightforward form of a time-varying and channel-condition-dependent performance measure. For convenience, the reader can think of throughput as the performance measure in this paper. However, our formulation applies in general. Let A = (A 1 , A 2 , . . . , A K ) represent a scheduling action, which is a vector of the indices of the users scheduled over all K subcarriers. The decision rule π t (·), which is a function of ω t , specifies which action should be chosen, that is, , where the value of A t k is the index of the user scheduled over subcarrier k at time t. We call π(·) = {π 1 (·), π 2 (·), . . . , π t (·), . . . } ∈ Π a policy, where Π is the set of all scheduling polices. Note that a policy may involve a time-varying rule for deciding scheduling actions. We are only interested in the so-called feasible policies, those that satisfy specific QoS/fairness requirements (described in the next section).
Let U T i (π) be the average throughput of user i up to time T, and R T i (π) the average resource consumption of user i up to time T, that is, , that is, U T (π) is the average overall throughput up to time T. Then we define which can be considered as the asymptotic best-case system performance of policy π.
Using the above notation, our goal can be formally stated as follows: find a feasible policy π that maximizes the system performance U(π) while maintaining certain QoS/fairness constraints. In the following section, we derive optimal policies for three categories of scheduling problems, each with a unique QoS/fairness requirement.

OPPORTUNISTIC SCHEDULING UNDER VARIOUS FAIRNESS CONSTRAINTS
Good scheduling schemes should be able to exploit the timevarying channel conditions of users to achieve higher utilization of wireless resources, while at the same time guarantee some level of fairness among users. Fairness is central to scheduling problems in wireless systems. Without a good fairness criterion, the system performance can be trivially optimized, but might prevent some users from accessing the network resource. In this section, we will study scheduling problems under three fairness criteria for multiuser OFDM systems-temporal fairness, utilitarian fairness, and minimum-performance guarantees. These categories of fairness are adopted from [12] and are extended to multiuser OFDM systems. It turns out that the form of the optimal policies here bear a resemblance to those of [12].  Figure 1: Downlink scheduling over multiuser OFDM system.

Temporal fairness scheduling
A natural fairness criterion is to give each user a certain long-term fraction of time because time is the basic resource shared among users. The problem of multiuser OFDM scheduling with temporal fairness can be expressed as where r i denotes the minimum time fraction that should be assigned to user i, with r i ≥ 0 and N i=1 r i ≤ 1. Recall that R T i (π) is the average resource consumption of user i up to time T. The r i s are predetermined and serve as the prespecified fairness constraints. The value of r i denotes the minimum fraction of time that user i should transmit over all the subcarriers in the long run, which is usually determined by the user's class, the price paid by the user, and so forth.
Define the policy π * as follows: where the control parameters v * i are chosen such that [10], we can think of v * = (v * 1 , . . . , v * N ) in (4) as an "offset" or "threshold" to satisfy the temporal fairness constraints. Under this constraint, the scheduling policy schedules the "relatively best" subset of users to transmit. The subset of users selected by action A t is "relatively best" is maximum over all actions. If v * i > 0, then user i is an "unfortunate" user, that is, the channel conditions it experiences over all subcarriers are relatively poor. (e.g., it is far from the base station.) Hence, it has to take advantage of other users (e.g., users with v * i = 0) to satisfy its fairness requirement. But to maximize the overall system performance, we can only give the "unfortunate" users their minimum time-fraction requirements, hence condition 3.
The policy π * defined in (4), which represents our opportunistic scheduling policy, is optimal in the following sense.
exists for all i for π * , then the policy π * is an optimal solution to the problem defined in (3), that is, it maximizes the average OFDM system performance under the temporal fairness constraints.
Proof. Let π be a policy satisfying the temporal fairness constraints, and let v * i satisfy conditions 1-3. Hence, we have By the definition of π * , we have Thus, Therefore, Since where the second part of (11) equals zero because of condition 3 on v * i .
Inequalities (5) It is possible that the optimal policy is confronted with a tie between two or more users. When ties occur in the argmax in the policy, they can be broken arbitrarily.

Utilitarian fairness scheduling
In the last section, we studied the opportunistic scheduling problem for multiuser OFDM with temporal fairness constraints. In wireline networks, when a certain amount of resource is assigned to a user, it is equivalent to granting the user a certain amount of throughput. However, the situation is different in wireless networks, where the performance value and the amount of resource are not directly related. Therefore, a potential problem in wireless network is that the temporal fairness scheme has no way of explicitly ensuring that each user receives a certain guaranteed fair amount of utility. Hence, in this section, we will describe an alternative scheduling problem that would ensure that all users get at least a certain fraction of the overall system performance.
The problem of multiuser OFDM scheduling with utilitarian fairness can be expressed as where a i denotes the minimum fraction of the overall average throughput required by user i, with a i ≥ 0 and N i=1 a i ≤ 1. Recall that U T i (π) is the average throughput of user i up to time T using policy π, and U(π) is the average overall throughput. The a i 's are predetermined fairness constraints here. This constraint requires long-term fairness in terms of performance value (throughput) instead of resource consumption (time) as in Section 4.1.
We define the policy π * as follows: where κ = 1 − N i=1 a i γ * i , and the control parameters γ * i are chosen such that , then γ * i = 0, for all i. Analogous to v * in the last section, γ * = (γ * 1 , . . . , γ * N ) in (14) can be considered as a "scaling" to satisfy the utilitarian fairness constraints. The scheduling policy always schedules the "relatively best" subset of users to transmit. Here, the subset of users selected by action A t is "relatively best" if is maximum over all actions. If γ * i > 0, then user i is an "unfortunate" user, and its average performance value equals its minimum requirement.
The policy π * defined in (14), which represents our opportunistic scheduling policy, is optimal in the following sense.

Theorem 2. If lim T→∞ U T
i (π * ) exists for all i for π * defined in (14), then the policy π * is an optimal solution to the problem defined in (13), that is, it maximizes the average OFDM system performance under the utilitarian fairness constraints.
Proof. Let π be a policy satisfying the utilitarian fairness constraints, and let γ * i satisfy conditions 1-3. Hence, we have

EURASIP Journal on Wireless Communications and Networking
Therefore, where the second part of (17) equals zero because of condition 3 on γ * i . Similar to the proof of Theorem 1, the properties of lim sup and lim inf are applied here.

Minimum-performance guarantee scheduling
So far, we have discussed two optimal multiuser OFDM scheduling policies that provide users with different fairness guarantees. However, while they satisfy a relative measure of performance (e.g., fairness), they do not consider any absolute measures such as data rate. This motivates the study of a category of scheduling problems with minimumperformance guarantees [11,35].
The problem to maximize the OFDM system performance while satisfying each user's minimum performance requirement can be stated as max π∈Π U(π) subject to lim inf where C = {C 1 , C 2 , . . . , C N } is a feasible predetermined minimum-performance requirement vector. Feasible here means that there exists some policy that solves (18). The QoS constraints here offer users a more direct service guarantee. For example, a user requires a minimum data rate guarantee, then the performance measure here can be data rate. Every user is guaranteed a minimum data rate, which may be more appealing from the user viewpoint. However, it can be quite difficult in practice to apply because of the difficulty to determine if a requirement vector is feasible.
Suppose C = {C 1 , C 2 , . . . , C N } is feasible. We define the policy π * for the problem in (18) as follows: where the control parameters β * i are chosen such that (1) β * i ≥ 1, for all i; Note that the parameter β * = (β * 1 , . . . , β * N ) "scales" the performance values of users, and the scheduling policy always schedules the "relatively best" subset of users to transmit. Here, the subset of users selected by action A t is "rel- is maximum over all actions. If β * i > 1, then user i is an "unfortunate" user, and it is granted only its minimum-performance requirement.
The policy π * defined in (19), which represents our opportunistic scheduling policy, is optimal in the following sense.

Theorem 3. If lim T→∞ U T
i (π * ) exists for all i for the π * defined in (19), then the policy π * is an optimal solution to the problem defined in (18), that is, it maximizes the average OFDM system performance under the minimum-performance guarantee constraints.
Proof. Let π be a policy satisfying the minimum-performance guarantee constraints, and let β * i satisfy conditions 1-3. Hence, we have By the definition of π * , we get Therefore, where the second part of (22) equals zero because of condition 3 on β * i . Similar to the proof of Theorem 1, the properties of lim sup and lim inf are applied here.

IMPLEMENTATION ISSUES
In this section, several implementation issues including parameter estimation and efficient policy search methods will be considered. An optimal algorithm and a low-complexity suboptimal algorithm are developed here for policy search.

Control parameter estimation
The opportunistic scheduling policies described in Section 4 involve some control parameters to be estimated online: v * in temporal fairness, γ * in utilitarian fairness, and β * in the minimum-performance guarantee policy. Those parameters Input: anN × K nonnegative matrix [c ik ].

Step 1:
initialization: (a) Append (N − K) all-zero columns to the matrix. (b) In each row, subtract the smallest entry from every entry in that row. In each column, subtract the smallest entry from every entry in that column.

Step 2:
cover all zeros with the minimum number of (horizontal and/or vertical) lines. If the minimum number = N, go to Step 4.

Step 3:
subtract the smallest uncovered entry from every uncovered entry; add it to every intersection of lines. Go to Step 2.

Step 4:
make the assignment at zeros. If any row or column has only one 0, make that assignment. Cross out the corresponding row and column, and move to the next assignment. are determined by the distribution of performance value matrix {ω t } and the predetermined constraints. In practice, the distribution is unknown, and hence we need to estimate the control parameters.
In [12], Liu et al. give a practical stochastic approximation technique to estimate such parameters. The basic idea is to find the root of a unknown continuous function f (x). We approach the root by adapting the weighted observation error. For example, for user i in temporal fairness scheduling, the base station updates the parameter v t+1 using a stochastic approximation algorithm v t+1 where, for example, the step size t = 1/t. The initial estimate v 1 can be set to 0 or some value based on the history information.
Using standard methods, it can be shown that v t converges to v * with probability 1 [36]. The computation burden above is O(N) per time slot, where N is the number of users, which suggests that the algorithm is easy to implement online. For our OFDM scheduling schemes, we have found that this stochastic approximation algorithm also works well. For the detailed procedure, we refer the reader to [12].

Optimal user subset search methods
In our optimal OFDM policies (e.g., in the temporal fairness policy), all the "relative performance values" (ω t i,k + v * i ), denoted c ik for convenience, comprise an N × K matrix [c ik ]. Therefore, the operator arg max A t is to find an action A t that indicates which K elements in [c ik ] have the maximal sum over all K selected elements. This operator is obviously different from the arg max i in [12], which simply returns the index of the largest element from a vector. It is straight forward to compute the arg max if no hard physical limitations are considered. The operator can simply select the largest K elements. However, a common physical constraint is that in any time slot, the scheduler cannot assign two users to the same subcarrier, or two subcarriers to the same user. Mathematically, at any time slot t, for any two subcarriers j and k, j / =k ⇔ A t j / =A t k . When this physical constraint is considered, the computation of the arg max in the optimal policy is nontrivial. A brute-force approach is exhaustively searching over the ( N K ) possible assignments, which obviously has very high computational complexity. Since this optimal user subset search operation should be performed online at each slot, we need to use more efficient algorithms.
It turns out that the problem of computing the arg max can be posed as an integer linear program (ILP) [37]: where the decision variables x ik indicate which elements to choose, and the weights c ik are relative performance values defined above. This problem is called the maximal weighted bipartite matching problem in graph theory, or the assignment problem in combinatorial optimization [38].
It is interesting to see that the arg max operator in optimal multiuser OFDM scheduling problem can be interpreted as a graph problem (U, S, E, w), where U represents the set of all users, S represents the set of all subcarriers, and E represents the set of all the feasible choices for specific users to select specific subcarriers. Each choice in E is weighted by a function w(E). The problem is to find a matching M ∈ E for U and S that maximizes the sum of the weights over all edges in M.
The Hungarian algorithm is one of many algorithms that have been devised to solve the assignment problem in polynomial time (O(N 3 ) when N = K) [39]. We modify the Hungarian algorithm to solve our general unbalanced (N ≥ K) problem here by introducing a number of slack variables to convert the ILP problem into standard form. Note that the standard form ILP with the slack variables is algebraically equivalent to the original problem [41]. It is proven in [39] 8 EURASIP Journal on Wireless Communications and Networking that the Hungarian algorithm can always find the maximum assignment, that is, it is an optimal solution to this problem. Algorithm 1 is our modified Hungarian algorithm.
Ideally, the OFDM scheduler should repeat the above procedure at every scheduling slot. However, this still poses a heavy computational burden on the base station. Hence suboptimal algorithms with lower complexity are of interest for practical implementation.
We develop a suboptimal algorithm called "max-max" to perform the above arg max operation with much lower complexity. This algorithm is a variation of the "min-min" method for task mapping in heterogeneous computing [42]. The basic idea is this: first, find the overall maximal element in the matrix [c ik ], then assign the corresponding subcarrier to the corresponding user. Next, remove the newly assigned user-subcarrier pair from the selection table. In other words, the corresponding row and column are removed from the matrix. Continue to repeat the above procedure on the reduced matrix until all subcarriers are assigned. In the simulations in the next section, the suboptimal scheme shows near-optimal performance with a lower complexity.

SIMULATION RESULTS
In this section, we present numerical results to illustrate the performance of the various OFDM scheduling schemes developed in this paper. For the purpose of comparison, we also simulate two special scheduling policies. Round-robin [43] is a nonopportunistic scheduling policy that schedules users over all subcarriers in a predetermined order. It is simple but lacks flexibility. The round-robin policy can serve as a performance benchmark to measure how much gain results from using our opportunistic scheduling policies. The other policy for comparison is a greedy scheduling scheme that always selects the user with the maximum performance to transmit for each subcarrier at each time slot. The greedy policy will in general violate the QoS/fairness constraints, but provide an upper bound on the system performance. It is used here to expose the tradeoff between the QoS constraints for individual users and the overall system throughput. The more relaxed the fairness constraints, the higher the overall achievable throughput, therefore, the closer to what we will get to the performance of the greedy scheme.
In our simulation, we consider the downlink of a heavytraffic single-cell OFDM system with fixed 64 subcarriers. There is one base station serving all the users in the cell. Each user suffers from multipath Rayleigh fading with the bad-urban (BU) scenario of the COST 259 channel model [44,45], and we assume a path-loss exponent of four. Every user is assumed to be stationary or slowly moving so that the maximum Doppler shift is 20 Hz. The performance value, used by different users usually is a nondecreasing function of their SINR, and can be in various forms, such as linear functions, step functions, or S-shape functions. For simplicity, here we take all the performance values as linear functions of users' SINR (in dB). We assume that the physical limitation on scheduling discussed in Section 5.2 applies: at each time slot, no two users can be scheduled on the same subcarrier and each user is scheduled exactly one subcarrier.

Performance gain
First, we assume the locations of all users are distributed uniformly in the cell, and examine the impact of the number of users on the average system throughput. We use the roundrobin policy as the baseline, and define the system throughput gain as (U S − U R )/U R , where U S and U R denote the average system throughput of a given scheduling policy and the round-robin policy, respectively. Figure 2 shows the system through put gain relative to round-robin from the different policies in the temporal fairness scheduling simulations. For the purpose of simulation, we assume the time-fraction assignment is done using fair sharing, that is, the total resources are evenly divided among the users. Therefore, if there are N users in the cell, we set r i = 1/N for all users. From Figure 2, it is evident that the system throughput gain increases with the number of users. This is reflective of the multiuser diversity gain. For 64 users, our optimal policy (Hungarian) achieves about 46% overall throughput gain, while the greedy policy has an improvement of 101%. This is not surprising since the greedy policy achieves the highest overall performance at the cost of unfairness among the users. The suboptimal policy (maxmax) shows surprisingly near-optimal performance. Its performance gap with the optimal policy is less than 1-2%, and even smaller when we increase the number of users. Figure 3 shows the system throughput gain relative to round-robin from the different policies in the utilitarian fairness scheduling simulations. We also assume fair sharing in the throughput-fraction assignment. This means we set a i = 1/N for all users in an N-user system. As expected, the increasing trend similar to Figure 2 can be also seen here. For 64 users, our optimal policy (Hungarian) achieves about 32% overall throughput gain, while the greedy policy has an Zhi Zhang et al.  improvement of 102%. The suboptimal policy (max-max) also improves the system performance by 27%. Next, we investigate the performance of the opportunistic scheduling schemes with minimum-performance guarantees. First, we run the simulation for 1, 000, 000 time slots using the round-robin policy, where the resource (time) is equally distributed among all users. Then, we compute an average performance value and use it as the minimumperformance requirement for each user. It is easy to see that this minimum-performance requirement vector is feasible. Figure 4 shows the system throughput gain relative to round-robin from the different policies in the minimumperformance guarantee scheduling simulations. For 64 users, our optimal policy (Hungarian) achieves about 31% overall throughput gain, while the greedy policy (which violates the minimum-performance requirements) has an improvement of about 100%. The suboptimal policy (max-max) also performs well with 24% overall gain.

Fairness
Using the temporal fairness scheduling scenario as an example, we study the fairness among the users by applying the different policies. We use the same single-cell system with 64 subcarriers, and there are 128 users in the system. The users are divided into three "distance" groups. Users 1-48 belong to the "far" group, users 49-80 belong to the "middle" group, and users 81-128 belong to the "near" group. Obviously a user in the "near" group has a much higher probability to get a strong SINR than a user in the "far" group. We set all users to have the same minimum timefraction requirement. Specifically, each user has a resource (time) requirement r i = 2/(3N) for an N-user system, where i r i = 2/3 < 1. Therefore, the system has the freedom to as-  sign the remaining 1/3 portion of the resource to some "better" users (beyond their minimum requirements) to further improve the system performance. Figure 5 indicates the amount of resource consumed by selected users in the temporal fairness scheduling simulations. The first bar represents that of round-robin, where the resource is equally shared by all users. The second bar represents our optimal policy (Hungarian). The third bar is the greedy policy. The rightmost bar shows the minimum requirements of user. The second bar is higher than the fourth bar for all the users, which indicates that our temporal fairness optimal scheduling policy meets the minimum timefraction requirements for all users. In the greedy policy, users 1, 16, and 32 get very little resource (far below the minimum requirement line) while users 88, 96, and 128 have very large shares. As expected, the greedy algorithm is heavily biased though it achieves the highest overall performance.
In the following, we simply check the fairness among the users with utilitarian fairness and minimum-performance guarantee scheduling. We use the same cellular system and user group settings as temporal fairness.
In Figure 6, we show the average performance values of selected users in the utilitarian fairness scheduling simulations. The preset performance requirements of the selected users 1, 16, 32, 56, 64, 88, 96, and 128 are [0.001, 0.002, 0.001, 0.003, 0.003, 0.004, 0.005, 0.005]. The values represent the minimum fraction of overall average performance for individual users.
In Figure 7, we show the average performance values of selected users in the minimum-performance guarantee scheduling simulations. Similar to the previous section, we first run a round-robin simulation, then use the obtained average performance as minimum-performance requirement for each user. From the figure, we see that our optimal  scheduling policy (Hungarian) meets all the requirements and outperforms round-robin policy everywhere.
In summary, the simulation results show that using our OFDM opportunistic scheduling policies, the system can achieve significant performance gains over the nonopportunistic round-robin policy while satisfying the various QoS/fairness requirements. Also, the low-complexity suboptimal policy shows near-optimal performance in every scenario.

CONCLUSIONS
Opportunistic transmission scheduling is a promising technology to improve spectrum efficiency by exploiting timevarying channel conditions. We investigated the application of opportunistic scheduling in multiuser OFDM systems, which dynamically allocates resource in both temporal and spectral domains. Optimal scheduling policies were presented and proven to be optimal under the temporal fairness, utilitarian fairness, and minimum-performance QoS constraints. We developed optimal and suboptimal algorithms to implement these optimal policies efficiently. The simulation showed that the schemes achieve improvements of about 30%-140% in network efficiency compared with a scheduling scheme that does not take into account channel conditions. Scheduling problems with multiple mixed QoS/fairness constraints will be interesting to tackle as future work and is definitely of practical interests. For example, a user might ask for both minimum temporal fraction and minimum performance guarantees. Or a user might be constrained by both maximum and minimum requirements of wireless resource. We also plan to investigate the significant feedback overhead involved in assuming perfect channel-state information feedback in OFDM systems, especially in fast fading channels. Scenarios with relatively small numbers of users in the system will also be explored. That means two or more subcarriers could be available for each user. The effects of finite-length data arrival queues or explicit delay requirement for certain users also will be studied. The application of multiplechannel opportunistic scheduling for MAC layer QoS control in cognitive radio systems will be considered in our future work.