Proportional fair scheduler for OFDMA wireless systems with QOS constraints

Information

  • Patent Application
  • 20070248048
  • Publication Number
    20070248048
  • Date Filed
    April 20, 2007
    17 years ago
  • Date Published
    October 25, 2007
    16 years ago
Abstract
Available bandwidth and power for users demanding real time and non-real time data traffic are scheduled, while maximizing proportional fairness for the users over a plurality of time slots, and meeting quality of service constraints for real time data traffic users. The Lagrangian multipliers are used to define a function which includes the proportional fair capacity over the plurality of time slots, and the total power, the total bandwidth, and rate of the real time users' constraints. A maximum of the function is determined for each time slot by binary searching two parameters while observing the total power and total bandwidth. An optimal allocation of the bandwidth and power for the time slot is calculated using the two parameters.
Description

BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a diagram of a wireless communication system, according to an embodiment.



FIG. 2 is a functional block diagram of a base station unit in a wireless communication system, which in the MAC layer includes a scheduler, according an embodiment.



FIG. 3 is a flow chart of an OFDMA scheduler, according to one embodiment.



FIG. 4 is a diagram of a multicarrier wireless communication apparatus, according to an embodiment.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS


FIG. 1 is a diagram of a wireless communication system, in which the embodiments may be used. A base station 105 (illustrated as an outdoor antenna), can receive simultaneously data 100a, 100b, 100c, . . . , 100n addressed to a plurality of users 110a, 110b, 110c, . . . , 110n. The base station 105 receives queue state information of incoming signals, and channel state information of users, and allocates resources for each of the incoming and outgoing signals. Within the OFDMA framework, the resources allocated to the users come in three dimensions: time slots, frequency (bandwidth) and power. This requires the scheduler to operate with higher degree of freedom and more flexibility, and potentially higher multiplexing capacity. The scheduling embodiments take full advantage of the degree of freedom possible in the OFDMA systems. The scheduling rules must apply differently depending on the QoS requirements and the heterogeneous traffic. The multicarrier proportional fair scheduling methods aim to satisfy heterogeneous stability and delay requirements. More particularly, in contrast to the existing scheduling methods that may optimize the proportional fairness only for a single time slot, the embodiments ensure proportional fairness in a long term (over multiple time slots), and also meet the QoS requirements of a real time traffic such as VoIP.


The WirelessMAN-OFDMA at the physical layer is a multicarrier scheme where multiple access is provided by assigning a subset of carriers to each receiver (e.g. a subscriber station or a mobile station) at each time slot. Therefore, more than one user can receive service in each time slot. The number of carriers is variable (2048, 1024, 512 and 128) depending on the bandwidth size. The total bandwidth B is divided into K subchannels, each including a group of carriers. There are two classes of subchannelization methods. The first class is Adaptive Modulation and Coding (AMC). In this method a number of carriers adjacent on the frequency spectrum are grouped into a Band AMC subchannel. In a multipath fading channel, different subchannels experience different levels of fading. Achievable rates can be maximized by adjusting the modulation and coding rate according to the fading level for each subchannel. The second class includes Partial Use of Subchannels (PUSC) and Full Use of Sub-channels (FUSC), which are diversity permutation schemes that distribute the sub-carriers of a subchannel pseudo-randomly in a wide frequency band. These methods provide frequency diversity and inter-cell interference averaging, which minimizes the performance degradation due to fast fading characteristics of mobile environments. PUSC is the default mode of subchannelization and is more suitable for mobile users than AMC. The scheduler and methods described herein use the second class of subchannelization methods, i.e. PUSC/FUSC.


Consider a wireless downlink system, where a base station 105 transmits to respective users 110a-n as in FIG. 1. FIG. 1 illustrates a downlink, but embodiments are also applied to uplink. Downlink refers to the transmission from a base station to the users. Uplink refers to the transmission from the users to the base station. In both the uplink and the downlink direction, the total bandwidth may be limited and has to be distributed (shared) by the plurality of users. In the downlink direction the total transmission power of the base station may be limited and has to be distributed to the users, so the summation of the power assigned to these users is no greater than a threshold (total transmission power of the base station). In the uplink direction, each user station may be subject to its own maximal transmission power limit. The limit on the total transmission power from multiple user stations connected to a base station may also apply, if the interference caused to adjacent base stations need to be controlled.


