# A New Swap-Based Frequency-Domain Packet Scheduling Algorithm in OFDMA System with Data Queue Size Constraints

Authors: Lin Shao; Yunxiao Zu; Hanyong Shao
Journal: Mathematical Problems in Engineering
 (2016)

---

## Abstract

This paper aims at the frequency-domain packet scheduling (FDPS) problem in orthogonal frequency division multiple access (OFDMA) system. Under users’ data queue size constraints, a new swap-based FDPS algorithm is proposed to achieve further improvement in system throughput. In this algorithm, the swap of physical resource blocks (PRBs) between different users is introduced to give a comprehensive view of the overall scheduling process. Moreover, the proposed algorithm optimizes the choosing method of swap candidates and always tries to select the user who can maximize the throughput improvement. Simulation results demonstrate that this new algorithm can improve the system throughput significantly as well as reduce the resource waste effectively.


---

## Body

## 1. Introduction

Due to the explosive growth of users’ demand, 3GPP Long Term Evolution (LTE) has been broadly acknowledged as the most promising standard for next generation cellular systems [1]. In LTE downlink, orthogonal frequency division multiple access (OFDMA) is used as the radio access technology for its robustness to multipath fading and higher spectral efficiency [2, 3]. Multiple access is achieved by assigning different frequency portions of the total bandwidth to individual users in OFDMA [4]. The basic radio resource unit of the system bandwidth is called physical resource block (PRB). Before the assignment of PRBs, the instantaneous channel state information (CSI) needs to be collected from users. Such assignment of PRB based on the quality of channels is called frequency-domain packet scheduling (FDPS).References [5–8] on FDPS have shown potential gains of system capacity with the assumption of the infinitely backlogged queue model. Reference [9–11] focused on PRB allocation to maximize the system throughput regardless of users’ data queue size (i.e., data prepared to be transmitted per unit time). There are other existing works which had a different optimization objective; however, these works did not consider users’ data queue size as well. For example, in [12–14], PRBs are allocated to achieve proportional fairness (PF) among users using the infinitely backlogged queue model. However, this model is not suitable for every situation. Recent studies [15–17] on traffic measurement have shown that part of users have a small amount of data available for transmission during off-peak hours. In this case, if users’ data queue size is neglected, the channel rate of scheduled users may exceed the amount of data prepared to be transmitted per unit time. It may reduce the system throughput, and PRB resources will not be utilized effectively. So the finite data queue size of users should be taken into account.More attention has been paid to users’ data queue size constraints in recent works. For example, [18] performed optimal resource assignment by taking into account the channel quality as well as queue backlogs of each user. Reference [19] presented a cross-layer design optimization for subchannel and power allocation in OFDMA system with users’ queue status being considered. Reference [20] proposed a new type of queue-aware channel-adapted scheduling technique which can be integrated into different types of scheduling schemes in the LTE network. Users’ data queue size was discussed in [4] and a swap-based FDPS algorithm was put forward to improve the system throughput. In the algorithm, the isolated resource-assignment strategy was replaced in order to approach the optimal outcome. However, more effective swap candidate selection can achieve higher throughput improvement. In this paper, a new swap-based FDPS algorithm is proposed and the choosing method of swap candidates is optimized. Simulation results demonstrate the superior performance of the proposed algorithm in both improving the system throughput and reducing the resource waste.The rest of this paper is organized as follows. Swap-based FDPS algorithm in [4] is analyzed in Section 2. Our new swap-based FDPS algorithm is proposed in Section 3. Complexity analysis is in Section 4. Simulation results and discussions are in Section 5 and Section 6 gives the conclusions.


## 2. Analysis of Swap-Based FDPS Algorithm

