Uplink Scheduling in Wireless Networks with Successive Interference Cancellation
1
Uplink Scheduling in Wireless Networks with
Successive Interference Cancellation
Majid Ghaderi, Member, IEEE, and Mohsen Mollanoori
Abstract—In this paper, we study the problem of uplink scheduling in wireless networks with successive interference cancellation (SIC).
With SIC, concurrent transmissions, if properly scheduled, can be successfully decoded at a receiver. The scheduler decides: i. in which
time-slot to schedule, and ii. in what order in a time-slot to decode each transmission in order to maximize the system utility and/or
satisfy a system constraint. These two scheduling decisions effectively determine the rates allocated to concurrent transmissions, which
in turn determine the throughput and fairness of the system. We consider several different scheduling problems in this context. The
objective of the problems is to either maximize the throughput of the system or to obtain some kind of fairness among the users. We
formulate and study each problem from the perspective of computational complexity. For each problem, we either propose a polynomial
time algorithm, if any exists, or show that the problem is NP-hard.
Index Terms—Successive Interference Cancellation, Scheduling in Wireless Networks, Throughput and Fairness Maximization.
1 INTRODUCTION
INTERFERENCE and noise are both limiting factors
in wireless networks. However, their effects on the
performance of wireless networks are not identical. In
a multi-user wireless network, increasing the transmission
power can reduce the noise effect. Nevertheless,
an increase in the transmission power, if not carefully
controlled, may even worsen the interference effect. In
addition, interference is a structured signal since it is
caused by other transmissions in the network, whereas
noise is structureless.
Successive interference cancellation (SIC) is a multi-user
detection technique that uses the structured nature of interference
to decode multiple concurrent transmissions.
Assume a composite signal S = S1 + · · · + Sn + Z of n
overlapping signals S1, . . . , Sn plus the noise signal Z is
received at a receiver. Employing SIC, one of the signals,
say Si, is decoded first while the rest of the signals are
considered as noise. After Si is decoded, the decoder reconstructs
the corresponding analog signal and subtracts
it from the original composite signal S. At this stage, the
remaining signal is free from the interference of signal
Si (assuming error-free decoding and perfect removal of
the signal Si). The same technique is applied repeatedly
to decode the remaining n−1 signals. It is worth noting
that if the decoder fails to decode one of the signals,
it is unlikely that it can decode the subsequent signals.
Since at every stage, the remaining signals are treated as
noise, the maximum rate achievable by a user depends
not only on its corresponding received signal power but
also on the order at which its signal is decoded.
• M. Ghaderi is with the Department of Computer Science, University of
Calgary. E-mail: mghaderi@ucalgary.ca.
• M. Mollanoori is with the Department of Computer Science, University
of Calgary. E-mail: mmollano@ucalgary.ca.
While SIC does not enforce a specific decoding order,
because of practical and theoretical reasons, it is common
to decode the signals from the strongest to the weakest
one (we discuss the issue in Sections 6 and 7). Since the
amount of interference is reduced in every stage (because
of subtraction of the decoded signal), late decoding of the
weaker signals increases the corresponding SINR (Signal
to Interference plus Noise Ratio) and consequently
increases the probability of a successful decode. Later,
we show that while the above order of decoding does
not decrease the sum capacity of the system, it actually
results in a proportionally fair rate assignment among
users.
With conventional decoders, transmission scheduling
mechanisms are commonly used to avoid multiple
simultaneous transmissions because conventional receivers
treated interference as random noise. However,
to increase the throughput with SIC, the scheduling
mechanism should allow multiple concurrent transmissions
in the network while controlling the rate and decoding
order of the transmissions so that the composite signal
can be decoded at the receiver [1]. SIC receivers are
architecturally similar to traditional non-SIC receivers
in terms of hardware complexity and cost [2] as they
use the same decoder to decode the composite received
signal at different stages. As a result, neither a complicated
decoder nor multiple antennas are required to
increase the throughput of the system [1], [3]. It also
makes SIC more practical than other multi-user detection
techniques such as joint detection [4]. Furthermore, it
is known that other multiple access techniques such as
CDMA and OFDMA are no more efficient than SIC [5,
Ch. 6]. As such, SIC has been recently considered in
commercial wireless systems as a way to increase system
throughput [6].
SIC can be employed for uplink [7] as well as downlink
[8] transmissions. However, SIC can achieve a higher
Digital Object Indentifier 10.1109/TMC.2013.56 1536-1233/13/$31.00 © 2013 IEEE
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
2
throughput gain on the uplink of a wireless network
since the total received power is higher due to concurrent
transmissions from multiple users. In Section 3, we
further discuss the relation between the total received
power and capacity of the system.
In this paper, we consider several uplink scheduling
problems, assuming that SIC is implemented at the
physical layer of the network. To the best of our knowledge,
none of the problems considered in this paper
and summarized as follows is studied by others in the
context of SIC.
1) Maximum Throughput Scheduling (MTS): The
objective of this problem is to schedule a set of
users at a given number of time slots such that
the throughput of the system is maximized. The
throughput of the system is given by the summation
of the throughput of individual users. We show that
MTS is NP-hard.
2) Constrained Maximum Throughput Scheduling
(MTS–C): This problem is the same as MTS except
that at most l users are scheduled at each time slot.
We show that for l = 2, which is of practical interest,
the problem is solveable in polynomial time, while
for any l ≥ 3 the problem is NP-hard.
3) Proportional Fair Scheduling (PFS): The objective
of this problem is to achive proportional fairness
among users [9]. Proportional fairness among users
is achieved by maximizing the summation of the
logarithm of individual users’ throughputs. Hence,
the only difference between PFS and MTS scheduling
problems is the additional log(.) function in the
objective function of PFS. We show PFS can be
solved in polynomial time.
4) Scheduling with Minimum SINR (MinSINR): This
problem requires that a minimum SINR for each
user is provided by the scheduling algorithm. Having
a minimum SINR for each user means a minimum
rate guarantee for each user, which is a required
property for some applications such as voice
or video transmission. We show this problem is
solveable in polynomial time.
In addition, we discuss variations of the above problems
as corollaries, wherever possible. The approach we
take in this paper is a combinatorial and complexity
theoretic one. We aim to find the theoretical limits of
computation of the optimal solutions to the scheduling
problems with SIC. To do so, for each of the problems,
we prove whether the problem can be solved in polynomial
time or it does not have any polynomial time
solution, unless P = NP.
From the theoretical point of view, NP-hardness of a
problem means that there is no polynomial time algorithm
to compute the optimal schedule (unless, P = NP).
From the practical point of view, it means that there is no
optimal real-time scheduler that maximizes the system
utility, except for very small system sizes. Note that in
real world wireless systems, scheduling is performed
every few milliseconds. This makes a brute-force search
to find the optimal schedule impractical (even for a few
tens of users, the size of the search space becomes too
large).
The rest of the paper is organized as follows: In the
next section, we describe the related work. In Section 3
we describe the system model and assumptions. Problems
MTS, MTS–C, PFS, and MinSINR are studied in
Sections 4 to 7. Section 8 presents the simulation results.
Section 9 concludes the paper.
2 RELATED WORK
Although scheduling is extensively studied in traditional
wireless networks (e.g., [10] and [11]), only a few works
have explicitly considered interference cancellation.
There have been a number of studies in the area of
SIC-aware MAC protocols. It has been shown that SIC
can achieve near Shannon capacity in cellular networks
in which communications are closed-loop and accurate
channel estimations exist (see [2] and references therein).
It is also known that SIC can improve the throughput of
wireless LANs. For instance, Halperin et al. [12] experimentally
studied the effect of SIC in unmanaged wireless
networks with carrier sensing. They concluded that SIC
can effectively improve the bandwidth utilization in
wireless networks. In contrast, Sen et al. [13] reported
that, without a proper scheduling mechanism, SIC may
not be a promising approach to improve the throughput
of wireless networks.
In [14], Gollakota et al. proposed a combination of
interference alignment and cancellation as an effective
technique to overcome the limitation of the number of
antennas for improving the throughput of MIMO wireless
LANs. They showed that the combined technique
can be applied to scenarios where neither interference
alignment nor cancellation applies alone. In a recent
work, Wu et al. [15] utilized interference cancellation at
the receiver to create a side channel that can be used
to implement a multi-user scheduling algorithm without
requiring any out-of-band signalling. The idea is to use
the slack interference tolerance of the receiving hardware
to allow simultaneous transmission of actual user data
and control information. We note that interference cancellation
at the physical layer is orthogonal to coding and
transmission techniques that try to decode simultaneous
transmissions at higher layers of the protocol stack such
as ZigZag decoding [16] and Remap [17].
Yu and Giannakis proposed an algorithm called SICTA
which uses SIC in a tree algorithm [18]. SICTA retains
the received signal vector resulting from a collision in a
time slot. The received signal vector of the subsequently
decoded packets is used to cancel the interference in
the collided signal and decode it. In [19], Mitran et al.
consider a multi-rate and multi-power wireless multihop
network with SIC capability. They assume that
the receiver is capable of decoding up to n signals.
They formulate a joint routing and scheduling with SIC
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
3
using a large linear program and compute the maximum
achievable throughput of the network by solving the
formulation numerically in a centralized manner. There
is also a large body of research on scheduling links
in wireless multihop networks with a minimum frame
length. For instance, Goussevskaia et al. [20] show that
two problems, namely scheduling and one-shot scheduling,
under the geometric SINR model are NP-complete.
In the first problem given a set of links, it is asked to
schedule the links in the minimum number of time slots
possible. The second problem, receives a weighted set of
links and finds a subset of the links that can be scheduled
in a single time slot so that the scheduled links have
the maximum sum of weights. See [20] and references
therein for more details on this topic.
In the broader context of multi-packet reception,
there are several works on scheduling and MAC protocols
[21]–[23], yet none of them is applicable to SICenabled
networks. As an example, Zhao and Tong [21],
[24] developed a MAC protocol with multi-packet reception
capability considering a reception matrix as the
underlying model. A reception matrix specifies the probability
of k successful receptions when there are n concurrent
transmissions in the network. Hence, the model
does not differentiate between the concurrent transmissions
(e.g., all the transmissions are supposed to have the
same rate). While the reception matrix model is a clever
abstraction of a general multi-packet reception network,
a more sophisticated model is required to accurately
model the underlying dynamics of a SIC-based network
such as the selection of transmission rates or the order
of decoding (see Section 3). Other works on multi-packet
reception, such as [22] and [23], consider a simpler
model in which a receiver is capable of receiving up to
k simultaneous packets, regardless of the transmission
rates and channel conditions of users.
The closest work to ours is by Kumaran and Qian [25],
in which the authors consider the uplink scheduling
problem with SIC. Nevertheless, their work differs in
that they only consider the case of scheduling multiple
transmissions in a single time-slot in order to maximize
the network throughput. In this work, we consider
scheduling multiple users in multiple time-slots in order
to optimize an objective function and/or satisfy a system
constraint.
3 SYSTEM MODEL AND ASSUMPTIONS
We consider a network consisting of a set of wireless
users communicating with a single receiver (e.g., an
access point in a wireless LAN or a base station in a
cellular network). Time is divided into scheduling frames,
where each scheduling frame is divided into k time slots.
Scheduling is done once every scheduling frame, at the
beginning of the frame (this is similar to the scheduling
structure of WiMAX networks [26]).
In every scheduling frame, a set of n users denoted by
N = {u1, u2, . . . , un} is scheduled for uplink transmission.
We assume that the users report their channel state
information at the start of every scheduling frame and
that channel fluctuations during a frame are negligible.
Without loss of generality, we ignore the power control
and assume that the users transmit at full power so that
the scheduler is able to estimate the received power from
each user. Let pi denote the received power of the user
ui at the receiver and ri denote the throughput of the
user ui. Given the set of received powers p1, p2, . . . , pn,
the aim of the scheduler is to schedule the set of users
N in the k time slots so that a system utility function is
maximized and/or a system constraint is satisfied.
Let SINRi be the signal to noise plus interference ratio
of user ui, i.e., SINRi = pi
N0+Ii
, where Ii is the interference
power that affects the signal of user ui. To model the
throughput of the users, we use the Shannon capacity
formula as follows,
ri = log (1 + SINRi) . (1)
Figure 1 shows the logical representation of a scheduling
frame. The figure is drawn such that signals are
decoded from top to bottom. For instance, in Figure 1,
the signal of user u9 is decoded just before the signal of
user u5. Therefore, the amount of interference affecting a
user’s signal is the sum of the received powers scheduled
below that user in the same time slot.
The following well-known identity is crucial for many
of the proofs throughout the paper and is formulated
here for the ease of reference: The sum of the logarithms
is the logarithm of the product of the terms. More
formally, let xi > 0 for i = 1, . . . , n. We have,
log(x1 × ·· ·×xn) = log(x1) + · · · + log(xn) . (2)
We use the notation {a1, a2, . . . , ak1
, b1, b2, . . . , bk2
, . . .}
to show the logical representation of the frame. That
is, in one time slot a1 is decoded first, a2 is decoded
next, and so on until ak1 . In the next time slot b1
is decoded first, b2 is decoded next, and so on.
For instance, the frame of Figure 1 is shown as:
{p9, p5, p1, p6, p8, p3, p7, p4, p2}. Note that, { . . . }
shows an orderless list, while . . . represents an
ordered list. That is, the order of the time slots in a
scheduling frame is not important while the order of
decoding of the signals is important for us.
By this model, Ii and consequently the throughput of
each user depends on the time slot in which the user
is scheduled as well as the order at which the signals
are decoded. However, the sum capacity of the users
scheduled at a time slot is independent of the order of
decoding and depends solely on the sum of the received
powers
i pi and the noise power N0. Lemma 1 states
this property formally.
Lemma 1. Let p1, . . . , pm be the received powers of the users
scheduled in a single time slot. The following equality holds,
m
i=1
log
1 +
pi
N0 + Ii
= log
1 +
m
i=1 pi
N0
. (3)
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
4
Assume without loss of generality that the decoding
order is pm, . . . , p1. Proof of Lemma 1 is simply by
expanding the left hand side of (3) as,
log(
N0 +
1
i=1
pi
N0
) + log(
N0 +
2
i=1
pi
N0 +
1
i=1
pi
) + · · ·+ (4)
log(
N0 +
m−1
i=1
pi
N0 +
m−2
i=1
pi
) + log(
N0 +
m
i=1
pi
N0 +
m−1
i=1
pi
),
and using (2) to simplify the expression. It is worth
pointing out that Lemma 1 states two important properties
of the sum capacity:
1) Sum capacity is independent of the decoding order
of the signals. That is because
m
i=1 pi is a constant
regardless of the order of decoding.
2) Increase in the sum capacity is proportional to the
logarithm of the sum of the received powers.
Theoretically, the second property means: if m goes to
infinity, sum capacity goes to infinity as well. Therefore,
to maximize the system throughput, all the users have to
be scheduled in every time slot if there is no constraint
on the number of users that can be decoded using
SIC [5], [25]. However, in practice, because of a number
of reasons, only a few users can be scheduled at each
time slot. First, since the increase in the sum capacity is
logarithmic in the sum of the received powers, having
a few concurrent transmissions, significantly increases
the sum capacity. However, adding more users to the
concurrent transmissions would be less effective as the
number of users is increased. Second, due to the practical
limitations, only a few overlapping signals can be
decoded successfully [1]. One reason is that the decoding
time in SIC increases linearly with the number of overlapping
signals [5, Ch. 6]. Having many users, the linear
decoding time causes practical difficulties. Another
reason is that, in practice, the decoded signals cannot
be perfectly removed from the composite signal. Thus,
some residual interference remains after each decoding
stage, and propagates during the subsequent decoding
stages [6]. The accumulated residual interference results
in a decoding error after a few users are decoded,
limiting the number of simultaneous transmissions in a
time slot.
To take into consideration the practical limitations, we
consider two variations of the MTS problem (namely,
MTS–C and MinSINR). In MTS–C, we assume that
at most l users can be decoded in each time slot. In
MinSINR, we assume that the decoder requires a minimum
SINR denoted by Smin to successfully decode each
signal.
We assume that the number of users is greater than
the number of time slots, i.e., |N | = n > k, since the
solution for the case of n ≤ k, for all of the problems, is
trivial. We assume that each node is scheduled exactly
once in a scheduling frame, thus more than one node
might be scheduled in a time slot (recall that scheduling
simultaneous transmissions is allowed with SIC). While
this restriction can be relaxed, its consideration here
imposes some implicit fairness among the users. To relax
the restriction, one may first schedule each of the nodes
only once. Then, based on some criteria, select a subset
of the nodes and add them to the scheduling frame such
that none of the nodes are scheduled more than once in
a time slot. In this manner, the exactly once constraint is
relaxed to at least once constraint.
4 MAXIMUM THROUGHPUT SCHEDULING
The objective of the maximum throughput scheduling
problem is to maximize the sum of the throughput of the
users in a scheduling frame. In the following we formally
state the problem.
Problem 1 (Maximum Throughput Scheduling (MTS)).
Given a multiset of received powers p1 ≤ p2 ≤ ··· ≤ pn,
and some noise power N0, schedule the corresponding n users
in k time slots so that the following objective function is
maximized,
n
i=1
log
1 +
pi
N0 + Ii
, (5)
where Ii is the amount of interference power that affects the
decoding of user ui’s signal (see Figure 1).
Theorem 1. MTS is NP-hard.
Proof: The proof is by reduction from the partition
problem. In the partition problem, given a set S of
integers, we are asked to find a subset S ⊆ S such that,
x∈S
x −
y∈(S−S)
y
, (6)
is minimized. The Partition problem is known to be NPcomplete
[27].We show that the partition problem can be
reduced (in polynomial time) to a special case of MTS,
for k = 2. Since a special case of the problem is NP-hard,
the general case is NP-hard as well.
Let π1 and π2 denote the partition of the received powers
for the two time slots, i.e., the users corresponding
to π1 will be scheduled in time slot 1 and the users
corresponding to π2 will be scheduled in time slot 2.
We can rewrite the objective function (5) as follows,
log
1 +
p∈π1
p
N0
1 +
p∈π2
p
N0
. (7)
Let X =
1 +
p∈π1
p
N0
and Y =
1 +
p∈π2
p
N0
. We
know that,
X + Y = 2+
p1 + . . . + pn
N0
, (8)
is constant regardless of how the set of received powers
is partitioned. Note that our objective is to maximize
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
5
Algorithm 1 GreedyMax: Suboptimal Solution to MTS
1: P ← list of received powers
2: Sort P in descending order
3: S ← ∅
4: for i ← 1 to length(P) do
5: Schedule Pi at the time slot with minimum sum
of powers
6: end for
7: return S
X×Y . Since, X+Y is constant, X×Y is maximized when
|X − Y | is minimized. This is similar to the objective
function of the partition problem. Therefore, to solve an
instance of the partition problem for a given set S, we
first sort the numbers in S in an increasing order. Then,
we solve the Maximum Throughput Scheduling problem
with k = 2 time slots for the sorted numbers as the set
of powers and an arbitrary positive number as the initial
noise power N0. The reduction is obviously polynomial.
Therefore, MTS is NP-hard.
Since MTS is NP-hard, the optimal answer to the
problem cannot be found in polynomial time, unless
P = NP. Thus, we propose a greedy algorithm called
GreedyMax which runs in polynomial time and gives a
suboptimal answer to the problem. Algorithm 1 shows
the psudo code of the algorithm. The algorithm first sorts
the received powers in decreasing order. Then, starting
from the beginning of the list, in each step, it assigns
the power to the time slot that has the minimum sum
of received powers. The algorithm actually tries to make
the sum of received powers assigned to the time slots as
equal as possible. The rational behind Algorithm 1 is to
assign the smaller powers at the end, so that it can fine
tune the summation of the received powers. The same
method is used in multiprocessor scheduling algorithms
[28], [29].
5 CONSTRAINED MAXIMUM THROUGHPUT
SCHEDULING
As described in Section 3, practical limitations prevent
decoding of too many signals at a time slot. In this
section, we add a constraint to the MTS problem that at
most l signals can be scheduled in a time slot. Considering
this constraint, we show that the problem remains
NP-hard.
Problem 2 (Constrained Maximum Throughput Scheduling
(MTS–C)). Given a multiset of n = kl received powers
p1 ≤ p2 ≤ · · · ≤ pkl, and some noise power N0, schedule the
corresponding n users in k time slots so that exactly l users are
assigned to each time slot and the following objective function
is maximized,
kl
i=1
log
1 +
pi
N0 + Ii
, (9)
where Ii is the amount of interference power that affects the
decoding of user ui’s signal.
Theorem 2. For l ≥ 3, MTS–C is NP-hard.
Proof: We show that for l = 3, the problem is NPhard.
Therefore, for a general l ≥ 3, it is NP-hard as well.
Proof is by reduction from the 3-partition problem. The
problem is defined as follows [27].
Definition 1 (3-Partition Problem). Given a set A of size
3m, a bound B ∈ Z+, and a size s(a) ∈ Z+ for each a ∈
A, such that each s(a) satisfies B/4 < s(a) < B/2 and
a∈A s(a) = mB. The question is: Can A be partitioned
into m disjoint sets S1, . . . , Sm such that for 1 ≤ i ≤ m,
a∈Si
s(a) = B?
Note that the constraint on the item sizes implies that
every Si must contain exactly 3 elements. It is known
that the 3-partition problem is NP-complete [27].
Let φ (pi) = j denote that pi is assigned to time slot j.
We have,
n
i=1
log
1 +
pi
N0 + Ii
= log
k
j=1
N0 + Pj
N0
, (10)
where Pj is the sum of the powers assigned to time slot j,
i.e., Pj =
φ(pi)=j pi. The identity can be proved using
(2), Lemma 1 and some algebraic manipulation and is
omitted for the sake of brevity. We rewrite (9) using (10)
as,
log
k
i=1
N0 +
φ(pj)=i pj
N0
. (11)
Note that, in the 3-partition problem,
a∈Si
s(a) =
B for every 1 ≤ i ≤ m if and only if
m
i=1
a∈Si
s(a) =
Bm.
Given an instance of 3-partition, we construct an instance
of Problem 2 such that pi = s(ai) for every ai ∈ A,
k = m, l = 3, and an arbitrary value for N0 is chosen.
Using (11), the answer to the instance of 3-partition is
“Yes” if and only if the value of the objective function
(9) equals log(
k
i=1
N0+B
N0
) (i.e., the sum of the powers
in each time slot equals B).
Note that for the sake of brevity, we do not propose
a heuristic algorithm for MTS–C for the case l ≥ 3.
However, it is worth pointing out that GreedyMax can
handle MTS–C after suitable modifications. In addition,
in Section 6, we propose the GreedyFair algorithm that
results in a proportionally fair schedule. GreedyFair can
be used, out of the box, to obtain a suboptimal solution
to MTS–C. In Section 8, through simulations, it is shown
that the throughput of GreedyFair is close to the optimal
throughput.
Theorem 3. For l ≤ 2, MTS–C can be solved in polynomial
time.
Proof: For l = 1 Theorem 3 is obvious, since there is
only one way to assign the powers to the time slots. For
l = 2, assume without loss of generality that the powers
are sorted in non-decreasing order. We show that the
following assignment maximizes (9):
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
6
1) For 1 ≤ i ≤ k, assign pi to time slot i.
2) For k + 1 ≤ i ≤ 2k, assign pi to time slot 2k − i + 1.
Why the above assignment is optimal? Let i and j be
two arbitrary time slots such that i < j. Let ˆp1, ˆp2, ˆp3,
and ˆp4 be the four powers assigned to the time slots i
and j. Without loss of generality, assume ˆp1 ≤ ˆp2 ≤ ˆp3 ≤
ˆp4. Using (9), the throughput of any power assignment
of the four powers to the two time slots is one of the
following cases,
Case 1:
log
1 +
ˆp1 + ˆp2
N0
+ log
1 +
ˆp3 + ˆp4
N0
. (12)
Case 2:
log
1 +
ˆp1 + ˆp3
N0
+ log
1 +
ˆp2 + ˆp4
N0
. (13)
Case 3:
log
1 +
ˆp1 + ˆp4
N0
+ log
1 +
ˆp2 + ˆp3
N0
. (14)
However, using algebraic manipulations, it can be
shown that assuming 0 < ˆp1 ≤ ˆp2 ≤ ˆp3 ≤ ˆp4, Case 3
is always greater than or equal to the other two cases.
It is also simple to verify that the above assignment
algorithm results in the throughput of Case 3 for all i
and j. Assume, the assignment of the above algorithm
is not optimal and there is another assignment A which
is optimal. Therefore, there must be at least one pair
of time slots i and j in A such that i < j and the
assignments do not follow Case 3. Since, we can improve
the throughput by swapping the power assignments to
time slots i and j to follow Case 3, A is not the optimal
assignment. Obviously, the assignment can be performed
in polynomial time.
Problem 3. Given a multiset of n ≤ kl received powers
p1 ≤ p2 ≤ ··· ≤ pn, and some noise power N0, schedule
the corresponding n users in k time slots so that at most l
users are assigned to each time slot and the following objective
function is maximized,
n
i=1
log
1 +
pi
N0 + Ii
, (15)
where Ii is the amount of interference power that affects the
decoding of user ui’s signal.
Corollary 1. Problem 3 is NP-hard.
This is obvious that if n = kl, Problem 3 is similar
to MTS–C. In other words, Problem 2 is a special
case of MTS–C. As a result, since MTS–C is NP-hard,
Problem 3 is also NP-hard.
Corollary 2. Throughput of MTS in each time slot scales
as O(log(n)) where n is the number of users, while the
throughput of MTS–C scales as O(1).
Based on the definitions of the problems, one of k or l
needs to be a constant (for MTS, k is fixed while for
MTS–C, l is fixed). Using Lemma 1, the throughput
N0
p1
p5
p9
N0
p3
p8
p6
N0
p2
p4
p7
I9
Fig. 1. Logical representation of the scheduling frame
with 3 time slots and 9 powers. N0 is the noise power. Ii
specifies the sum of interference powers from other users,
e.g., in the above figure I9 = p1 + p5. Note that Ii is a
function of the location of ui’s signal in the scheduling
frame, i.e., relocation may change Ii. Figure is drawn
such that in each time slot pi’s are decoded from top to
bottom. Moreover, the height of the rectangles represent
the signal powers.
NL
p1
p3
p5
p7
NH
p2
p4
p6
πL
πH
Fig. 2. The proportional fair algorithm (Algorithm 2) splits
the powers into two piles πL and πH. πL contains 1st, 3rd,
5th, . . . smallest powers while πH contains 2nd, 4th, 6th,
. . . smallest powers. In each pile the powers are sorted
from bottom to top in a non-decreasing order.
of the schedule in each time slot is of O(log(n/k)).
Therefore, if k is a constant, this results in O(log(n))
while for a constant l, it results in O(log(l)) = O(1).
6 PROPORTIONAL FAIR SCHEDULING
In addition to the system throughput, fairness is an
important factor in wireless networks. In this paper,
we consider proportional fairness [9], which is widely
implemented in existing wireless systems [10]. In general,
the system throughput is affected by the fairness
definition. However, while some fairness criteria, such as
max-min fairness, may sacrifice the system throughput
for fairness, proportional fairness achieves a reasonable
trade-off between fairness and throughput [10].
The objective of this section is to study short term
fairness (i.e., fairness among the users scheduled in a
scheduling frame) in a wireless network with SIC at the
physical layer. Long term fairness (i.e., fairness among
the users during a longer time than the duration of a
scheduling frame) can be enforced by a higher level
scheduler that selects the set of users {u1, . . . , un} to be
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
7
Algorithm 2 GreedyFair: Proportional Fair Scheduling
Require: p1 ≤ p2 ≤ . . . ≤ pn
1: procedure PF(p1, p2, . . . , pn,N0, k)
2: for i := 1 to n do
3: πm = argmin
π
p∈π p
4: Schedule pi on top of πm
5: end for
6: end procedure
scheduled in each scheduling frame, which is not the
focus of this paper. Before defining the proportional fair
scheduling problem, we formally define proportional
fairness first.
Definition 2 (Proportional Fairness). Assume that schedule
Π gives the throughput vector r = r1, . . . , rn, where
ri denotes the throughput of user ui. A schedule Π∗ with
throughput vector r∗ = r∗
1, . . . , r∗
n
is proportionally fair if
and only if the following condition holds for any other schedule
Π with throughput vector r,
n
i=1
ri − r∗
i
r∗
i
≤ 0 . (16)
It has been shown that a proportionally fair schedule
maximizes the sum of logarithm of users’ utilities [9]. In
this case, the utility of a users is the rate achieved by the
user. Based on this property, we define the proportional
fair scheduling problem as follows.
Problem 4 (Proportional Fair Scheduling (PFS)). Given
a multiset of received powers p1 ≤ p2 ≤ . . . ≤ pn, and some
noise power N0, schedule the corresponding n users in k time
slots so that the following objective function is maximized,
n
i=1
log
log
1 +
pi
Ii + N0
, (17)
where Ii is the amount of interference power that affects the
decoding of user ui’s signal.
Theorem 4. PFS can be solved in polynomial time.
We prove that the following polynomial time algorithm
gives the optimal solution to PFS: Assume powers
are sorted in a non-decreasing order. Starting from i = 1
up to n assign pi to the time slot that minimizes Ii (see
Algorithm 2). Since the assignment of the powers to the
time slots takes linear time and sorting can be done in
O(n log n), the time complexity of the algorithm is in
O(n log n).
Assume φ (pi) shows the time slot that pi is assigned to
by the above algorithm (i.e., column number in Figure 2)
and ρ (pi) shows the index of pi in the scheduled time
slot. That is, by the above algorithm, φ (pi) = ((i − 1)
mod k)+1 and if ρ (pi) < ρ(pj) then pi ≤ pj . To complete
the proof, we need the results stated in Lemma 2 and
Lemma 3.
Lemma 2. Let X ≥ Y > 0 and A ≥ B > 0. The following
inequality holds for any C ≥ 0,
log
log
1 +
X
A + C
+ log
log
1 +
Y
B
≥
log
log
1 +
X
A
+ log
log
1 +
Y
B + C
. (18)
Proof: Rewrite (18) as follows
log
1 + X
A
log
1 + Y
B
≤
log
1 + X
A+C
log
1 + Y
B+C
. (19)
Define function f(u) as,
f(u) =
log
1 + X
A+u
log
1 + Y
B+u
, (20)
and show f(u) is an increasing function of u ≥ 0. We
have,
d
du
f(u) =
Y log(1+ X
A+u )
(B+u)(B+u+Y )
− X log(1+ Y
B+u )
(A+u)(A+u+X)
log2
1 + Y
B+u
. (21)
To show that f(u) is an increasing function of u, we
need to show d
duf(u) ≥ 0. Since the denominator is
positive, it suffices to show that the numerator is nonnegative.
More formally, we need to show,
Y log
1 + X
A+u
(B + u)(B + u + Y )
≥
X log
1 + Y
B+u
(A + u)(A + u + X)
, (22)
or, equivalently,
(A + u)(A + u + X) log
1 + X
A+u
X
≥ (23)
(B + u)(B + u + Y ) log
1 + Y
B+u
Y
.
Next, define the function g(s, t) as follows
g(s, t) =
t(s + t)
s
log
1 +
s
t
. (24)
To establish the Lemma, we show that the function g(s, t)
is non-decreasing in s and t. It can be shown that the
partial derivatives of the function are non-negative. That
is,
∂
∂s
g(s, t) =
t
s − t log
1 + s
t
s2
≥ 0, (25)
which follows from the fact that z ≥ log (1 + z). Moreover,
∂
∂t
g(s, t) =
(s + 2t) log
1 + s
t
− s
s
≥ 0, (26)
which follows from the fact that log (1 + z) ≥ z
z+2.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
8
Lemma 3. Let |π| denote the number of powers in pile 1 π
(see Figure 2) and S(π) denote the sum of the powers in pile
π (i.e., S(π) =
pi∈π pi). We always have |πL| = |πH| or
|πL| = |πH| + 1. In addition,
S(πL) ≤ S(πH), if |πL| = |πH|,
S(πL) > S(πH), if |πL| = |πH| + 1.
(27)
Proof: It is obvious that the way Algorithm 2 assigns
the powers results in two piles similar to the ones shown
in Figure 2. Let ˆpi denote the ith smallest power.
For n even, ˆp1, ˆp3, . . . , ˆpn−1 are assigned to πL while
ˆp2, ˆp4, . . . , ˆpn are assigned to πH. In this case the
inequality S(πL) ≤ S(πH) is obtained by summing the
pairwise inequalities: ˆp1 ≤ ˆp2, ˆp3 ≤ ˆp4, . . . , ˆpn−1 ≤ ˆpn.
For n odd, ˆp1, ˆp3, . . . , ˆpn are assigned to πL while
ˆp2, ˆp4, . . . , ˆpn−1 are assigned to πH. In this case the
inequality S(πL) > S(πH) is obtained by summing the
pairwise inequalities: ˆp3 ≥ ˆp2, ˆp5 ≥ ˆp4, . . . , ˆpn ≥ ˆpn−1
and ˆp1 > 0.
Proof of Theorem 4: The proof is by induction and
is divided into 4 steps. Given n received powers and k
time slots, in Step 1, we prove the theorem is correct
for k = 1 and a general n. In Step 2, the theorem is
proved for k = 2 and n = 2. In Step 3, we establish the
correctness of the theorem for k = 2 and a general n. In
Step 4, we prove the theorem is correct for general k and
n.
Step 1 (k = 1, general n): For k = 1, we show Algorithm
2 solves the Proportional Fair Scheduling problem.
In other words, we show that for a single time slot, the
optimal order of decoding is pn, pn−1, . . . , p1, i.e., decode
pn first, then pn−1, and so on.
The proof is by contradiction. Assume pL and pH are
two subsequent powers in the optimal order of decoding
so that pL < pH and pH is decoded just after pL.We show
that swapping the order of decoding of pL and pH will
indeed increase the objective function in (17).
Since pL and pH are decoded successively, swapping
their decoding order will only affect their individual
rates, while the rates of the remaining users will remain
intact. Therefore, we only need to show,
log
log
1 +
pL
N + pH
+ log
log
1 +
pH
N
<
log
log
1 +
pH
N + pL
+ log
log
1 +
pL
N
, (28)
where N denotes the noise power N0 plus the sum of the
signal powers that are decoded after pL and pH. Using
logarithm function properties we can rewrite (28) as,
log
1 +
pL
N + pH
log
1 +
pH
N
< (29)
log
1 +
pH
N + pL
log
1 +
pL
N
.
1. We use the term pile to refer to a portion of the powers scheduled
in a time slot.
It is clear that the sum of the two terms at each side
of the inequality is constant,
log
1 +
pL
N + pH
+ log
1 +
pH
N
=
log
1 +
pH
N + pL
+ log
1 +
pL
N
=
log
1 +
pL + pH
N
. (30)
In addition, it is known that the product of two terms
with a constant sum is an increasing function of their
difference. Thus, the product of the terms is maximized
when their difference is minimized. It is then obtained
that,
log
1 +
pH
N + pL
− log
1 +
pL
N
< (31)
log
1 +
pL
N + pH
− log
1 +
pH
N
,
which completes the proof.
Step 2 (k = 2, n = 2): We show for pH ≥ pL > 0 and
NH ≥ NL > 0 we have,
log
log
1 +
pH
NH
+ log
log
1 +
pL
NL
≥
log
log
1 +
pH
NL
+ log
log
1 +
pL
NH
(33)
That is, scheduling the greater power on top of the
higher noise and smaller power on top of the lower noise
will result in a greater value for (17) in comparison to
the other way around. This can simply be shown using
Lemma 2 by substituting X = pH, Y = pL, A = NL,
B = NL, and C = NH − NL.
Step 3 (k = 2, general n): In this step, we show the
correctness of the theorem for k = 2. Figure 2 shows
the solution of the problem for n = 7. The algorithm
splits the powers into two piles, πL and πH. πL contains
1st, 3rd, 5th, . . . smallest powers, while πH contains 2nd,
4th, 6th, . . . smallest powers. In each pile the powers
are sorted from bottom to top in a non-decreasing order.
Additionally, πL is always placed on top of NL while
πH is placed on top of NH.
Because of the recursive nature of the induction, we
use a recursive version of Theorem 4 in this step. Algorithm
3 shows the steps of the recursive version of
Algorithm 2. Given Lemma 3, it can be verified that
Algorithm 3 produces the same schedule as the one
given by Algorithm 2. Clearly, the theorem is correct for
n = 1. In addition, by step 2, we know that the theorem
is also correct for n = 2. We assume the algorithm works
for n = M powers and show the correctness of the
algorithm for n = M + 1 powers.
Given two initial noise-plus-interference powers NL,
NH, and M +1 received powers, by the result of Step 1,
we know that the smallest power is scheduled either on
top of NL or on top of NH. Let p0 denote the smallest
power while p1, p2, . . . , pk denote the rest of the powers.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
9
log
1 +
p0
NL
log
1 +
p1
NH
≥ log
1 +
p0
NH
log
1 +
p1
NL
(36a)
log
1 +
p2
πL,<2 + NL
log
1 +
p3
πH,<3 + NH
≥ log
1 +
p2
πL,<2 + NH
log
1 +
p3
πH,<3 + NL
(36b)
. . . ≥ . . . (
..
. )
log
1 +
pm−1
πL,
3: Schedule p0 on top of NL
4: RPF(p1, . . . , pn,NH,NL + p0) The
requirement p1 + NH ≥ p0 + NL holds
5: end if
6: end procedure
Having the induction assumptions, we only need to
compare two cases,
1) p0 is scheduled on top of NH:
In this case, since NH + p0 ≥ NL, it is obtained that
p1, p3, . . . are scheduled on top of NL and p2, p4, . . .
are scheduled on top of NH + p0.
2) p0 is scheduled on top of NL:
In this case, since NL + p0 ≥ NH (using Lemma 3),
it is obtained that p1, p3, . . . are scheduled on top of
NH and p2, p4, . . . are scheduled on top of NL + p0.
We show the second case is always the optimal one.
To that end, we construct an inequality that shows,
value of (17) for case 1 ≤
value of (17) for case 2 . (34)
Let πi,
that a schedule is essentially a two-dimensional matrix
of powers, where the columns of the matrix denote the
time slots and the rows denote the decoding order of the
received powers.
Let Lpq denote the power pi that is assigned to the
row p and column q of the schedule (i.e., ρ (pi) = p and
φ (pi) = q). By the above algorithm, Lpq’s are sorted in a
non-decreasing order (see Figure 3 (top)). That is, if p < r
or p = r and q < s then Lpq ≤ Lrs. Assume for some Lpq
and Lrs that the condition does not hold (i.e., Lpq > Lrs)
while p < r or p = r and q < s (see Figure 3 (bottom)). It
cannot be the optimal scheduling since the fairness index
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
10
in (17) can be improved by swapping Lpq and Lrs in the
schedule. For q = s, it contradicts the result of Step 1.
Otherwise, it contradicts the result of Step 3.
7 SCHEDULING WITH MINIMUM SINR GUARANTEE
In some applications, such as voice calls [6], a minimum
SINR guarantee is required for each user, whereas in
many other applications this is a desired property. A
minimum SINR guarantee for each user means successful
decoding of the signal with high probability plus a
minimum rate guarantee. In this section, we study the
problem of scheduling with minimum SINR guarantee.
A formal definition of the problem follows.
Problem 5 (Scheduling with Minimum SINR Guarantee
(MinSINR)). Given a multiset of received powers p1 ≤
p2 ≤ ··· ≤ pn, and some noise power N0, schedule the
corresponding n users in k time slots so that the SINR of
each user is at least Smin (i.e., pi
N0+Ii
≥ Smin, ∀i) or output
IMPOSSIBLE if the requirement cannot be satisfied.
As an example, given N0 = 1, Smin = 2, and {p1 =
2, p2 = 3} as the set of received powers, it is IMPOSSIBLE
to schedule the users in k = 1 time slot. The reason is
that, for k = 1, {2, 3} is the best schedule possible,
which supports a minimum SINR of 1. However, for k =
2, the scheduling frame is {2, 3}, which supports the
minimum required SINR.
Proposition 1. Let F be the frame that maximizes the
minimum SINR of users. Also, let SF be the minimum SINR
provided for the users by F. A solution to MinSINR can be
obtained by comparing SF and Smin: if SF ≥ Smin then F
provides the SINR requirement of the problem, otherwise, it
is impossible to find such a schedule. As a result, to solve
MinSINR, it is sufficient to find an algorithm that maximizes
the minimum SINR.
Proposition 2. An instance of MinSINR might have more
than one solution. For instance, given N0 = 1, Smin = 0.1,
k = 1, and {2, 3} as the set of received powers, both {2, 3}
and {3, 2} are correct answers. However, the answer given
by Proposition 1 is always correct.
Theorem 5. MinSINR can be solved in polynomial time.
Proof sketch: Algorithm 4 gives the solution to MinSINR
and is based on Proposition 1. The algorithm uses a
scheduling similar to Algorithm 2. Then, it computes the
SINR for every user. If the SINR of any user is less than
the required SINR, the algorithm outputs IMPOSSIBLE.
The rest of the proof shows that the scheduling frame
found by Algorithm 4, maximizes the minimum SINR.
The proof follows the four-step procedure we had for
the proof of Theorem 4 with some changes in the details.
Step 1 (k = 1, general n): The proof is by contradiction.
Assume that, in the optimal decoding order, pL is
decoded before pH and pL < pH. It can be seen that
swapping the order of decoding of pH and pL will either
increase the minimum SINR or does not affect it. That’s
because
min(
pL
N0 + Is
,
pH
N0 + Is + pL
) ≥
min(
pH
N0 + Is
,
pL
N0 + Is + pH
), (36)
where Is is the amount of interference which affects the
signal that is decoded last.
Step 2 (k = 2, n = 2): Given p1 ≤ p2 ≤ p3 ≤ p4 as the set
of received powers, the optimal schedule to maximize
the minimum SINR is given by {p1, p3, p2, p4}. This
can be shown by comparing all possible scheduling
frames for four users.
Step 3 (k = 2, general n): This step is conducted by
induction and uses the same technique, which is used
in Section 6. However, instead of (34) we need to show,
minimum SINR for case 1 ≤
minimum SINR for case 2 . (37)
Step 4 (general k, general n): This step is proven
by contradiction using an approach similar to the one
used in Section 6. The optimal schedule follows the one
offered by Algorithm 4, otherwise, it will contradict with
either Step 1 or Step 3.
Corollary 3. The following problem can be solved in polynomial
time: Given a multiset of received powers p1 ≤ p2 ≤
· · · ≤ pn, some noise power N0, and a minimum SINR Smin,
find the minimum number of time slots k that supports the
required SINR Smin.
It follows from the fact that Problem 5 can be solved
in polynomial time. The minimum k that gives a minimum
SINR ≥ Smin can be found using Algorithm 4 by
searching over k in the range [1, n]. That is the minimum
k for which Algorithm 4 produces a non IMPOSSIBLE
output. Since Algorithm 4 runs in O(n), a simple linear
search over k results in the overall complexity of O(n2).
Obviously, a binary search results in a faster running
time.
Corollary 4. The following problem is NP-hard: Given a
multiset of received powers p1 ≤ p2 ≤ ··· ≤ pn, and
some noise power N0, schedule the corresponding n users
in k time slots so that the SINR of each user is at least
Smin (i.e., pi
N0+Ii
≥ Smin, ∀i) and sum capacity (i.e., (5))
is maximized or output IMPOSSIBLE if the minimum SINR
requirement cannot be satisfied.
It follows from the fact that if Smin is small enough
(e.g., Smin ≤ mini pi
i pi
), the minimum required SINR can
be easily ignored, because the requirement holds for
any scheduling. In this case, the problem is reduced to
Problem 1, which has already been shown to be NP-hard.
Note that, while the problem of Corollary 4 is generally
NP-hard, some special cases of the problem can be
solved in polynomial time. For instance, if Algorithm 4
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
11
Algorithm 4 Scheduling with Minimum SINR Requirement
Require: p1 ≤ p2 ≤ . . . ≤ pn
1: procedure MINSNR(p1, p2, . . . , pn,N0, k, Smin)
2: m = ∞
3: for i := 1 to k do
4: Si = ∅
5: Ni = N0
6: end for
7: for i := 1 to n do
8: j = 1+(i − 1) mod k
9: m = min(m, pi
Nj
)
10: Sj = Sj ∪ {pi}
11: Nj = Nj + pi
12: end for
13: if m ≥ Smin then return {S1, . . . , Sk}
14: else return IMPOSSIBLE
15: end if
16: end procedure
returns IMPOSSIBLE for an instance of the problem of
Corollary 4, the answer is definitely IMPOSSIBLE.
8 NUMERICAL RESULTS
In this section, we provide numerical results to show
the utility and efficiency of the proposed scheduling
algorithms in various simulated network scenarios.
8.1 Simulation Setup
Simulations are conducted using a custom built simulator
written in Mathematica. For simulations, we consider
a disk-shape network with radius Rmax meters, where
the access point is placed at the center of the disk. Node
locations are drawn uniformly from inside the annulus
bounded by concentric circles of radii Rmin and Rmax.
Throughout the simulations, we set Rmin = 1 m,
Rmax = 1000 m, and N0 = −174 dBm. Consequently,
we modify pmax to obtain different SNR levels.
Recall that our results and algorithms are insensitive
to the specific propagation environment as we have
assumed that the access point has knowledge about
users’ channel information (as is the case in 3G/4G
networks).
8.2 Throughput Comparison by Varying n and k
The simulations conducted in this section are aimed to
analyze the effect of varying the number of users, n,
and the number of time slots, k, on the throughput
of the network. Since the sum of received powers is
proportional to n, according to Lemma 1, for a fixed k,
we expect a logarithmic increase in the throughput of
the network by increasing n. On the other hand, for a
fixed n, by increasing k, throughput decreases because
fewer users are scheduled in each time slot.
Figure 4(a) shows throughput per time slot comparison
of different scheduling algorithms by varying n
and k. Throughput per time slot is defined as the sum
throughput of the frame divided by the number of
time slots k. The plot asserts the expected behavior that
for a constant number of users, decreasing k increases
the throughput per time slot. The plot also asserts the
logarithmic increase in the throughput by increase in
sum of the received powers (Lemma 1). For k = 1,
GreedyMax and PFS work equally well. The reason is
that, in this case, all of the users are scheduled in one
time slot by both of the algorithms and therefore they
have the same throughput for any combination of input
powers. For n = k (No SIC scenario), we do not expect
any increase or decrease in the average throughput with
the increase of n. For k = 2, k = 4 and k = 8, GreedyMax
gives a higher throughput than PFS which is expected.
However, the throughput of PFS is very close to the
throughput of GreedyMax which is not apparent from
the formulas.
Figure 4(b) shows throughput per time slot per user
for the same set of inputs as Figure 4(a). Throughput
per time slot per user is defined as throughput per
time slot divided by the number of users n. Recall
that for a fixed k, throughput per time slot scales as
O(log n) with SIC while without SIC, it scales as O(1).
However, since the number of users increases linearly,
as n→∞, throughput per time slot per user converges
to zero (although with SIC, convergence is slower). This
behavior is asserted by Figure 4(b).
Figure 5 shows the throughput per time slot of the
algorithms for different SNR levels and varying k. As
we expect, by increasing k, throughput decreases. In
addition, the plot shows that in the low SNR regime,
the difference between the throughput of MTS and PFS
is negligible. However, the difference increases as SNR
increases.
Figure 5 also shows that the performance of MTS and
GreedyMax are very close in practice. Note that while
in Figure 5 the performance of MTS and GreedyMax
may look indistinguishable, it is easy to find cases in
which they differ. For instance, consider received powers
{9, 8, 6, 4, 3} and k = 2. GreedyMax splits the powers
into {9, 4, 3} and {8, 6} while the optimal schedule (given
by MTS) is {6, 9} and {4, 8, 3}.
8.3 Fairness Comparison
We use the Jain’s fairness index, which is commonly
used in the literature [30], as the measure of fairness for
comparison. For a given set of throughputs {x1, . . . , xn},
Jain’s fairness index is defined as follows,
J ({x1, . . . , xn}) =
(
n
i=1 xi)2
n
n
i=1 x2i
.
The index ranges between 1/n and 1. A higher value of
the index means a fairer distribution of the throughputs.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
12
10 15 20 25 30
0
2
4
6
8
n
Throughput per Time Slot
k1
k2
k4
k8
kn
Proportional Fair
Greedy Max
No SIC
(a) Throughput per time slot
10 15 20 25 30
0.0
0.2
0.4
0.6
0.8
1.0
n
Throughput per Time Slot
Greedy Max, k1
Greedy Max, k2
No SIC, kn
Greedy Max, k4
Greedy Max, k8
(b) Throughput per time slot per user
Fig. 4. Throughput of different SIC-enabled scheduling
algorithms compared to no-SIC scheduling. Each plot
shows the average of 500 runs for each case. received
powers are randomly generated so that the average of
SNR is 10 dB.
Figure 6 shows the result of Jain’s fairness index for different
algorithms and different levels of SNR by varying
n. The plots show that PFS performs significantly betters
in terms of fairness which is the expected behavior. Furthermore,
the figure shows that the difference between
the performance of the algorithms becomes more visible
when SNR is high.
0 2 4 6 8 10
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
k
Average Throughput
SNR5 dB
SNR0 dB
SNR10 dB
Proportional Fair
Max Throughput
Greedy Max
Fig. 5. Throughput per time slot per user for n = 10, different
SNR levels, and varying k. Plot shows the average
of 100 runs.
8.4 SIC Effectiveness
The questions considered in this section are: “How better
does SIC generally perform compared to no-SIC scenario?”
and “By what factors is the throughput increase
affected if SIC is employed?”. By no-SIC scenario, we
refer to the case in which a single user is scheduled
in each time slot. To answer the question we define
the percentage increase in throughput as the percentage of
increase in the throughput per time slot of GreedyMax
compared to the throughput per time slot for the no-SIC
scheduling (e.g., 150% increase means the throughput
of GreedyMax is 2.5x the throughput of no-SIC). We
consider the effect of two factors: SNR and coefficient of
variation in the simulations of this section.
Figure 7 shows the percentage of increase in throughput
versus the coefficient of variation of the received
powers for different SNR levels, n = 10 and k = 3. The
figures also shows a linear model fitted to the points
along with the 68%, 95%, and 99.7% standard deviation
bands.
The figures show that there is a positive correlation
between coefficient of variation and throughput increase.
Additionally, the increase in throughput is much higher
for lower SNR levels. Thus, we conclude, as the user
channels become more diverse or the average SNR decreases,
SIC becomes more effective in increasing the
system throughput.
8.5 Discussion
In practice, there are several issues with SIC that prevent
real systems from reaching the theoretical limits. For
example, we assumed that signals are decoded in an
error-free manner. However, in case an error occurs
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
13
2 4 6 8 10
0.0
0.2
0.4
0.6
0.8
1.0
n
Jain's Index
Proportional Fair
Max Throughput
Greedy Max
(a) SNR = −5 db
2 4 6 8 10
0.0
0.2
0.4
0.6
0.8
1.0
n
Jain's Index
Proportional Fair
Max Throughput
Greedy Max
(b) SNR = 0 db
2 4 6 8 10
0.0
0.2
0.4
0.6
0.8
1.0
n
Jain's Index
Proportional Fair
Max Throughput
Greedy Max
(c) SNR = +10 db
Fig. 6. Jain’s fairness index for k = 2 and varying n with different SNR levels. Plots show the average of 500 runs.
................................................................................
.........
......
...
.
.......
..
..
....
..
.
.
.
...
.
...........
.....
.
...
..
.......
.
..................................
........ ................................................................... ....... ........................................... .... .................. ................................. .
.
. ................................. .
................................................. .... .. ............................. ...................................................................... ................. ............................................................................................................... ........................................... .................... ...... ........................... ............................. ............................. ..... ........................ ............ .............. ................
....................... .
..
............. .............
...... ..
0 1 2 3 4 5 6 7
0
50
100
150
200
250
Coefficient of VariationCV
Throughput Increase
R2 0.953737
(a) SNR = −5 db
.............................................................
..........
.
...
.
....
.
....
.
....
........
...
..
.
.
.....
.
..
......
.
..
.
.
....
.
.
..
..
...
..
.
...
..
.
..
.
.....
.
.
.
.
.
.
.
..
.
...
.
.
.
.
.....
.
.
.
...
..
.....
........
...
..........
............................... .......... ..................................................................................................................................................................................................... ............ .............................................................................. ..............
..............
............ ..................
.......
....... . .
......
.
... ...
.......
................................
...... .
....
... ................................. ............ .................
.........
.............
......................
..
.........
..
........
... ... 0 1 2 3 4 5 6 7
0
50
100
150
200
250
Coefficient of VariationCV
Throughput Increase
R2 0.933481
(b) SNR = 0 db
.
..........................................................
...............
.
.....
.....
................
.
.
.
.
......
....
.
.
...
.
..
.
.
.
...
....
..
.
..........
.
....
.
.
.
.
.
.
.
.
.
..
.
..
.
.
...
.
..
.
.
...
..
.
.
.
.
.
.
.
.
..
.
...
.
.
.
.
..
.
.
..
................................................................................................................. ...................................................... ................ .........................................................
...............................
. ................... ...................................
.........
.................
.............
.
.............. ........... .. ...
.........................................................................................
.......................... ...
...
....... .
...
..............................
...........
..........................
....
...
.......... ...
... ..
...
0 1 2 3 4 5 6 7
0
50
100
150
200
250
Coefficient of VariationCV
Throughput Increase
R2 0.864021
(c) SNR = +10 db
Fig. 7. Percentage increase in throughput using GreedyMax vs. Coefficient of Variation of received powers for n = 10
and k = 3. Each plot shows 250 runs.
while decoding a signal, it is unlikely that the signal
is correctly removed from the composite signal. Thus, at
later stages the signals cannot be decoded correctly [5].
Also, due to imperfect channel estimation and analogto-
digital quantization errors, the analog version of a decoded
signal cannot be perfectly reconstructed. Thus, the
interference removal might be imperfect, which causes
lower throughput gains at later stages [31].
9 CONCLUSION
In this paper, we considered uplink scheduling in wireless
networks supporting SIC at the physical layer. We
considered four different scheduling problems with different
objectives and constraints.
In the first problem (MTS) we considered maximizing
the throughput of the system and showed that the problem
is NP-hard. We proposed a greedy O(n log n) algorithm
for the maximum throughput scheduling problem,
which gives a suboptimal answer to the problem.
The second problem (MTS–C) is similar to the first
problem except it puts a constraint on the number of
decoded signals in each time slot. We showed that while
the general form of the problem is NP-hard, a special
case (l ≤ 2) of the problem is solvable in polynomial
time.
In the third problem (PFS) we considered proportional
fair scheduling. We also proposed an O(n log n)
algorithm for PFS problem and proved its correctness
analytically.
The last problem considered is scheduling with some
minimum SINR guarantee. We proposed an algorithm to
find the optimal schedule for this problem in polynomial
time.
Simulations verify the logarithmic increase in the system
throughput by increase in the number of users using
SIC. In addition, it is shown that while PFS performs significantly
better in terms of fairness, the overall system
throughput is not sacrified by the scheduler. Since, PFS
runs in polynomial time, the results suggest that PFS
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
14
is a good scheduler for the real world scenarios. Finally,
simulations show that in the case that users have diverse
channels or low average SNR, SIC provides a higher
throughput gain compared to the non-SIC scenarios.
REFERENCES
[1] D. Halperin, J. Ammer, T. Anderson, and D. Wetherall, “Interference
cancellation: better receivers for a new wireless MAC,” in
ACM HotNets, Atlanta, USA, Nov 2007.
[2] J. Andrews, “Interference cancellation for cellular systems: a
contemporary overview,” IEEE Wireless Communications Magazine,
vol. 12, no. 2, 2005.
[3] J. Hou, J. Smee, H. Pfister, and S. Tomasin, “Implementing interference
cancellation to increase the EV-DO Rev A reverse link
capacity,” IEEE Communications Magazine, vol. 44, no. 2, 2006.
[4] J. Blomer and N. Jindal, “Transmission capacity of wireless ad hoc
networks: successive interference cancellation vs. joint detection,”
in IEEE ICC, Dresden, Germany, Jun. 2009.
[5] D. Tse and P. Viswanath, Fundamentals of Wireless Communication.
Cambridge University Press, 2005.
[6] S. Sambhwani, W. Zhang, and W. Zeng, “Uplink
interference cancellation in HSPA: principles and practice,”
http://www.qualcomm.co.jp/common/documents/white_
papers/ul-ic-hspa.pdf, 2009.
[7] A. Zubow, M. Grauel, M. Kurth, and J. Redlich, “On uplink
superposition coding and multi-user diversity for wireless mesh
networks,” in IEEE Fifth International Conference on Mobile Ad-hoc
and Sensor Networks, Fujian, China, Dec. 2009.
[8] L. Li, R. Alimi, R. Ramjee, J. Shi, Y. Sun, H. Viswanathan, and
Y. R. Yang, “Superposition coding for wireless mesh networks,”
in ACM MobiCom, Montréal, Canada, Sep. 2007.
[9] F. Kelly, “Charging and rate control for elastic traffic,” European
Transactions on Telecommunications, vol. 8, no. 1, 1997.
[10] T. Bu, L. Li, and R. Ramjee, “Generalized proportional fair
scheduling in third generation wireless data networks,” in IEEE
INFOCOM, Barcelona, Spain, Apr. 2006.
[11] R. Cruz and A. Santhanam, “Optimal routing, link scheduling
and power control in multihop wireless networks,” in IEEE
INFOCOM, San Francisco, USA, Mar. 2003.
[12] D. Halperin, T. Anderson, and D. Wetherall, “Taking the sting out
of carrier sense: interference cancellation for wireless LANs,” in
ACM MobiCom, San Francisco, USA, Sep. 2008.
[13] S. Sen, N. Santhapuri, R. Choudhury, and S. Nelakuditi, “Successive
interference cancellation: A back-of-the-envelope perspective,”
in ACM HotNets, Monterey,USA, Oct. 2010.
[14] S. Gollakota, S. Perli, and D. Katabi, “Interference alignment and
cancellation,” in ACM SIGCOMM, Barcelona, Spain, Aug. 2009.
[15] K. Wu, H. Tan, Y. Liu, J. Zhang, Q. Zhang, and L. M. Ni, “Side
channel: Bits over interference,” in ACM Mobicom, Chicago, USA,
Sep. 2010.
[16] S. Gollakota and D. Katabi, “Zigzag decoding: combating hidden
terminals in wireless networks,” in ACM SIGCOMM, Seattle,
USA, Aug. 2008.
[17] L. E. Li, K. Tan, H. Viswanathan, Y. Xu, and Y. R. Yang, “Remap
decoding: Simple retransmission permutation can resolve overlapping
channel collisions,” in ACM Mobicom, Chicago, USA, Sep.
2010.
[18] Y. Yu and G. Giannakis, “High-throughput random access using
successive interference cancellation in a tree algorithm,” IEEE
Transactions on Information Theory, vol. 53, no. 12, 2007.
[19] P. Mitran, C. Rosenberg, and S. Shabdanov, “Throughput optimization
in wireless multihop networks with successive interference
cancellation,” in Wireless Telecommunications Symposium, Apr.
2011.
[20] O. Goussevskaia, Y. A. Oswald, and R. Wattenhofer, “Complexity
in geometric sinr,” in MobiHoc, Montreal, Canada, Sep. 2007.
[21] Q. Zhao and L. Tong, “A dynamic queue protocol for multiaccess
wireless networks with multipacket reception,” IEEE Transactions
on Wireless Communications, vol. 3, no. 6, 2004.
[22] M. Ghanbarinejad, C. Schlegel, and P. Gburzynski, “Adaptive
probabilistic medium access in MPR-capable ad-hoc wireless
networks,” in IEEE GLOBECOM, Honolulu, USA, Dec. 2009.
[23] S. Nagaraj, D. Truhachev, and C. Schlegel, “Analysis of a random
channel access scheme with multi-packet reception,” in IEEE
GLOBECOM, New Orleans, USA, Nov. 2008.
[24] Q. Zhao and L. Tong, “A multiqueue service room mac protocol
for wireless networks with multipacket reception,” IEEE/ACM
Transactions on Networking, vol. 11, no. 1, 2003.
[25] K. Kumaran and L. Qian, “Scheduling on uplink of CDMA packet
data network with successive interference cancellation,” in IEEE
WCNC, New Orleans, USA, Mar. 2003.
[26] S. Deb, S. Jaiswal, and K. Nagaraj, “Real-time video multicast in
WiMAX networks,” in IEEE INFOCOM, Phoenix, USA, Apr. 2008.
[27] M. Garey and D. Johnson, Computers and intractability: a guide to
the theory of NP-completeness. W. H. Freeman, 1979.
[28] R. Graham, “Bounds on multiprocessing timing anomalies,”
SIAM Journal on Applied Mathematics, vol. 17, no. 2, pp. 416–429,
1969.
[29] V. V. Vazirani, Approximation Algorithms. Springer, 2001.
[30] R. Jain, D. Chiu, and W. Hawe, “A quantitative measure of
fairness and discrimination for resource allocation in shared
computer systems,” DEC Research Report TR-301, 1984.
[31] J. Andrews and T. Meng, “Optimum power control for successive
interference cancellation with imperfect channel estimation,” IEEE
Transactions on Wireless Communications, vol. 2, no. 2, 2003.
Majid Ghaderi is an Associate Professor in the
Computer Science Department at the University
of Calgary. Dr. Ghaderi received B.Sc. and M.Sc.
degrees from Sharif University of Technology,
and a Ph.D. degree from the University of Waterloo,
all in Computer Science. His research
interests include wireless networking and mobile
computing with emphasis on modeling and performance
analysis of wireless networks.
Mohsen Mollanoori is a PhD candidate in the
Department of Computer Science at University
of Calgary and a member of ELISA network
group since 2009. He received his MSc in Software
Engineering in 2007 from the Department
of Electrical & Computer Engineering, Tarbiat
Modares University with a first class honors.
Mohsen also received his BSc in Software Engineering
from Tarbiat Moallem University of
Tehran with a first class honors in 2005.
IEEE TRANSACTIONS ON MOBILE COMPUTING
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication.
Comments are closed.