The noise and interference power density for user i is Nio, and the channel gain averaged over the entire band from the BS to user i is hi, where hi includes path loss, shadowing (lognormal fading) and fast fading. Users from two generic classes of users are scheduled. Users in the class UD are data users and they do not have real time traffic or delay requirements. Users in class UR are users with real time data traffic (like VoIP and/or streaming video), and they have requirements on delivered rates and packet latency. According to an aspect of an embodiment, the system is time slotted with time slot length TS. The scheduler makes a resource allocation (bandwidth and/or transmission power) decision at each time slot. An active period in a voice conversation and file size can be both very long with respect to the time slot size. Therefore, for optimizing the resource allocation, the number of active voice and data sessions is limited. If the system estimates that not enough resources are available to accommodate all the users, additional resources may be imported or users may be dropped.



FIG. 2 is a functional block diagram of a base station unit 105 in a wireless communication system according to IEEE 802.16 family of standards, in which MAC layer 202 includes a scheduler 252 according to an embodiment. Three main functional layers of the base station unit 105 can be a physical layer 201, which may receive incoming signals from an outdoor antenna, a media access control (MAC) 202 and a network layer 203. These functional layers are implemented in the base-station 105. The physical layer may be connected to an outdoor unit, such as a radio/antenna system 100.


As illustrated in FIG. 2, the MAC layer 202 may include modules performing functions such as queue management 262, authentication, authorization and accounting (AAA) 212, channel state monitoring 222, Automatic Repeat reQuest (ARQ) 232, and hand-over 242, according to IEEE 802.16. The MAC layer 202 also includes a scheduler 252 scheduling the subchannels (i.e. the bandwidth and/or the power allocation) according to various embodiments. According to an aspect of the embodiments, the scheduler 252 is implemented in a wireless communication system according to IEEE 802.16e. However the claimed embodiments are not limited to IEEE. 802.16e systems and can be applied to any wireless communication system employing OFDMA.


The scheduler 252 may perform jointly Adaptive Power Allocation (APA) and Dynamic Subchannel Assignment (DSA). IEEE 802.16 standards allow several combinations of modulation and coding rates that can be used depending on the signal to noise ratio. Base station 105 allocates the available power and rate among users, where pi(t) and wi(t) are the power and bandwidth allocated to user i in time slot t. According to an embodiment, for example, every power and rate pair, the highest allowed modulation and coding scheme is used. As a result, optimal transmission rate becomes an increasing and concave function of the signal to noise ratio. The scheduler 252 assumes initially that the bandwidth and power are continuous, and then discrete and finite modulation schemes are considered.


The formalism employed by the scheduler 252 is explained below. Based on this formalism, the scheduler 252 allocates bandwidth and/or power in each time slot.


The channel capacity to a user i at slot t can be expressed as a function of bandwidth wi(t) and transmission power pi(t) assigned to user i;











r
i



(



w
i



(
t
)


,


p
i



(
t
)



)


=



w
i



(
t
)






log
2



(

1
+

β





p
i



(
t
)





h
i



(
t
)





N
i
0




w
i



(
t
)






)


.






(
5
)







N0i is the noise and interference power density at the receiver i. The reason for using this model (i.e., the above expression of the capacity) is its simplicity, and also because the typical set of coding and modulation schemes follow the same trend with an offset in signal to noise ratio (SINR). The parameter 0<β<1 compensates the rate gap between Shannon capacity and rate achieved by practical modulation and coding techniques and can be determined from comparing the required receiver sensitivity for different coding and modulation schemes and the Shannon channel capacity.


The scheduler 252 optimizes the resources (i.e., bandwidth and power in each time slot) allocation with long term proportional fairness (i.e. fairness that considers rate history of users, rate in prior time slots) for N users. The system, as a Markov decision type of system, has a state R(t−1)=[R1(t−1), R2(t−1), . . . , RN(t−1)], where R(t−1)εR+N. The control variables u(t)=(p(t), w(t)) are vectors of power and bandwidth allocation at slot t denoted as p(t)=[p1(t), p2(t), . . . , pN(t)], w(t)=[w1(t), w2(t), . . . , wN(t)]. The control space is denoted by U where






U
=

{

p
,


w


:






i
=
1

N








p
i



(
t
)





P

,





i
=
1

N








w
i



(
t
)




W

,






wi(t)≦W, pi(t)≧0, wi(t)≧0, ∀i), where P and W are the total available power and bandwidth. The state (past user rates) is updated at each time slot according to an exponential averaging formula:












R
i



(
t
)


=


α







R
i



(

t
-
1

)



+


(

1
-
α

)




w
i



(
t
)





log
2



(

1
-




p
i



(
t
)





h
i



(
t
)





N
i
0




w
i



(
t
)





)





,


i

,
t




(
6
)







where the initial state R(0) is a constant (possibly 0). This way, both the current rate corresponding to the most recent time slot, and rates given to the user in the past are considered. The highest consideration is given to the current rate r(t), observed at time t. The rates received at the past t−1, t−2, . . . carry diminishing importance.