Existing PF FDPS algorithm schedules PRBs one by one by using PF algorithm on every PRB in turn. The original PF metric is shown in (1) and for each PRB, the user i
^ with the maximum metric value will be selected [4]:(1)
i
^
=
a
r
g
max
i
⁡
r
i
,
c
t
R
i
t
,where r
i
,
c
t is the supportable instantaneous data rate of user i on PRB c (c is the PRB index) at time t and R
i
t is the average data rate of user i until time t.PF metric (1) does not involve the data queue size, so it is likely to provide more service than users’ demand. In order to overcome this shortcoming, PF metric (1) is modified in [4] as follows:(2)
i
^
=
a
r
g
max
i
⁡
m
i
n
r
i
,
c
t
,
q
i
c
t
R
i
t
,where q
i
c
t is the data queue size of user i when the scheduling procedure is on PRB c. q
i
c
t is updated using the following formula:(3)
q
i
c
+
1
t
=
m
a
x
0
,
q
i
c
t
-
r
i
,
c
t
i
f
i
=
i
^
q
i
c
t
o
t
h
e
r
w
i
s
e
.Remark 1.
The main progress made by PF metric (2) is the introduction of the data queue size. If a user’s channel rate overtakes (or is equal to) its data queue size, the user’s metric value on every unscheduled PRB will be set to zero. This means that the user will not be given PRBs any longer, which by contrast is inevitable when PF metric (1) is used. Extra PRBs given to the user make no contribution to the system throughput and waste the resource as well; hence, PF metric (2) is one step forward of PF metric (1) in improving the system throughput and reducing the resource waste.In order to illustrate how much resource has been wasted, a new criterion is introduced as follows:(4)
f
i
=
r
i
-
Q
i
i
f
r
i
>
Q
i
0
o
t
h
e
r
w
i
s
e
,where r
i is the supportable data rate of user i when a scheduling process of all PRBs is finished and Q
i is the data queue size of user i before all PRBs are scheduled. Obviously, f
i shows the useless part of r
i and the more f
i is, the more resource waste an algorithm has produced on user i. We can use f
=
∑
i
f
i to illustrate how much resource waste an algorithm has produced on all users. Consider a simple example with two users and two PRBs in Table 1. The scheduling result comparison between PF metric (1) and PF metric (2) is shown in Table 2. Suppose that the assignment of PRB 2 is after the assignment of PRB 1.Table 1
The comparison of PF metric (1) and PF metric (2).
For PRB 1
i
Q
i
r
i
,
1
t
R
i
t
PF metric (1) value
PF metric (2) value
1
100
120
60
2
1.667
2
80
80
80
1
1
For PRB 2
i
Q
i
r
i
,
2
t
R
i
t
PF metric (1) value
PF metric (2) value
1
100
60
60
1
0
2
80
70
80
0.875
0.875Table 2
The scheduling result.
PF metric
Scheduling result
f
1
f
2
f
=
∑
i
f
i
PF metric (1)
PRB 1—user 1
80
0
80
PRB 2—user 1
PF metric (2)
PRB 1—user 1
20
0
20
PRB 2—user 2According to PF metric (1), both the PRBs will be assigned to user 1. Therefore, f
=
∑
i
f
i
=
(
120
+
60
-
100
)
+
0
=
80. However, according to PF metric (2), PRB 1 is scheduled to user 1 and PRB 2 is scheduled to user 2. Therefore, f
=
∑
i
f
i
=
(
120
-
100
)
+
0
=
20. Obviously, PF metric (2) has a better performance than PF metric (1) in reducing the resource waste.Although PF metric (2) is more responsible for finite data queue size than PF metric (1), it can still suffer from the isolated PRB assignment strategy. The shortcoming of this strategy is allocating PRBs one by one regardless of other PRB assignment status. More parameters should be taken into account to address this problem. Therefore, a swap-based FDPS algorithm has been introduced in [4]. The algorithm is shown in detail in Algorithm 1.Algorithm 1:Swap-based FDPS algorithm.
(1)    Letλ
i
c be the PF metric (2) value of user i on PRB c and M is the total number of PRBs.
(2)for PRB c
=
1 to M
do
(3)     select the best useri
^ with largest value λ
i
c on PRB c
(4)if there is a user j satisfying r
j
,
c
t
>
q
j
c
t, who would rank first in the scheduling
priority of PRBc if enough data in the queue then
(5)     Letk be max-rate PRB already assigned to user j
(6)ifswapping PRB c for k can bring higher throughput then
(7)     re-assign PRBk to user i
^
(8)     assign PRBc to user j
(9)     update the data queue size of useri
^ and user j
(10)end if
(11)end if
(12)end forThe swap-based FDPS algorithm can be briefly described as follows: (1) pick the best user i
^ who maximizes PF metric (2) on PRB c; (2) seek the potential candidate user ready for a PRB swap according to the established rules; (3) carry on a swap if higher throughput can be obtained.The three steps above are implemented on all PRBs one by one. Obviously, the third step is the most important, because every swap is bound to improve the system throughput. The more times swap happens, the more throughput Algorithm1 improves. However, a swap needs several conditions. Only if every condition is satisfied will a swap happen. The worst case is that no swap takes place and Algorithm 1 has the same performance as PF metric (2) in the system throughput. On the other hand, how much throughput improvement a swap brings is also a key factor besides swap occurrence.In conclusion, we hope that swap happens more frequently and each swap can result in higher system throughput improvement. Based on these two points, Algorithm1 is analyzed as follows.Remark 2.
Algorithm1 only chooses the user who maximizes PF metric (1) on PRB c as the potential candidate user, which can be deduced from step 4 in Algorithm 1. More users need to be added to candidates in order to increase the possibility of swap occurrence.Algorithm1 sets four conditions for a swap: the potential candidate user must be the user j who maximizes PF metric (1) on PRB c; user j must satisfy r
j
,
c
t
>
q
j
c
t; user j has been given at least one PRB already; T
i
^
+
T
j
>
t
i
^
+
t
j, where T
i
^, T
j are the throughput obtained by user i
^ and user j after a swap and t
i
^, t
j are the throughput obtained by user i
^ and user j before the swap. Only if the four conditions are satisfied will a swap happen. How much throughput is improved by a swap is determined by T
i
^
+
T
j
-
t
i
^
+
t
j. T
i
^
+
T
j
-
t
i
^
+
t
j can be further expanded as follows:(5)
T
i
^
+
T
j
-
t
i
^
+
t
j
=
T
i
^
-
t
i
^
+
T
j
-
t
j
=
m
i
n
r
i
^
,
k
t
,
q
i
^
c
t
-
m
i
n
r
i
^
,
c
t
,
q
i
^
c
t
+
m
i
n
∑
ω
∈
Ω
r
j
,
ω
t
+
r
j
,
c
t
,
Q
j
-
m
i
n
∑
ω
∈
Ω
r
j
,
ω
t
+
r
j
,
k
t
,
Q
j
,where Ω is the set of PRBs which have already been allocated to user j except PRB k. Formula (5) demonstrates that r
i
^
,
k
t, r
j
,
c
t, ∑
ω
∈
Ω
r
j
,
ω
t, r
j
,
k
t, and Q
j influence the throughput improvement together, so swapping PRBs with user j may not result in the highest throughput improvement.


