Dynamic Scheduling in High-Speed
Downlink Packet Access Networks:
Heuristic Approach
Hussein Al-Zubaidy, Jerome Talim, Ioannis Lambadaris
SCE-Carleton University
1125 Colonel By Drive, Ottawa, ON, Canada
Email: {hussein, jtalim, ioannis.lambadaris}@sce.carleton.ca
Objective
• To develop a heuristic approach to find the
near-optimal packet scheduling policy in
HSDPA networks.
• This approach should have the following
characteristics:
– Computationally efficient.
– The resulted heuristic policy should perform
close to the optimal one.
Methodology
• Develop an MDP-based model for the HSDPA
downlink scheduler.
• Solve the model numerically (using value
iteration) to find the optimal packet scheduling
policy.
• Study the structure of the optimal policy for the
two users case.
• Develop a heuristic policy based on the
collected information.
• Extend the policy to any number of users.
Problem Definition
The HSDPA downlink channel uses a mix of
TDMA and CDMA:
• Time is slotted into fixed length 2 ms TTIs.
• During each TTI, there are 15 available codes
that may be allocated to one or more users.
HSDPA Downlink Scheduler and FSMC
Channel Models
Basic Assumptions
•
•
•
•
•
•
•
•
L active users in the cell.
Finite buffer with size B per user for each of the L users.
Error free transmission.
SDUs are segmented by RLC into a fixed number of PDUs
(ui) and delivered to Node-B at the beginning of the next TTI.
Independent Bernoulli arrivals with parameter qi .
Scheduler can assign c codes chunks at a time, where
c {1, 3, 5, 15} .
The channel state of user i during slot t is denoted by γi(t).
user i channel can handle up to γi(t) PDUs per code.
The Optimal Policy Structure (c = 5)
P(γ1=1)=0.8, P(γ2=1)=0.5 and P(zi =5)=0.5
P(γi =1)=0.5 and P(zi =5)=0.5 for all i{1, 2}
Legend: a1, a2 : means a1 ( a2 ) code
chunks allocated to user 1 ( user 2 )
P(γ1=1) = P(γ2=1)= 0.5 and P(z1=5)= 0.8, P(z2=5)= 0.5
Heuristic Policy ( 2 users)
We studied the optimal policy structure by running a wide
range of scenarios, we noticed the following trends:
• The optimal policy is a multi-threshold Weighted LQF.
• The weight (wi ) is a function of the difference of the two
channel qualities and that of the arrival probabilities:
w1 = f ( [−ΔPγ]+, [−ΔPz ]+);
w2 = f ( [ΔPγ]+, [ΔPz ]+)
where
ΔPγ =P(γ1=1) − P(γ2=1) and ΔPz =P(z1=u) − P(z2=u).
• The intermediate regions has almost a constant width that
equals 2c.
• a1 (respectively a2) is increasing in x1 (respectively x2).
• f ( ) is increasing in | ΔPγ | and decreasing in | ΔPz |.
Weight Function Approximation
Following these observations, we approximated
w1 and w2 as follows
wˆ 1 1 1.5 [P ] 0.7 [Pz ]
wˆ 2 1 1.5 [P ] 0.7 [Pz ]
Where [e]+ = max (e, 0)
Extended Heuristic Policy
Define the following:
– I = {1, 2, . . . , L} the set of all the users in the cell,
– x = (x1, x2, . . . , xL) ∈ NL is a vector representing the
instantaneous queue length of all L users in the cell,
– wij is the pairwise weight function of user i relative to user j
– rij = wijxi; The weighted queue length of user i w.r.t. user j.
– {r∗i : i ∈ I} are the vectors ri with their components ordered
in descending order,
– m(i) is the order of the ith element of the vector v ordered
according to the rule θ∗ such that
Ordering Rule
• θ = (θ1, θ2, . . . , θL), where θi is the location of
component i of the vector rθ under the
permutation θ.
• Let θ∗ be a permutation such that rθ∗=r∗
• By definition, m(i) = θ∗i , where θ∗i is given by
Weight Function (wij )
The pairwise weight function is given by
where ∆Pijγ = P(γi = 1)−P(γj = 1), ∆Pijz = P(zi = u)− P(zj =u),
u is the patch size and [e]+ = max (e, 0). Now,
Users Ordering and Service Urgency
• define r = (h1, h2, . . . , hL) to be the vector of
all local maxima of all ri ∈ WL, where
hi = maxj∈I rij = r∗i,[1].
• r∗ is the vector r ordered according to θ∗
which represents the ordered vector of the
global weighted queue size of the L users.
• define ψ =(ψ1, ψ2, . . . , ψL) ∈ {0, 1}L to be
the connectivity state vector at each TTI,
i.e., ψi = 1{γi≥1}.
The Heuristic Code Allocation Policy
1) Case (c = 15): At each TTI, do the following
• find r∗ and hence m(i) for all i ∈ I,
• serve user i such that
2) Case (c = 5): At each TTI, do the following
• order the weighted queue size for all users and find r∗
• select users i, j, k such that
The Heuristic Code Allocation Policy
• divide the 3 code chunks between users i, j, k as follow:
– if hi = hj = hk then (ai, aj, ak) = (1, 1, 1)
– else if hi > hk and hj > hk then
– else if hi, hk > hj then
– else if hj, hk > hi then
Heuristic Policy Structure (2-user; c = 15)
P(γ1=1)=0.8, P(γ2=1)=0.5 and P(zi =5)=0.5
P(γi =1)=0.5 and P(zi =5)=0.5 for all i{1, 2}
P(γ1=1) = P(γ2=1)= 0.5 and P(z1=5)= 0.8, P(z2=5)= 0.5
Heuristic Policy Structure (2-user; c = 5)
P(γ1=1)=0.8, P(γ2=1)=0.5 and P(zi =5)=0.5
P(γi =1)=0.5 and P(zi =5)=0.5 for all i{1, 2}
P(γ1=1) = P(γ2=1)= 0.5 and P(z1=5)= 0.8, P(z2=5)= 0.5
Performance Evaluation
System throughput for different
loading conditions.
Queuing delay performance when
q1 = 0.8, q2 = 0.5 and u = 10.
Conclusion
• Studied the optimal packet scheduling policy for
the HSDPA downlink scheduler.
• From critical observations we conjectured that the
policy is of threshold type and is multimodular in
x1 and x2.
• Present an extended heuristic policy for code
allocation in HSDPA system.
• The devised heuristic policy performs very close
to the optimal policy regardless of the system
loading.
• It provided extreme reduction in computation time.
Thank you
Q&A
Hussein Al Zubaidy
www.sce.carleton.ca/~hussein/
© Copyright 2026 Paperzz