According to an aspect of the embodiment, in the proportional fair capacity as previously defined (Equation 4), the instantaneous rate ri(t) is replaced with for example, averaged rate Ri(t). However, the prior art methods did not consider the user rates in a historical perspective (over a plurality of time slots). Therefore, the embodiments ensure long term fairness and not fairness as determined by a sole time slot as in the prior art methods.













C


(

R


(
t
)


)


=




i
=
1

N







ln







R
i



(
t
)










=




i
=
1

N







ln


(


α







R
i



(

t
-
1

)



+


(

1
-
α

)




w
i



(
t
)





log
2



(

1
+


β







p
i



(
t
)





h
i



(
t
)





N
i
0




w
i



(
t
)





)




)









=




i
=
1

N







ln







R
i



(

t
-
1

)




(

α
+



(

1
-
α

)




w
i



(
t
)





log
2



(

1
+


β







p
i



(
t
)





h
i



(
t
)





N
i
0




w
i



(
t
)





)





R
i



(

t
-
1

)




)









=


C


(

R


(

t
-
1

)


)


+




i
=
1

N







ln






(

α
+



(

1
-
α

)



w
i




log
2



(

1
+


β







p
i



(
t
)





h
i



(
t
)





N
0



w
i




)





R
i



(

t
-
1

)




)











(
7
)







Greedy schemes are used, in the sense that at slot t, the proportional fair capacity C(R(t)) is maximized without considering the future time slots t+1, t+2, etc., but the prior time slots t−1, t−2, etc. are considered. Only the sum term in Equation 7 is maximized:











max


p


(
t
)


,

w


(
t
)









i
=
1

N







ln
(

α
+



(

1
-
α

)



w
i




log
2



(

1
+


β







p
i



(
t
)





h
i



(
t
)





N
0



w
i




)





R
i



(

t
-
1

)




)



,

i
.
e
.

,






max


p


(
t
)


,

w


(
t
)









i
=
1

N








(

α
+



(

1
-
α

)




w
i



(
t
)





log
2



(

1
+


β







p
i



(
t
)





h
i



(
t
)





N
i
0




w
i



(
t
)





)





R
i



(

t
-
1

)




)

.







(
8
)







The maximum of the fair capacity is achieved only when all the available power and bandwidth are used.


According to the above formula (8), the throughput for data user is maximized, while the long term fairness among different users is maintained. As an example, this scheduling approach is applicable to FTP users having large amount of non-real time data to be transferred.


However, for a user with real time data traffic like VoIP and Video, different from non-real time data users, only maximizing the long term service rates with the proportional fair constraint may not be enough, and according to an aspect of an embodiment QoS requirements are also satisfied. The QoS requirements (e.g., without limitation, transmission rate and/or packet latency) for a real time user can be specified using a required minimum transmission rate rio(t) which may be updated time slot by time slot. For instance, if a VoIP user has not received any packet for a few time slots, the packet at the head of its transmission queue has experienced some delay close to latency requirements of the VoIP user, and, therefore, the packet should be transmitted at the next time slot. This transmission requirement can be reflected by updating the required transmission rate at the next time slot. This transmission rate requirement rio is added as a constraint to the optimization problem when both, non-real time data service and real time data service are required by the users. A user may demand either non-real time data traffic or real time data traffic. If a user requires both non-real time data and real time data traffic, the user can be considered as two users, where one user demanding non-real time data traffic and the other user demanding real time data traffic.


Assume UD is the set of users that demand non-real time data service, and UR is the set of users that demand real time service (like VoIP or video). Let ni=Ni0/hi be the normalized noise and interference level. When both types (i.e., non-real time data and real time) of traffic need to be scheduled, the resource allocation optimization problem becomes to find p*,w* for which











max

p
,
w







i


U
D












(


α
i

+



(

1
-

α
i


)




w
i



(
t
)





log
2



(

1
+








p
i



(
t
)





n
i




w
i



(
t
)





)




R
i



)









subject





to





(
9
)










i



U
D



U
R






p
i
*



P




(
10
)










i



U
D



U
R






w
i
*



W




(
11
)










w
i
*



(
t
)





log
2



(

1
+








p
i
*



(
t
)





n
i




w
i
*



(
t
)





)






r
i
o



(
t
)



,

i


U
R






(
12
)








p
i
*



(
t
)


,



w
i
*



(
t
)



0

,



i



U
D




U
R

.








(
13
)







Note that equation (9) implies













α
i



R
i


+


(

1
-

α
i


)