## 3. New Swap-Based FDPS Algorithm

Based on Remark2, a new swap-based FDPS algorithm is put forward to improve the system throughput. The details of the new algorithm are described in Algorithm 2.Algorithm 2:New swap-based FDPS algorithm.
(1)  Letλ
i
c be the PF metric (2) value of user i on PRB c and M is the total number of PRBs
(2)forPRB c = 1 to M
do
(3)  pick the best useri
^ with largest value λ
i
c on PRB c
(4)  LetU be the set of users and U
=
i
≠
i
^
∣
r
i
,
c
t
>
q
i
c
t
&
K
i
≠
Φ where K
i is the set of PRBs
have already been assigned to useri
(5)if
U
≠
Φ
(6)   select the useri
0
=
arg
⁡
m
a
x
i
∈
U
(
T
i
^
+
T
i
)
-
(
t
i
^
+
t
i
)
(7)if
T
i
^
+
T
i
0
-
t
i
^
+
t
i
0
>
0
(8)    re-assign PRBd to user i
^ where PRB d is the max-rate PRB already assigned to user i
0
(9)    assign PRBc to user i
0
(10)   update the data queue size of useri
^ and user i
0
(11)else
(12)   assign PRBc to user i
^
(13)   update the data queue size of useri
^
(14)end if
(15)else
(16)  assign PRBc to user i
^
(17)  update the data queue size of useri
^
(18)end if
(19)end forRemark2 demonstrates that Algorithm 1 needs to choose candidates more reasonably to achieve further improvement in the system throughput. As is mentioned in Remark 2, more users ought to be added to candidates. However, the amount of candidates should not be so large that too many calculations are needed. Choosing all users (except user i
^) as candidates is optimal but too complex to be implemented in practice. For this reason, user i satisfying r
i
,
c
t
>
q
i
c
t
&
K
i
≠
Φ will be chosen as a candidate. As there may be more than one qualified user, the possibility of swap occurrence will increase. At the same time, the condition r
i
,
c
t
>
q
i
c
t
&
K
i
≠
Φ picks up only part of all users in order to control the amount of candidates as well. It is reasonable to set this condition because qualified users have the potential to improve the system throughput if they are given PRB c. Users satisfying the condition may not get a high rank of scheduling priority on PRB c due to their lack of data for transmission. However, these users may obtain high throughput on PRB c if there is enough data to be transmitted, so it is reasonable to choose them as swap candidates.On the other hand, useri
0 is finally chosen for the swap in order to achieve the highest throughput improvement among all the candidates. As the swap candidate set of Algorithm 1 must be a subset of that of Algorithm 2, Algorithm 2 certainly will find a user who will bring no lower throughput improvement than user j for each swap.Remark 3.
For Algorithm2, the number of users has little effect on the throughput as long as all PRBs are allocated, since the throughput mainly depends on the bandwidth assigned. As for f, it will also change little, in general, when the number of users increases or decreases. The reason is that Algorithm 2 prevents users from continuing to receive PRBs when the users’ data requirements are satisfied, and extra PRBs will be given to the users with full buffer. Therefore, unless there is no user with full buffer, the wasted data f can be controlled.The only exceptional case is when all the users have finite data queue size. In this case, as the number of users increases, the throughput will increase, andf will decrease. But both will tend to be steady when the number of users increases to a definite value.The main progress made by Algorithm2 is as follows:(1)
The algorithm selects more users as candidates to increase swap occurrence.
(2)
It sets reasonable conditions to control the candidate amount.
(3)
It chooses the user who maximizes the throughput improvement from all the candidates for each swap.


