Annals of Telecommunications manuscript No.
(will be inserted by the editor)
On the optimality of max-min fairness in Resource
Allocation
Angelo Coluccia · Alessandro D’Alconzo · Fabio Ricciato
Received: date / Accepted: date
Abstract In this work a basic Resource Allocation (RA)
problem is considered, where a fixed capacity must be
shared among a set of users. The RA task can be formulated as an optimization problem, with a set of simple
constraints and an objective function to be minimized.
A fundamental relation between the RA optimization
problem and the notion of max-min fairness is established. A sufficient condition on the objective function
that ensures the optimal solution is max-min fair is provided. Notably, some important objective functions like
Least Squares and Maximum Entropy fall in this case.
Finally, an application of max-min fairness for overload
protection in 3G networks is considered.
Keywords resource allocation, max-min fairness,
optimization problems.
1 Introduction
In this work we revisit a basic form of Resource Allocation (RA) problem, where a limited amount of a
generic resource must be shared among a certain number of users. Despite its simplicity, such abstract formulation finds instances in many cases of practical interest,
within and outside the networking area. In general, a
RA task can be approached in two different ways. On
one hand, it can be formulated as optimization problem, with a set of constraints and an objective function
to be minimized. On the other hand, the RA problem
can be expressed in terms of some qualitative property
that the final solution must fulfill. For the latter, one
of the most important and widely adopted criteria is
the so-called max-min fairness [1] [2], which naturally
Address(es) of author(s) should be given
leads to a sort of “egalitarian” assignment that fits well
in many practical scenarios.
We establish a direct link between the RA problems
and the notion of max-min fairness, and we provide sufficient conditions on the objective function that ensure
the optimal solution is max-min fair. Remarkably, such
conditions are broad enough to include some important
functions like Least Squares and Maximum Entropy.
Although previous works have drawn some links between optimality and fairness (e.g., [3] [4]), to the best
of our knowledge this is the first attempt to regard the
max-min fair allocation as the solution of a generic optimization problem, in which only general conditions
on the objective function are given rather than specific
functions.
The work is organized as follows. In §2 we describe
the context where our work collocates. In §3 we formulate the RA problem, while in §4 we review the notions of max-min fairness and water-filling, clarifying
the differences between different formulations. We then
present our novel results in §5 (all proofs are given in
Appendix), providing some examples of objective functions in the subsequent §6. In the final part of the work
we discuss the applicability (§7), illustrating also the
possibility of implementing max-min allocation in largescale dynamic systems — with particular reference to
mobile communication networks — with minimal modifications to existing hardware platforms (§8). We finally
conclude in §9.
2 Related work
Instances of RA problems can be found in a huge variety of application contexts. The same applies also to the
notion of fairness, for which a plethora of operational
2
formulations exist. An exhaustive survey of the literature on these topics is beyond the scope of this contribution. Here we provide an overview of the most common approaches. In most literature the RA problem is
mapped to a well-defined optimization problem with a
quantitative cost function and a set of constraints (e.g.,
[5] [21, p. 245]). Clearly, the choice of the cost function
depends on the particular application. Another common approach is based on a desired qualitative property the final solution must possess, typically the fulfillment of a fairness criterion [6]. Several types of fairness
can be considered, depending on the particular assignment goal, e.g. max-min fairness, proportional fairness
[7] and the more general (p, α)-fairness [5] [8]. In some
cases a fairness index is defined, and an iterative procedure is given to build the desired solution based on
index ordering (e.g., [9]). However, for certain fairness
criteria like max-min fairness, the solution is usually
built algorithmically without the support of any quantitative index (e.g., [10] [11]). In this work, we focus exclusively on max-min fairness, that is one of the most
widely considered options. The notion of max-min fairness is closely related to the class of water-filling (WF)
algorithms. We will review both concepts later in §4.
Although not explicitly, some points of contact between optimality and max-min fairness have been identified in a few previous works. In [12] Boche et al. address the problem of achieving min-max fairness while
maximizing utility. They provide a disproof of the conjecture that min-max fairness and utility efficiency are
conflicting objectives. In doing so, they explore somehow the relationship between fairness and optimization
problems. Mo and Walrand in [8, p. 559] show that the
proportional fair vector solves an optimization problem for an opportune choice of the objective function.
Their reasoning is somehow reminiscent of our arguments (as explained in the following) although the two
works differ significantly in the rationale and in several key aspects. First, we consider max-min fairness
instead of proportional fairness. Second, their result
applies to a very specific objective function, while we
consider here a more general class of functions. Third,
they consider a different set of constraints. The latter
two comments apply also to the example considered
in [21, p. 245], where basic power allocation among
communication channels is discussed. The authors show
that the water-filling allocation maximizes the communication rate. However, the different kind of individual constraints considered therein leads to a different
form of water-filling, as discussed later in §4.2. In [13]
Palomar et al. provide an interesting review of several optimization problems that result in fair solutions
with water-filling structures. They consider the multi-
waterlevel multi-constrained case and discuss some application scenarios, for which they provide practical resolution algorithms. We adopt an optimization approach
which is somehow similar to the power-constrained problem considered therein. However, it is important to remark once more that the water-filling solution we consider here is different from the one obtained by solving
the classical capacity-achieving problem (as done e.g. in
[13]), since we consider both global and individual constraints (ref. §3). Finally, we mention that the problem
of fair allocation while maximizing the throughput is
currently an hot topic in the wireless community (ref.
e.g. [26] [24] [25]). However, as will be clarified later
in §7, the structure of the problem in multi-user wireless systems — both CDMA-based and OFDM-based
— is intrinsically different and can lead to a max-min
fair allocation only under very particular conditions of
“symmetry”.
3 Problem formulation
We consider a basic yet common RA problem with a
simple set of constraints and a generic objective function to be minimized. A fixed amount of resource C
(total “capacity”) must be shared among N “users”
with different demands. We denote by di the individual
demand of user i and by ci the share of global capacity assigned to him (individual capacity). It is worth to
remark that the nomenclature is generic, since we are
not referring to any specific application scenario. The
set of demands is given as the input to the problem,
while individual capacities are unknown and represent
the output of the resolution procedure. All quantities
are real and (strictly) positive. The condition di > 0 excludes the trivial case of users requesting null resource.
Moreover,
we consider here the non-trivial case that
PN
d
>
C, i.e. the total demand exceeds the availi
i=1
able capacity — an assumption we will implicitly keep
throughout the whole paper. Consequently, it is not
possible to fully satisfy all users. A generic user cannot
be assigned more capacity than his demand, formally:
0<c≤d
(1)
T
T
where c = [c1 c2 · · · cN ] , d = [d1 d2 · · · dN ] and the
inequality symbol between vectors is intended elementwise. This kind of constraints is typical of non-interacting
scenarios, i.e. independent
PN users. The global capacity
constraint is simply
i=1 ci ≤ C. We consider here
the case that the whole available capacity is allocated
(work-conserving systems), hence the global capacity
3
constraint becomes:
N
X
ci = C.
(2)
i=1
Eqs. (1) and (2) are all our constraints. We do not consider additional capacity constraints involving partial
sets of users. Despite its simplicity, the set of constraints
(1)–(2) is representative of many problems found in real
world applications, within and outside the networking
area. The set of points satisfying eqs. (1)–(2) constitutes
the feasible set, wherein the optimal solution must be
chosen according to a goodness criterion. If an objective function f (·) is given, we end up with a classical
optimization problem. In a compact form:
min f (c)
s. t.
PN
i=1 ci
c
= C, 0 < c ≤ d.
(3)
We show in the rest of this paper that for an important
class of objective functions the solution to the problem
(3) is provably max-min fair. Beforehand, we provide
some background on max-min fairness and water-filling
algorithm.
4 Max-min fair allocation
4.1 What is max-min fairness?
Max-min fairness plays a central role in many RA problems. It can be qualitatively defined as follows [2] [10]
(see also [1]):
an allocation scheme is max-min fair if there is
no way to increase the allocation to a user without decreasing the allocation to another user with
less or equal assigned resource.
More formally, a max-min fair allocation fulfills the following conditions [14]:
– capacity is allocated in order of increasing demand;
– no user gets a capacity share larger than his demand;
– users with unsatisfied demands get an equal capacity share, called water-level.
The idea behind max-min fairness is simple and “egalitarian”: when dividing a scarce resource among a set
of users, all of them have an equal “right” to the resource. However, some users demand less than others;
hence, intuitively, a fair share satisfies users with a
“small” demand first, and distributes evenly the remaining resource to the other “large” users (ref. Fig.
1(b)). Max-min fairness is a simple and well-established
concept in resource allocation [2]. It became widely
popular after its adoption by ATM Forum in wireline
data networks [15]. Max-min fairness inspires many RA
schemes, in different scenarios and applications. The
work by Cao and Zegura [16] provides a good introduction to the topic, while a more complete framework
can be found in Radunovic and Le Boudec [17], where
a general approach is presented which does not rely on
the so-called bottleneck link notion. Therein, the authors establish theoretical links between max-min fairness and the water-filling algorithm (WF), which is the
most common procedure to obtain a max-min fair allocation. Since WF plays an important role in our discussion, we review it the following §4.2.
4.2 The water-filling algorithm
The term “water-filling” is used in the literature to denote two different allocation schemes which are sketched
in Fig. 1. Denote by l the water-level, which in both
cases depend on the total available resource and on the
distribution of individual demands. In one case (see 1(a)
from [21, p. 246]) users demand a minimum amount αi ,
and those which are below the water-level (αi < l) are
assigned a volume ci = l − αi , while the others are assigned zero (in the fluid analogy this maps to pour water ”outside” demands). This kind of WF is of interest
in RA problems where a minimum amount of resource
must be guaranteed to each user — this is NOT the
case considered in this paper.
Fig. 1(b) depicts a different allocation scheme, also
called “water-filling” in the literature following a well
established procedure to obtain a max-min fair allocation1 . In the rest of the paper we will always use the
term “water-filling” in the sense of Fig. 1(b). In this
case, individual demands represent maximum amounts
of required resource. The WF procedure works as follows: starting from a null value, the capacities assigned
to all users are increased at the same pace, until one
user is fully satisfied. Then, only the capacities of partially satisfied users continue to be increased, until the
next user saturates. In this way, an increasing number of users are progressively saturated, until the total available amount is consumed (in the fluid analogy
this maps to pour water ”inside” demands). Hence, in
the final solution all the users with unfinished demand
are assigned the same level of capacity (water-level). In
other words, the allocation procedure does not simply
fills the gap to reach the water-level (as in the scheme
of Fig. 1(a)) but rather it fully satisfies some lower de1
Several other iterative or exact algorithms exist, see e.g. [5]
[11] [13] [17] [18, Ch. 4]).
4
=1 ci
=
=1 ci
αi
(a)
=
(b)
Fig. 1 Different definitions of “water-filling”: pouring water ”outside” (a) and ”inside” (b) the demands.
mand users first, and then clips to the water-level the
other users with higher demand. This is representative
of common scenarios in which the (scarce) resource is
fixed and must be distributed among users according
to their needs (demands). It is proven (see e.g. [2]) that
the output of this latter kind of WF procedure yields
max-min fair allocation. Furthermore, [17] shows that
under certain conditions the general algorithm for finding the max-min fair solution naturally degenerates into
WF, which is also computationally simple.
In summary, we consider the WF algorithm in the
case that a fixed resource C is shared among N users
under the constraints (1)–(2). In this case the waterlevel X ∗ meets the following condition (ref. Fig. 1(b)):
bisection method can be used to obtain the optimal
solution in at most ⌈log2 N ⌉ steps.
Note that X ∗ is always greater or equal than any
demand fully satisfied, i.e.
N
X
5 Optimality and Max-min fairness
min(di , X ∗ ) = C.
i=1
Therefore X ∗ can be expressed as the solution of the
following simple optimization problem:
max x
s. t.
PN
i=1
min(di , x) = C.
(4)
It can be shown (a formal proof is given in Appendix
A) that the solution X ∗ can be written in the following
simple form:
Pk
C − i=1 di
∗
(5)
X = max
0≤k<N
N −k
where the user demands are arranged in increasing order, i.e. d1 ≤ d2 ≤ · · · ≤ dN . Eq. (5) represents a compact form to express the WF algorithm. Solving by exhaustive search, the search space is limited to a discrete
set of N values due to the ordering on di . Therefore, a
X ∗ ≥ max∗ di
i∈D
(6)
where D∗ = {d1 , . . . , dk∗ } is the set of fully satisfied
users, and k ∗ is the value for which the maximum in eq.
(5) is reached. This property is a direct consequence of
the definition of max-min fairness (see the bullet list in
§4).
In this section we establish a relation between the optimization problem (3) and the notion of max-min fairness. We aim at exploring the conditions under which
the solution of the optimizing problem is max-min fair,
or conversely when a max-min fair allocation optimizes
a certain class of objective functions. We provide hereafter two results in the form of theorems. In Theorem
1 (and in particular in Corollary 1), we give a condition for which the solution to the optimization problem
(3) can be written in a form that is reminiscent of the
WF solution. Corollary 1 serves as a Lemma to prove
the subsequent Theorem 2, where we finally provide a
sufficient condition on the objective function to ensure
the max-min fairness of the optimal solution.
Theorem 1 Given the RA problem (3), if the objective
function f (·) is such that:
′
∇f = [g1′ (c1 ) g2′ (c2 ) · · · gN
(cN )]T
(7)
5
where gi′ (·) are generic invertible functions, then the optimal solution takes the following form:
0 < sj < dj j ∈ S
(8)
cj =
dj
j∈D
where {S, D} is a partition of the demand index set
and {sj }j∈S are such that ∀h, k ∈ S it holds gh′ (sh ) =
gk′ (sk ).
Proof: see Appendix B.
Condition (7) states that the gradient of the function
must incorporate a kind of “orthogonality” that makes
each derivative a unidimensional function of the sole
derivation variable. Note that Theorem 1 does not state
which users are assigned into each subset, and how the
assignment relates to the ordering of the demands.
Corollary 1 Under the same hypothesis of Theorem 1,
if in addition
gi′ (·) = g ′ (·)
i = 1, . . . , N
(9)
then the optimal solution takes the following form:
(
P
C− i∈D di
j∈S
N
−kD
cj =
, where kD = |D|.
(10)
dj
j∈D
Proof: see Appendix C.
Condition (9) can be thought as a kind of “symmetry”
that makes the objective function “fair” to all users.
Note that all users in S are assigned with the same
amount of resource regardless of their demands. The
expression given in eq. (10) is thus reminiscent of the
WF solution (5). However, it is important to notice that
the optimal choice for D does not necessarily coincide
with the set of the kD smallest demands as in WF (ref.
eq. (5)). This means that the solution (10) cannot be
guaranteed to be max-min fair. Theorem 2 provides a
sufficient condition that ensures the optimal solution is
max-min fair.
Theorem 2 Given the RA problem (3), if the objective
function f (·) is such that:
f (c) =
N
X
h(cj )
(11)
j=1
where h(·) is a generic convex function in the interval
[0, maxi di ], then the optimal solution is the max-min
fair allocation.
Proof: see Appendix D.
An immediate consequence of Theorem 2 is that, for
the uniqueness of the max-min fair solution, condition
(11) defines a class of objective functions with the same
optimal solution. Note that Theorem 2 is consistent
with the findings in [8]: in particular, max-min fairness can be seen as a limiting case of the (p, α)-fair
allocation when α goes to infinity — though the optimization problem considered therein is different from
ours in several points (ref. §2).
6 Examples
In the following we provide some notable examples of
functions satisfying condition (11).
Least Squares. Taking a Least Squares (LS) approach one could define the function:
fLS =
N
X
cj −
j=1
C
N
2
.
The motivating argument for such choice is that, in order to share fairly C among N users, one can adopt the
least squares approximation to the virtual “ideal” sharing where all users are served with an equal share C/N .
This function clearly satisfies condition (11), hence if
adopted in the framework of problem (3) it leads to an
optimal solution which is also max-min fair.
Maximum Entropy. Taking a Maximum Entropy
(ME) approach one could consider the function:
fME =
N
X
cj
j=1
C
log
cj
.
C
Minimizing this function
PN is equivalent to maximize the
entropy H(p) = − j=1 pj log pj where the probability
c
masses are defined as pj = Cj 2 . The rationale for adopting entropy as the objective function lies in the so-called
maximum entropy principle, which is widely adopted in
several research fields (see e.g. [19]–[20]). Again, Theorem 2 ensures the optimal solution is max-min fair,
although this is not immediately apparent from the objective function. However, it is somehow intuitive that
ME leads to some form of fairness, since the maximum
entropy distribution tends to be as much “uniformly
distributed” as possible given the set of constraints.
Proportional Fairness. As a third example we
consider proportional fairness (PF). As a corollary of
Theorem 2, we can show that under the constraints (1)
and (2), proportional fairness is equivalent to the maxmin fair solution. Recall (see e.g. [7]) that the PF solution is the one maximizing the sum of the logarithms
2
This definition is consistent because due to constraint (2) it
P c
c
follows that 0 < Cj < 1 and j Cj = 1.
6
of each individual capacity, formally:
fPF (c) = −
N
X
log(cj ).
(12)
j=1
Therefore, by adopting eq. (12) as objective function
into problem (3), we obtain a PF formulation. The
equation (12) fulfills the condition (11) required by Theorem 2 since the function h(cj ) = − log(cj ) is convex.
This guarantees the final solution is also max-min fair.
We conclude that proportional fairness and max-min
fairness are equivalent in this case, a result which is
consistent with [7] for the case of a single bottleneck.
Fig. 2 Allocations obtained by solving the optimization problem
for different objective functions.
7 Applicability
It is important to remark that the condition of Theorem
2 rules out the presence of any user-specific parameter
in the objective function. In other words, Theorem 2
embeds a fundamental “egalitarian” principle: max-min
allocation is optimal in those capacity-limited system
where the objective function assigns to all users the
same “access right” to the global resource, regardless
of the disparity in the size of individual demand (and
on the details of the specific function). The egalitarian nature of the objective function — in combination
with convexity — is the ultimate reason for optimality being aligned with fairness. Such kinds of objective
functions are more often found in systems where the resource to be assigned is logical (rather than physical),
and the optimality criterion reflects some abstract notion of ”access right” or ”utility” which is homogenous
across users.
Conversely, Theorem 2 does not apply to those systems where the objective function depends on userspecific parameters: in this case the problem the optimality criterion becomes “asymmetric” across users
and the optimal optimal can not be ”egalitarian”. This
is often the case in physical system where the objective
function represents a physical quantity — rather than
an abstract notion — which is directly linked to userspecific conditions in a heterogeneous environment.
To illustrate, we resort to a classical example from
multi-user wireless communications [24]–[26]. Consider
a wireless system with a single transmitter and multiple
receivers — typically the forward link (downlink) in a
mobile network — with orthogonal “channels” assigned
to different users — e.g. channels map to orthogonal
codes in CDMA and to individual sub-bands in OFDM.
The problem considered by Huang et al. [24] is to allocate power to individual channels (users) in order to
achieve maximum rate, i.e.:
N
X
pj ẽj
−wj log 1 +
min
p
1 + βpj ẽj
j=1
s. t. 0 ≤ pj ≤
(13)
s̃j X
pj ≤ P
,
ẽj j
where wj and pj denote respectively the QoS-dependent
weight and the allocated transmit ??? power to each
user, P is total available power, ẽj the channel gain
and s̃j a noise term for user j, and β accounts for the
self-noise term (see [24] for more details on the problem
formulation). Even considering the homogeneous case
where all users are assigned channels of equal bandwidth, with same QoS weight and same noise level, it
is not realistic to assume that the channel gain s̃j is
the same for all users. Therefore, the maximization of
the overall throughput (rate) cannot lead to a max-min
fair allocation due to user-specific channel conditions
(i.e. the parameters s̃j ), despite the structure of problem (13) is very similar to the one of problem (3) and
each addend of the sum is a convex function of pj .
To illustrate, we report some numerical results in
Fig. 2. The example regards N = 10 users having different demands ranging from 0.01 to 0.5 (reported in
increasing order in the right-most bar of each triple).
We compared the allocations obtained by iteratively
solving the optimization problem (3) for f = fLS and
f = fMR , where
N
X
cj
def
fMR (c) = −
log 1 +
dj + βcj
j=1
is obtained from (13) in the unweighted case by simply
def
def
posing cj = pj and dj = 1/ẽj . To make the comparison as fair as possible, we considered the particular case
7
s̃j = 1, so does the individual constraints are the same
for both objective functions — i.e., 0 ≤ pj ≤ dj ∀j.
PN
Since the aggregated “demand”
j=1 dj = 2.04 exceeds the available “capacity” C ≡ P = 1.5 a feasible
solution must assign to some users less capacity than
their demands. As expected, while fLS provides a maxmin fair allocation3 , fMR allocates different shares to
users with the greatest demands (ref. Fig. 2). Therefore
we conclude that max-min fair allocation cannot be optimal when user-specific “asymmetries” are accounted
in the objective function, even though the structure of
the problem and the kind of function are very similar
to the ones needed by Theorem 2.
number of ultra-high rate users. Such setting cannot
protect the box from even a moderately distributed
Denial-of-Service attack or flash-crowd events, where
many users issue a moderately high rate of connections.
Given that such platforms (GGSN, proxy) already
include the possibility of clipping individual demands to
a common level Ψ , a relatively simple extension would
be to let the clipping limit be dynamically
adjustable,
P
so as to ensure that at any time i max(Ψ, di ) = ρC,
with C the system capacity and ρ < 1 a safety margin (e.g. ρ = 0.9). By computing the water-level Ψ as
X ∗ in eq. (5) the system would dyncamically maintain
max-min allocation. Ideally, the exact value of the optimal clipping level would need to be computed from the
set of individual demands di ’s. Since the latter change
8 Practical considerations for water-level
dynamically — and so does the total number of users
setting
— exact water-level computation would require individual monitoring and reporting of each and every deFrom Theorem 2 we know that max-min allocation is
mand size. This might be impractical to implement in
optimal in those capacity-limited system where all users
real systems, especially on legacy hardware platforms,
have the same “right” to access the resources, regardless
due to the large number of concurrent users. A possiof the amount of individual demands. Besides optimalble workaround is to let the water-level be dynamically
ity, max-min allocation has another advantageous propadjusted by a control loop based on the total amount
erty which makes it attractive for practical adoption in
of actual resource consumption. Denote by RT (t) the
dynamic systems characterized by a very large number
total amount of actual resource consumption at time t
of individual users (demands), and stems from the fact
(e.g. memory or CPU power). Note that RT (t) is always
that it involves a single parameter, i.e. the water-level
monitored and reported periodically in every platform
X ∗ . In the following we illustrate this point with refer(including home computers), typically as a percentage
ence to a very specific application scenario, i.e. overload
of the total available resource. The idea is to dynamprotection in packet-switched mobile networks, but the
ically decrease [resp. increase] the clipping level Ψ (t)
considerations made here apply to other large-scale dywhen
RT (t) exceeds [resp. falls below] the target level ρ.
namic systems as well.
Dual-threshold
hysteresis can be introduced to reduce
The core section of a third-generation (3G) celluclipping
level
adjustments.
In this way, max-min allocalar network involves a number of stateful elements that
tion
can
be
dynamically
approximated
with only minor
track individual transport-layer connections. Besides transadaptation
to
legacy
platforms
—
i.e.,
making
the clipparent proxies, which are used to speed-up TCP conping level dynamically adjustable, instead of statically
nection (see e.g. [23] and references therein) also the
configured — and a more robust overload-protection
GPRS Gateway Support Node (GGSN) must implecan be achieved.
ment stateful tracking in order to support content-based
billing. Such elements typically enforce a maximum limit
Ψ on the number of parallel connections allowed by any
individual user: excess connections beyond this threshold are discarded. The value of Ψ is configured statically by the operator, typically to a very large value.
The rationale for enforcing such limit is to prevent one
or few users with ultra-high connection rate — typically port/address scanners, e.g. caused by worm infection at the mobile terminal — to starve the pool of
resources available at the box (e.g. memory state). In
other words, such high static limit enforces a sort of
basic overload protection, but only against a very small
3
Obviously, from Theorem 2 we know that fPF and fME yields
the same max-min fair allocation as fLS .
A detailed design and performance analysis of the
water-level control-loop is beyond the scope of this work.
Following [22], we are aware that the notion of “optimality” and “fairness” in the dynamic case cannot be
regarded in general as simple extensions of the static
case when the dependency between the sojourn time
of individual demands and the allocated service rate is
considered. However, in some applications of practical
interest, including the adoption of resource clipping for
DoS protection, such dependency is mild and under certain conditions can be neglected. We leave for further
study the analysis of such scheme under dynamic load
conditions. The point to be taken here is that max-min
allocation is not only optimal in the sense of Theorem 2:
8
in principle it also lends itself to simple implementation
in dynamic large-scale systems.
9 Conclusions
In this work we have established a formal link between
optimality and max-min fairness for a basic Resource
Allocation problem. We have provided a sufficient condition on the objective function that ensures the optimal solution is also max-min fair. Notably, such condition is broad enough to include some important functions, for instance those inspired by the Least Squares
and Maximum Entropy principles. Based on the same
result, we have shown that in the considered case maxmin fairness is equivalent to proportional fairness.
One interesting implication is that, under the established condition on the objective function, an optimization RA problem can be directly resolved by means of a
simple water-filling algorithm, leveraging the max-min
fairness of the optimal solution which we have proved
in Theorem 2.
Our results hold true when only a minimal set of
constraints is considered, namely a single total capacity
constraint and a set of individual bounds associated to
individual user demands. If additional constraints are
applied, like e.g. partial capacity constraints on subsets
of users, the alignement between optimality and fairness
might be broken.
The basic version of the RA problem that we have
addressed here is of practical interest due to its simplicity and generality. We have highlighted that the alignement between optimality and max-min fairness is guaranteed when the objective function has an “egalitarian” nature, i.e. it reflect an equal “access right” to the
global resource for all users, regardless of the disparity
in the size of individual demands. Conversely, we have
shown with a counterexample that when the objective
function involves user-specific parameters, the optimal
solution can not be expected to be max-min fair. This
is often the case in physical systems where the objective function links directly to a physical quantity which
depends on user-specific conditions — a prominent example being the wireless channel in multi-user systems.
In conclusion, we believe our work constitutes an elementary but fundamental theoretical contribution towards a better understanding of the relationships between optimality and fairness in resource-constrained
systems.
As an additional contribution, we have shown that
max-min allocation lends itself to simple implementation in dynamic large-scales system. One key advantage is that it relies on a single parameter, the waterlevel, which in principle can be adjusted by a dynamic
control-loop based on the total amount of user resources.
Due to its properties in terms of optimality and simple implemention, this mechanism can be attractive
for overload protection in large-scale dynamic systems,
such as for example mobile communication networks.
A Proof of eq. (5)
The problem (4) can be easily solved by using the Lagrange multipliers method. The Lagrangian can be written as
!
N
X
min(di , x) − C
L(x, λ) = x − λ
i=1
0
= x − λ@
X
i∈D
1
di + (N − kD )x − C A
where D is the (unknown) set of users that are fully satisfied and
kD its cardinality. Taking the derivatives we obtain:
8 ∂L
< ∂x = 1 − λ(N − kD )
.
P
: ∂L
= i∈D di + (N − kD )x − C
∂λ
Imposing the gradient equal to zero yields the stationary points
P
C − i∈D di
(A.1)
X(D) =
N − kD
hence the optimal solution can be written as X ∗ = maxD X(D).
In principle, one should explore all the possible configurations of
D (i.e., all the combinations of di elements) to find the maximum.
However, a certain number of configurations are not admissible
since they violate the constraints 0 < c ≤ d. Moreover, it can be
easily seen that, among all the configurations of same cardinality
kD , the maximum is reached when D contains the kD smallest
demands (i.e., d1 , . . . , dkD ). Therefore, in order to maximize the
objective function in problem (4), we can order the demands and
restrict the search on those configurations of D built by taking
the kD (unknown) smallest di , yielding:
P
C − ki=1 di
X ∗ = max
0≤k<N
N −k
that is the thesis.
B Proof of Theorem 1
Since each derivative is a function of the sole derivation variable,
the stationarity condition is
!)
(
N
N
X
X
∂
ci − C
=0
[µi (ci − di ) − νi ci ] + λ
f+
∂cj
i=1
i=1
for j = 1, . . . , N . Using the hypothesis, we end up with the following Karush-Kuhn-Tucker (KKT) conditions (see e.g. [21]) for
the problem (3):
8 ′
gj (cj ) + µj + λ − νj = 0
>
>
>
> cj − dj ≤ 0
>
>
> −c < 0
>
>
j
>
< PN
i=1 ci = C
(B.1)
>
µ (c − dj ) = 0
>
> j j
>
>
−νj cj = 0
>
>
>
>
>
: µj ≥ 0
νj ≥ 0
9
where j = 1, . . . , N . Since cj > 0, the constraint −νj cj = 0 is
satisfied only for νj = 0. This means that system (B.1) simplifies
into
8 ′
gj (cj ) + µj + λ = 0
>
>
>
> cj − dj ≤ 0
>
>
<
−cj < 0
PN
(B.2)
>
>
i=1 ci = C
>
>
>
>
: µj (cj − dj ) = 0
µj ≥ 0
transition
set
D∗ → D
D∩
users in D∗ that
are in D too
description
D∗ → S
D ∗ \ D∩
S∗ → D
D \ D∩
S∗ → S
S∩
users in D∗ that
are not in D∩
(i.e., they are not
in D, hence they
are in S)
users in D that
are not in D∩
(i.e., they are not
in D∗ , hence they
are in S ∗ )
users in C ∗ that
are in S too
The index set {j}j=N
j=1 can be partitioned into two subsets S and
D based on the value of µj :
S = {j|µj = 0}
D = {j|µj > 0}
Since µj > 0 =⇒ cj = dj in force of the fifth equation in the system (B.2), D contains all the users that are fully satisfied. Conversely, for µj = 0 the first equation becomes gj′ (cj ) = −λ, which
means that users in S are provided with intermediate shares so
def
as to make their derivatives all equal. Posing sj = gj′−1 (−λ) we
can write:
0 < s j < dj j ∈ S
cj =
dj
j∈D
that is the thesis.
With the further hypothesis, the gradient becomes:
∇f = [g ′ (c1 ) g ′ (c2 ) · · · g ′ (cN )]T
and, accordingly, the first equation of the system (B.2) becomes
j = 1, . . . , N.
Using the partition {S, D}, we can write cj = g ′−1 (−λ) j ∈ S,
which does not depend on the index j. The equality constraint
yields:
N
X
ci = C ⇐⇒
i=1
X
i∈D
di +
X
cj = C
j∈S
that is
X
di + (N − kD )cj = C.
i∈D
Rearranging terms we end up with the following expression for
the candidate optimum points:
P
(
C− i∈D di
j∈S
N −kD
cj =
dj
j∈D
D Proof of Theorem 2
The feasible set of the problem (3) is convex, hence it always
admits a max-min fair vector [17, p. 1077], which we denote by
c∗ = [c∗1 c∗2 · · · c∗N ]T . Recalling eq. (5) we can write
c∗j =
X∗ j ∈ S∗
dj j ∈ D∗
users clipped to
X ∗ in c∗ that are
clipped to X in c
Table 1 Possible transitions when moving from the max-min
fair solution c∗ to a generic feasible solution c.
where, arranging user demands in increasing order (i.e., d1 ≤
d2 ≤ · · · ≤ dN ),
X∗ =
C−
P
N
i∈D ∗
− k∗
di
=
P ∗
C − ki=1 di
N − k∗
and k denotes the cardinality of D. To prove that c∗ is the optimum, we show that any other candidate point c cannot improve
the objective function value, i.e. c 6= c∗ =⇒ f (c) ≥ f (c∗ ). By
hypothesis h(·) in convex in the region of interest (since any allocation of resource greater than maxi di would not be in the
feasible set), which in turn implies the convexity of f (·) (see e.g.
[21]). The idea is to split the latter function into separate terms
to be subsequently bounded by leveraging the properties of convex functions. The choice of a convenient split that allows for
a sufficiently tight bound is not trivial. In the following we describe such a choice. To illustrate, imagine that a generic feasible
solution c (in the form of eq. (D.2)) is obtained from c∗ by performing some moves. In doing so, the elements of the sets S ∗ , D∗
are rearranged into the sets S, D. We can then identify four kinds
of transition, depending on the departure/arrival sets, as listed
in the Table 1.
If we denote with k∩ the cardinality of D∩ , the value of the
objective function in c can be recast as follows:
f (c) =
X
i∈D∩
that is the thesis.
users clipped to X ∗
in c∗ that are fully
satisfied in c
and k∗ denotes the cardinality of D∗ .
PN
Since f (c) =
j=1 h(cj ), the hypothesis of Corollary 1 on
the gradient ∇f are satisfied, thus all candidate points for the
optimum must take the form:
P
C − i∈D di
X j∈S
(D.2)
cj =
, where X =
dj j ∈ D
N −k
C Proof of Corollary 1
cj = g ′−1 (−λ − µj )
meaning
users fully satisfied
in c∗ that are fully
satisfied in c too
users fully satisfied in c∗ that are
clipped to X in c
(D.1)
h(di ) +
X
h(di ) +
i∈D\D∩
X
h(X) +
i∈D ∗ \D∩
X
h(X).
i∈S∩
(D.3)
We now proceed to rewrite the latter three summations in eq.
(D.3). For the second summation, it is important to realize that
each user in D \ D∩ contributes to f (c) with an individual term
that can be rewritten as h(di ) = h(X ∗ + ∆i ) with ∆i ≥ 0,
i ∈ D \ D∩ . In fact, the set of constraints (1) ensures that the
water-level X ∗ is no larger than any demand di for i ∈ S ∗ , and
D \ D∩ ⊆ S ∗ . Similarly, each user in D∗ \ D∩ contributes with
an individual term h(di ) = h(di − ∆i ) with ∆i ≥ 0, i ∈ D∗ \ D∩ ,
because X is smaller than any demand di for i ∈ S, and D∗ \D∩ ⊆
10
S. For the last summation, note that the individual contributions
h(X) are the same for all user indeces. Finally, we denote by k∪
the cardinality of the union set of the first three summations in
eq. (D.3), formally:
def
k∪ = |D∩ ∪(D \D∩ )∪(D∗ \D∩ )| = |D ∪D∗ | = k +k∗ −k∩ . (D.4)
With these positions we can rewrite (D.3) as:
X
f (c) =
X
h(di ) +
h(X ∗ + ∆i ) +
X
The convexity of h(·) implies h′ (·) is an increasing function; moreover, recalling eq. (6) it holds X ∗ ≥ maxi∈D∗ di . Thus, the difference h′ (X ∗ ) − h′ (di ) is always positive for all i ∈ D∗ \ D∩ , and
hence ∆f ≥ 0 that is f (c) ≥ f (c∗ ). For the arbitrariness of c, we
conclude c∗ is the optimum.
E Proof of eq. (D.6)
h(di − ∆i ) +
By construction the water-level X ∗ of the max-min fair solution is
the maximum among the water-levels associated to the candidate
points taking the form of eq. (D.2), i.e.
By definition X is the common water-level of partially satisfied users, i.e. users belonging to S, hence it holds that X <
mini∈S di . Furthermore, we already noticed that X ∗ ≥ maxi∈D∗ di
. We now consider two distinct cases based on the mutual relation
between the sets S and D∗ . If S ∩ D∗ 6= ∅, we can take a generic
element d¯ ∈ S ∩ D∗ and write:
X ∗ ≥ X.
X < min di ≤ d¯ ≤ max∗ ≤ X ∗ .
i∈D∩
i∈D ∗ \D∩
i∈D\D∩
+ (N − k∪ )h(X).
(D.5)
(D.6)
This follows directly from the optimization (4), however a formal
proof is given in Appendix E. From eq. (D.6) it follows that X =
X ∗ − ∆, where ∆ ≥ 0 is such that all the individual level gaps ∆i
compensate reciprocally, in order for the point to remain within
the candidate set. The value of ∆ can be obtained by zeroing the
algebraic sum:
X
X
∆i −
∆i + (N − k∪ )∆ = 0
i∈D ∗ \D∩
i∈D\D∩
i.e.,
∆=
P
i∈D ∗ \D∩
∆i −
P
i∈D\D∩
∆i
N − k∪
.
Now let us write the value of the objective function at c∗ :
X
f (c∗ ) =
h(di ) + (N − k∗ )h(X ∗ ).
i∈D ∗
We now partition D∗ into D∩ and D∗ \ D∩ , and split the last
term based on the equivalence N − k∗ = N − k∪ + k − k∩ (recall
eq. (D.4)), rewriting:
f (c∗ ) =
X
h(di ) +
i∈D∩
X
h(di ) + (N − k∪ )h(X ∗ ) +
i∈D ∗ \D∩
+ (k − k∩ )h(X ∗ ).
(D.7)
With such rearrangement we can directly compare the values of
the objective function in c and c∗ , i.e. eq. (D.5) and (D.7):
def
∆f = f (c) − f (c∗ ) =
i
X h
h(X ∗ + ∆i ) − h(X ∗ ) +
i∈D\D∩
+
X
h
i
h
i
h(di −∆i )−h(di ) +(N −k∪ ) h(X ∗ −∆)−h(X ∗ ) .
i∈D ∗ \D∩
(D.8)
Since the function h(·) is convex, the inequality h(y) − h(x) ≥
h′ (x)(y − x) holds (see e.g. [21]), where h′ (·) is the derivative of
h(·). Applying the inequality to each term of eq. (D.8) we can
write:
X
X
∆f ≥
h′ (X ∗ )∆i −
h′ (di )∆i − (N − k∪ )h′ (X ∗ )∆.
i∈D\D∩
i∈D ∗ \D∩
Substituting the explicit expression for ∆ and arranging by homologous terms, after some simple algebraic steps we obtain:
i
X h
∆f ≥
h′ (X ∗ ) − h′ (di ) ∆i .
i∈D ∗ \D∩
i∈S
i∈D
Conversely, if S ∩ D∗ = ∅, it follows necessarily that D ⊃ D∗ :
in fact, moving from D∗ to D the number of fully satisfied users
augments, leading necessarily to a lower water-level. This is a
direct consequence of the definition of max-min fair water-level.
Thus we conclude that X ∗ ≥ X.
References
1. S. Keshav: An Engineering Approach to Computer Networking, Addison-Wesley, Reading, MA, 1997, pp. 215-217.
2. D. Bertsekas, R. Gallager: Data Networks, Prentice-Hall,
1992.
3. E.M. Gafni, D.P. Bertsekas: Dynamic Control of Session
Input Rates in Communication Networks, IEEE Trans. on
Automatic Control, vol. AC-29, no.11, nov.1984.
4. R.M. Salles, J.A. Barria: Lexicographic maximin optimisation for fair bandwidth allocation in computer networks,
European Journal of Operational Research, 185 (2008),
778794, Elsevier, 2007.
5. M. Uchida: Information Theoretic Aspects of Fairness Criteria in Network Resource Allocation Problems, GameComm
’07, Nantes (France), Oct. 22, 2007.
6. J.-Y. Le Baudec: Rate adaptation, Congestion Control and
Fairness: A Tutorial, Ecole Polytechnique Fédérale de Lausanne (EPFL), Oct. 2007.
7. F. Kelly: Charging and rate control for elastic traffic, Eur.
Trans. Telecommun., vol. 8, Jan./Feb. 1997.
8. J. Mo, J. Walrand: Fair end-to-end window-based congestion control, IEEE/ACM Trans. on Networking, vol. 8, no.
8, pp. 556-567, Oct. 2000.
9. M. Dianati, X. Shen, S. Naik: A New Fairness Index for Radio Resource Allocation in Wireless Networks, IEEE Comm.
Society / WCNC 2005.
10. A. Malla, M. El-Kadi, S. Olariu, P. Todorova: A Fair
Resource Allocation Protocol for Multimedia Wireless Networks, IEEE Trans. on Parallel and Distributed Systems,
vol. 14, no. 1, Jan. 2003.
11. B. Aoun, R. Boutaba: Max-Min Fair Capacity of Wireless
Mesh Networks, IEEE Int’l Conf. on Mobile Ad hoc and
Sensor Systems (MASS), 2006.
12. H. Boche, M. Wiczanowski, S. Stanczak: Unifying View
on Min-Max Fairness and Utility Optimization in Cellular
Networks, IEEE Communications Society / WCNC 2005.
13. D. Prez Palomar, J. Rodrguez Fonollosa: Practical Algorithms for a Family of Waterfilling Solutions, IEEE Trans.
on Signal Processing, vol. 53, no. 2, Feb. 2005.
11
14. I. Marsic: Computer Networks: Performance and
QoS,
[www.caip.rutgers.edu/∼marsic/books/QoS/bookQoS marsic.pdf].
15. The ATM Forum Technical Committee: Traffic management Specification, Technical report, Apr. 1996.
16. Z. Cao, E. W. Zegura: Utility max-min: An applicationoriented bandwidth allocation scheme, IEEE INFOCOM ’99,
pp. 793-801.
17. B. Radunović , J.-Y. Le Boudec: A Unied Framework
for Max-Min and Min-Max Fairness With Applications,
IEEE/ACM Trans. on Networking, vol. 15, no. 5, Oct. 2007.
18. J. M. Cioffi: EE379C Advanced Digital Communications,
[www.stanford.edu/class/ee379c].
19. M. Johansson, M. Sternad: Resource Allocation Under
Uncertainty Using the Maximum Entropy Principle, IEEE
Trans. on Information Theory, vol. 51, no. 12, Dec. 2005.
20. A. Berger, S. Della Pietra, V. Della Pietra: A maximum entropy approach to natural language processing, Computational Linguistics, 22:39-68, 1996.
21. S. Boyd, L. Vandenberghe: Convex Optimization, Cambridge University Press, 2004.
22. L. Massoulié, A. Proutière, J. Virtamo: A queueing analysis of max-min fairness, proportional fairness and balanced
fairness, Queueing Systems, 2006
23. S. Ladiwalaa, R. Ramaswamya, T. Wolf: Transparent
TCP acceleration, Computer Communications, Vol. 32, Issue 4, March 2009, pp. 691-702.
24. J. Huang, V. G. Subramanian, R. Agrawal, R. A. Berry:
Downlink Scheduling and Resource Allocation for OFDM
Systems, IEEE Trans. on Wireless Communications, vol. 8,
no. 1, Jan 2009
25. V. G. Subramanian, R. A. Berry, R. Agrawal: Joint
Scheduling and Resource Allocation in CDMA Systems,
IEEE Trans. on Information Theory, vol. 56, no. 5, May
2010
26. R. Madan, S. P. Boyd, S. Lall: Fast Algorithms for Resource Allocation in Wireless Cellular Networks, IEEE/ACM
Trans. on Networking, vol. 18, no. 3, Jun 2010