(




w
i



(
t
)





log
2



(

1
+








p
i



(
t
)





n
i




w
i



(
t
)





)



-

r
i
o


)



>
0

,



i



U
D

.







(
14
)







It is not guaranteed that a solution can be found to satisfy both equations 12 and 14. Since the objective function is an increasing function of (p(t), w(t)), the maximum is achieved when the power, bandwidth and rate constraints (10, 11, 12) are all met with equality. Any inequalities are replaced with equalities below.


A feasible set of (p(t),w(t)) can be the set of power and bandwidth distribution per user such that:














w
i



(
t
)





log
2



(

1
+







β







p
i



(
t
)






n
i




w
i



(
t
)





)






[

-



R
i



α
i



1
-

α
i




]

+


=

ρ
i
0


,



i


U
D







(
15
)










w
i



(
t
)





log
2



(

1
+








p
i



(
t
)





n
i




w
i



(
t
)





)





r
i
0


,



i


U
R







(
16
)











i



U
D



U
R







p
i
*



(
t
)




P

,





i



U
D



U
R







w
i
*



(
t
)




W

,


p
i
*



(
t
)


,



w
i
*



(
t
)



0

,



i



U
D



U
R








(
17
)







A feasible problem of distributing bandwidth and power resources is a problem for which the set (p(t),w(t)) is not empty.


Assuming that the problem is feasible, a Lagrangian function incorporating the power, bandwidth and/or rate constraints can be written










L


(

w
,
p
,

λ
p

,

λ
w

,

λ
v


)


=





i


U
D





(


α
i

+



(

1
-

α
i


)




w
i



(
t
)





log
2



(

1
+








p
i



(
t
)





n
i




w
i



(
t
)





)




R
i



)


+


λ
p



(

P
-




i



U
D



U
R







p
i



(
t
)




)


+


λ
w



(

W
-




i



U
D



U
R







w
i



(
t
)




)


+




i


U
R







λ
i
v



(




w
i



(
t
)





log
2



(

1
+








p
i



(
t
)





n
i




w
i



(
t
)





)



-


r
i
0



(
t
)



)


.







(
18
)







The derivatives of the Lagrangian (18) with respect to pi,wi for all users, λp, λw, and λvi for real time users, are zero when the Lagrangian is at its maximum.


For non-real time data user iεUD,














L


(


p


(
t
)


,

w


(
t
)


,

λ
p

,

λ
w

,

λ
v


)







p
i



(
t
)








(


p
*

,

w
*


)



=

0
=
















L
*


λ
p


=





n
i




w
i
*



(
t
)



+

β







p
i
*



(
t
)





β





ln





2




(




R
i




α
~

i




w
i



(
t
)



+


log
2



(

1
+


β







p
i
*



(
t
)





n
i




w
i
*



(
t
)





)



)














L


(


p


(
t
)


,

w


(
t
)


,

λ
p

,

λ
w

,

λ
v


)







w
i



(
t
)








(


p
*

,

w
*


)



=

0
=







(
19
)









L
*


λ
w


=



(



n
i




w
i
*



(
t
)



+

β







p
i
*



(
t
)




)



(



R
i




α
~

i


+



w
i
*



(
t
)





log
2



(

1
+


β







p
i
*



(
t
)





n
i




w
i
*



(
t
)





)




)





(



n
i




w
i
*



(
t
)



+

β







p
i
*



(
t
)




)



log


(

1
+


β







p
i
*



(
t
)





n
i




w
i
*



(
t
)





)



-


β

ln





2




x
i
*













where






α
~


=





α
i


1
-

α
i



.




Let







Λ
p


=


L
*


λ
p




,


and






Λ
w


=



L
*


λ
w


.







(
20
)







By dividing equation (19) with equation (20), for each iεUD the following type of relation holds:












Λ
p


Λ
w


=


Λ
a

=



n
i


β





ln





2




(



(

1
+

x
i
*


)



log


(

1
+

x
i
*


)



-


β

ln





2




x
i
*



)




,






where






x
i
*


=


β







p
i
*



(
t
)





n
i




w
i
*



(
t
)









(
21
)







denotes the optimal effective SINR, which is the SINR multiplied by the SINR gap parameter β.


For real time users iεUR, applying similar processing yields the following relations:













L


(


p


(
t
)


,

w


(
t
)


,

λ
p

,

λ
w

,

λ
v


)







p
i



(
t
)




=


0



λ
p


λ
i
v



=


β


n
i


ln





2




1

1
+


β







p
i
*



(
t
)





n
i




w
i
*



(
t
)












(
22
)











L


(


p


(
t
)


,

w


(
t
)


,

λ
p

,

λ
w

,

λ
v


)







w
i