## 4. Complexity Analysis

PF FDPS algorithm using PF metric (2) goes through all M PRBs one by one and selects the best user from PF metric among N users (N is the amount of users) for each PRB, so the computation complexity is O
N
·
M. In comparison, Algorithm 1 contains extra swap process, so its complexity is O
M
·
O
N
+
O
N
=
O
N
·
M. Algorithm 2 chooses more swap candidates than Algorithm 1 according to different filter condition and its complexity becomes O
M
·
O
N
+
O
X
c
=
O
M
·
O
m
a
x
N
,
X
c, where X
c is the number of swap candidates for each PRB and must be less than N. Hence the complexity of Algorithm 2 is O
N
·
M. So Algorithms 2 and 1 and PF FDPS algorithm using PF metric (2) are in the same order of magnitude.


## 5. Simulation Results and Discussions

In this section, PF metric (2) FDPS algorithm and Algorithms 1 and 2 are evaluated by LTE downlink simulations on system level. In the simulation, part of users have data queue size constraints, while the others have infinite data for transmission. The performances of the three algorithms are shown in different situations where the number of users with finite data queue size is changed. The three algorithms are compared in both the system throughput and f value. The simulation parameters are listed in Table 3.Table 3
Simulation parameters.
Parameter
Setting
System bandwidth
10 MHz
Subcarriers per PRB
12
PRB bandwidth
180 kHz
Number of PRBs
50
Cell-level user distribution
Uniform
Number of active users in cell
20
Path-loss model
128.1
+
37.6
∗
lg
⁡
(
d
)
Channel model
Rayleigh
Transmit power of the base station
43 dBmIn Table3, d is the distance between base station and the user and its unit is km. The simulation results are shown in Figures 1, 2, and 3.Figure 1
System throughput comparison for PF metric (2) FDPS algorithm and Algorithms 1 and 2.Figure 2
Value off comparison between PF metric (2) FDPS algorithm and Algorithm 2.Figure 3
Value off comparison between Algorithms 1 and 2.Figure1 illustrates the system throughput comparison among PF metric (2) FDPS algorithm and Algorithms 1 and 2. Algorithm 2 results in the highest throughput in most scenarios, because every swap in Algorithm 2 brings about the highest throughput improvement among the three algorithms. Moreover, Algorithm 2 performs better than Algorithm 1, mainly because Algorithm 2 has more choices for swap candidates and always tries to select the user who maximizes the throughput improvement. The three algorithms have the same performance when the number of users with finite data queue size is zero. The reason is that as the channel rate of every user on each PRB cannot overtake the user’s data queue size at any time, no swap will happen in both Algorithms 1 and 2. Therefore, the three algorithms will definitely select the same user for each PRB.Table4 shows the total required data for transmission corresponding to different number of users with finite data queue size. Note that the required data is only for the users with finite data queue size, as the other users all have full buffers. Figures 2 and 3 illustrate the value of f (i.e., the wasted data) comparison among PF metric (2) FDPS algorithm and Algorithms 1 and 2. The result shows that Algorithm 2 has the lowest value of f corresponding to the same horizontal ordinates among the three algorithms. Therefore, Algorithm 2 performs better than the other two algorithms in reducing the resource waste. Overall, Figures 1–3 demonstrate that Algorithm 2 has the best performance in both improving the system throughput and reducing the resource waste.Table 4
Total required data for transmission.
Number of users with finite data queue size
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Total required data for transmission (Mbps)
0
0.7
1.4
2.1
2.8
3.5
4.2
4.9
5.6
6.3
7
7.7
8.4
9.1
9.8
10.5
11.2
11.9
12.6
13.3
14


## 6. Conclusion

In this paper, a new swap-based algorithm was put forward to address the FDPS problem in OFDMA system. The proposed algorithm aims at improving the system throughput under data queue size constraints. In order to maximize the throughput improvement, we designed reasonable rules to select swap candidates effectively. It was demonstrated by simulation that the algorithm had a superior performance in improving the system throughput and reducing the resource waste.



---

*Source: 6087856-2016-07-31.xml*