(
t
)




=


0



λ
w


λ
i
v



=



log
2



(

1
+


β







p
i
*



(
t
)





n
i




w
i
*



(
t
)





)


-




β







p
i
*



(
t
)





n
i




w
i
*



(
t
)





1
+


β







p
i
*



(
t
)





n
i




w
i
*



(
t
)








1

ln





2













Using







Λ
p


Λ
w



=


λ
w


λ
p







(
23
)







and dividing equations (23) to equation (22) for all iεUR yields the relations:











Λ
p


Λ
w


=


Λ
a

=



n
i


β





ln





2





(



(

1
+

x
i
*


)



log


(

1
+

x
i
*


)



-


β

ln





2




x
i
*



)

.







(
24
)







The relations (21) and (24) suggest using a function defined by










f
a

(

x
=



(

1
+
x

)



log


(

1
+
x

)



-


β

ln





2




x
.








(
25
)







The inverse of the function θa gives the effective signal to noise ratio:






x
ia−1(βln2Λa/ni),∀iεUD∪UR  (26)


It can be proven that the signal to noise ratio (xi) is a monotonic function of Λa for all users iεUR. For users with real time data traffic, the following equations hold:














L


(


p


(
t
)


,

w


(
t
)


,

λ
p

,

λ
w

,

λ
v


)






λ
i
w







(


p
*

,

w
*


)



=

0















r
i
0

=



w
i
*



(
t
)





log
2



(

1
+








p
i
*



(
t
)





n
i




w
i
*



(
t
)





)




,



i



U
R

.







(
27
)







For all the nodes 110a-n, the following derivatives are zero in the maximum of the objective (Lagrangian) function:














L


(

p
,
w
,

λ
p

,

λ
w

,

λ
v


)






λ
p







(


p
*

,

w
*


)



=


0

P

=




i



U
D



U
R







p
i
*



(
t
)








(
28
)











L


(

p
,
w
,

λ
p

,

λ
w

,

λ
v


)






λ
w







(


p
*

,

w
*


)



=


0

W

=




i



U
D



U
R








w
i
*



(
t
)


.







(
29
)







From equation (19) one can write the following relations:













[


Λ
p

-



n
i


β





ln





2




(

1
+

x
i
*


)



R
i




α
~

i



]

+



log


(

1
+

x
i
*


)




(

1
+

x
i
*


)




n
i


βln





2




=


w
i
*



(
t
)



,

i


U
D






(
30
)











[


Λ
p

-



n
i


β





ln





2




(

1
+

x
i
*


)



R
i




α
~

i



]

+



x
i
*





log
2



(

1
+

x
i
*


)




(

1
+

x
i
*


)



1

βln





2




=


p
i
*



(
t
)



,

i



U
D

.






(
31
)







The operator [.]+ in equations (30) and (31) guarantees that wi, pi≧0 for all users. For known Λp and Λa, the power and bandwidth for each user iεUD can be calculated using equations (30) and (31). For a known Λa, the bandwidth and power for users iεUR can be calculated using equation (27). However equations (27), (30), and (31) may not ensure that the bandwidth and power constraints are satisfied. Satisfying the bandwidth and power constraints can be further assured by the selection of Λp and Λa. Let Spa, Λp) and Sw a, Λp) to be the total bandwidth and total power corresponding to Λp and Λa:











S
w



(


Λ
a

,

Λ
p


)


=





i



U
D



U
R



N








w
i



(


Λ
a

,

Λ
p


)



=





i


U
D







[


Λ
p

-



n
i


β





ln





2




(

1
+

x
i


)



R
i




α
~

i



]

+




log
2



(

1
+

x
i


)




(

1
+

x
i


)




n
i


βln





2





+




i


U
R






r
i
0



log
2



(

1
+

x
i


)










(
32
)








S
p



(


Λ
a

,

Λ
p


)


=





i



U
D



U
R



N








p
i



(


Λ
a

,

Λ
p


)



=





i


U
D








[


Λ
p

-



n
i


β





ln





2




(

1
+

x
i


)



R
i




α
~

i



]

+



x
i





log
2



(

1
+

x
i


)




(

1
+

x
i


)



1

ln





2





+




i


U
R







r
i
0



x
i



n
i




log
2



(

1
+

x
i


)










(
33
)







where xia−1(βln2Λa/ni) is the SINR of user i. The problem becomes finding Λ*p and Λ*a such that






S
w(Λ*a, Λ*p)=W  (34)






S
p(Λ*a, Λ*p)=P  (35)


using equations (21), (24), (34) and (35). Note that although Λp and Λa are independent variable that determine power and bandwidth of each node, they become dependent when the power and bandwidth constraints (34), (35) need to be satisfied.


Based on the above defined formalism, FIG. 3 is a flow diagram of the operations performed in a scheduler 252 according to an embodiment. The method determines the optimal bandwidth and power allocation to N users including non-real time data users and/or real time (like voice and video) users, by determining parameters Λ*p and Λa which are defined above using a Lagrangian function which incorporates the total power, total bandwidth and rate constraints for real time (such as, voice and video) users. First at 310, it is determined the smallest value Λa0>0 for which Swa0,0)≦W. A solution is feasible (i.e. the conditions 15, 16, and 17 are satisfied) if and only if Spa0,0)≦P. Before performing additional operations to assign the resources (power and bandwidth) among the users, the scheduler 252 calculates Spa0,0) at 320. At 330, Spa0,0) calculated at 320 is compared to P. If Spa0,0)>P, there are too many users. The scheduler 252 will drop some users at 300 and seeks again for Λa0>0 until Spa0,0)≦P.


Once it is known that there is a feasible solution, the scheduler 252 searches for a pair of parameters Λ*p and Λ*a using Λa0 as a start point at 340. The parameters Λ*p and Λ*a are then used to effectively calculate for each user the optimal SNR values x*i, the optimal bandwidth values w*i and the optimal power values p*i for the users at 350. For a system which assigns bandwidth in discrete values (for 802.16e, a subchannel is the smallest unit for bandwidth assignment) and transmission power (for 802.16e, the transmission power can be boosted in steps of −12, −9, −6, −3, 0, 3, 6, 9 db) and/or coding and modulation scheme (a set of modulation scheme and coding rates, with respective required minimal receiver SINR) in discrete levels (a set of predefined coding and modulation schemes and predefined power boost levels). At 360, the bandwidth w*(t) and power p*(t) vector can be quantized with proper schemes. As an example, the bandwidth and power can be quantized to the closest allowed discrete values.


According to an aspect of an embodiment, at 310, the scheduler 252 determines the smallest value Λa0>0 for which the total bandwidth is allocated to users when Λp=0, i.e. the relationship Swa0,0)≦W is satisfied. In order to find the smallest value Λa0>0, the scheduler performs a binary search, narrowing a search interval for Λa0 in the following manner. Initially, for a chosen parameter Δa>0 it is determined the smallest integer k>0 so that Sw(2kΔa,0)<W. Then a start search interval is defined as Λa1=2k−1Δa, Λah=2kΔa. Because k is the smallest integer so that Sw(2kΔa,0)<W, Sw(2k−1Δa,0)≧W, the sign of Sw(Λ,0)−W changes in the start search interval (Λa1, Λah). Once the initial search interval (Λa1ah) is established, the binary search of Λa0 iteratively narrows this search interval so that the sign of Sw(Λ,0)−W changes the sign inside the interval until a convergence criteria is satisfied. The function Swam,0) is calculated for Λam=(Λa1ah)/2. If the convergence criteria











Λ
a
h


Λ
a
l


-
1



<
ɛ




is satisfied, then Aa0am. Otherwise if Swam,0)<W, Λaham, else Λa1am.


According to an aspect of an embodiments, at step 340, the scheduler 252 searches for a pair of parameters Λ*p and Λ*a for which Sw(Λ*a,Λ*p)=W and Sp(Λ*a,Λ*p)=P using Λa0 as a start point. The binary search for the parameters Λ*p and Λ*a employs another binary search of Λ*p for a given Λa such that Swa,Λ*p)=W.


The binary search of Λ*p(A) such that Sp(A, Λ*p)=P for a given A (which is similar to the above-described binary search of Λa0) narrows a search interval for Λ*p in the following manner. Initially, for a chosen parameter Δp>0 it is determined the smallest integer k>0 so that Sw(A,2kΔp)>W. Then, a start search interval is defined as Λ1p=2k−1Δp, Λhp=2kΔp. Because k is the smallest integer so that Sw(A,2kΔp)<W, Sw(A,2k−1Δp)≧W, the sign of Sw(A, Λ)−W changes in the interval (Λ1pph). Once the initial search interval (Λ1pph) is established, the binary search of Λ*p iteratively narrows this search interval until a convergence criteria is satisfied. The function Sw(A, Λmp) is calculated for Λmp=(Λ1php)/2. If the convergence criteria











Λ
p
h


Λ
p
l


-
1



<
ɛ




is satisfied, then Λ*pmp. Otherwise if Sw(A, Λpm)>W, Λhpmp, else A1pmp.


The binary search for the parameters Λ*p and Λ*a for which Sw(Λ*a, Λ*p)=W and Sp(Λ*a,Λ*p)=P starting from Λa0 is described hereinafter. Initially for a chosen parameter Δa>0 it is determined the smallest integer k so that Sp(2kΔa,Λ*p(2kΔa))>P. Then, a start search interval is defined as Λah=2kΔa, and Λ1a=2k−1Δa is k>0 or Λ1aa0 if k=0. Once the initial search interval (Λ1aah) is established, the binary search iteratively narrows this search interval until a convergence criteria is satisfied. The function Spam, Λ*pam)) is calculated for Λam=(Λ1aha)/2. If the convergence criteria











Λ
a
h


Λ
a
l


-
1



<
ɛ




is satisfied, then Λ*aam and Λ*p=Λ*pma). If Spam,Λ*pam))>P, Λaham, else Λ1aam.


After determining Λ*p and Λ*a, the optimal SNR values x*i, the optimal bandwidth values w*i and the optimal power values p*i for each of the users are determined at 350. The optimal SNR values x*i are calculated using the following formula:






x*
i

a
−1(βIn2Λ*a/ni)  (36)


The optimal bandwidth values w*i are calculated for users iεUD











w
i
*



(
t
)


=



[


Λ
p

-



n
i


β





ln





2




(

1
+

x
i
*


)



R
i




α
~

i



]

+




log
2



(

1
+

x
i
*


)




(

1
+

x
i
*


)




n
i


βln





2








(
37
)







and for users iεUR











w
i
*



(
t
)


=




r
i
0



(
t
)




log
2



(

1
+

x
i
*


)



.





(
38
)







The optimal power values for users iεUV∪UD are given by:











p
i
*



(
t
)


=




n
i



w
i
*




x
i
*



(
t
)



β

.





(
39
)







The optimal power and bandwidth values determined as described above take any value in a continuum of values. However, usually only a limited set of discrete values are allowed. Therefore, the optimal bandwidth values w*i and the optimal power values p*i for the users determined at 350, are quantized at 360.



FIG. 4 is a diagram of a multicarrier wireless communication apparatus having a controller 400. The input conditions are the total power, the total bandwidth available, the Qos requirements of each user, the rates of the users in the previous time slots or any combinations thereof. The controller 400 performs a binary search of two parameters Λ*p and Λ*a which maximize L, the Lagrangian function which is defined to ensure long term proportional fairness, total power, total bandwidth, and rate constraints for real time users, using Lagrangian multipliers, while distributing the total power and the total bandwidth to the users. The controller 400 then calculates a set of optimal bandwidth values and optimal power values for the user based on the two parameters as described above. The controller may also quantize the optimal bandwidth and power values to allowed discrete values.


Available bandwidth and power for users demanding real time and non-real time data traffic are scheduled, while maximizing proportional fairness for the users over a plurality of time slots, and meeting quality of service (e.g., a required rate, which is the amount of data communicated in the time slot, and is determined by the power and bandwidth allocated to the user) constraints for real time data traffic users. The Lagrangian multipliers are used to define a function according to an embodiment which includes the proportional fair capacity over the plurality of time slots, and the total power, the total bandwidth, and rate of the real time users' constraints. A maximum of the function is determined for each time slot by binary searching two parameters while observing the total power and total bandwidth. An optimal allocation of the bandwidth and power is calculated for the time slot using the two parameters. A calculated set of power and bandwidth values for the users may be quantized to allowed discrete values.


A multicarrier wireless communication apparatus supporting real time and/or non-real time data traffic for users has a controller which for each time slot binary searches two parameters maximizing a function including proportional fairness over a plurality of time slots, and a total power, a total bandwidth or rate constraints for real time data traffic users, or any combination thereof, using Lagrangian multipliers, while distributing the total power and the total bandwidth to all the users. The controller then calculates optimal signal to noise ratio values, optimal bandwidth values and optimal power values corresponding to each user based on the two parameters.


One benefit of the various embodiments of the scheduler 252 is that the bandwidth and/or power allocation optimizes capacity under proportional fairness rules for heterogeneous data traffic. The scheduler 252 is computationally efficient and meets the real-time constraints in actual systems.


Another benefit is that such a scheduler can be used as part of the radio resource management in OFDMA-based base stations, such as planned for WiMAX (IEEE 802.16e). The scheduler has a significant impact on overall system performance.


The above embodiments may be implemented in software and/or computing hardware. For, example, the scheduler 252 can be implemented in the MAC layer of the base station 105. However, in other embodiments, the scheduler 252 can be implemented in two or more layers, for example, in the MAC layer and/or the physical layer. The station 105 is any computing device, such as a computer including a controller 400.


The present invention can also be embodied as computer-readable codes on a computer-readable medium executable by a computer. A computer-readable medium is any medium that can store/transmit data, which can be thereafter read by a computer system. Examples of the computer-readable medium include (without limitation) read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and carrier waves (such as wireless and/or wired data transmission, for example, through the Internet).


The many features and advantages of the invention are apparent from the detailed specification and, thus, it is intended by claims to cover all such features and advantages of the invention that fall within the true spirit and scope of the invention. Further, since numerous modifications and changes will readily occur to those skilled in the art, it is not desired to limit the invention to the exact construction and operation illustrated and described, and accordingly all suitable modifications and equivalents may be resorted to, falling within the scope of the invention.

Claims
  • 1. A multicarrier wireless communication apparatus supporting real time and/or non-real time data traffic for users, comprising: a controller for each time slot binary searching two parameters maximizing a function including proportional fairness over a plurality of time slots, and a total power, a total bandwidth and rate constraints for real time data traffic users, using Lagrangian multipliers, while distributing the total power and the total bandwidth to all the users, andcalculating optimal signal to noise ratio values, optimal bandwidth values and optimal power values corresponding to each user based on the two parameters.
  • 2. The apparatus of claim 1, wherein the controller estimates whether the optimal signal to noise ratio values, optimal bandwidth values and optimal values for the users exist, before performing binary searching.
  • 3. The apparatus of claim 2, wherein the controller drops some users if the optimal signal to noise ratio values, optimal bandwidth values and optimal values for the users does not exist.
  • 4. The apparatus of claim 1, wherein the binary search finds first one of the two parameters while the other one of the two parameters is zero, the total bandwidth being distributed, then iteratively performs binary searches of the two parameters, the total bandwidth and the total power being distributed.
  • 5. The apparatus of claim 1, wherein the controller determines discrete bandwidth values and discrete power values based on quantizing the optimal bandwidth values and the optimal power values to allowed values.
  • 6. The apparatus of claim 5, wherein the controller determines the discrete bandwidth values and discrete power values using the highest modulation and coding scheme allowed.
  • 7. The apparatus of claim 1, wherein the rate constraints ensure a minimal transmission rate and a limited delay for non-real time data.
  • 8. A method of allocating a total bandwidth and a total power to users performing non-real time data and/or real time traffic, in each time slot, in a wireless multicarrier apparatus, comprising: binary searching two parameters using limitations on the total power and the total bandwidth, wherein the two parameters maximize a function defined using Lagrangian multipliers and including a proportional fair capacity over a plurality of time slots, and limitations on the total power, the total bandwidth, and rate of users performing real-time traffic; andcalculating a power value and a bandwidth value for each user using the determined two parameters.
  • 9. The method of claim 8, further comprising: estimating whether allocating the total bandwidth and the total power to users has a feasible solution before determining the two parameters.
  • 10. The method of claim 8, wherein the binary search includes binary searching one of the two parameters while the other one of the two parameters is zero, with the total bandwidth being distributed, anditeratively performing binary searches of the two parameters, with the total bandwidth and the total power being distributed.
  • 11. The method of claim 8, where the optimal bandwidth and power values are quantized to match allowed bandwidth and power values.
  • 12. A computer readable medium storing executable codes which make a computer to perform a method of allocating a total bandwidth and a total power to users communicating non-real time data and/or real time traffic, in each time slot, the method comprising: binary searching two parameters, while observing limitations on the total power and the total bandwidth, wherein the two parameters maximize a function including a proportional fair capacity over a plurality of time slots, and the limitations on the total power, the total bandwidth, and rate of users performing real-time traffic, by using Lagrangian multipliers; andcalculating power values and bandwidth values for the users using the determined two parameters.
  • 13. The computer readable medium of claim 12, the method further comprising: estimating whether allocating the total bandwidth and the total power to users has a feasible solution, before determining the two parameters.
  • 14. The computer readable medium of claim 12, wherein the binary search includes finding one of the two parameters while the other one of the two parameters is zero, with the total bandwidth being distributed, anditeratively performing binary searches of the two parameters, with the total bandwidth and the total power being distributed.
  • 15. The computer readable medium of claim 12, where the optimal bandwidth and power values are quantized to match allowed bandwidth and power values.
CROSS-REFERENCE TO RELATED APPLICATION

This application claims the benefit of priority to U.S. Provisional Application No. 60/793,628 entitled “Proportional Fair Scheduler for OFDMA Wireless Systems with QoS Constraints”, by Chenxi, Zhu et al. filed on Apr. 21, 2006 in the USPTO and incorporated by reference herein.

Provisional Applications (1)
Number Date Country
60793628 Apr 2006 US