In communication networks, fair sharing of resources is an important issue .....
niques, along with the substantial improvement of the computer-controlled.
Fairness in Communication and Computer Network Design Nilsson, Pål
Published: 2006-01-01
Link to publication
Citation for published version (APA): Nilsson, P. (2006). Fairness in Communication and Computer Network Design Department of Communication Systems, Lund University
General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal ? Take down policy If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately and investigate your claim.
L UNDUNI VERS I TY PO Box117 22100L und +46462220000
Fairness in communication and computer network design P˚ al Nilsson
Department of Communication Systems Lund Institute of Technology
ii
ISSN 1101-3931 ISRN LUTEDX/TETS–1080–SE+138P c al Nilsson
P˚ Printed in Sweden Tryckeriet i E-huset Lund 2006
iii
To my family
iv This thesis is submitted to Research Board FIME - Physics, Informatics, Mathematics and Electrical Engineering - at Lund Institute of Technology, Lund University in partial fulfilment of the requirements for the degree of Doctor of Philosophy in Engineering.
Contact information: P˚ al Nilsson Department of Communication Systems Lund University Box 118 SE-221 00 LUND Sweden Phone: +46 46 222 03 68 Fax: +46 46 14 58 23 e-mail:
[email protected]
v
Abstract In communication networks, fair sharing of resources is an important issue for one main reason. The growth of network capacity is in general not matching the rapid growth of traffic. Consequently, the resources consumed by each user have to be limited. This implies that users cannot always be assigned the end-to-end bandwidth they ask for. Instead, the limited network resources should be distributed to users in a way that assures fair end-to-end bandwidth assignment among them. Obtaining fairness between network users and at the same time assuring efficient network utilization, is a source of non-trivial network optimization problems. Complicating factors are that each user has limited access to the (limited) network resources and that different users require and consume different amounts and types of resources. In this thesis different types of optimization problems associated with fair resource sharing in communication networks are studied. Initially, the notions of max-min fairness, proportional fairness, α-fairness etc., are put in a formal framework of fair rational preference relations. A clear, unified definition of fairness is presented. The theory is first applied to different types of allocation problems. Focus is put on convex and non-convex max-min fair traffic allocation problems, and a difference in difficulty between the two groups of problems is demonstrated. The studies are continued by an investigation of proportionally fair dimensioning. Two different cases are studied – a simpler, when no resilience to failures is required, and a more complicated, assuming the possibility of link failures. In the context of fair sharing of the resources of a communication network, this thesis presents several original theoretical findings as well as solution algorithms for the studied problems. The results are accompanied by numerical results, illustrating algorithm efficiency for virtually all of the studied problems.
vi
Acknowledgements My gratitude goes out to all the people who did, in any sense, contribute to the creation of this thesis. Thanks to my precious family – Rebecka, Alfred and Lovisa, and to Mum and Dad who did always support me. Many thanks to my supervisor Michal Pioro and to my colleague Eligijus Kubilinskas. I am also grateful to Ulf Ahlfors, Jens K Andersson, Mikael Andersson, Jianhua Cao, Mateusz Dzida, Zbigniew Dziong, Gabor Fodor, Torgny Holmberg, Johan M Karlsson, Ulf K¨orner, Christian Nyberg, Wlodzimierz Ogryczak, Henrik Persson, Lars Reneby and Michal Zagozdzon, who did all help me in different aspects during my Ph.D. studies. Long live
Contents 1 Introduction 1.1 Background . . . . . . . . . . . . . 1.2 Backbone networks . . . . . . . . . 1.3 Backbone network traffic . . . . . . 1.4 The multicommodity flow model . 1.5 Subject of the thesis . . . . . . . . 1.6 Introductory examples . . . . . . . 1.6.1 Fairness vs throughput . . . 1.6.2 The fairest solution . . . . . 1.7 The framework . . . . . . . . . . . 1.7.1 Mathematical programming 1.7.2 Notation . . . . . . . . . . . 1.8 Thesis outline . . . . . . . . . . . . 1.9 List of publications . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
2 Optimization models for fairness 2.1 The notion of fairness . . . . . . . . . . . . . 2.1.1 Fair rational preference relations . . . 2.1.2 Fairly nondominated vectors . . . . . 2.1.3 Fairness and Pareto-efficiency . . . . 2.2 General ways of defining fairness . . . . . . . 2.2.1 p-norm fairness . . . . . . . . . . . . . 2.2.2 Ordered weighted averaging . . . . . . 2.2.3 α-fairness . . . . . . . . . . . . . . . . 2.3 Max-min fairness . . . . . . . . . . . . . . . . 2.3.1 Weak and strong max-min fairness . . 2.3.2 Max-min fairness in the solution space 2.4 Algorithms that achieve max-min fairness . . 2.4.1 The convex case . . . . . . . . . . . . 2.4.2 Non-convex cases . . . . . . . . . . . 2.5 Conclusions . . . . . . . . . . . . . . . . . . . 1
. . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . .
5 6 7 9 9 10 10 10 11 12 12 14 16 17
. . . . . . . . . . . . . . .
19 20 20 22 22 24 24 25 26 28 29 31 32 33 36 38
2
CONTENTS
3 Convex allocation problems 3.1 Max-min fair allocation problems . . . . . . . 3.1.1 Max-min fair flows on fixed paths . . . 3.1.2 Max-min fair flows on optimized paths 3.2 Max-min fair reallocation . . . . . . . . . . . 3.2.1 Problem description . . . . . . . . . . 3.2.2 Notation and definitions . . . . . . . . 3.2.3 A lower bound . . . . . . . . . . . . . 3.2.4 Optimal solutions . . . . . . . . . . . 3.2.5 Numerical examples . . . . . . . . . . 3.3 Conclusions . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
41 42 42 45 54 55 55 56 58 60 61
4 Non-convex allocation problems 4.1 Max-min fairness of modular flows . . . 4.1.1 Problem description . . . . . . . 4.1.2 The assumption of modular flows 4.1.3 Properties of the optimal integral 4.1.4 Computational complexity . . . . 4.1.5 An algorithm . . . . . . . . . . . 4.1.6 A numerical experiment . . . . . 4.2 Max-min fairness of unsplittable flows . 4.2.1 Problem description . . . . . . . 4.2.2 Computational complexity . . . . 4.2.3 Resolution algorithms . . . . . . 4.2.4 Numerical experiments . . . . . 4.3 Conclusions . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
65 66 67 68 68 70 74 76 76 78 78 86 94 97
5 Dimensioning problems 5.1 Proportionally fair dimensioning . . . . 5.1.1 Bounded flows . . . . . . . . . . 5.1.2 An objective function extension . 5.1.3 Numerical examples . . . . . . . 5.2 Resilient PF dimensioning . . . . . . . . 5.2.1 Problem formulation . . . . . . . 5.2.2 Resolution methods . . . . . . . 5.2.3 Linear approximation . . . . . . 5.2.4 Extensions of the basic problem . 5.2.5 Numerical results . . . . . . . . 5.3 Conclusions . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
101 102 105 109 110 113 114 116 119 120 121 125
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
6 Summary and contribution 127 6.1 Optimization models for fairness (Chapter 2) . . . . . . . . . 128 6.2 Convex allocation problems (Chapter 3) . . . . . . . . . . . . 129 6.3 Non-convex allocation problems (Chapter 4) . . . . . . . . . . 130
CONTENTS 6.4
3
Dimensioning problems (Chapter 5) . . . . . . . . . . . . . . 132
4
CONTENTS
Chapter 1
Introduction
5
6
1.1
CHAPTER 1. INTRODUCTION
Background
The recent emergence of new, sophisticated Internet services, that lay claim to an increasing amount of communication resources, have made the demand on communication networks grow considerably. It has been observed that the new data-oriented services exhibit a much higher growth rate, both in terms of number of users and in terms of induced traffic per user, than traditional voice services. Internet, being the network of communication networks, is known to be of a best-effort nature, where each service is completed to the level of quality that transmission media (links, switches, routers etc.) can provide. This implies that some applications (using a set of services) work well, while others fail totally (or partially). The most common problem, when a certain application fails, is lack of transmission bandwidth. If it were entirely known which services are going to make use of the network resources in terms of duration, location, and required capacity, the resources could of course be adapted accordingly. In practice, this is however very rarely the case. In fact, it is characteristic for the traffic of data networks that its distribution changes rapidly, both over short and long time periods, and is for this reason very difficult to predict. This statement can be argued more valid the smaller is the scale of the network being considered, as the more aggregation of sources, the more stable is the aggregated traffic. Nevertheless, lack of sufficiently accurate predictions sometimes make resource provisioning through overdimensioning the only tractable way of obtaining satisfactory network operation. The overdimensioning strategy consists in, without any deeper thought, just to add capacity sufficient to handle the most extreme traffic situations. It is clear that overdimensioning is economically questionable, since the strategy is intimately associated with poor resource utilization. On the other hand, if the network does not match the maximal traffic demand generated by the users, the network will be subject to overloads. Overloads have the negative effect of deteriorating the quality of service perceived by the users – the data transfer rates decrease because individual packets are delayed or even lost. Besides ensuring high connection acceptance rate, one of the most important objectives for a network operator is to minimize the network overload. This is because successful network management relies on continuos provisioning of an acceptable quality of service to users. Instead of relying on the so-called best-effort communication, the guaranteed quality of service can be obtained by controlling the amount of traffic that enters the network. The control process, usually referred to as traffic admission control, decides how much traffic can be generated by each user and how many users can be simultaneously served. In order for the traffic admission control to reduce the aggregated stream of traffic that enters the network, a key mechanism is that of partial or entire denial of service. On the other hand, low probability
1.2. BACKBONE NETWORKS
7
of service denial is another measure for the quality of service perceived by users. It is therefore reasonable to require that the traffic admission control imposes some fair sharing of network resources between its potential users. This observation holds true both for small and large-scale networks. For a small network a “user” may correspond to a single terminal, whereas in a large backbone network a “user” may be constituted by thousands of terminals connected to the backbone via a (smaller scaled) local network. The problem of determining how much traffic of each traffic stream should be admitted to the network, and how the admitted traffic should be routed so as to satisfy the requirements of high network utilization and fairness, is a challenging problem for the Internet solutions using admission control. This thesis addresses this type of problems.
1.2
Backbone networks
In the communications community, a backbone network (or simply a backbone), is a network that realizes the connections between local networks, as illustrated in Figure 1.1. From the backbone point of view, the local networks can be seen as edge networks, to which the subscribers (traffic sources) are connected. Consequently, the traffic can be regarded as generated in the local networks. Traffic from different users in a local network is concentrated and forwarded to more distant places by the backbone. A similar process takes place at practically every level of the network hierarchy. For instance, the local networks are connected to a regional network, which in turn is connected to a national network, and so on. As the local networks induce the traffic, the traffic experienced by the backbone is an aggregated version of its local network counterparts. Considered over a sufficiently short time-period, the backbone network traffic is, compared to an access network, predictable and stable (and of course very large) in the sense of flow magnitudes. The hierarchical structure is present in traditional telecommunication networks, as well as in modern large-scale data communication networks. When connecting a large set of users, the hierarchical network topology arises because of geography, cost considerations, and different communities of interest. Traditionally, a large portion of the traffic in a communication network is intended for local transmission. However, the pattern of traffic flows is in a changing process, as the cost of long-distance transmission is decreasing and the usage of distant servers increases, and accordingly, traffic load of the backbone is increasing. The reduced long-distance transmission costs are mainly due to the introduction of very efficient optical transmission techniques, along with the substantial improvement of the computer-controlled hardware, constituting network switches and routers. To meet the need for transmission facilities that could handle optical
8
CHAPTER 1. INTRODUCTION
local network
local network
local network
Figure 1.1: A backbone network interconnects the local networks (the depicted backbone is the swedish GigaSunet).
technology, the Synchronous Optical Network (SONET) standard was introduced by Bellcore in 1984 [22]. SONET is a standard for optical communication transport, providing framing as well as rate hierarchy and optical parameters. The SONET standard became adopted by American National Standards Institute (ANSI) in 1988 [22]. A slightly different version, the Synchronous Digital Hierarchy (SDH), was later adopted by the International Telecommunications Union - Telecommunication Standardisation Sector (ITU-T). Today, most high-speed digital backbone networks are SONET/SDH-based [7]. Both SONET and SDH define signal hierarchies, where the signals with the top rates are OC-192 (SONET) and STM-64 (SDH), both facilitating a data rate of 9953.28 Mb/s [13]. New techniques for optical transmission are however being rapidly developed. An example is the so-called Wave-Division Multiplexing (WDM) technology, which multiplies the transmission capacity of a SONET/SDH system by the number of wavelengths supported by the WDM system (there are for instance ITU standards defining 81 wavelengths [13]). A backbone can be regarded as composed of a hierarchical set of distinguished resource layers. In today’s networks it is common to run IP (Internet Protocol) over ATM (Asynchronous Transfer Mode), ATM over SDH, and
1.3. BACKBONE NETWORK TRAFFIC
9
SDH over WDM. Apparently, to optimize operation of this type of multilayer network, one has to take into account how the different layers interact. Clearly, what concerns the design of an entire backbone, no layer can be effectively treated as a stand-alone layer. However, the current trend is to simplify this architecture, in order to reduce network equipment and management costs, as well as network complexity. It is commonly foreseen that the service layers (the two packet layers, IP and ATM), will be integrated into one resource layer based on Multi-Path Label Switching (MPLS). This leads to a single packet layer control plane, instead of two. Furthermore, it is predicted that IP packets will most likely be transported directly over the WDM transport layer, enriched with a control plane (based on e.g. Generalized MPLS (GMPLS) and/or Automatically Switched Transport Network (ASTN)). Hence, the next generation backbone networks are most probable to be built as IP-over-WDM networks [3].
1.3
Backbone network traffic
Roughly, traffic generated in an edge network can be put in one of two categories, namely i) elastic traffic, which is a type of best-effort traffic that employs whatever resoruces it is assigned, and ii) non-elastic traffic which is traffic that is typically sensitive to assigned bandwidth and transmission delays [49]. The data communications community is well aware of the potential traffic property differences, as for instance the internet protocol (IPv6) features the so called flow-labelling function [8], which accomodates different Quality of Service (QoS) requirements. Examples of elastic traffic are classical Internet applications as web, file transfer protocol (FTP), and electronic mail. Real-time applications, as e.g., voice over IP (VoIP) and video-conferencing, are on the other hand typically non-elastic. Since the different types of traffic are generated in the edge networks, they are as indicated above, multiplexed before transmitted into the backbone network. Therefore, the aggregated backbone traffic flows consist of both elastic and non-elastic traffic, and an appropriate denomination would be semi-elastic traffic. This pushes forward the fact that the backbone traffic flows require a minimal bandwidth level (constituted by the sum of the required bandwidth for the non-elastic applications), but still are able consume bandwidth exceeding this level (due to its elastic portion).
1.4
The multicommodity flow model
A convenient way of representing a communication network is by the notion of a graph. A graph G is an object composed by a set of vertices V, and a set of edges E, compactly written as G = (V, E). Using the graph to model a network, we consider the network nodes as graph vertices, and the network
10
CHAPTER 1. INTRODUCTION
links, connecting the different nodes, as graph edges. In the sequel we will treat a given communication network as a graph with certain properties, and use the words links and nodes to denote its vertices and edges. Each link has a capacity that limits the commodity possible to transfer between its two associated nodes. In the general setting, a link facilitates transfer of various entities, i.e., it may carry several commodities simultaneously. This is the key feature of the so called multicommodity flow model, which will be exclusively used in this thesis. If a link enables the transfer of commodities in both directions it is called undirected, and otherwise directed. In general, we will treat all links as undirected. The commodities transferred in a communication network are different types of data. Such a transfer of data will be called a flow (or path-flow to emphasize its path). Each flow is assumed to be induced by a demand, which is a request for traffic between a node-pair. A demand can realize its total flow on (potentially) several different paths (i.e., by several simultaneous path-flows) connecting the node-pair.
1.5
Subject of the thesis
The main topic of this thesis is a study of how a set of different demands (node-pairs) should share the network resources (link capacities) such that it is assured that this is done in a fair way. Criteria that accompany the primary fairness goal can be to keep a high network utilization and/or to obtain a solution that is resilient to link failures. The introduced problems are primarily intended to model large-scale networks.
1.6 1.6.1
Introductory examples Fairness vs throughput
In order to establish some familiarity with the problems studied in this thesis, and also to motivate a deeper knowledge, we will investigate some very simple example problems. Consider the simple 3-node network given in Figure 1.2. There are three demands, i.e., three node-pairs that require transmission capacity to be able to communicate, each with a single associated path. Demand 1 corresponds to node-pair (1, 2), demand 2 to (2, 3), and demand 3 to (1, 3). Capacities of the two links are both equal to 1.5. We want to allocate portions of the link capacities to the demands, facilitating their flow transfer. Apparently, this may be done in several ways, depending on what objective that we have in mind. For a start, suppose that we want to maximize the total flow transfer, also called maximizing the network throughput. Let xd be the flow allocated to demand d, d = 1, 2, 3. It is not hard to see that the throughput maximal
1.6. INTRODUCTORY EXAMPLES xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx
1
c = 1.5 d=1
11
xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx
2
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
c = 1.5 d=2
xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx
3
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
d=3
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Figure 1.2: A simple linear network. solution is to assign x1 = 1.5, x2 = 1.5, and x3 = 0, giving a total flow P throughput of d xd = 3. The objective of throughput maximization means that we do not care about the specific flow volume assigned to a demand, but rather that the total flow, allocated to all the demands, is made as large as possible. Clearly, this can be a desired property, especially from a network operator perspective. It is however evident that this objective treats the demands in an unfair way, as the third demand is allocated zero flow. We may instead take the opposite standpoint, and use as objective to share the two link capacities as fairly as possible, intiuitively meaning that the three demands get an equal share that is as large as possible. This results in a solution with P x1 = 0.75, x2 = 0.75, and x3 = 0.75, giving a total flow throughput of d xd = 2.25. Thus, a maximally fair solution is obtained at the cost of reducing the total throughput. A natural question to ask is if there is an easy-accessible compromise solution, i.e., a solution that is fairer than the one obtained by throughput maximization but has a better throughput than the maximally fair one. Indeed, suchQa soluton can be obtained by for instance maximizing the product of flows, d xd . This yields a solution with x1 = 1, x2 = 1, and x3 = 0.5, which is definitely more fair P than the throughput maximal solution, and more throughput effective ( d xd = 2.5) than the maximally fair one. To summarize, it is clear that in order to obtain a fair solution, one has to relax the requirement of a high total throughput and vice versa. We can also conclude that there is a lot of room for definitions of objectives that achieve more fairness than throughput maximization and more throughput-effective solutions than the maximally fair one.
1.6.2
The fairest solution
The notion of fairness is rather subjective, and we will therefore now try to give an intuitive understanding of what we mean by a solution that is as fair as possible. Consider the network given in Figure 1.3. There are 4 nodes connected by 4 links, and there are 6 demands for communication; demand 1 between nodes 1 and 2, demand 2 between nodes 1 and 3, demand 3 between nodes 2 and 3, demand 4 between nodes 3 and 4, demand 5 between nodes 3
12
CHAPTER 1. INTRODUCTION 2
1
1
c=5
6
4
2
c=2
c=3
c=4
3
3
4 5
Figure 1.3: A simple square network. and 1, and demand 6 between 4 and 1. Link capacities are 2 between nodes 1 and 2, 3 between 2 and 3, 4 between 3 and 4, and 5 between 4 and 1. Each demand has one predefined path, given by the figure. Suppose that we want to let the 6 demands share the link capacities as fairly as possible, i.e., that we want to obtain the fairest solution. We then start by assigning all the demands an equal, as large flow as possible. This flow is equal to 1. Demands 1 and 2 cannot be assigned a flow larger than 1 because the link between nodes 1 and 2 blocks them. Now the critical question is, should all the demands be assigned a flow of 1 as demands 1 and 2 cannot be assigned more? There is really no non-naive reason for this. As can be seen in Figure 1.4(a), although demands 1 and 2 cannot be further increased, because of the link between nodes 1 and 2 being saturated, there is still room to increase all the other demands. As depicted in Figure 1.4(b) demands 3, 4, 5, and 6 can be increased to a flow of 2. At this level, the links between nodes 2 and 3 and nodes 3 and 4 become saturated. Hence demands 3, 4, and 5 cannot be further increased. However, there is still unused capacity on the link connectiong nodes 1 and 4. We may thus finally assign a flow of 3 to demand 6, which results in that the final link becomes saturated, and we have reached what is often regarded as the fairest possible solution, called the max-min fair solution. The concept of max-min fairness will be formally introduced in the following chapter.
1.7 1.7.1
The framework Mathematical programming
Most of the problems considered in this thesis will be formulated as constrained single-criteria optimization problems. Such problems are also referred to as mathematical programming problems. A problem of this type
1.7. THE FRAMEWORK
13
assigned bandwidth 3 2 1
1
2
3
4
5
6
demand
(a) Link between nodes 1 and 2 saturated. assigned bandwidth 3 2 1
1
2
3
4
5
6
demand
(b) Links between nodes 2 and 3 and nodes 3 and 4 saturated. assigned bandwidth 3 2 1
1
2
3
4
5
6
demand
(c) Link between nodes 4 and 1 saturated.
Figure 1.4: Successively obtaining the fairest solution. Black bars indicate demands that cannot be increased more.
14
CHAPTER 1. INTRODUCTION
is usually written as max s.t.
f (x)
(1.1)
gi (x) ≤ ai
i = 1, 2, . . . , k
(1.2)
hj (x) = bj
j = 1, 2, . . . , l
(1.3)
x ∈ X,
(1.4)
where f : X → R is called the objective function that should be maximized over a set of constraints determined by the real valued functions gi and hj and the set X. The constrained optimization problem thus specifies the task of finding an x ∈ X such that gi (x) ≤ ai for all i, i = 1, 2, . . . , k and hj (x) = bj for all j, j = 1, 2, . . . , l, and such that f (x) is maximal. To simplify notation, we will use the “for all”-quantifier, ∀, when ranges for the constraints of an optimization problem are known. Using this way of writing, (1.1)-(1.4) can be put as max s.t.
f (x)
(1.5)
gi (x) ≤ ai
∀i
(1.6)
hj (x) = bj
∀j
(1.7)
x ∈ X.
(1.8)
A special type of constrained optimization problems are the linear programming problems. A linear programming problem (LP) is a mathematical programming problem where f , gi , and hj all are linear functions and X = Rn . An integer programming problem (IP) is an LP, but with the set X restricted further: X = Zn . Finally, a mixed-integer programming problem (MIP) is an LP, but with the set X defined by x ∈ X if and only if xi ∈ R for i = 1, 2, . . . , t, and xt ∈ Z, for i = t + 1, t + 2, . . . , n, for some positive integer t, t < n.
1.7.2
Notation
For all the network optimization problems considered in this thesis we will assume that the network graph is given. We will label the nodes of the network with index v, v = 1, 2, . . . , V , and use e, e = 1, 2, . . . , E, to label its links. Also assumed given will be the set of demands, labeled by index d, d = 1, 2, . . . , D. For each demand d we will assume that there is given a set of paths labeled by p, p = 1, 2, . . . , Pd . The link-path incidence relation will be expressed by the binary indicator δedp , which is 1 if link e belongs to path p of demand d, and 0 otherwise. Of course, it is possible that we have only one admissible path for each demand, i.e., Pd = 1 for all demands d; in this case we can substitute the link-path incidence coefficient δedp by δed . Example 1.1. Consider the network given in Figure 1.5. Nodes and links are numbered in the figure. Suppose that there is one demand between
1.7. THE FRAMEWORK
15
nodes 1 and 3. There are 3 (simple) paths connecting this node-pair: path 1 constituted by links 1 and 2, path 2 constituted by link 3, and path 3 constituted by links 4 and 5. If we refer to the only demand as demand 1 we have δ111 = 1, δ211 = 1, δ312 = 1, δ413 = 1, and δ513 = 1.
1
5
4
1
3
4
2
2
3
Figure 1.5: Three different paths between node-pair (1,3). An optimization problem is always associated with a set of decision variables, i.e., a set of variables that should be chosen such that the solution is feasible and optimal. In the problems considered in this thesis, the decision variables are usually the flows, corresponding to variable zdp , d = 1, 2, . . . , D, p = 1, 2, . . . , Pd , denoting flow allocated P to demand d on path p. The total flow for demand d is given by xd = p zdp . If for demand d, zdp is greater than zero for more than one path p, we say that the flow for demand d is bifurcated. On the other hand it is possible to require that for all demands d, that zdp is greater than zero only for one path p, which defines an unsplittable flow problem. The total flows for all demands are usually collected in the so-called allocation vector, x = (x1 , x2 , . . . , xD ). It is sometimes convenient to consider a sorted version of x, written Θ(x), where Θ is the ordering map. Definition 1.1. The ordering map Θ is the function Θ : Rn → Rn , such that Θ(x) = (θ1 (x), θ2 (x), . . . , θn (x)), where θ1 (x) ≤ θ2 (x) ≤ . . . ≤ θn (x) and there exists a permutation π : {1, 2, . . . , n} → {1, 2, . . . , n} such that θi (x) = xπ(i) , for i = 1, 2, . . . , n. Network design problems considered in this thesis can be roughly divided into two categories – allocation problems and dimensioning problems. An allocation problem is a network optimization problem where link capacities are assumed to be given and the task is to allocate flows to demands. Such a problem is also referred to as a capacitated problem. In a dimensioning problem on the other hand, link capacities are treated as decision variables, together with the path flows. Dimensioning problems are also called uncapacitated problems.
16
CHAPTER 1. INTRODUCTION
Basic notation Θ(x) θj (x) x[k] x ≥ x′ x ≧ x′ ej u 0 R+ , R++ Q+ , Q++ Z+ , Z++
1.8
the vector x sorted in non-decreasing order the j:th entry of Θ(x), 1 ≤ j ≤ n The subvector (x1 , x2 , . . . , xk ) of x = (x1 , x2 , . . . , xk , . . . , xn ) xi ≥ x′i , i = 1, 2, . . . , n xi ≥ x′i , i = 1, 2, . . . , n, and xj > x′j for at least one coordinate j, 1 ≤ j ≤ n the identity vector, ej = 1 and ei = 0, i = 1, 2, . . . , n, i 6= j the unit vector, ui = 1, i = 1, 2, . . . , n the zero vector 0 = (0, . . . , 0) the non-negative / strictly positive real numbers the non-negative / strictly positive rational numbers the non-negative / strictly positive integral numbers
Thesis outline
The thesis is organized as follows. We start the main presentation in Chapter 2 by giving a formal introduction to the theory of fairness in resource sharing, which is fundamental for the problems considered in this thesis. This is done by defining the concept of fair rational preference relations, providing a unified perspective of fairness in general, and in communication networks in particular. In that chapter different types of fairness, such as max-min fairness, proportional fairness, α-norm fairness, etc., are viewed from the formal fair rational preference relation perspective. Moreover, as the existing literature is a bit ambiguous in the definition of the important max-min fairness notion, we classify the different definitions in terms of their strength. In the balance of Chapter 2, generic algorithms achieving max-min fairness are given. In Chapter 3 we use the knowledge about max-min fairness described in Chapter 2 and apply it to allocation problems. Specifically, Chapter 3 deals with allocation problems that have convex structure, i.e., allocation problems for which the associated optimization problems are convex. This requirement excludes for instance the more complicated cases when decision variables can be discrete (integer variables, binary variables). Allocation problems are the network design problems that are characterized by the property that network topology as well as link capacities are given a priori. Such problems consist in determination of how a number of different (competing) users should share the network resources, so that some given criterion is met (e.g., an objective function is optimized). Thus, an allocation problem is a capacitated problem. We proceed by considering max-min fairness allocation problems with non-convex sets of solutions, in Chapter 4. The studies of that chapter are thus devoted to the same type of max-min fair allocation problems as before,
1.9. LIST OF PUBLICATIONS
17
but with complicating assumptions making the resulting optimization problems non-convex. Specifically, the problems considered in Chapter 4 do all include integer variables. More precisely, we are still considering problems that are classified under linear max-min fairness but with decision variables being restricted to integers. The reason for this is that in practice, decision variables, such as, e.g., flow allocated to a demand, cannot take on an arbitrary value. Another realistic requirement might be that a flow between a node-pair cannot be split arbitrarily between connecting paths, but can only use one path, selected in the optimization process. Also this makes it necessary to model the allocation problem with integer variables, rendering substantially more complicated optimization problems. In Chapter 5 we deal with fairness in dimensioning problems. It is significant for a dimensioning problem that, as opposed to an allocation problem, the link capacities are assumed to be design variables. In the spirit of previous chapters, we consider dimensioniong problems for which fairness among demands is the preliminary objective. In this chapter, the type of fairness that is addressed is commonly known as proportional fairness, introduced in Chapter 2. The final chapter is dedicated to a summary of the previously obtained results, along with a specification of which of the results that are contributions of this thesis.
1.9
List of publications
The contents of this thesis is based mainly but not exclusively upon the following publications. 1. P. Nilsson, M. Pioro, ”Solving dimensioning tasks for proportionally fair networks carrying elastic traffic ”, Performance Evaluation, 49(14):271–386, 2002. 2. P. Nilsson, M. Pioro, ”Fair Bandwidth Allocation and Links’ Dimensioning in Elastic Traffic Networks”. In 16th Nordic Teletraffic Seminar (NTS 16), Espoo, Finland, pages 56–69, August 2002. 3. M. Pioro, P. Nilsson, E. Kubilinskas and G. Fodor, ”On efficient maxmin fair routing algorithms”. In IEEE International Symposium on Computers and Communications, pages 465–472, 2003. 4. P. Nilsson and M. Pioro, ”Link Protection within an Existing Backbone Network”. In International Network Optimization Conference, INOC’03, pages 435–440, 2003. 5. M. Pioro, E. Kubilinskas, P. Nilsson and M. Matuszewski, ”Robust Dimensioning of Proportionally Fair Networks”, European Transactions on Telecommunications, 13(1):241–251, 2005.
18
CHAPTER 1. INTRODUCTION 6. M.Pioro, M. Dzida, E. Kubilinskas, P. Nilsson, W. Ogryczak, A. Tomaszewski and Michal Zagozdzon, ”Applications of the Max-Min Fairness Principle in Telecommunication Network Design”. In First Conference on Next Generation Internet Networks Traffic Engineering (NGI 2005), 2005. 7. P. Nilsson and M. Pioro, ”Max-Min Fairness of Unsplittable Network Flows”. Technical report, Dept. of Communication Sytems, Lund University, June 2005, CODEN: LUTEDX(TETS-7209)/1-21/(2005)&local 25. 8. P. Nilsson, ”A transformation from INDEPENDENT SET to MMSPF2”. Technical report, Dept. of Communication Sytems, Lund University, June 2005, CODEN: LUTEDX(TETS-7210)/1-2/(2005)&local 18. 9. P. Nilsson and M. Pioro, ”Unsplittable max-min demand allocation a routing problem”. In HETNETs’05, P26, 2005.
10. P. Nilsson, ”Some simple special cases of FIXMMF-MF”. Technical report, Dept. of Communication Sytems, Lund University”, November 2005, CODEN: LUTEDX(TETS-7214)/1-3/(2005)&local 33”. 11. P. Nilsson and M. Pioro, ”Max-Min Fair Distribution of Modular Network Flows on Fixed Paths”. In Networking’06 (Published in Springer LNCS), pages 916–927, 2006. Specifically, Chapter 3 is based on publications 3, 4, and 6. Publications 7,8,9,10, and 11 cover the material presented in Chapter 4. Chapter 5 corresponds to publications 1,2, and 5.
Chapter 2
Optimization models for fairness
19
20
2.1
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
The notion of fairness
In order to define fairness of outcome vectors on some given set, we will adopt the terminology used by Ogryczak and Wierzbicki in [39].
2.1.1
Fair rational preference relations
Consider an m-dimensional set Q, Q ⊆ Rm , on which there is defined a weak preference relation, . Such a weak preference states that if y ′ , y ′′ ∈ Q, and y ′ y ′′ then the vector y ′ is at least as good as vector y ′′ . A weak preference will always be assumed to be complete, stating that it relates any two vectors of Q. This is in fact all that is needed to construct the notion of fairness. The relations of strict preference, ≻, and indifference, ∼ =, are defined as follows y ′ ≻ y ′′ ⇔ y′ ∼ = y ′′ ⇔
( y ′ y ′′ (
y′
y ′′
and not y ′′ y ′ ) ′′
′
and y y )
(2.1) (2.2)
We will use preference relations to define fairness on a superset, Q, of the set of outcome vectors, Y . The set Q will be assumed to have certain regularity: Definition 2.1. A set Q ⊆ Rm is said to be transferable if for any y ∈ Q, y − ǫei + ǫej ∈ Q for all i, j such that yi − yj ≥ ǫ ≥ 0 Note that if a transferable set contains a vector y, it must also contain all the permutations of y. Definition 2.2. A preference relation defined on a transferable set Q is a fair rational preference relation (or fair preference in short) on Q if for any y, y ′ , y ′′ , y ′′′ ∈ Q the following requirements are satisfied. (i) Transitivity: y ′ y ′′ and y ′′ y ′′′ ⇒ y ′ y ′′′ . (ii) Strict monotonicity: if y ′ = y + ǫei for some ǫ > 0 and some i = 1, 2, . . . , m, then y ′ ≻ y. (iii) Symmetry: for any permutation π : {1, 2, . . . , m} → {1, 2, . . . , m}, it holds that (yπ(1) , yπ(2) , . . . , yπ(m) ) ∼ = (y1 , y2 , . . . , ym ) = y. (iv ) Equitable transfers: if yi > yj then y −ǫei +ǫej ≻ y for 0 < ǫ < yi −yj . Remark 2.3. The requirement of symmetry implies that a fair preference is reflexive. Remark 2.4. It is sometimes assumed that already a weak preference relation is transitive and reflexive, making it a preorder.
2.1. THE NOTION OF FAIRNESS
21
Remark 2.5. If is a fair preference defined on the transferable set Q, it can also be regarded as a fair preference on any set Y ⊆ Q, by inheriting the fair preference defined on Q. Example 2.1. Consider a preference relation, × ,Q called the Q product order m ′ ′ (or the Nash product [51]), defined by y × y ⇔ i=1 yi ≥ m i=1 yi . If we m consider this preference relation on R++ , it is obviously transitive, strictly monotonic, and symmetric. Let y ∈ Rm ++ be a vector that has entries i, j, for which yi > yj . For any ǫ, such that 0 < ǫ < yi − yj , we have that (yi − ǫ)(yj + ǫ) = yi yj + ǫ(yi − yj ) − ǫ2 > yi yj . Hence the product order defines a fair preference on Rm ++ . Definition 2.6. An outcome vector y is said to fairly dominate outcome vector y ′ , y ≻e y ′ , if and only if y ≻ y ′ for all fair rational preference relations . In many cases it can be cumbersome to compare solutions in terms of vectors. Typical solution concepts for multiple criteria problems are instead defined by aggregation functions. Definition 2.7. An aggregation function for a preference relation is a function g : Q → R for which y y ′ ⇔ g(y) ≥ g(y ′ ). This may of course be used in transforming a multi-criteria optimization problem to a single-objective problem. Further, this gives a tool to specify (implicitly) fair rational preference relations on a given set Q. Property 2.1. For anyPstrictly concave, strictly increasing function s : R → R the function g(y) = m i=1 s(yi ) defines a fair rational preference relation g on Q. Proof. It is easy to see that g induces a preference relation that is transitive and symmetric. The strict monotonicity follows from that s is strictly increasing. For the equitable transfers, consider two entries j and i such that yj > yi , and an ǫ such that yj − yi > ǫ > 0. Then there exists a λ, 0 < λ < 1, such that yi + ǫ = λyi + (1 − λ)yj . After some manipulation, the same expression reads yj − ǫ = (1 − λ)yi + λyj . By the strict concavity of s we have that s(yi + ǫ) > λs(yi ) + (1 − λ)s(yj ) and s(yj − ǫ) > (1 − λ)s(yi ) + λs(yj ), respectively. Adding the two inequalities yields s(yi + ǫ) + s(yj − ǫ) > s(yi ) + s(yj ). Even though the idea of aggregation functions appears very practical in defining fair preferences in general, it is not convenient for all types of fairness. Definition 2.8. The preference relation of leximin order on a set Q, lex , is given by, for any y, z ∈ Q, if y lex z then the first non-zero element of y − z is positive or y = z. If y ≻lex z we say that y is lexicographically greater than z.
22
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
It is quite obvious that the leximin order does not define a fair preference relation, as it lacks the property of symmetry. However, imposing the ordering map, Θ(·), provides the remedy. Definition 2.9. The symmetrical leximin order, symlex , is the preference relation defined by y symlex y ′ ⇔ Θ(y) lex Θ(y ′ ). The following assertion is easily verified. Property 2.2. The symmetrical leximin order defines a fair rational preference relation on any transferable set Q.
2.1.2
Fairly nondominated vectors
The concept of obtaining fairness is usually concerned with, given a fair rational preference relation, , on a transferable set Q, finding a vector y ∗ ∈ Y , Y ⊆ Q, such that y ∗ y for all vectors y ∈ Y . According to Definition 2.6, this is a matter of finding a (specific) fairly non-dominated vector. The type of fair preference considered will determine which fairly non-dominated vector that is desired, as there in general are several. In the case of a fair preference, g , defined by an aggregation function, g : Q → R, obtaining fairness is a single-criteria optimization problem; max{g(y) : y ∈ Y }. As established by Property 2.1, any strictly concave, strictly increasing function s : R → R can be used to define a fair rational preference relation g on some superset of the outcomes, Pm Q, through defining the aggregation function g : Q → R, as g(y) = we may let Q = Rm ++ , i=1 s(yi ). For instance, Pm and let s(yi ) = log(yi ), rendering g(y) = i=1 log yi , which if maximized is the principle of proportional fairness [15]. Note that the induced fair preference, g , is actually the product order, × , considered in Example 2.1. Similarly, restricting Q in the same way we may obtain the fairness principle of minimum delay (dicussed in [24]), by letting s(yi ) = − y1i , and maximizing P 1 g(y) = − m i=1 yi . Clearly, the method of selecting an appropriate function s, offers a straightforward way of defining a fair rational preference relation on Q, and more examples of interesting (appropriate) functions s can be found in [39]. It is however far from obvious how to physically interpret the fair rational preference relation g on Q, induced by an arbitrary strictly concave, strictly increasing function s.
2.1.3
Fairness and Pareto-efficiency
From the ordered outcomes, Θ(y) = (θ1 (y), θ2 (y), . . . , θm (y)), we may derive a linear cumulative map, called the cumulative ordering map, ¯ Θ(y) = (θ¯1 (y), θ¯2 (y), . . . , θ¯m (y)),
2.1. THE NOTION OF FAIRNESS defined as θ¯i =
i X
23
θj (y) for i = 1, 2, . . . , m.
(2.3)
j=1
From the theory of majorization [23], the following result can be derived [19]. However, the proof provided here is based on first-order principles. Theorem 2.3 (Kostreva and Ogryczak, 1999). Outcome vector y fairly ¯ ¯ ′ ). dominates outcome vector y ′ , if and only if Θ(y) ≧ Θ(y Proof. Suppose θ¯i (y) ≥ θ¯i (y ′ ) for i = 1, 2, . . . , m, and that strict inequality holds for at least one entry. First of all we point out that for any two vectors y and y ′ , if θ¯j (y) = θ¯j (y ′ ), for j = 1, 2, . . . , n, n ≤ m, then θj (y) = θj (y ′ ) for j = 1, 2, . . . , n. Now assume that k is the smallest index for which θ¯k (y) > θ¯k (y ′ ). If k = m, then the monotonic increase Θ(y ′ ) + em (θm (y) − θm (y ′ )) is indifferent from y. Thus y ≻e y ′ and we are done. On the other hand, assume k < m. Assign y ′′ = Θ(y ′ ). If θ¯m (y) > θ¯m (y ′ ), assign ′′ = y ′′ + (θ ¯m (y) − θ¯m (y ′ )). We then have that θ¯m (y) = θ¯m (y ′′ ), and that ym m θ¯k (y) > θ¯k (y ′′ ) for some k < m. Further it holds that θk (y) > yk′′ , since k is the first such entry. As θ¯m (y) = θ¯m (y ′′ ), there must exist entries j > k, such that θj (y) < yj′′ . Because of that Θ is an ordering map (and the construction of y ′′ ), it holds that yj′′ > yk′′ , for all these entries j. We can thus perform equitable transfers from these entries j to entry k, redefining y ′′ , until yk′′ = θk (y). Repeating this procedure (obviously finitely many times), we will eventually get that yi′′ = θi (y), for i = 1, 2, . . . , m, implying that y ′′ ∼ = Θ(y). ′′ ′ Since y is obtained from Θ(y ) as a series of (necessary) equitable transfers and possibly a monotonic increase in the largest component, we have that y ∼ = Θ(y) = y ′′ ≻e Θ(y ′ ) ∼ = y ′ . For the reversed implication we may ¯ ¯ ′ ) defines a fair preference, ¯. easily verify that the relation Θ(y) ≥ Θ(y θ ′ ′ ¯ ¯ Specifically y ≻θ¯ y if θi (y) ≥ θi (y ), for i = 1, 2, . . . , m and θ¯k (y) > θ¯k (y ′ ) for at least one entry k, 1 ≤ k ≤ m. Hence if y ≻e y ′ , it must hold that y ≻θ¯ y ′ . This gives the possibility of expressing all the fairly non-dominated solutions as the Pareto-efficient solutions to a multiple criteria problem, namely max{(η1 , η2 , . . . , ηm ) : ηi = θ¯i (y) for i = 1, 2, . . . , m, y ∈ Y }. (2.4) A Pareto-efficient solution is a solution for which no Pareto improvements can be done, i.e., a solution for which no entry can be increased without making another entry worse off. Since quantities θ¯i (y) are quite complicated, the usefulness of this formula relies on an elegant result concerning the expressability of θ¯i (y) for a given outcome vector y [42]: θ¯k (y) = max
kt −
m X
di
(2.5)
i=1
s.t.
t − yi ≤ di , di ≥ 0
i = 1, 2, . . . , m.
(2.6)
24
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
Exploting this, we may thus rewrite (2.4) as max s.t.
(η1 , η2 , . . . , ηm ) m X dik ηk = ktk −
(2.7) k = 1, 2, . . . , m
(2.8)
i, k = 1, 2, . . . , m
(2.9)
i=1
tk − dik ≤ yi , dik ≥ 0
y ∈ Y.
(2.10)
To summarize, any fairly non-dominated solution may be modeled as a Pareto-efficient solution to (2.7)-(2.10).
2.2
General ways of defining fairness
Besides the general use of proper aggregation functions there are several commonly used ways of defining different classes of fairness. Such a class typically defines a generic type of fairness in which some easily accessible parameters may be changed in order to vary the induced fair preference. Examples of such generic types of definitions are p-norm fairness, fairness induced by ordered weighted averaging, and α-fairness.
2.2.1
p-norm fairness
Consider the usual p-norm, || · ||p defined for arbitrary vectors y ∈ Rn ; ||y||p =
Pn
p i=1 |yi |
1/p
,
where p is an integer, p ≥ 1. To derive the notion of p-norm fairness we will need the following lemma: Lemma 2.4. Consider arbitrary numbers c ≥ x > y ≥ 0 and an integer p, 1 < p < ∞. Let ǫ be any number such that 0 < ǫ < x − y. It holds that (c − x)p + (c − y)p > (c − (x − ǫ))p + (c − (y + ǫ))p . Proof. The function f (ǫ) = (c − (x − ǫ))p + (c − (y + ǫ))p , has exactly one ′ stationary point for ǫ ∈ [0, x − y], namely ǫ = x−y 2 . As f (ǫ) < 0 for x−y x−y ′ ǫ ∈ [0, 2 ), and f (ǫ) > 0 for ǫ ∈ ( 2 , x − y], this stationary point must be a minimum. Furthermore f (0) = f (x − y) = (c − x)p + (c − y)p , which implies the result. Consider a vector cu, c > 0, and let Q = {y ∈ Rn+ : y ≤ cu}. Definition 2.10. The preference relation cp , called the p-norm preference with respect to c, is given by, for any y, y ′ ∈ Q, y cp y ′ ⇔ ||cu − y||p ≤ ||cu − y ′ ||p .
2.2. GENERAL WAYS OF DEFINING FAIRNESS
25
Property 2.5. The p-norm preference (with respect to c > 0) defines a fair rational preference relation on Q = {y ∈ Rn+ : y ≤ cu}. Proof. Verification of transitivity, strict monotonicity, and symmetry is quite straightforward. The property of equitable transfers is though slightly harder to establish. Consider any vector y ∈ Q for which yi > yj . Let ǫ be any number suct that 0 < ǫ < yi − yj , and define y ′ as y ′ = y + ǫej − ǫei . We then have that ||cu − y ′ ||p = =
Pn i
(c − yk )p − (c − yi )p − (c − yj )p + (c − yi + ǫ)p + (c − yj − ǫ)p
1/p
,
which, according to Lemma 2.4 and the fact that the root function is strictly Pn p 1/p = ||cu − y|| . Thus increasing, is strictly smaller than p i (c − yk ) we have equitable transfers.
2.2.2
Ordered weighted averaging
The result that any Pareto-efficient solution y 0 to (2.7)-(2.10) is a fairly non-dominated solution implies that there exists at least one fair rational preference relation , such that y 0 y, for all y ∈ Q. We may thus use as a single objective function the weighted sum, m X
wi ηi =
m X
wi θ¯i (y), wi > 0, for i = 1, 2, . . . , m,
(2.11)
i=1
i=1
which isP certain to generate a Pareto-efficient solution to (2.7)-(2.10). As ¯ θi (y) = ij=1 θj (y), we have m X i=1
wi θ¯i (y) =
m X i=1
wi
i X j=1
θj (y) =
m X
vi θi (y),
i=1
Pm P where vi = m i=1 vi θi (y) as the single objective function j=i wj . Using is called Ordered Weighted Averaging (OWA), and was first introduced in [54]. Note that if we use this single objective function the Pareto-efficiency will be guaranteed if weights vi are strictly decreasing and positive. Besides the direct consequence that if weights vi are chosen so that they are strictly decreasing and positive then each solution to the OWA is a fairly nondominated solution, there is a reversed implication. Namely, in the case of linear constraints, every fairly non-dominated solution can be identified as an optimal solution to some OWA problem [39]. The importance of this lies in that for any given fair rational preference relation on Q, if for some outcome vector y 0 ∈ Q, it holds that y 0 y, for all y ∈ Q, then y 0 must be fairly non-dominated and therefore an optimal solution to some OWA problem. Specifically, if the difference between the weights vi tend to infinity, solving the OWA problem will be equivalent to finding a vector
26
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
y 0 ∈ Q such that y 0 symlex y, for all y ∈ Q, i.e., obtaining the fairness associated with the symmetrical leximin order. This type of fairness is often referred to as max-min fairness and will be extensively investigated in later sections.
2.2.3
α-fairness
The notion of α-fairness was introduced by Mo and Walrand in [28], and it defines a class of fairness relations through an aggregation function. In [28], α-fairness is defined through maximization and is not put in the context of preference relations. Hence they do not verify that its corresponding order, here referred to as the α-order, defines a fair rational preference relation. Definition 2.11. For a given α, α > 0, α 6= 1, the α-order, α , is the preference relation defined by y α y ′ ⇔
m (1−α) X y i
i=1
≥
1−α
m ′(1−α) X y i
i=1
1−α
.
Property 2.6. For a given α, α > 0, α 6= 1, the α-order defines a fair rational preference relation on Rm ++ . Proof. By Property 2.1, it is only necessary to verify that s : R++ → R, (1−α) s(y) = y1−α , is strictly increasing and strictly concave for any proper choice of α. Consider the case when 0 < α < 1. Then s(y) = Cy (1−α) , for a 1 > 0, so obviously s is strictly increasing. To ensure constant C = 1−α 2
d s −(α+1) < 0, for any y ∈ R the concavity, we see that dy ++ . Now 2 = −αy 1 consider the case when α > 1. Then s(y) = C yγ , for some constant C < 0,
and γ > 0, so s is strictly increasing. Further, any y ∈ R++ , so s is strictly concave.
d2 s dy 2
= −αy −(α+1) < 0, for
Remark 2.12. In the original definition of P α-fairness [28], the Pmproportional ′ fairness is covered by defining y α y ′ ⇔ m log(y ) ≥ i i=1 i=1 log(yi ) for α = 1. Remark 2.13. If α = 2, then special case of α-fairness.
y (1−α) 1−α
= − y1 , so minimum delay fairness is a
Interestingly it is shown in [28] that if α tends to infinity, the solution y 0 to max
m (1−α) X y i
i=1
s.t.
1−α
y∈Y ,
(2.12) (2.13)
will have the property that y 0 symlex y for all y ∈ Y , for nicely behaved sets of outcome vectors Y ⊆ Rm ++ (see [28] for the exact restrictions put
2.2. GENERAL WAYS OF DEFINING FAIRNESS
27
on Y ). However, this result may be misleading in the sense that one might get the impression that for a sufficiently large α there will be equivalence between y α y ′ and y symlex y ′ , for y, y ′ ∈ Y , which is true. In fact, Pnot m m if Y is a non-discrete set (for instance Y = { y ∈ R : i=1 yi ≤ L }), an α < ∞ will never suffice for the equivalence. On the other hand, if discrete sets of outcome vectors are considered, and if it is possible to somehow bound each coordinate from above, a more practical assertion can be posed. More practical in the sense that we can find an upper bound on α for which the equivalence holds, and also in the sense that discrete outcome sets, as well as upper bound on coordinates, model real-world resource allocation in communication networks realistically. Proposition 2.7. If the set of outcome vectors Y has the property that for each y ∈ Y , each coordinate yk , k = 1, 2, . . . , m, must be a strictly positive integer which can be boundedP from above, yk ≤ U , then for any y, y ′ ∈ Y , P m log m 1 y symlex y ′ ⇔ i=1 (y1)β ≤ m i=1 (y ′ )β , for any β > log U . i
i
U −1
Pm Proof. If y ∼ =symlex y ′ then Θ(y) = Θ(y ′ ) so it must be true that i=1 (y1i )β = Pm 1 ′ i=1 (y ′ )β , for any β. Suppose that y ≻symlex y . This implies that there i
is a first non-zero coordinate of Θ(y) − Θ(y ′ ), which is necessarily positive. Let j be the index of this coordinate. We have that m X i=1
1 = (yi )β
j−1 X i=1
m X 1 1 1 + + ≤ β β (θi (y)) (θj (y)) (θi (y))β i=j+1
j−1 X
≤
i=1
1 m−j+1 + . β (θi (y)) (θj (y))β
Further, m X i=1
1 = (yi′ )β
j−1 X i=1
>
m X 1 1 1 + + > (θi (y ′ ))β (θj (y ′ ))β (θi (y ′ ))β
j−1 X i=1
i=j+1
1 1 + . (θi (y ′ ))β (θj (y ′ ))β
Thus if j−1 X i=1
j−1
1 m−j +1 X 1 1 + < + , (θi (y))β (θj (y))β (θi (y ′ ))β (θj (y ′ ))β
(2.14)
i=1
P Pm 1 1 it must hold that m i=1 (yi )β < i=1 (yi′ )β . Noting that the first two terms of the respective sides are equal, the requirement reads m−j+1 1 < , β (θj (y)) (θj (y ′ ))β
(2.15)
28
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
which, after some manipulation, yields β>
log(m − j + 1) . log(θj (y)) − log(θj (y ′ ))
θj (y) θj (y ′ )
(2.16)
log(m) it suffices to require that β > log U . U −1 P Pm 1 For the opposite direction, first assume that i=1 (y1)β = m i=1 (yi′ )β and i that the P first coordinate for which θj (y) > θj (y ′ ). The assumption Pm j is m 1 1 i=1 (y )β = i=1 (y ′ )β implies that
Since m − j + 1 ≤ m and
i
≥
U U −1 ,
i
j−1 X i=1
=
j−1 X i=1
m X 1 1 1 + + = β β (θi (y)) (θj (y)) (θi (y))β
(2.17)
i=j+1
m X 1 1 1 + + . ′ β ′ β (θi (y )) (θj (y )) (θi (y ′ ))β
(2.18)
i=j+1
As before, the first terms on the respective sides cancel out. The second m−j+1 two terms on the left-hand side are not larger than (θ , and the second (y ))β j
1 . (θj (y ′ ))β log(m) will log UU −1
two terms on the right-hand side are strictly larger than
Hence,
according to the previous reasoning, insertion of β >
violate
the and we have to prove that Pm we 1have a contradiction. Finally Pm equality 1 ′ . This is however contra< implies that y ≻ y ′ symlex i=1 (yi )β i=1 (yi )β P Pm 1 1 positive (equivalent) to y y ′ ⇒ m i=1 (yi′ )β , which is already i=1 (yi )β ≥ proved. It should be noted that Proposition 2.7 actually concerns the α-order as m X i=1
m
m
i=1
i=1
(1−α)
m
′(1−α)
X 1 Xy Xy 1 i i ≤ ≥ , ⇔ (yi )β (yi′ )β 1−α 1−α i=1
for α = β + 1.
2.3
Max-min fairness
The most thoroughly investigated type of fairness is undoubtedly the type called Max-Min Fairness (MMF). There are several, more or less general, ways of defining MMF. In order to give a non-ambigous introduction to this topic, will we make a distinction between weak and strong MMF. Throughout this section we will consider an m-dimensional outcome set Y , Y ⊆ Q ⊆ Rm , facilitating a superset Q on which there is defined a preference relation.
2.3. MAX-MIN FAIRNESS
2.3.1
29
Weak and strong max-min fairness
Definition 2.14. A vector y 0 ∈ Y for which it holds that y 0 lex y, for all y ∈ Y , is called lexicographically maximal on Y , written y 0 = lex max{y : y ∈ Y }. It is quite intuitive to state an algorithm that finds a lexicographically 0 ), y 0 ∈ Y . Let y 0 = max{y : y ∈ Y } and maximal y 0 = (y10 , y20 , . . . , ym 1 1 0 , y ∈ Y }, for 0 define consecutively yj = max{yj : y1 ≥ y10 , . . . , yj−1 ≥ yj−1 j = 2, 3, . . . , m. Carrying out this procedure, we successively get the entries of y 0 . Apparently, in lexicographical maximization, maximization of the first entry, y1 , has the highest priority. Second highest priority is maximization of y2 , and so on. In fact, many practical applications, including the ones adressed in this thesis, do not assume these priorities, but rather prescribe equal (fair) treatment of all the entries (i.e., assume symmetry of the preference relation). For this purpose we need the notion of sorted vectors or the symmetrical leximin order, symlex . Although the introduction of the fair rational preference relation, symlex , fits the terminology of fairness well, we will stick to an equivalent consider~ = {Θ(y) : y ∈ Y }, i.e., for ation of the original leximin order on the set Y each vector y ∈ Y , evaluate a sorted permutation Θ(y). This convention is due to the leximin order as a well known and well accepted concept (as opposed to the symmetrical leximin order). Lexicographical maximality for sorted vectors is defined as follows. Definition 2.15. A vector y 0 ∈ Y for which it holds that Θ(y 0 ) lex Θ(y), for all y ∈ Y , is called sorted lexicographically maximal on Y , written Θ(y 0 ) = lex max{Θ(y) : y ∈ Y }. As this section will consider the preference relation of leximin order exclusively, we will from now on omit the subscript and write only for lex . Definition 2.16. A vector y 0 ∈ Y which is sorted lexicographically maximal on Y , i.e., Θ(y 0 ) = lex max{Θ(y) : y ∈ Y }, is called weakly max-min fair (or just max-min fair) on Y . This is the definition that will be intended whenever we speak about maxmin fairness without mentioning “weak” or “strong”, i.e., we will sometimes denote weak max-min fairness only by “max-min fairness”. Note that this type of fairness is exactly that induced by the symmetrical leximin order. The alternative way of defining max-min fairness is more restrictive (thus not equivalent), and is originally due to Bertsekas and Gallgaher [6]. Although less general, this definition has been adopted by several authors, e.g., [48],[46]. We will refer to this latter characteristic as strong max-min fairness.
30
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
Definition 2.17. The vector y 0 is strongly max-min fair on Y if y 0 ∈ Y and ∀y ∈ Y , if ∃k ∈ {1, 2, . . . , m} : yk > yk0 , then ∃j ∈ {1, 2, . . . , m} : yj < yj0 ≤ yk0 . Property 2.8. A strongly max-min fair vector is unique. Proof. Suppose that there exist two strongly max-min fair vectors, y 1 , y 2 ∈ Y , y 1 6= y 2 . Find the entry k for which yk1 > yk2 , such that yk1 is as small as possible (if it does not exist, exchange the names of y 1 and y 2 ). Then, since y 2 is strongly max-min fair, there exists an entry j ∈ {1, 2, . . . , m} : yj1 < yj2 ≤ yk2 . However, since also y 1 is strongly max-min fair there must exist an entry i ∈ {1, 2, . . . , m} : yi2 < yi1 ≤ yj1 , which implies existence of an entry l ∈ {1, 2, . . . , m} : yl1 < yl2 ≤ yi2 , and so on. Eventually, we will run out of entries and get a contradiction. Remark 2.18. In [48] a variation of Definition 2.17 is used to define a preference relation to compare vectors. A vector y is said to be “relatively fairer” than a vector y ′ if either y ≧ y ′ or if ∃k ∈ {1, 2, . . . , m} : yk < yk′ , then ∃j ∈ {1, 2, . . . , m} : yj′ < yj ≤ yk (The term “relative fairness” was first introduced in [47]). A feasible vector y for which there exists no feasible vector y ′ that is relatively fairer than y is called “maximally fair”. Even though being closely related to the symmetrical leximin order, this does not define a fair rational preference relation. Too see this, suppose that the vectors (0, 2, 1) and (3, 0, 0) belong to a feasible (transferable) set. The first vector is obtainable from the second one through an equitable transfer followed by a permutation. To be a fair rational preference relation it must thus hold that (0, 2, 1) is preferable to (3, 0, 0). However (0, 2, 1) is not relatively fairer than (3, 0, 0). The exact relation between weak and strong max-min fairness is described by the following two properties Property 2.9. If y 0 is strongly max-min fair on Y , then it is also weakly max-min fair on Y . Proof. We may assume that y 0 is sorted, since if it is not we may reenumerate coordinates such that they appear in non-decreasing order. For any y ∈ Y , y 6= y 0 , pick the smallest k, such that yk > yk0 (if such an entry does not exist, the result follows immediately as there then must exist an entry k for which yk < yk0 ). If there are several entries e of y 0 that are equal to yk0 , then order them (i.e., order the coordinates) such that all entries e with ye ≤ ye0 (= yk0 ) appear before all entries e with ye > ye0 (= yk0 ), which is again achievable by alternative enumeration of the coordinates of y 0 . Now redefine entry k as the first entry for which yk > yk0 . It then must hold that yi0 ≥ yi for any entry i < k. Specifically, as y 0 is strongly max-min fair, there is an entry j, 1 ≤ j < k, such that yj0 > yj . Let y 0 [k − 1] be
2.3. MAX-MIN FAIRNESS
31
the subvector constituted by the k − 1 first entries of y 0 , and let y[k − 1] be defined similarly. It is easy to see that y 0 [k − 1] ≥ y[k − 1] implies y 0 [k − 1] ≥ Θ(y)[k − 1] and that existence of an entry j, 1 ≤ j < k such that yj0 [k − 1] > yj [k − 1] implies that there exists an entry l, 1 ≤ l < k such that yl0 [k − 1] > θl (y)[k − 1]. Thus y 0 [k − 1] ≻ Θ(y)[k − 1], which implies that y 0 = Θ(y 0 ) ≻ Θ(y). Property 2.10. If y 0 ∈ Y and Y is convex, then if y 0 is weakly max-min fair on Y , it is also strongly max-min fair on Y . Proof. We prove the equivalent statement: if y 0 is not strongly max-min fair on the convex set Y then Θ(y 0 ) ≺lex lex max{Θ(y) : y ∈ Y }. Suppose that y 0 is not strongly max-min fair on Y . Then there exists a vector y ∈ Y , which has an entry k ∈ {1, 2, . . . , m}, for which yk > yk0 but yj ≥ yj0 for all entries j such that yj0 ≤ yk0 (if such entries j exist). Define z = (1−λ)y 0 +λy, where λ is a constant, 0 < λ < 1. Assume that coordinates appear such that y 0 = Θ(y 0 ) (if not rename coordinates). For sufficiently small λ it also holds that z = Θ(z). Moreover, there exists an entry e such that such that ze > ye0 and zi ≥ yi0 for all indices i < e. Thus Θ(z) ≻lex Θ(y 0 ). By convexity, z ∈ Y .
2.3.2
Max-min fairness in the solution space
Let X be an n-dimensional subset of Rn , X ⊆ Rn , and consider a vector of real-valued functions f = (f1 , f2 , . . . , fm ), with fj : X → R, j = 1, 2, . . . , m. Let the vector f be the vector of outcomes (sometimes also referred to as objectives or criteria). Definition 2.19. The vector x0 ∈ X is said to be a max-min fair solution, if and only if Θ(f (x0 )) = lex max{Θ(f (x)) : x ∈ X}, i.e., if and only if f (x0 ) is (weakly) max-min fair on {f (x) : x ∈ X}. Define the set Y as Y = {y : y ≤ f (x), x ∈ X}.
(2.19)
Property 2.11. Given a vector x0 ∈ X. If y 0 = f (x0 ) is strongly max-min fair on Y , then x0 is a max-min fair solution. Proof. If y 0 = f (x0 ) is strongly max-min fair on Y = {y : y ≤ f (x), x ∈ X}, then, according to Property 2.9, Θ(y 0 ) = lex max{Θ(y) : y ∈ Y } = lex max{Θ(y) : y ≤ f (x), x ∈ X} = lex max{Θ(f (x)), x ∈ X}. Moreover y 0 = f (x0 ) implies Θ(y 0 ) = Θ(f (x0 )), so x0 is a max-min fair solution. Due to a relatively compact description, and possibly more appeal to intuition, some authors use Property 2.11 in defining the concept of max-min fairness (and associated solution) [46]. This would certainly be enough if
32
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
the vectors specified to be max-min fair solutions by Definition 2.19 but not by Property 2.11 were artificial and of no practical interest. However, the following example shows that this is not the case. Example 2.2. Let m = n and fj (x) = xj for j = 1, 2, . . . , n. Suppose X = B2 . This models an instance with two demands over one link with capacity one, where demand flows must be integral. As the only solutions, (0, 1) and (1, 0), are equal from a fairness viewpoint, we want a definition that establishes that both of them are max-min fair. This is accomplished by Definition 2.19. However, none of them are strongly max-min fair so none of them can be concluded to be MMF through Property 2.11. Property 2.12. If x0 is a max-min fair solution, x0 ∈ X, f1 , f2 , . . . , fm are concave functions, and X is convex, then y 0 = f (x0 ) is strongly max-min fair on Y . Proof. The facts that f1 , f2 , . . . , fm are concave and X is convex imply that Y = {y : y ≤ f (x), x ∈ X} is convex. Further, x0 is a max-min fair solution on X so Θ(y 0 ) = Θ(f (x0 )) = lex max{Θ(f (x)) : x ∈ X} = lex max{Θ(y) : y ∈ Y }. The statement now follows from Property 2.10. Linear max-min fairness An important special case of MMF is when the functions f1 , f2 , . . . , fm are linear and the feasible set X is a polyhedron (i.e, X is defined by linear constraints). One such case is for instance when the max-min fair outcome vector is the max-min fair solution, letting m = n and defining fj (x) = xj , j = 1, 2, . . . , n (assuming linear constraints). In telecommunications, this seemingly simple variant is by far the most thoroughly investigated. Actually, some authors do not take any other possibilities into account, and state their MMF definitions only for this case. We will denote this special case as linear max-min fairness, and when there is no risk for confusion, just max-min fairness. With the given assumptions, following Definition 2.19, a solution x0 will be a max-min fair solution in the linear context if an only if Θ(x0 ) = lex max{Θ(x) : x ∈ X}.
(2.20)
Using the facts established by Property 2.12, and the fact that X is a polyhedron and thus convex, this will be equivalent to the statement that x0 is strongly max-min fair on X.
2.4
Algorithms that achieve max-min fairness
Given the set X, which is a subset of Rn , X ⊆ Rn , and a vector of realvalued functions f = (f1 , f2 , . . . , fm ), with fj : X → R, j = 1, 2, . . . , m,
2.4. ALGORITHMS THAT ACHIEVE MAX-MIN FAIRNESS
33
obtaining max-min fairness is a matter of finding a solution x0 ∈ X that has the property that Θ(f (x0 )) = lex max{Θ(f (x)) : x ∈ X} . There are certain generic algorithms for these kinds of optimization problems. For the case when the problem has convex structure we give algorithms that are generalizations of the algorithms presented in [30], [50], [44], and [43]. For the non-convex cases we essentially account for the general techniques presented in [40].
2.4.1
The convex case
For the convex case, i.e., when the feasible set X is convex and the functions fi , i = 1, 2, . . . , m, are concave, the following algorithm, based on successive convex programming, outputs a max-min fair solution. Algorithm 2.1. (max-min fairness, convex case) Step 0: Assign N := {1, 2, . . . , m}. Solve max
t
(2.21)
s.t. fi (x) ≥ t
∀i
x∈X ,
(2.22) (2.23)
and let t∗ and x∗ be the optimal solution. Step 1: For all j ∈ N solve µj = max
fj (x)
(2.24)
s.t. fi (x) ≥ ti
∀i∈ /N
(2.25)
∗
∀i∈N
(2.26)
fi (x) ≥ t x∈X .
(2.27)
For all j ∈ N , if µj = t∗ then N := N \ {j} and tj := t∗ . If N = ∅ then stop, x∗ is the max-min fair solution. Otherwise proceed to Step 2. Step 2: Solve max s.t.
t
(2.28)
fi (x) ≥ ti
∀i∈ /N
(2.29)
fi (x) ≥ t
∀i∈N
(2.30)
x∈X , and let t∗ and x∗ be the optimal solution. Go to Step 1.
(2.31)
34
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
The above algorithm is completely relying on the convex structure of the involved optimization problem. Note first of all that we are able to put a constraint of the type fi (x) ≥ ti , ti fixed, (2.32) specific for entry i, only because of concavity of fi . The check of which entries that can be increased, performed in Step 1, is valid only as long as X is convex and the functions f1 , f2 , . . . , fm are concave. The function of this step can be seen if we consider all i ∈ N such that µi > t∗ . Denote this set of indices by I. The value of the outcomes corresponding to i ∈ I can ¯ ∈ X and a τ > t∗ , such all be increased simultaneously as there exists an x that fi (¯ x) ≥ τ fi (¯ x) ≥ t
∗
∀i∈I ,
(2.33)
∀ i∈N \I ,
(2.34)
fi (¯ x) ≥ t i
∀i∈ /N . (2.35) P 1 ¯ is the convex combination, x ¯ = j∈I |I| xj , where xj is Such a solution x the solution to the convex programme of Step 1, performed for entry j ∈ I. ¯ ∈ X and Let τ = min{µi : i ∈ I}. Because of convexity of X, we have x because of concavity of functions f1 , f2 , . . . , fm , that X 1 P 1 fi (xj ) ≥ τ ∀i∈I , (2.36) ≥ fi j∈I |I| xj |I| j∈I P X 1 1 x fi fi (xj ) ≥ t∗ ∀ i∈N \I , (2.37) ≥ j j∈I |I| |I| j∈I X 1 P 1 ≥ fi fi (xj ) ≥ ti ∀i∈ /N . (2.38) j∈I |I| xj |I| j∈I
If it is possible to somehow access optimal dual multipliers for constraints (2.30), λ∗i , i ∈ N , the algorithm can be made substantially faster, as we then can omit the time-consuming Step 1. Let t∗ and x∗ be the primal optimal solution to (2.28)-(2.31), and let Λ∗ = [λ∗i ]i∈N , be the corresponding vector of optimal dual multipliers for constraints (2.30). Proposition 2.13. If λ∗i > 0 for i ∈ N , then fi (x∗ ) = t∗ for any optimal solution x∗ to (2.28)-(2.31). Proof. For any optimal primal-dual pair (saddle-point), (x∗ , t∗ ; Λ∗ ), because of the convex structure, the complementary slackness property holds [20], λ∗i t∗ − fi (x∗ ) = 0 , for each i ∈ N . (2.39)
Hence if λ∗i > 0 then necessarily fi (x∗ ) = t∗ , for any optimal primal solution x∗ .
2.4. ALGORITHMS THAT ACHIEVE MAX-MIN FAIRNESS
35
The improved algorithm is as follows. Algorithm 2.2. (max-min fairness, convex case) Step 0: Assign N := {1, 2, . . . , m}. Solve max
t
(2.40)
s.t. fi (x) ≥ t
∀i
(2.41)
x∈X ,
(2.42)
and let t∗ and x∗ be the optimal solution, and Λ∗ = [λ∗i ]i=1,2,...,m be the optimal dual multipliers corresponding to constraints (2.41). Step 1: For all i ∈ N : λ∗i > 0 put N := N \ {i} and ti := t∗ . If N = ∅ then stop, x∗ is the max-min fair solution. Otherwise proceed to Step 2. Step 2: Solve max s.t.
t
(2.43)
fi (x) ≥ ti
∀i∈ /N
(2.44)
fi (x) ≥ t
∀i∈N
(2.45)
x∈X ,
(2.46)
and let t∗ and x∗ be the optimal solution, and Λ∗ = [λ∗i ]i∈N be the optimal dual multipliers corresponding to constraints (2.45). Go to Step 1. Unfortunately, the fact that λ∗j = 0 does not in general imply that fj (x) can be increased further. Nevertheless, Algorithm 2.2 will keep such an index in the set N , i.e., treating it as it potentially could be increased, which of course is unnecessary if the corresponding constraint is binding. Such a strategy will work since there will always be at least one binding constraint i out of constraints (2.45) (and also outPof constraints (2.41) in P Step 0), and, as will be shown, i∈N λ∗i = 1 (and i λ∗i = 1 in Step 0). P ∗ Property 2.14. i∈N λi = 1. Proof. Dualize constraints (2.45), and form the Lagrangian, X X P λi fi (x) , L(x, Λ) = t − λi t − fi (x) = t 1 − i∈N λi + i∈N
i∈N
(2.47)
and the dual function, W (Λ) = max L(x, Λ) , Λ ≥ 0 . x∈X
(2.48)
P Suppose that i∈N λ∗i 6= 1. Then the bounded function W (Λ) may be made infinitely large by assuming t = +∞ or t = −∞, which is a contradiction.
36
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
The consequence of this treatment of indices j, for which λ∗j = 0, will result in that it may happen that we sometimes carry out Step 2 without increasing t (i.e., not increasing with respect to the value of t obtained the last time Step 2 was visited). For practical instances the occurence of λ∗j = 0 has however shown to be quite rare.
2.4.2
Non-convex cases
Whenever the feasible set, X, is not convex or if the criteria f are not concave, we cannot make use of neither Algorithm 2.1 nor Algorithm 2.2. When this is the case the problem will have a more complicated non-convex structure. This may for instance happen if X only contains integers. Cumulated ordered outcomes In the non-convex cases it is possible to make use of the expressability result for cumulated ordered outcomes, given by (2.5)-(2.6). It is fairly easy to see that a solution to ¯ (x)) : x ∈ X} , lex max{Θ(f is also a solution to lex max{Θ(f (x)) : x ∈ X} , and vice versa. The latter should be recognized as the general max-min fairness problem. Given a vector of outcomes, f (x)) = (f1 (x), f2 (x), . . . , fm (x)), the cumulated values, θ¯i (f (x)), i = 1, 2, . . . , m, can be expressed as θ¯k (f (x)) = max
kt −
m X
bi
(2.49)
i=1
s.t.
t − fi (x) ≤ bi
∀i
(2.50)
bi ≥ 0
∀i
(2.51)
which makes it possible to write any max-min fairness problem as lex max s.t.
(η1 , η2 , . . . , ηm ) m X bik ηk ≤ ktk −
(2.52) ∀k
(2.53)
tk − bik ≤ fi (x)
∀ i, k
(2.54)
bik ≥ 0
∀ i, k
(2.55)
i=1
x∈X
(2.56)
where k = 1, 2, . . . , m. This multi-criteria optimization problem can be solved acccording to the following sequential algorithm.
2.4. ALGORITHMS THAT ACHIEVE MAX-MIN FAIRNESS
37
Algorithm 2.3. (max-min fairness, non-convex case) Step 0: Assign k := 1. Solve max s.t.
η1
(2.57)
η1 ≤ t −
m X
bi
(2.58)
i=1
t − fi (x) ≤ bi
∀i
(2.59)
bi ≥ 0
∀i
(2.60)
x∈X
(2.61)
and let η1∗ be the optimal objective value, and x∗ the optimal solution. Step 1: Assign k := k + 1. If k > m then stop, x∗ is the max-min fair solution. Otherwise proceed to Step 2. Step 2: Solve max
ηk
(2.62)
s.t. ηj∗ ≤ jtj − ηk ≤ ktk −
m X
i=1 m X
bij
j = 1, 2, . . . , k − 1
bik
(2.63) (2.64)
i=1
tj − bij ≤ fi (x)
j = 1, 2, . . . , k − 1, ∀ i
(2.65)
tk − bik ≤ fi (x)
∀i
(2.66)
j = 1, 2, . . . , k, ∀ i
(2.67)
bij ≥ 0 x∈X
(2.68)
and let ηk∗ be the optimal objective value, and x∗ the optimal solution. Go to Step 1. Provided that the optimization problems of Step 0 and Step 2 can be efficiently solved, Algorithm 2.3 actually provides a generic way of obtaining a max-min fair solution. On the other hand, if the feasible set X is nonconvex, or if the outcomes f are non-concave, efficient solvers are rare. Discrete feasible set Some applications prescribe that the optimal outcomes f should belong to a discrete, finite set, v = {0, v1 , v2 , . . . , vr }, where it assumed that 0 < v1 < v2 < . . . < vr . Finding a max-min fair solution is then a matter of solving lex max
Θ(f (x))
s.t. fi (x) ∈ v x∈X .
(2.69) ∀i
(2.70) (2.71)
38
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
It can then in many cases be useful to put this formulation as a lexicographical minimization (see Definition 2.15 for the definition of lexicographical maximization, lexicographical minimization is defined analogously), using the following straightforward Property. Property 2.15. A vector x∗ ∈ X is an optimal solution to (2.69)-(2.71) if it is an optimal solution to P P P lex min (2.72) i t1i , i t2i , . . . , i tri s.t.
vk − fi (x) ≤ tki
k = 1, 2, . . . , r, ∀ i
(2.73)
tki ≥ 0
k = 1, 2, . . . , r, ∀ i
(2.74)
x∈X
(2.75)
fi (x) ∈ v
∀i
(2.76)
Proof. Let xa be an optimal solution to (2.69)-(2.71) and xb an optimal solution to (2.72)-(2.76). Property 2.15 states that Θ(f (xa )) = Θ(f (xb )). As we must have that Θ(f (xa )) Θ(f (xb )), we only need to prove that Θ(f (xb )) Θ(f (xa )). Suppose that Θ(f (xa )) ≻ Θ(f (xb )). Then there exists an entry j such that θj (f (xb )) < θj (f (xa )) = vt ∈ v, and θi (f (xb )) = θi (f (xa )) for all indices i < j (if such indices exist). It then holds that X X max{vs − fi (xb ), 0}, max{vs − fi (xa ), 0} = i
i
for all s such that s < t, and that X X max{vt − fi (xa ), 0} < max{vt − fi (xb ), 0}, i
i
which contradicts that xb is a solution to (2.72)-(2.76).
2.5
Conclusions
In this chapter we have introduced the concept of fairness in a formal way. Particularly, the concept of one vector being more fair than another has been rigorously defined through the notion of preference relations. For a preference relation to define fairness, we have assumed that it has to fulfill certain regularity requirements, and is in this case called a fair rational preference relation. From the associated rules we have developed a number of important basic types of fairness. The objective of obtaining fairness has been shown to be a matter of finding a vector that is (weakly) preferred to all other vectors, with respect to the considered fair rational preference relation. Such a vector is called fairly nondominated, and is often obtainable through some kind of (possibly multicriteria) maximization. This provides a natural connection to
2.5. CONCLUSIONS
39
Pareto-efficiency, as it could be shown that all fairly non-dominated vectors can be seen as Pareto-efficient solutions to a special type of multi-criteria maximization problem. In order to define a fair rational preference relation there exist several possible generic methods. The first, and probably most natural one, is to use the idea of aggregation functions. Other types of generic fairness, i.e., classes of fairness where parameter-settings define the particular fairness, have been presented. For example we have shown how to define fairness through p-norms and ordered weighted averaging. The most thoroughly investigated type of fairness is the one that is often reasonably argued to be intuitively the most fair, namely max-min fairness. We gave a formal definition of max-min fairness, using the fair rational preference relation of the symmetrical leximin order. We then related this definition to a stronger but less general definition, and showed that the definitions are equivalent in the case of a convex outcome space. We did also highlight that a solution that induces a max-min fair outcome vector is sometimes called max-min fair itself. To the extreme it may even happen that the solution variables are the outcomes, a case often referred to as linear max-min fairness. Finally, this chapter turned the focus to generic algorithms that achieve max-min fairness. For the convex case we gave an algorithm that is based on the use of dual multipliers, and for the non-convex case an algorithm that makes use of cumulated ordered values. The presented algorithms will be extensively used in the following chapters, as obtaining max-min fairness will be one of the main objectives of the considered applications.
40
CHAPTER 2. OPTIMIZATION MODELS FOR FAIRNESS
Chapter 3
Convex allocation problems
41
42
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
In this chapter, we apply the material presented on max-min fairness in Chapter 2 on communication network allocation problems. Specifically, this chapter deals with allocation problems that have convex structure, i.e., allocation problems for which the associated optimization problem is convex. This requirement excludes for instance the more complicated cases when decision variables can be discrete (integer variables, binary variables). Allocation problems are the network design problems that are characterized by the property that network topology as well as link capacities are given a priori. Such problems consist in determination of how a number of different (competing) users should share the network resources, so that some given criterion is met (e.g., an objective function is optimized). Thus, an allocation problem is always a capacitated problem. As this chapter will address max-min fairness, the preference relation of leximin order will be considered exclusively, allowing us to drop subscript and use to denote lex .
3.1 3.1.1
Max-min fair allocation problems Max-min fair flows on fixed paths
Assume given a graph G = (V, E), where each link e = 1, 2, . . . , E is assigned a certain capacity ce . For each demand d = 1, 2, . . . , D, suppose that we are given a predetermined, connecting path, specified by the link-demand incidence relation, δed . The simplest max-min fairness problem is concerned with allocation of link capacity (bandwidth) to demands on their respective paths such that the resulting allocation vector x = (x1 , x2 , . . . , xD ) is maxmin fair on the feasible set X (where the feasible set X means the associated set of constraints). Thus the flow variables xd , d = 1, 2, . . . , D, are the decision variables of this problem. Note that each flow variable is defined as an outcome, so this is actually an application of linear max-min fairness. The considered problem is described by lex max
Θ(x) X s.t. δed xd ≤ ce
(3.1) ∀e
(3.2)
d
where Constraints (3.2) assure that for each link its load (left-hand side) does not exceed the given capacity. Definition 3.1. An allocation vector x = (x1 , x2 , . . . , xD ) is said to be max-saturating if each demand is maximal on a saturated link on its path, i.e., if for each demand d′ , d′ = 1, 2, . . . , D there exists a link e such that P d δed xd = ce and δed′ = 1 for which xd′ = max{xd : d = 1, 2, . . . , D, δed = 1}.
3.1. MAX-MIN FAIR ALLOCATION PROBLEMS
43
The following property is sometimes used for characterizing max-min fairness [6], but is not generalizable as it is relevant only for the fixed paths case. Property 3.1. An allocation vector x0 = (x01 , x02 , . . . , x0D ) solves (3.1)-(3.2) if and only if x0 is max-saturating. Moreover, such an allocation vector is unique. Proof. Suppose that x0 is not max-saturating. Then either there is a demand for which there is no saturated link on its path, or there is a demand that has saturated links on its path but is not maximal on any of them. The first possibility clearly contradicts that Θ(x0 ) is lexicographically maximal. The second possibility implies that on the demand’s path there only exist saturated links on which another demand is dominating (is maximal). Hence by decreasing these dominating demands it is possible to increase the original smaller demand, which again contradicts that Θ(x0 ) is lexicographically maximal. Thus if x0 is a solution to (3.1)-(3.2) it is certainly max-saturating. Suppose that x0 is max-saturating and that there exists a feasible allocation vector x1 such that Θ(x1 ) ≻ Θ(x0 ). Then there must exist a demand d such that x1d > x0d . Let d be such a demand, with the smallest possible value of x0d . Define the set S as S = {d′ : x0d′ ≤ x0d }. It holds that x0d′ ≤ x1d′ for any d′ ∈ S, because otherwise we would not have Θ(x1 ) ≻ Θ(x0 ). Consider the saturated which demand d is maximal (for allocation x0 ). Clearly, P link e on 0 0 xd + d′ ∈S δed′ xd′ = ce . However, this link P load is 1strictly less than the one 1 1 implied by allocation x , namely xd + d′ ∈S δed′ xd′ , which contradicts the existence of x1 . Concluding, if x0 is max-saturating it must be a solution to (3.1)-(3.2). It is easily checked that the feasible set X is convex. According to Property 2.12 if x0 is a solution to (3.1)-(3.2) (i.e., MMF on X), it must be strongly max-min fair. A strongly max-min fair vector is, according to Property 2.8, unique. The unique solution of problem (3.1)-(3.2) can be found by a well known procedure given by Algorithm 3.1. The algorithm is sometimes referred to as “waterfilling” [46]. To simplify notation, we let N denote the set of demands that can be further increased and S the set of saturated links. Algorithm 3.1. (for solving (3.1)-(3.2)) Step 0: x := 0; N := {1, 2, . . . , D}; S := ∅; o n ce : e ∈ / S . Step 1: t := min δ d∈N ed
P
P Step 2: ce := ce − t( d∈N δed ) for all e : e ∈ / S, xd := xd + t for all d such that d ∈ N . For all e with ce = 0 and e ∈ / S, S := S ∪ {e}. For each link e′ that has been added to S, for each demand d′ for which δe′ d′ = 1, put δed′ = 0 for e = 1, 2, . . . , E and D := D \ {d′ }.
44
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
Step 3: If D = ∅, then stop, otherwise go to Step 1. The function of Algorithm 3.1 is very simple: the flows allocated to each demand are increased at an equal rate until a link is saturated. Then all the demands that use this link become “blocked”, and cannot be increased further. The flows of these demands have reached their final value. The procedure is then repeated with the demands that are not blocked. This continues until all demands are blocked, i.e., until all flows have reached their final values. Thus Algorithm 3.1 constructs an allocation vector x that is max-saturating and therefore, by Property 3.1, the only solution to (3.1)-(3.2). It should be noted that the quantity t, calculated in Step 1 of Algorithm 3.1, is the solution of the following LP: max s.t.
t t
(3.3) P
d δed
≤ ce
∀e
(3.4)
This simple observation will show to be useful later when more complicated MMF problems are addressed. A more general version of problem (3.1)-(3.2) is obtained if the constraints hd ≤ xd ≤ Hd , d = 1, 2, . . . , D ,
(3.5)
are added to the formulation. Here hd and Hd are lower and upper bounds on the flow allowed to assign to demand d. There is an easy way of accounting for the upper bounds Hd . This can be done by adjusting the network graph before applying Algorithm 3.1. For each demand d an auxiliary leaf node and an extra link of capacity Hd are added; the link is then added to the path of demand d. Example 3.1. Consider the network in Figure 3.1. Initially the network has V = 5 nodes, E = 6 links and D = 3 demands. To account for the upper bounds, Hd , d = 1, 2, 3, three new nodes, v = 6, 7, 8, and links, e = 7, 8, 9, with appropriate capacities are added, resulting in the augmented network. To cope with the lower bounds hd , modifications to Algorithm 3.1 have to be done. Although using identical ideas, such a modified algorithm is more difficult to describe as it involves more technical details. The algorithm can however be informally outlined as follows: Start by assigning P all demands, d, their lower bound values, xd := hd . If for some link e, d δed hd > ce , the problem is infeasible. Otherwise we let C = {C1 , C2 , . . . , CK } be the ordered set of distinct values hd , d = 1, 2, . . . , D. We define a set D of demands that should be increased. Initially, let D = {d : hd = C1 }. Then all the demands contained in D are increased at the same rate until a demand gets blocked or until the next element of C is reached. If a demand is blocked (by a saturated link), we simply leave this demand behind by removing it from D
3.1. MAX-MIN FAIR ALLOCATION PROBLEMS
45
v=2
v=1 e=2 e=1 v=3
e=3 v=8
e=5 e=9
e=4
e=6 v=4
v=5
e=8 v=7
e=7 v=6
demand d=1 d=2 d=3
node v=1 v=1 v=2
node v=5 v=4 v=4
path {1, 5, 6} {1, 4, 6} {3}
leaf node v=6 v=7 v=8
new path {1, 5, 6, 7} {1, 4, 6, 8} {3, 9}
Figure 3.1: Augmented network, c7 = H1 , c8 = H2 , c9 = H3 . and continue. This demand has reached its final value. If the next element of C, call it Ck , is reached then all the demands d for which hd = Ck enter D and we continue the procedure. It may happen that D becomes empty before Ck is reached. In such a case we let D = {d : hd = Ck }. The procedure is continued until all demands have reached their final values.
3.1.2
Max-min fair flows on optimized paths
In this section we investigate how to obtain max-min fairness if there are several allowable paths on the routing list assigned to each demand, and the flow associated with a demand is allowed to split over its paths. This differs from the simpler problem considered in the previous section, as it was then assumed that each demand is restricted to one single fixed path. In general, flows realizing each demand volume, xd , being allowed to split among the allowable paths will of course result in a sorted allocation vector, Θ(x), lexicographically greater than the one solving the fixed paths case. Formally we consider the following problem, where zdp , d = 1, 2 . . . , D, p = 1, 2, . . . , Pd , are the considered variables. lex max s.t.
Θ(x) X zdp = xd
(3.6) ∀d
(3.7)
∀e
(3.8)
p
X
δedp zdp ≤ ce
d
The multi-criteria optimization problem formulated by (3.6)-(3.8) is substantially more difficult than its fixed path counterpart (3.1)-(3.2), because
46
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
in general the quantity t can in this case not be computed by a uniquesolution LP, as is done by (3.3)-(3.4). Instead, to compute t, the following LP has to be devised: max s.t.
t X
(3.9) zdp = xd
∀d
(3.10)
t − xd ≤ 0 X δedp zdp ≤ ce .
∀d
(3.11)
∀e
(3.12)
p
d
The following example shows that (3.9)-(3.12) may have several solutions. Example 3.2. Consider the network in Figure 3.2. Assume given two demands; d = 1 between v = 1 and v = 2, and d = 2 between v = 1 and v = 4. Resolution of the LP formulated by (3.9)-(3.12) may result in two different solutions: i) z11 = 1 on path {2}, z21 = 1 on path {1, 4}, and ii) z11 = 1 on path {1, 3}, and z21 = 1 on path {2, 3, 4}. Solution ii) does not leave room for any improvement. However, solution i) leaves room for further increment of demand d = 1, facilitating the optimal (optimal for (3.6)-(3.8)) allocation 0 = 1 (on path {2}), z 0 = 1 (on path {1, 3}), and z 0 = 1 (on vector: z11 21 12 path {1, 4}). The optimal allocation vector, x0 , is equal to (2, 1).
d=2 v=1
xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
c1 = 2 e=1
e=2 c2 = 1 d=1
vxxxxxxxx =3
c4 = 1 e=4
xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
v=4
e = 3 c3 = 2 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
v=2
Figure 3.2: Multiple optimal allocation vectors. Hence we can conclude that Algorithm 3.1 cannot be generalized to solve (3.6)-(3.8). Nevertheless, the feasible set is convex (and outcomes are linear and thus concave), so the general method for convex MMF problems given by Algorithm 2.1 can be applied. This general algorithm is applicationspecified by Algorithm 3.2. Algorithm 3.2. (for solving (3.6)-(3.8))
3.1. MAX-MIN FAIR ALLOCATION PROBLEMS
47
Step 0: Assign N := {1, 2, . . . , D}. Solve max
t X
s.t.
(3.13) zdp = xd
∀d
(3.14)
∀d
(3.15)
∀e
(3.16)
p
t − xd ≤ 0 XX δedp zdp ≤ ce p
d
P
∗ p z1p ,
and let t∗ and x∗ = solution.
P
∗ p z2p , . . . ,
P
∗ p zDp
be the optimal
Step 1: For all d′ ∈ N solve µd′ = max
(3.17)
xd′
s.t.
xd ≥ td
∀d∈ /N
(3.18)
∗
∀d∈N
(3.19)
∀d
(3.20)
∀e
(3.21)
xd ≥ t X zdp = xd p
XX
δedp zdp ≤ ce
p
d
∗ ∗ ′ ′ = t then N := N \ {d } and td′ := t . If N = ∅ For all d′ ∈ N , if µdP P P ∗ ∗ ∗ is the max-min fair then stop, x∗ = p zDp p z2p , . . . , p z1p , solution. Otherwise proceed to Step 2.
Step 2: Solve max s.t.
t
(3.22)
xd ≥ td
∀d∈ /N
(3.23)
xd ≥ t X zdp = xd
∀d∈N
(3.24)
∀d
(3.25)
∀e
(3.26)
p
XX d
and let t∗ and x∗ = solution. Go to Step 1.
δedp zdp ≤ ce
p
P
∗ p z1p ,
P
∗ p z2p , . . . ,
P
∗ p zDp
be the optimal
The function of Step 1 is to test whether a demand d ∈ N can be increased above the latest obtained t∗ or not. Note that we are therefore not interested in the actual value of µd , but only whether it is larger or equal to t∗ . It may of course happen that while solving (3.17)-(3.21) for a certain
48
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
demand d′ ∈ N , the resulting solution will have xd′′ > t∗ for some other demand d′′ ∈ N . In that case we may just assign µd′′ := xd′′ and neglect solving (3.17)-(3.21) for d′′ ∈ N . Obviously, the LP solving-procedure associated with Step 1 should be performed using the basic LP solution resulting from Step 0 (or Step 2). As indicated in Section 2.4, the tests performed by Step 1 can be very time consuming. Particularly, with the application at hand, we may look at large networks with, say, thousand demands. In such a situation more efficient tests are called for. Besides the dual-multiplier based improvement described by Algorithm 2.2, it is possible to base a more efficient test on the properties of the Simplex tableau. The test of Step 1 of whether a demand d ∈ N can be increased above the latest obtained t∗ or not can be done directly by examining the Simplex tableau corresponding to the final solution of Step 0 (or Step 2). We just have to examine the slack variable associated with the constraint in (3.15) (or (3.24)), corresponding to the currently considered demand d′ ∈ N . We will not give the details for such a tableau-based test, but instead give an application-specified version of Algorithm 2.2 for the considered problem. However, before specifying the algorithm based on dual multipliers we will make some assertions concerning the solution x∗ of (3.6)-(3.8). P ∗ P ∗ P ∗ Property 3.2. The allocation vector, x∗ = p zDp , p z2p , . . . , p z1p , being the final solution of problem (3.22)-(3.26) in Step 2, is unique. In general the unique vector x∗ can be achieved by more than one optimal con∗ , d = 1, 2, ..., D, p = 1, 2, ..., P . figuration of the individual flows, zdp d This follows from the convexity of the constraint set (c.f. Property 2.12 and Property 2.8). Another property, implied by the number of basic variables in (3.22)-(3.26) and the operation of Simplex reads: Property 3.3. There exists a solution of (3.22)-(3.26) with at most D + E ∗ , d = 1, 2, ..., D, p = 1, 2, ..., P . non-zero flows, zdp d A more complicated result is considered with the number of distinct entries of the optimal allocation vector x0 , if all possible paths between node-pairs can be used [31]. Property 3.4 (Nace and Doan, 2005). If for each demand d = 1, 2, . . . , D all possible paths can be used, then the optimal allocation vector, x0 , has at most V − 1 distinct entries. Proof. The usefulness of this result depends on if for the considered instance V − 1 < D, since there can obviously not be more distinct entries than there are entries. However, there are potentially as many as V (V − 1)/2 demands in the network, so many important cases will be covered.
3.1. MAX-MIN FAIR ALLOCATION PROBLEMS
49
Let φ1 be the smallest entry of x0 , i.e., φ1 = θ1 (x0 ). Define X1 as the set of all feasible solutions for which the smallest entry is not less than φ1 , i.e., X1 = {x ∈ X : θ1 (x) ≥ φ1 } , (3.27) where X is the set of all feasible solutions. Define further s(x) as the set of links that are saturated by a solution x ∈ X. For any x ∈ X1 suppose that s(x) does not define a cut (for the notion of cuts, see [1]). Then it will be possible to increase any coordinate of x, as subtracting the capacity occupied by x will leave room for additional flow between any node-pair, which contradicts that x ∈ X1 . Hence s(x) defines a cut for any x ∈ X1 . Define further \ s(x) . (3.28) S1 = x∈X1 Generate a set Y1 as follows. Start by assigning Y1 = ∅. For each cut c that is generated by some x ∈ X, i.e., a cut c for which c = s(x) for some x ∈ X1 , pick exactly one representative solution x′ ∈ X1 such that c = s(x′ ), and add it to Y1 , Y1 := Y1 ∪ {x′ }. This will give a finite set of solutions Y1 ⊆ X1 (as there are finitely many cuts in a graph), and it will hold that \ \ s(x) = s(x) . (3.29) S1 = x∈X1 x∈Y1 that S1 does not define a cut. This implies that s(xc ), xc = P Suppose 1 c c x∈Y1 |Y1 | x, does not define a cut. But since X1 is convex, x ∈ X1 and x must define a cut, which is a contradiction. Thus S1 defines a cut. Let φk be the k:th distinct entry of Θ(x0 ). For each φk define a set Xk as θj (x) = θj (x0 ) for j such that θj (x0 ) ≤ φk Xk = x ∈ X : (3.30) θj (x) ≥ φk for j such that θj (x0 ) > φk In other words, the set Xk is the set of solutions x ∈ X for which Θ(x) is lexicographically greater or equal to (θ1 (x0 ), θ2 (x0 ), . . . , θt (x0 ), φk , . . . , φk ) , where t is the largest index for which θt (x0 ) < φk . Let \ s(x) . Sk = x∈Xk
(3.31)
Now assume that x0 has more than n distinct entries and suppose that the graph Gn = (V, E \Sn ) has K components (disjoint subgraphs), and consider any solution x ∈ Xn+1 . Then it must hold that the graph (V, E \ s(x)) has at least K + 1 components. Because suppose that it has K components.
50
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
This must then be the K components induced by Sn , as x ∈ Xn+1 implies x ∈ Xn . Clearly, such an x will be possible to increase in any coordinate for which the corresponding node-pair is not cut by Sn . This contradicts that x ∈ Xn+1 . Generate a set Yn+1 as follows. Start by assigning Yn+1 = ∅. For each partition P of the graph generated by any solution x ∈ Xn+1 , i.e., P = s(x), x ∈ Xn+1 , pick exactly one representative solution x′ ∈ Xn+1 such that P = s(x′ ) and add it to Yn+1 , Yn+1 := Yn+1 ∪ {x′ }. This will give a finite set of solutions Yn+1 ⊆ Xn+1 , and it holds that \ \ Sn+1 = s(x) = s(x) . (3.32) x∈Xn+1 x∈Yn+1 As Sn ⊆ Sn+1 the graph Gn+1 = (V, E \ Sn+1 ) must have at least K components. Suppose P that G1n+1 has exactly K components. This implies that s(xc ), xc = x∈Yn+1 |Yn+1 | s(x), induces K components. But due to conc vexity of Xn+1 , x ∈ Xn+1 , and s(xc ) must thus induce at least K + 1 components, so this is a contradiction. Per definition, every set Xk , k = 1, 2, . . . M , corresponds to a distinct entry φk of Θ(x0 ). Suppose that M > V − 1 and that XM is non-empty and thus that XV −1 is non-empty. If XV −1 is non-empty we have, for any x ∈ XV −1 , that s(x) induces V components, meaning that s(x) = E. Thus there are no solutions x′ ∈ X such that Θ(x′ ) ≻ Θ(x), meaning that the set XM must be empty, and we have a contradiction. This completes the proof. Improving the algorithm using dual multipliers The vector Λ∗ = (λ∗1 , λ∗2 , . . . , λ∗D ) of the optimal dual variables corresponding to constraints (3.15) (or the vector Λ∗ = [λ∗d ], d ∈ N , corresponding to (3.24)) constitutes the key tool in improving Algorithm 3.2. The general dual-multiplier based algorithm (Algorithm 2.2) is application-specified for optimization problem (3.6)-(3.8) by the following algorithm. Algorithm 3.3. (for solving (3.6)-(3.8)) Step 0: Assign N := {1, 2, . . . , D}. Solve max s.t.
t X
(3.33) zdp = xd
∀d
(3.34)
∀d
(3.35)
∀e
(3.36)
p
t − xd ≤ 0 XX δedp zdp ≤ ce d
p
3.1. MAX-MIN FAIR ALLOCATION PROBLEMS
51
P ∗ P ∗ P ∗ and let t∗ and x∗ = be the optimal p z1p , p z2p , . . . , p zDp solution, and Λ∗ = [λ∗d ]d=1,2,...,D be the optimal dual multipliers corresponding to constraints (3.35). ∗ > 0 assign N := N \ {d} and t := t∗ . If N = ∅ Step 1: For all d ∈ N : λP d d P ∗ P ∗ ∗ ∗ is the max-min fair then stop, x = p zDp p z2p , . . . , p z1p , solution. Otherwise proceed to Step 2.
Step 2: Solve max s.t.
t
(3.37)
xd ≥ td
∀d∈ /N
(3.38)
xd ≥ t X zdp = xd
∀d∈N
(3.39)
∀d
(3.40)
∀e
(3.41)
p
XX d
δedp zdp ≤ ce
p
P ∗ P ∗ P ∗ be the optimal and let t∗ and x∗ = p zDp p z2p , . . . , p z1p , solution, and Λ∗ = [λ∗d ]d∈N be the optimal dual multipliers corresponding to constraints (3.39). Go to Step 1. As problem (3.6)-(3.8) is entirely linear, the optimzation problems solved in Step 0 and Step 2 will be linear programming problems. This has the obvious advantage that, since practically all LP solvers provide optimal dual multipliers along with the primal optimal solution, we can assume that we have easy access to dual multipliers, making Algorithm 3.3 an appealing way of solving the considered problem. It is however a fact that examining the numerical value of an optimal dual multiplier λ∗d , d ∈ N , will be useful only if λ∗d > 0. In the case when λ∗d = 0 we cannot say anything about the possibilities of increasing xd . This is illustrated by the following example. Example 3.3. Consider the network from Figure 3.3. In this case (3.6)∗ = (3.8) will be solved already by Step 0 of Algorithm 3.3, yielding x∗1 = z11 ∗ = x∗ = z ∗ = 1 (there is only one path for each demand). Although x∗2 = z21 31 3 none of the three demands can be further increased, the Simplex algorithm will always set to 0 one of the two first values in the vector Λ∗ = (λ∗1 , λ∗2 , λ∗3 ), of the optimal multipliers corresponding to constraints (3.35), yielding one of the two optimal dual solutions: Λ∗ = (0, 21 , 21 ) or Λ∗ = ( 12 , 0, 12 ). Summing up, investigating dual multipliers is really a method of detecting the demands that are blocking (not possible to increase further), and not the ones that are non-blocking (possible to increase further), which would be even better. However, as is also explained in Section 2.4, assuming that all demands that are not shown to be blocking by the dual multiplier test
52
CHAPTER 3. CONVEX ALLOCATION PROBLEMS vxxxxxxxx =1 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
c1 = 2 e=1
vxxxxxxxx =2 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
d=1
c2 = 2 e=2
v=3
xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx xxxxxxxxx
d=2 d=3
Figure 3.3: Two-link network. are indeed non-blocking, will work even though P we risk not to improve t∗ in two consecutive iterations. This is because that d λ∗d = 1, resulting in that each iteration will reveal at least one blocking demand, so we will eventually reach an iteration where every demand d for which λ∗d = 0 is non-blocking.
Efficiency issues of Algorithm 3.3 Algorithm 3.3 combined with an efficient LP solver, provides a time-efficient and easy to implement tool for solving (3.6)-(3.8). Moreover, the maximal number of iterations of Algorithm 3.3, required to achieve the final solution is theoretically equal to the number of demands, D. In practice the algorithm rarely requires more than E (the number of links) iterations, as blocking demands with λ∗d = 0 occur very rarely. In the problem formulations considered in this section we have used the so called link-path formulation, assuming a limited list of paths currently predefined for each demand (paths p = 1, 2, . . . , Pd for demand d). In general, such lists do not contain (deliberately) all the paths allowable for the demand. For instance, if the allowable paths are, say, all the paths with up to ten hops, then there can exist thousands of such paths for a demand, still, typically, the current path list will contain a relatively small number of paths in order to limit the number of variables. Hence, it can happen that the current set of lists of predefined paths is not sufficient for reaching the optimal solution achievable within the full set of all allowable paths. To avoid this problem, it is of course possible to instead put the optimization problem in a so-called node-link formulation and account for each possible path for each demand, done e.g. in [30]. Taking each possible path into account can however be done in an equivalent, and substantially less computationally exhaustive way, using the efficient path generation1 [9]. 1
In general linear programming this is called column generation.
3.1. MAX-MIN FAIR ALLOCATION PROBLEMS
53
Applying the algorithms on a numerical example To illustrate the performance and function of Algorithm 3.3, we have considered a network with V = 12 nodes, E = 18 links, and D = 66 demands (demands are all undirected S-D pairs, numbered in the natural order: {1, 2}, {1, 3}, . . . , {11, 12}). Each demand is assigned the routing sequence of all simple paths, resulting in Pd values ranging from 6 to 13. To perform the numerical study, a large-scale interior-point solver provided by MATLAB Optimization Toolbox is used. Both Algorithm 3.1 (single pre-defined path case) and Algorithm 3.3 (optimized paths case) have been implemented. Figure 3.4 shows the successive demand volume allocations
bandwidth
100
50 8 6 4 n 2
0 60
50
40
30
20
0 10
demand
Figure 3.4: Evolution of allocated demand volumes using Algorithm 3.3. xd of Algorithm 3.3. In total, the experiment required 8 iterations and took less than 6 seconds of the CPU time on a PC with an Intel PIII-1GHz CPU, RAM of 256 MB, and Windows 2000 OS. The check of dual variables has been sufficient in all iterations (i.e., each iteration gave improvement of t∗ ). Note that the allocations are non-decreasing over the iterations, and that after Step 0 approximately equal volume is allocated to all demands. The benefit from using optimized paths for this network is illustrated in Figure 3.5. The left diagram illustrates the final demand volume allocation after applying Algorithm 3.1 (the predefined paths are the shortest paths in terms of the number of hops). This should be compared to the right diagram, which is the final allocation pattern of Algorithm 3.3 (equal to the last row in Figure 3.4). The throughput, standard deviation, and mean is equal to 2.2e3, 10.9, 33.0 and 2.6e3, 10.0, 39.6, for single and flexible paths cases, respectively. Notably, the total throughput of the flexible solution is greater than the throughput of the fixed-path solution by 16%.
54
CHAPTER 3. CONVEX ALLOCATION PROBLEMS flexible paths 80
60
60 bandwidth
bandwidth
single paths 80
40
20
0
40
20
0
20
40 demand
60
0
0
20
40 demand
60
Figure 3.5: Volume allocated to each demand using single (fixed) and flexible (optimized) paths.
3.2
Max-min fair reallocation
Conventionally, research efforts targeting the issue of network robustness focus either on imposing resilience in the network design phase, or on augmenting existing network resources. For a given backbone transport network, both these approaches can be inadequate, simply because the network is in an operational phase and augmenting its resources may not be feasible. In this section we present ideas that take another approach, achieving robustness through a link protection mechanism, obtainable through reducing and rerouting the existing nominal demand flows, without altering neither network link capacities nor topology. We will show that the scheme of doing this can in a natural way be based upon the notion of max-min fairness. The problem addressed in this section occurs when a network, designed and allocated in a non-robust way, encounters a link failure. Characteristically, such a network can be highly vulnerable, i.e., large fractions of connections disrupt due to events of this kind. The idea is to provide means of protecting (make robust) this type of network within its given resources, at the cost of fairly redistributing (reduce and possibly reroute) individual demand flows, still maintaining the overall demand volume relations. With this as the desired goal, we formulate and solve an optimization problem, maximizing the resemblence beteween original and reduced demand volumes, constrained on that the reduced demand volumes are fully protected for any single link failure. The solution to such an optimization problem may be further improved, and therefore we introduce a max-min fair improvement procedure. The suggested methodology is application of the convex-case max-min fairness algorithms.
3.2. MAX-MIN FAIR REALLOCATION
3.2.1
55
Problem description
The methodology studied in this section is essentially concerned with investigating means for redistributing flows in an existing network with preallocated flows, within given link capacities, so that network robustness to link failures is introduced. Certain realistic assumptions about mean time between failures and mean time to repair in transport networks, justify the assumption that only one link fails at the time [53]. Adopting this reasoning advocates interpretation of the term “network robustness” as flow survival upon single link failures. In the preallocated network each sourcedestination (s-d) node pair is assigned a certain flow. The objective is to uniformly scale (and if necessary reroute) the preallocated flows such that in the event of a single failing link, each one of these (scaled) flows will be entirely restored using the link protection mechanism. By scaling the flows, we will obtain certain spare capacity on each link. This capacity, denoted protection capacity, is used to protect failing links, i.e., if a link fails, flows going through this link will be carried on protection capacity of other links, between the two nodes connected by the failed link. The rearranged network guarantees 100% Traffic Restoration Level (TRL) [2].
3.2.2
Notation and definitions
Consider a network given by a set of nodes and a set of connecting links that are also specified in terms of capacity ce . It is assumed that we are given a set of demands (node-pairs), a set of paths for each demand (implicitly given by the link-path incidence relation, δedp ), and a feasible allocation ˆ = (ˆ ˆ is assumed to be feasible, meaning x x1 , x ˆ2 , . . . , x ˆD ). The allocation x P that there exists zˆdp such that p zˆdp = x ˆd , d = 1, 2, . . . , D and XX d
δedp zˆdp ≤ ce , e = 1, 2, . . . , E .
p
We want to find a number t > 0, uniformly scaling the preallocation and thereby liberating link capacity, necessary to ensure full restoration of any single link, i.e., to obtain compensation for the total failure of each link e, e = 1, 2, . . . , E. We restrict ourselves to the study of pure link protection, meaning that in case of link failure, the aggregated flow carried by the link is rerouted on protection paths, thus requiring a link connectivity of at least 2 from the network, and that each link e is assigned a set of protection paths, identified by q = 1, 2, . . . , Qe . The links used by each protection path are determined by the link-path incidence relation, βf eq , where βf eq = 1 if link f belongs to path q, protecting link e, and 0 otherwise. For link e, consider a protecting flow, req , i.e., a flow that protects link e on path q.
56
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
Definition 3.2. Let x be a feasible allocation. We say that x is fully protected by flows req if XX X δedp zdp + βef q rf q ≤ ce , e, f = 1, 2, . . . , E, e 6= f (3.42) d
and
p
q
X
req ≥
q
XX d
δedp zdp , e = 1, 2, . . . , E .
(3.43)
p
Note that (3.42) relies on the single link failure assumption, and that (3.43) ensures that a fully protected allocation will have a TRL of 100%. ˆ , and an allocation x Definition 3.3. Assume a given feasible allocation x that is fully protected by flows req . We define the scaling factor, t(x), with ˆ as respect to x n xd o : d = 1, 2, . . . , D t(x) = min . (3.44) x ˆd
ˆ , we want to determine a protected allocation x, For a given preallocation, x including protecting flows, req , so that the the protected allocation resembles the preallocation as much as possible. Therefore, maximization of the scaling factor, t, will be of major importance.
3.2.3
A lower bound
Before formulating an appropriate optimization problem, certain conclusions regarding how large scaling factor that can be obtained for a given allocation ˆ , may be drawn. x Proposition 3.5. For each link e, e = 1, 2, . . . , E, denote by ce the capacity of link e, by v and u the two nodes connected by link e, v, u = 1, 2, . . . , V , v 6= u. In the unloaded network, let πe denote the largest flow possible to transfer between v and u (the max-flow) on the protection paths of link e. There exists a protected allocation x such that o n πe : e = 1, 2, . . . , E . (3.45) t ≥ min ce + πe
Proof. First, we note that it is sufficient to prove the existence of a restoration such that πe t≥ , (3.46) ce + πe
for all links e. Assume that we delete an arbitrary link e, of capacity ce , carrying the flow ωe in the preallocation, and form an s − d cut between v and w and over the residual network. Furthermore, assume that we can measure the aggregated (preallocated) flow intersecting this cut, and that
3.2. MAX-MIN FAIR REALLOCATION
57
we are able to discern the share incident on paths protecting link e. Denote this share by φ. Now, place the cut such that the share is minimal, and denote this flow by φ∗ (cf. the notion of min-cuts [1]). By scaling all the e flows incident on the protection paths by ceπ+π , we open up for a connection e between v and w of capacity c′e = πe − φ∗
πe . ce + πe
(3.47)
Moreover, from the Max-flow Min-cut theorem we know that it certainly holds that φ∗ ≤ πe [1], so c′e ≥ πe − πe
πe πe πe = ce ≥ ωe . ce + πe ce + πe ce + πe
Thus we have a restoration satisfying (3.46). It turns out that if the network is saturated by demands that each have one, single, allowable path, then the bound given by Proposition 3.5 is exact. Note that in this case the preallocated flows cannot be rearranged, but only thinned. Proposition 3.6. If the network is saturated by single-path demands, then for any protected allocation x, t = min
πe ce +πe
: e = 1, 2, . . . , E
.
(3.48)
Proof. For a saturated we have φ∗ = network πe , and ωe = ce . Pick a πe : e = 1, 2, . . . , E link e for which min ce +πe is assumed. Assume that e . This implies that we are forced we restore link e by a factor α1 > ceπ+π e e to scale flows carried by links on link e’s protection paths by α2 < ceπ+π , e since we must satisfy ce α1 + πe α2 = πe . By assumption these links realize demands uniquely, so this would imply t
t∗ extension of corresponding sets of protection paths, (such that ceπ+π e for all e = 1, 2, . . . , E), the proposition guarantees a larger optimal scaling factor.
3.2.4
Optimal solutions
A linear programming formulation ˆ , with the fully protected The problem of resembling the preallocation, x allocation, x (with protecting flows req ), can be addressed by formulation of an appropriate optimization problem. Using the notation introduced in the previous section, together with the auxiliary variables we and ye , denoting protection capacity and nominal capacity for link e, e = 1, 2, . . . , E, respectively, an LP with the decision variables zdp and req , can be formulated in the following way (where f = 1, 2, . . . , E): max s.t.
t
(3.50)
xd x ˆd X xd = zdp t≤
∀d
(3.51)
∀d
(3.52)
∀e
(3.53)
∀e
(3.54)
∀ f, e : f 6= e
(3.55)
∀e
(3.56)
p
we + ye ≤ ce X ye ≤ req q
X
βf eq req ≤ wf
q
XX d
δedp zdp = ye
p
P Here, x ˆd = p zˆdp are the given preallocated demand volumes, and they are without loss of generality assumed to satisfy x ˆd > 0, for all d = 1, 2, . . . , D. Since this LP is bounded and feasible, it is clearly solvable, and will provide
3.2. MAX-MIN FAIR REALLOCATION
59
a protected allocation x and associated protecting flows req , with a maximal ˆ. protection factor t, with respect to the preallocation x A max-min fair improvement Since the solution to (3.50)-(3.56) is usually non-unique, there is some freedom in which solution to choose. Note that rearranging the network strictly according to the solution of (3.50)-(3.56), will most likely result in a poor link utilization, because there will be a lot of unused capacity. However, for the considered application, there is a natural way of improving this, exploiting the idea of max-min fairness. In doing so we first define the constraint set F . For simpler notation, denote by S a collection of flows, zdp , and protecting flows, req . We say that S ∈ F (S is feasible) if and only if it holds that the associated flows, zdp , and protecing flows, req , satisfy (3.52)-(3.56). The LP of (3.50)-(3.56) can then be rewritten as: max s.t.
t
(3.57)
xd t≤ x ˆd S∈F
∀d
(3.58) (3.59)
Now assume that (t∗ , S ∗ ) is an optimal solution to (3.50)-(3.56), and that x∗ t∗ = xˆdd , for some demand d, and that there exists a demand ∆, ∆ 6= d, x∗
x∗
∆ such that t∗ < xˆ∆ . We may then decrease x∗∆ such that t∗ = xˆ∆ , and still ∆ have an optimal solution. This observation has the following implication for our solutions: given an optimal solution (t∗ , S ∗ ) to (3.50)-(3.56), it may be possible to further increase some aggregated flows (corresponding to demands), x∗d , (certainly not all of them), and still have an optimal solution. We will refer to the demands possible to further increase as non-blocking. Such an increment is of course desirable, and for this purpose we propose the following algorithm, being an application-specified version of Algorithm 2.2, in order to obtain a better solution than that obtained by only solving (3.50)-(3.56).
Algorithm 3.4. Step 0: Assign N := {1, 2, . . . , D}. Solve max
t
xd s.t. t ≤ x ˆd S∈F
(3.60) ∀d
(3.61) (3.62)
∗ be the optimal solution, and Λ∗ = [λ∗ ] and let t∗ , zdp∗ , and req d d=1,2,...,D be the optimal dual multipliers corresponding to constraints (3.61).
60
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
Step 1: For all d ∈ N P : λ∗d > 0 assign N := N \ {d} and td := t∗ . If N = ∅ ∗ ∗ , d = 1, 2, . . . , D are the flows corresponding then stop, xd = p zdp to a maximal scaling factor, improved in a max-min fair way. Single ∗ . Otherwise link failures are entirely protected by (protecting) flows req proceed to Step 2. Step 2: Solve max s.t.
t
(3.63)
xd t≤ x ˆd xd td ≤ x ˆd S∈F
∀d∈N
(3.64)
∀d∈ /N
(3.65) (3.66)
∗ be the optimal solution, and Λ∗ = [λ∗ ] and let t∗ , zdp∗ , and req d d∈N be the optimal dual multipliers corresponding to constraints (3.64). Go to Step 1.
The function of this algorithm relies, as it is an application of Algorithm 2.2, on complementary slackness and the fact that X λd = 1. (3.67) d∈N
As all involved optimization problems are LPs, we may consider the optimal dual multipliers easily accessible. Note that, just as was the case of Algorithm 3.3, in the case of a demand d ∈ N for which λd = 0 we can not be certain of that this demand can be increased further (i.e., that it really is a non-blocking demand). This implies that it may happen that we do not increase t∗ in two consecutive iterations. However, since (3.67) always holds, each iteration will reveal at least one new blocking demand. Algorithm 3.4 provides a max-min fair distribution of degree of resemblence to the corresponding preallocated demand flows. This is conditioned on that capacity has to be reserved so that in case of failure of any single link, the link can be completely restored by protecting flows.
3.2.5
Numerical examples
To illustrate the sharpness of the lower bound provided by Proposition 3.5, Table 3.1 gives a comparison between optimal t, computed by (3.50)-(3.56), and the corresponding lower bound for t, for 11 different randomly generated networks with different settings. For all the included networks, the individual link capacities are set according to ce = 30±ρ, e = 1, 2, . . . , E, where ρ is randomly chosen. For networks 1-10 (denoted net 1-10), ρ ∈ {0, 1, 2, 3, 4, 5}, and for network 11 (denoted net 11), ρ ∈ {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}. In all
3.3. CONCLUSIONS
61
the cases, the preallocation saturates the network, since it is obtained by application of the MMF allocation rule, as described in Section 3.1.2, to the network with demands between all pairs of nodes. It should be noted that net 1 2 3 4 5 6 7 8 9 10 11
#nodes 6 8 10 12 14 16 18 20 22 24 13
#links 8 10 17 19 23 30 25 35 39 46 23
νmax 3 3 4 4 4 5 5 5 5 5 5
νmin 2 2 2 2 2 2 2 2 2 2 2
M 1 2 3 4 5 5 6 7 7 7 5
L 2 2 3 4 4 5 5 5 5 5 4
optimal t 0.4167 0.4492 0.4915 0.5498 0.4776 0.4445 0.3726 0.4754 0.4426 0.4531 0.4541
bound 0.4167 0.4333 0.4237 0.4407 0.4444 0.4333 0.3265 0.4386 0.4426 0.4333 0.4032
error (%) 0 3.5 14 25 7 3 14 8 0 5 13
Table 3.1: Example networks. M = maxd {Pd }, L = maxe {Qe }, ν =node degree. the first row of the table (network 1) verifies Proposition 3.6 (each demand has one admissible path and the link capacities are saturated by the preallocation, hence the optimal t and the lower bound must be equal). The rightmost column of Table 3.1 suggests that the lower bound is rather sharp. Figure 3.6 illustrates the dynamics of Algorithm 3.4. The algorithm is applied to network 11 of Table 3.1. The bar diagram of Figure 3.6 shows evolution of aggregated flows, xd , for all the demands, throughout the 5 required iterations. The innermost (white) row diplays the associated preallocation. It should be noted, that for each demand the height of the bars is non-decreasing, with the number of iterations. In the diagram of Figure 3.7, the resulting nominal and protection capacities – the auxiliary variables ye and we – are shown together with the fixed link capacities ce . It should be emphasized that link capacities are not always fully exploited. Since we require 100% TRL (which is the most restrictive possible setting), we cannot exploit the fraction of link capacity (ce ) that is impossible to fully protect. On average, 57.5% and 40.3% of the fixed link capacities are used for nominal- and protection capacity, respectively. Further, for this example, the fully protected allocated demand constitutes 56.8% of the preallocated demand (on average, minimally by 45.4% and maximally by 74.5%).
3.3
Conclusions
This chapter has been devoted to a study of allocation problems where the objective is (linear) max-min fairness. All of the considered allocation problems have convex structure, meaning that the feasible set of solutions
62
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
is convex and that the criteria are concave. The most basic problem addresses max-min fairness of flow distribution between demands that have one fixed path each. We showed that in this case max-min fairness of flows is equivalent to that the allocation vector is max-saturating, and gave an algorithm which is fundamentally dependent on this equivalence. We then showed how this algorithm could be extended in order to take prerequired upper- and lower flow-bounds of demands into account. A more difficult problem is encountered if each demand may use several paths and is allowed to split its flow over them. In this case we say that paths are optimized. It is then not possible to use the max-saturating property, and more complicated LP-based algorithms have to be devised. It was illustrated how the generic (convex-case) algorithms from Chapter 2 could be applied, and we gave examples showing their operation. In addition, we have derived some properties of the resulting problem solution, particularly concerned with the relation between different demand flows. The section was closed by giving an example that shows what can be gained in terms of fairness if paths are optimized (i.e. flows may split) and not kept fixed. In the balance, we have introduced a reallocation scheme with the purpose of facilitating resilience. The reallocation scheme is based on max-min fairness. Also in this problem we assume that all flows may split over several paths. We assume that we are given a network that is preallocated, i.e., demands’ flows and paths are given a priori, and that the task is to reallocate and reroute these flows such that we facilitate a special type of resilience to network failures. The type of resilience considered is full protection of every possible single link failure. The goal is to reallocate the (preallocated) flows such that they as much as possible resemble the preallocation, but also such that we make room (reserve capacity) for protection paths for a failing link. We gave a special measure for the resemblence and an accompanying lower bound. The lower bound may be useful in approximate calculations as well as in exposing weakly protected links. Finally, it has been shown and examplified how Algorithm 2.2 solves the stated problem.
3.3. CONCLUSIONS
63
30
25
assigned flow
20
15 80
10 70 60 5
50 40 30
0 20
demand
10 0
Figure 3.6: The evolution of flows allocated to demands. 40
c y w
35
30
25
capacity
iteration
5 3 1
20
15
10
5
0
0
5
10
15
20
link
Figure 3.7: Resulting nominal- and protection capacities.
64
CHAPTER 3. CONVEX ALLOCATION PROBLEMS
Chapter 4
Non-convex allocation problems
65
66
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
In Chapter 3 we considered allocation problems that had convex structure, targeting max-min fair distributions of demand flows or max-min fairness in sharing residual resources (after reducing original allocation). This chapter is devoted to the same type of max-min fair allocation problems, but with complicating assumptions making the resulting optimization problems non-convex. Specifically, all the problems considered in this chapter do all include the use of integer variables, in some form. More precisely, we are still considering problems that are classified under linear max-min fairness but with decision variables being restricted to integers. The reason for this is that in practice, decision variables, such as e.g. flow allocated to a demand, cannot take on an arbitrary value. Another realistic requirement might be that a flow between a node-pair cannot be split arbitrarily between connecting paths, but can only use one path, selected in the optimization process. Also this makes it necessary to model the allocation problem with integer variables, rendering substantially more complicated optimization problems.
4.1
Max-min fairness of modular flows
This section concerns max-min fair allocation of bandwidth to demands (users) in a communication network, when one (fixed in advance) path per demand is used, and when demands can be assigned bandwidth only in multiples of a predefined module. Although not to a great extent, this particular problem has been studied before. In [48] a polynomial time approximation (based on the notion of a preference relation induced by strong max-min fairness, see Remark 2.18) was presented, and more recently in [21] a metaheuristic was proposed. Both these approaches suggest that the problem is difficult to solve to optimality. The consdidered problem is a practical extension of the frequently cited MMF problem addressed in [6], which was the simplest problem treated in Chapter 3 (more precisely the optimization problem formulated by (3.1)(3.2)). Integral flow volumes can be well motivated from a practical viewpoint. This requirement takes into account that each demand volume must be a multiple of a predefined module, and is a consequence of that in a real network there is always a smallest trading unit, prohibiting flows from being continuous. As in Section 3.1.1, it will be assumed that a problem instance is given as a network with given link capacities, a set of source-destination node-pairs (S-D pairs), where each S-D pair represents a requirement for bandwidth (demand), and a path for each demand. For such an instance, the demand between each S-D pair must be assigned a modular flow volume, such that the sum of flows on each link does not violate the link capacity. The distribution of flows among the S-D pairs should obey the MMF principle.
4.1. MAX-MIN FAIRNESS OF MODULAR FLOWS
4.1.1
67
Problem description
For the considered problem each demand d is assumed to be associated with one selected simple path. The binary indicator, δed , is used for the link-demand incidence relation. The total flow allocated to demand d (on its corresponding path) will be identified by xd , which will be the decision variable. As earlier, we will let denote the leximin order, lex . The study undertaken in this section concerns the problem of assigning modular flows to demands in a capacitated network, such that the distribution of flows among demands is MMF. As has been described in Chapter 2, the MMF principle is to first assure that the demand that gets the least flow gets as much as possible, then that the demand that gets the second least flow gets as much as possible, and so on. Recall that obtaining a (linear) MMF allocation of flows is equivalent to solving lex max{Θ(x) : x ∈ X},
(4.1)
where X is the set of feasible solutions. Put in words this means that in an MMF allocation of flows each demand is assigned a flow such that it holds for the sorted allocation vector that an entry can be increased only at the cost of decreasing a previous entry, or by making the allocation vector infeasible1 . In this section, the set of feasible solutions X is defined by the following two requirements: X δed xd ≤ ce , e = 1, 2, . . . , E, and (4.2) d
xd ∈ Z+ , d = 1, 2, . . . , D,
(4.3)
where Z+ is the non-negative integers. The above two constraints mean in turn that the sum of flows on an link cannot exceed the link’s capacity, and that each flow must assume a non-negative integer. Let x = (x1 , x2 , . . . , xD ) be an allocation vector feasible for (4.2), and let xz = (xz1 , xz2 , . . . , xzD ) be an allocation vector feasible for (4.2) and (4.3). We will denote an allocation vector x optimal for (4.1) constrained by (4.2) an optimal continuous solution (OCS), and allocation vector xz optimal for (4.1) constrained by (4.2) and (4.3) an optimal integral solution (OIS). Note that solving for OCS is precisely what is addressed in [6], and is well known to be accomplished by Algorithm 3.1 (as it is exactly the problem described by (3.1)-(3.2)). Note further that if x is the OCS and xz the OIS for the same instance, it must hold that Θ(x) Θ(xz ). Example 4.1. Consider the network given in Figure 4.1. One demand between each node-pair is assumed. Paths are evident. Link capacities are given in the figure. The sorted OCS is Θ(x) = (0.5, 0.5, 0.5), whereas the sorted OIS is Θ(xz ) = (0, 1, 1). 1 Since this is a property of the sorted allocation vector entries and not for the specific demands, it is valid even for non-convex versions of the problem.
68
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS c
A
=
1
c
=
1
B
C
Figure 4.1: A simple instance.
4.1.2
The assumption of modular flows
In a communication network, a link typically cannot be assigned an arbitrary capacity, but is installed in multiples of a predefined module, M (cf. the standards of SONET/SDH [13]). Moreover, it is reasonable to assume that for each demand d, d = 1, 2, . . . , D, the demand’s flow, xd , must be a multiple of the same module. Without loss of generality we may, just changing units, assume that M = 1, and thus that ce ∈ Z++ , and, as is accomplished by (4.3), require that xd ∈ Z+ for all demands d = 1, 2, . . . , D. Hence, modular flows can be treated as integral flows.
4.1.3
Properties of the optimal integral solution
The properties of the optimal continuous solution are, mainly due to the max-saturating characterization following from Property 3.1, very well known and understood [6],[43],[44]. We will therefore in this section address characterization of the optimal integral solution by comparing it to the optimal continuous solution. We will assume that x is the OCS and xz is the OIS, for some given instance of the problem. Property 4.1. If Θ(xz ) 6= Θ(x) then there exists an entry k for which θk (xz ) > θk (x). Proof. It is easy to see that Θ(xz ) 6= Θ(x) implies that there exists a demand d such that xd − ⌊xd ⌋ > 0, because if xd ∈ Z+ , for all d = 1, 2, . . . , D, then the OCS would be an OIS and necessarily Θ(xz ) = Θ(x). Without loss of generality we may assume that Θ(x) = x (this may be obtained by alternative enumeration of demands). Consider the non-integral entries xi , xi+1 , . . . , xi+m for which it holds that for all entries k, k < i, (if any) xk ∈ Z+ , and if there exists an entry i+ m + 1 then xi+m+1 ∈ Z+ . Construct a solution xa by truncating all demand volumes of x, except demand i + m, which is rounded up. The idea is illustrated in Figure 4.2. This solution must be feasible since link capacities are integral. Moreover xa is an integral solution with the property that xa = Θ(xa ). As it must hold that Θ(xz ) Θ(xa ), we must have that either θj (xz ) > θj (xa ) for some j, i ≤ j < i+m, or that θj (xz ) = θj (xa ) for all j, i ≤ j < i + m and that θi+m (xz ) ≥ θi+m (xa ). Both cases imply that there exists an index j, i ≤ j ≤ i + m, such that θj (xz ) > θj (x).
4.1. MAX-MIN FAIRNESS OF MODULAR FLOWS
69
x xa
i-1
i
i+1
i+m-1
i+m
i+m+1
Figure 4.2: How to obtain xa from x. Property 4.2. If for some entry k, θk (xz ) > θk (x), then there exists a demand d, such that xzd > xd . Proof. Without loss of generality assume that x = Θ(x) (if this is not true, reenumerate the demands). Suppose x ≥ xz and consider all entries m and n, 1 ≤ m < n ≤ D, such that xzn < xzm . Interchanging all such elements in xz , we will eventually arrive at Θ(xz ). However, we have that xm ≥ xzm > xzn and xn ≥ xm ≥ xzm , so it must be true that x = Θ(x) ≥ Θ(xz ), which is a contradiction. Property 4.3. Let j be the largest integer for which it is true that θk (x) − θk (xz ) ≥ 0, 1 ≤ k ≤ j. Then, j ≥ 1 and it holds that θk (x) − θk (xz ) < 1. Proof. By definition such an entry j must exist. Suppose that for some k, 1 ≤ k ≤ j, θk (x) − θk (xz ) ≥ 1. Then we can find a feasible integral solution by just truncating the OCS. Call this solution xt . Apparently, Θ(xt ) ≻ Θ(xz ), which is a contradiction proving the second part of the statement. The following two properties are analogies to the max-saturating property of the OCS. Property 4.4. For each demand d′ , there exists at least one saturated link e for which xzd′ ≥ maxd {xzd : δed = 1} − 1. Proof. It is obvious that it is possible to find at least one saturated link for each demand, since otherwise that demand could be increased. Denote by x ˆze = max{xzd : δed = 1}, d
the flow of the maximal demand on link e, and suppose, contradictory to the statement, that it holds for all such saturated links e, for demand d′ , that ˆze − 1. Then, for these saturated links we have x ˆze > xzd′ + 1. Thus for xzd′ < x each of the links with this property, reassigning the currently maximal flow a value of x ˆze − 1 and demand d′ a value of xzd′ + 1 give a lexicographically larger solution, which is a contradiction.
70
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
It should be noted that Property 4.4 implies that for each demand d′ , if there does not exist a saturated link e for which xzd′ = maxd {xzd : δed = 1}, then there must exist a saturated link e for which xzd′ = max{xzd : δed = 1} − 1. d
Property 4.5. For a feasible allocation vector xm , xm ∈ ZD + , if it holds for m ′ ′ m each demand d , d = 1, 2, . . . , D, that xd′ = maxd {xd : δed = 1} on at least one saturated link e for which δed′ = 1, then xm is the unique OIS. Proof. According to Property 3.1 the result is valid for the continuous flows case, i.e., a feasible allocation vector, x, for which it holds that for each demand d′ , xd′ = maxd {xd : δed = 1} on at least one saturated link e for m is the unique which δed′ = 1, is the unique OCS. Now since xm ∈ RD +, x OCS and therefore the unique OIS. The following examples illustrate that it may happen, considering the OCS (x) and the OIS (xz ) for a given instance, that xzd < ⌊xd ⌋ and that xzd > ⌈xd ⌉ for some demand d. They also show that there is noPcertain z throughput domination, i.e., there both P instances for which d xd < P P exist z d xd . d xd , and instances for which d xd >
Example 4.2. Consider the network given in Figure 4.3(a). There are 2 demands between nodes A and B, 2 between A and E, 2 between A and D, 1 between C and B, 1 between C and E, and 1 between C and D. The sorted OCS is Θ(x) = (7/3, . . . , 7/3, 16/3, 16/3, 31/3) and the sorted OIS is | {z } 6
Θ(xz ) = (2, 2, 2, 2, 3, 3, 6, 6, 9). The throughput is 35 for both solutions.
Example 4.3. Consider the network given in Figure 4.3(b). There are 4 demands between verticess A and B, 2 between A and C, 4 between D and B, 2 between D and C, and 1 between D and B. The sorted OCS is Θ(x) = (8/3, . . . , 8/3, 22/3) and the sorted OIS is Θ(xz ) = (2, 2, 2, 2, 3, . . . , 3, 10). | {z } {z } | 12
The throughputs are 39 31 and 42.
8
Example 4.4. Consider the network given in Figure 4.3(c). Edge capacities are given in the figure. There is one demand between each vertex-pair. Each demand is using the associated simple two-edge path. The sorted OCS is Θ(x) = (5.5, 5.5, 5.5) and the sorted OIS is Θ(xz ) = (5, 5, 6). The throughputs are 16 21 and 16.
4.1.4
Computational complexity
In this section it will be shown that optimization problem (4.1)-(4.3) is N Phard. This was already stated in [48], although a complete proof was not
4.1. MAX-MIN FAIRNESS OF MODULAR FLOWS
71
A
c = 14 B
c = 10
C
c = 10
A D
A
c = 16
B
c = 18
C c = 11
c = 11 c = 15
E
(a) Example 2.
c = 16 D
(b) Example 3.
B
c = 11
C
(c) Example 4.
Figure 4.3: Example instances comparing the OCS and the OIS. given there. In their discussion, the authors of that paper suggest that a transformation from INDEPENDENT SET shows this. The proof given here does not use this assumption (and was derived independently). The negative result of N P-hardness means that it is unrealistic to aim for a general polynomial time algorithm that obtains an MMF flow distribution, when integer flows on fixed paths are required. Mind that the considered optimization problem is exactly that considered in [6], but with integer-valued flows. As can be verified in Examples 4.3 and 4.4, the basic “waterfilling” algorithm (Algorithm 3.1) is in general not applicable for the integer flows case. An attempt to use this basic procedure will show that certain non-trivial, discrete decisions occasionaly have to be taken. So there are certainly reasons to conjecture that this multi-criteria optimization problem is computationally hard. We will call the associated decision problem FIXED PATHS MMF – MODULAR FLOWS (FIXMMF-MF): Decision Problem 4.1 (FIXMMF-MF). INSTANCE: A link capacity ce ∈ Z+ for each link e = 1, 2, . . . , E, a binary link-demand incidence coefficient, δed , for each demand d = 1, 2, . . . , D, and a target vector xT ∈ ZD +. QUESTION : P Is there an assignment of flow, xd ∈ Z+ , for each demand d, such that d δed xd ≤ ce for each link e, and such that if x = (x1 , x2 , . . . , xD ), then Θ(x) Θ(xT )? Proposition 4.6. FIXMMF-MF is N P-complete. Proof. A nondeterministic algorithm needs only to guess an integral flow for each demand and check if the links have the required capacity and if it holds for the resulting allocation vector, x, that Θ(x) Θ(xT ). Thus clearly, FIXMMF-MF is in N P. We will transform the decision problem of SET PACKING into an instance of FIXMMF-MF. It is trivial to verify N Pcompleteness of the former, restricting it to EXACT COVER BY 3-SETS, shown to be N P-complete in [12].
72
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
Decision Problem 4.2 (SET PACKING). INSTANCE: A collection C of finite sets and a positive integer K ≤ |C|. QUESTION : Does C contain at least K mutually disjoint sets? Consider an arbitrary instance of SET PACKING. A collection C of n finite sets is given, C = {A1 , A2 , . . . , An }. We will let each set Ai constitute a demand and the elements of each such set a chain of links that is a path for that demand. Assume that there is N distinct elements in total in all of the sets Ai . For each such element ak , k = 1, 2, . . . , N , construct two nodes connected by one link as in Figure 4.4. These links will be referred to as
a1
a2
a3
aN
Figure 4.4: Element links. the element links. For each set Ai ∈ C perform the following operations. Construct a source node si and a sink node ti . Label the elements of set Ai such that Ai = {z1 , z2 , . . . , zm }, and note that there is one-to-one correspondence between these labeled elements and m of the element links. Denote the upper node of the element link corresponding to zj , j = 1, 2, . . . , m by vju , and the lower node by vjl . Add new links connecting si to v1u , v1l to v2u , l with the sink node v2l to v3u , and so on. Finally, add a link that connects vm ti . This constitutes a path between si and ti , traversing all element links of Ai . Note that all links on this path that are not element links can only be used by node-pair (demand) (si , ti ). Assign a capacity of 1 to all links. Let xT = (0, . . . , 0, 1, . . . , 1). This constitutes an instance of FIXMMF-MF, with | {z } | {z } n−K
K
n demands. Suppose that we have a positive answer to SET PACKING. This implies that there exist at least K mutually disjoint sets Ai . Assigning a flow of 1 to each of the corresponding node-pairs (si , ti ), and 0 to the rest will give Θ(x) = (0, . . . , 0, 1, . . . , 1), H ≥ K. Thus Θ(x) Θ(xT ), and we | {z } | {z } n−H
H
have a positive answer to FIXMMF-MF. Conversely, suppose that we have a positive answer to FIXMMF-MF, i.e., that there exists a feasible allocation x, with Θ(x) (0, . . . , 0, 1, . . . , 1). | {z } | {z } n−K
K
Since capacities are equal to 1, no links can be shared by demands and
4.1. MAX-MIN FAIRNESS OF MODULAR FLOWS
73
xd ≤ 1 for all d = 1, 2, . . . , D. This implies that paths of demands that are assigned flow 1 must be disjoint. As constructed, these paths define at least K mutually disjoint sets Ai , and a positive answer to SET PACKING follows. Hence, since SET PACKING is N P-complete, FIXMMF-MF is N Pcomplete. Knowledge of Algorithm 3.1 and a bit of reflection reveals that the above result will not hold (unless P = N P) if xT = c·u, where u is the unity vector of size D, and c is a positive integer (corresponding to the optimization problem of finding the maximal first entry of the sorted allocation vector). Solving the problem is then just a matter of assigning xd = c for d = 1, 2, . . . , D, and test feasibility. It is a bit more cumbersome to deduce that if each demand’s path has at most one shared link, the problem is also solvable in polynomial time. Algorithm 4.1, which is a modification of Algorithm 3.1, solves this task. The function “any(A)” returns any element of set A. Algorithm 4.1. for d := 1 to D do xd := 0 end for S := ∅ while |S| = 6 D do for all d such that d ∈ / S do xd := xd + 1; end for P for all e such that d δed xd > ce do A := {d : δed = 1, d ∈ / S}; repeat d :=any(A); xd := xd − 1; A :=PA \ {d}; until d δed xd = ce ; end for P for all e such that d δed xd = ce do for all d such that δed = 1 and d ∈ / S do S := S ∪ {d}; end for end for end while Algorithm 4.1 uses a set S to denote the set of blocked demands, and a (temporary) set A to keep track of “violating demands”. The crucial property for its operation is that only one link is shared per demand, which
74
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
eliminates (makes arbitrary) the selection difficulty in distributing capacity of a link to competing demands.
4.1.5
An algorithm
The proved difficulty of the considered problem slightly relaxes the requirements that are reasonable to put on its resolution methods. The approach taken here is in essence exploiting the “distribution approach” described for MMF problems that have discrete outcomes in general in [40]. Without using this naming convention, we have presented the idea, fundamental for the distribution approach, in Section 2.4.2 of Chapter 2. Specifically, adjusting parameters for the application at hand, Property 2.15 states that a solution to P P P (4.4) lex min d t1d , d t2d , . . . , d trd s.t.
k − xd ≤ tkd
k = 1, 2, . . . , r, ∀ d
(4.5)
tkd ≥ 0
k = 1, 2, . . . , r, ∀ d
(4.6)
∀d
(4.7)
xd ∈ {0, 1, . . . , r} x∈X ,
(4.8)
is a solution to lex max
Θ(x)
(4.9)
s.t. xd ∈ {0, 1, . . . , r}
∀d
x∈X .
(4.10) (4.11)
If we let P r = maxe {ce } and define the feasible set X by the link-load constraints, d δed xd ≤ ce , e = 1, 2, . . . , E, problem (4.9)-(4.11) is equivalent to the considered problem, (4.1)-(4.3). Hence by solving (4.4)-(4.8) by a conventional, iterative procedure, we have a solution method for (4.1)-(4.3). Such a procedure is described by the following algorithm. Algorithm 4.2. (for solving (4.1)-(4.3)) Step 0: Assign k := 1. Solve τ1 = min
X
t1d
(4.12)
d
s.t.
1 − xd ≤ t1d X δed xd ≤ ce
∀d
(4.13)
∀e
(4.14)
xd ∈ Z+
∀d
d
t1d ≥ 0
(4.15) (4.16)
and let τ1∗ be the optimal objective value, and x∗ the optimal solution.
4.1. MAX-MIN FAIRNESS OF MODULAR FLOWS
75
Step 1: If k > maxd {x∗d : d = 1, 2, . . . , D} then stop, x∗ is the MMF solution. Otherwise assign k := k + 1. If k > max{ce : e = 1, 2, . . . , E} then stop, x∗ is the max-min fair solution. Otherwise proceed to Step 2. Step 2: Solve τk = min
X
tkd
(4.17)
d
s.t. j − xd ≤ tjd X tjd ≤ τj∗
j = 1, 2, . . . , k, ∀ d
(4.18)
j = 1, 2, . . . , k − 1
(4.19)
∀e
(4.20)
tjd ≥ 0
j = 1, 2, . . . , k, ∀ d
(4.21)
∀d
(4.22)
d
δed xd ≤ ce
xd ∈ Z+
and let τk∗ be the optimal objective value, and x∗ the optimal solution. Go to Step 1. Note that both (4.12)-(4.16) of Step 0 and (4.17)-(4.22) of Step 2 are MIPs. They may thus be very difficult to solve efficiently for large instances. As entirely integral solutions are desired, it is possible to substitute constraints (4.19) by X
tjd ≤ ⌈τj ⌉,
j = 1, 2, . . . , k − 1.
(4.23)
d
Such a substitution is useful if we relax the integrality requirements, by omitting constraints (4.16) and (4.22), and solve what are called the linear relaxations of optimzation problems (4.12)-(4.16) and (4.17)-(4.22), as we then do not unnecessarily force a non-integral solution implied by a previous iteration. Consider Algorithm 4.2 modified by the above substitution, and linearly relaxed in its optimzation problems. We will call this the relaxed version of the algorithm. Since Z+ ⊂ Q+ , if the output x∗ of the relaxed version of the algorithm is entirely integral, this will clearly be a solution to (4.1)-(4.3). As will be shown in the following section, if the relaxed problems are solved by Simplex (the relaxed optimization problems of Step 0 and Step 2 are LPs), entirely integral outputs of the relaxed algorithm occur quite frequently. There are some implementational issues of the relaxed version of Algorithm 4.2 that ought to be mentioned. First of all, it is convenient to recycle the sparse constraint matrices of the successive LPs, as they change only marginally between consecutive steps. Secondly, special care should be taken in the rounding of τ . For large instances (many variables), aggregation
76
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
of small numerical errors in the computed variables may cause an erroneous rounding of τ (typically making the right-hand side of (4.23) too large). Finally, it is essential that the LPs are solved for vertex solutions, as is done by Simplex. This is easily realized if one considers a network of two vertices connected by one edge of capacity 1. Assume that there are two demands between the vertices. As opposed to Simplex, an interior point solution to this instance cannot belong to {0, 1}2 .
4.1.6
A numerical experiment
In this section we apply the relaxed version of Algorithm 4.2 to randomly generated problem instances ranging from 36 to 435 demands (corresponding to demands between all node-pairs in a 9-node network to all node-pairs in a 30-node network). In all instances r = 50 and each link capacity, ce , e = 1, 2, . . . , E belongs to {5, 10, 15, . . . , 50}. The results can be found in Table 4.1. The first 4 columns give, in turn, the number of nodes, the number of links, the number of demands, and the average length (hops) of a path. The fifth column indicates if the algorithm halts with an integral solution. Column 6 gives the number of solved LP:s (iterations) that did not produce an integral solution, and the 7:th column gives the number of iterations for which τ was rounded up, i.e., when optimal τ was non-integral (due to rounding errors there is no one-to-one correspondence between rounded τ ’s and non-integral solutions). The two final columns give the total running time and the required number of iterations, respectively. The computations were carried out on a PC with an Intel PIII-1GHz CPU, RAM of 256 MB, and Windows 2000 OS. The algorithm was implemented in MATLAB6.5, and the LPs are solved using a MATLAB interface (mex-function) to CPLEX 9 (Simplex LP-solver). Although the relaxed version of Algorithm 4.2 performs satisfactorily on all of the instances considered in Table 4.1, there exist instances for which it fails, as e.g. the following example. Example 4.5. Consider the network given in Figure 4.3(c). Suppose that the same demands and paths as in Example 4.4 are given, and that link capacities are all equal to 1. Then the (sorted) solution generated by Algorithm 1 is Θ(x′ ) = (0.5, 0.5, 0.5) but the true OIS is Θ(xz ) = (0, 0, 1).
4.2
Max-min fairness of unsplittable flows
In this section we study a difficult version of the MMF allocation problem when only non-bifurcated (unsplittable) flows are allowed. This assumption, also called requirement of single-path flows, leads, as mentioned in the beginning of this chapter, to non-convex problem formulations which are inherently hard [17] (general single-source unsplittable flow problems are
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS V 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
E 20 20 21 27 28 34 29 34 39 43 45 41 50 55 59 54 54 72 66 69 59 65
D 36 45 55 66 78 91 105 120 136 153 171 190 210 231 253 279 300 325 351 378 406 435
E(|p|) 5.3 4.7 6.4 6.8 7.2 7.7 9.0 8.6 8.8 10.3 10.3 10.8 11.8 11.7 13.6 13.7 13.7 14.4 14.6 15.7 7.3 8.5
t-int yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes
n-int 0 0 1 4 0 1 0 2 0 2 0 0 1 0 1 2 0 0 0 0 0 1
roundings 0 0 1 1 7 1 0 2 0 7 0 0 1 1 14 10 0 0 0 0 0 0
time (s) 2.50 7.03 9.47 11.56 14.16 10.27 11.29 17.42 16.86 16.59 18.74 14.95 47.22 40.28 53.77 55.41 43.43 147.34 38.77 144.45 351.72 426.30
77 iterations 26 43 46 41 48 35 37 38 34 30 36 28 42 36 40 37 32 50 26 42 49 49
Table 4.1: Testing the algorithm.
studied in [17], continuing the work on single-source splittable flow problems carried out in [25]). Nevertheless, unsplittable flows is often a realistic restriction due to the used routing protocol, or simply an explicit management requirement, stipulating avoidance of packet resequencing in receiving nodes. The network is assumed to be given in terms of topology and link capacities, and the problem is to associate the demand between each S-D node-pair with a single (optimized) path such that a sufficient volume of flow can be routed on demands’ single paths simultaneously, without violating the link capacities. By “sufficient volume” a volume that is MMF among different S-D pairs is addressed. Consequently, once each S-D pair is assigned a single path, the problem is reduced to max-min fair sharing of corresponding link capacities, for which Algorithm 3.1 can be used. Thus essentially, the considered problem amounts to the difficult task of appropriate single path selection.
78
4.2.1
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
Problem description
The considered problem is characterized by a capacitated network, where a set of demands is assumed to be given. As usual, a demand d is an unspecified requirement for bandwidth (flow) between a node-pair in the network, and ce is used to denote the capacity associated with link e. For each demand d, d = 1, 2, . . . , D, a list of allowable paths is predefined. Each path p for demand d, p = 1, 2, . . . , Pd defines a cycle-free set of links that connects vertex-pair d. The binary indicator, δedp , is used for the linkpath incidence relation. The flow allocated to demand d will be identified by xd , and zdp is used to denote its part that is allocated to path p, i.e., P p zdp = xd . The decision variables of the considered problem will be the flow variables zdp . As in Section 4.1, the problem is compactly described by lex max{Θ(x) : x ∈ X}.
(4.24)
However, in this section, the feasible set X is different – a solution x ≥ 0 is considered feasible, x ∈ X, if and only if XX δedp zdp ≤ ce , e = 1, 2, . . . , E, and (4.25) d
p
for all d, d = 1, 2, . . . , D, zdp′ = xd for some path p′ , and zdp = 0 for all other paths p, p = 1, 2, . . . , Pd , p 6= p′ .
(4.26)
So an allocation is feasible if and only if the sum of flows on a link does not exceed the link’s capacity, and no demand has flows on more than one path.
4.2.2
Computational complexity
To motivate resolution techniques that are computationally heavy, this section will have as main purpose to show that solving lex max{Θ(x) : x ∈ X}, with the feasible set X constituted by (4.25) and (4.26), is N P-hard. This is accomplished by proving that the decision problem corresponding to one of its subproblems (or the problem itself) is N P-complete. Specifiaclly, we will sometimes consider the subproblem of obtaining the largest possible minimal value among the entries of the allocation vector. It will be convenient to divide the problem into two cases: the case when a demand may use any one path to connect its node-pair – the unlimited path-sets case, and the case when a demand may select a path only from a limited, predefined set of paths – the limited path-sets case. A somewhat different version of the former decision problem was proven N P-complete in [18]. However, that study concerned a directed graph with a single-source multiple-sinks demand. Their proof is based on a nontrivial transformation from a scheduling problem. Here we only consider undirected graphs.
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS
79
Unlimited path-sets When a demand may use any (simple) path that connects its node-pair, there is clearly no reason to predefine its path-set, as it is directly implied by the network. This is the case for all demands if path-sets are unlimited. We will refer to the decision problem corresponding to the optimization problem of obtaining the maximal smallest demand (i.e., the smallest entry of the allocation vector) on single paths with unlimited path-sets as MAXIMIZING SMALLEST DEMAND- SINGLE PATH FLOW (MSD-SPF). If the set of feasible solutions, X, admits usage of any (single) path for each demand, such an optimization problem is equivalent to finding a maximal first entry of Θ(x), x ∈ X, i.e., certainly a subproblem of (4.24). Decision Problem 4.3 (MSD-SPF). INSTANCE: Graph G = (V, E), a link capacity ce for each e, e = 1, 2, . . . , E, a set of demands (node-pairs), and a number K > 0. QUESTION : Is there a set of simple paths, containing exactly one path for each demand d, such that for each demand d it is possible to assign a flow xd , with xd ≥ K, on the path corresponding to demand d, without violating any link capacity ce , e = 1, 2, . . . , E? As can be seen, MSD-SPF puts no restrictions on the number of admissible paths, since any one (cycle-free) set of links that connects demand d, i.e., constitutes a simple path between the associated node-pair, may be selected. Proposition 4.7. MSD-SPF is N P-complete. Proof. A nondeterministic algorithm needs only to guess one of the paths for each demand, assign flow xd = K to each demand and check if the links forming these paths have the required capacity. Thus clearly, MSD-SPF is in N P. If we restrict MSD-SPF to instances with K = 1 and ce = 1, for all links e, e = 1, 2, . . . , E, we immediately get a decision problem which is equivalent to the problem of LINK-DISJOINT PATHS. Decision Problem 4.4 (LINK-DISJOINT PATHS). INSTANCE: Graph G = (V, E) and a collection of node-pairs (s1 , t1 ), . . . , (sk , tk ). QUESTION : Does G contain k mutually link-disjoint paths, one connecting si and ti for each i, 1 ≤ i ≤ k? LINK-DISJOINT PATHS is known to be N P-complete [52], [26], and the polynomial time restriction shows that LINK-DISJOINT PATHS ∝ MSD-SPF, so MSD-SPF is also N P-complete.
As MSD-SPF is the decision version of a subproblem to the optimization problem of (4.24), where the feasible set X admits usage of any path for each demand, this result certifies that the latter problem is N P-hard.
80
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
Limited path-sets The complexity of a more specific version of the studied problem will now be investigated. For unlimited path-sets the assumption was that the selection of a single path could be made from all possible paths for a demand. In many cases such an assumption might be too generous and not practical. It may be more realistic to assume that each demand is given with a predefined, bounded (in terms of cardinality) path-set. Clearly, if the sizes of the predefined path-sets are very large, this will differ only academically from the unlimited path-sets case. However, in practice this is rarely the case. It will be shown that obtaining the maximal smallest demand (i.e., the smallest entry of the allcoation vector) on single paths with a cardinality of path-sets limited to as little as 3 is N P-hard. However, it is easier to prove N P-hardness of the full problem (4.24), with X admitting cardinality of path-sets being 2, so this is where we will start. Note that the subproblem of determining the maximal smallest demand is, from a practical viewpoint, an interesting problem in its own right, and we will return to this in a while. The decision problem corresponding to (4.24), with X limiting (in both directions) cardinality of path-sets to 2 is called MMF OF SINGLE PATH FLOWS 2 (MMF-SPF2), and is formalized as follows. Decision Problem 4.5 (MMF-SPF2). INSTANCE: Graph G = (V, E), a link capacity ce for each e, e = 1, 2, . . . , E, a set of demands (node-pairs), two simple paths for each demand, and a target vector, xT , of length D QUESTION : Is there a set of paths, containing exactly one of the two admissible paths for each demand d, d = 1, 2, . . . , D, such that for each demand d it is possible to assign a flow xd on the path corresponding to demand d, without violating any link capacity ce , and such that if x = [xd ]d=1,2,...,D , then Θ(x) Θ(xT ) ? Proof. MMF-SPF2 belongs to N P since a nondeterministic algorithm needs only to guess one of the two paths for each demand and apply Algorithm 3.1 (which is an algorithm of polynomial time) to obtain the allocation vector x, and check if Θ(x) Θ(xT ). We will transform PARTITION into a single-source multiple-sinks instance of MMF-SPF2, essentially using an idea from [16]. Decision Problem 4.6 (PARTITION). INSTANCE: Finite set A of items, and a size s(a) ∈ Z+ for each a ∈ A. QUESTION : Is there a subset A′ ⊂ A such that X X s(a) = s(a)? a∈A′
a∈A\A′
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS
81
Consider an arbitrary instance of PARTITION and construct a graph as follows: let two “core nodes”, κl and κP r , be connected by 2 “core links”, e and e′ , both of which have capacity 21 a∈A s(a). For each element a ∈ A, connect by a link of capacity s(a) a node ta , to the right core node, κr . Let xT = [s(a)]a∈A . Now consider each (κl , ta )-pair, a ∈ A, in the resulting graph as a demand (see Figure 4.5). Each (κl , ta )-pair has exactly two
t1 s(1) s(2)
e' κl
t2
κr e s(|A|) t|A|
Figure 4.5: The resulting graph. admissible paths – one traversing e and one traversing e′ . This construction, which is apparently done in polynomial time, is a valid instance of MMF-SPF2 (with |A| demands). Now assume that there is a positive answer to PARTITION . This implies existence of a subset A′ ⊂ A such that P P a∈A\A′ s(a). Assign to each (κl , ta )-pair a flow of xa = s(a). a∈A′ s(a) = ′ If a ∈ A let the demand use link e′ , and if a ∈ A\A′ , let it use linkP e together with its dedicated link connecting κr and ta . As ce = ce′ = 12 a∈A s(a), no link capacities are exceeded. We have thus an allocation x, for which xa = s(a) for all a ∈ A, and consequently that Θ(x) = Θ(xT ), implying a positive answer to MMF-SPF2. Conversely, suppose that there is a positive answer for the constructed instance of MMF-SPF2, i.e., that there exists a set of single paths for which an allocation vector x, with Θ(x) Θ(xT ), is obtainable. In particular, this means that there exist flows xaP , such that xa = s(a) for all aP∈ A. Thus the total flow between κl and κr is a∈A s(a). But ce = ce′ = 21 a∈A s(a) Punsplittable so1 there Pand flows are P must exist a ′ subset A ⊂ A, such that a∈A′ s(a) = a∈A\A′ s(a) = 2 a∈A s(a), which answers the PARTITION question positively. Therefore, since PARTITION is N P-complete [12], MMF-SPF2 must also be N P-complete. In the unlimited path-sets case it was possible to prove N P-hardnness even of the subproblem of obtaining the maximal smallest demand (i.e., the
82
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
smallest entry of the allcoation vector) on single paths. A natural question to ask is if this is possible also if path-sets are limited. This is in fact possible if cardinalities of path-sets are limited to 3. There is obvious practical importance in this subproblem – which is the largest amount of bandwidth possible to assign to all demands? As mentioned, we have already shown that if all possible paths are allowed, this problem is N P-hard. The question is if the difficulty remains if we are more restrictive regarding possible selection of paths. In order to show N P-hardness we define the associated decision problem, denoted MAXIMIZING SMALLEST DEMAND - SINGLE PATH FLOW 3 (MSD-SPF3) as follows: Decision Problem 4.7 (MSD-SPF3). INSTANCE: Graph G = (V, E), a link capacity ce for each e, e = 1, 2, . . . , E, a set of demands (node-pairs). For each demand d, d = 1, 2, . . . , D, three simple paths. A number K > 0. QUESTION : Is there a selection of exactly one of the three paths for each demand d, such that for each demand d it is possible to assign a flow xd , with xd ≥ K, on the path corresponding to demand d, without violating any link capacity ce ? The requirement of simple paths is important here. Since a communication network demand is for obvious reasons never assigned a path containing a cycle, this is a reasonable assumption. If on the other hand cyclic paths were allowed, it rather straightforward to see how an N P-completeness result can be obtained even for path-set cardinalities restricted to 2, e.g. by a transformation from INDEPENDENT SET [33]. To the best of our knowledge it is an open question if this result holds in the case of 2 simple paths per demand. Proposition 4.8. MSD-SPF3 is N P-complete. Proof. A nondeterministic algorithm needs only to guess one of the paths for each demand, assign flow xd = K to each demand and check if the links forming these paths have the required capacity, so clearly MSD-SPF3 is in N P. We will transform 3-SATISFIABILITY (3SAT) to MSD-SPF3. The problem of 3SAT is one of the most fundamental N P-complete problems [12]. The proof starts by the construction of a polynomial-time transformation. Then it is shown that the constructed instance of MSD-SPF3 will have a positive answer if and only if 3SAT has a positive answer. Consider an arbitrary instance of 3SAT. Such an instance consists of a collection C = {C1 , C2 , . . . , Cm } of clauses on a finite set U of boolean variables such that |Ci | = 3 for 1 ≤ i ≤ m. For each u ∈ U , let ku be the number of appearances of variable u in the clauses of C, and ku¯ be the number of appearances of its negation, u ¯. For each variable u ∈ U , construct
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS
83
two associated nodes, su and tu . Each such node-pair will be connected by three disjoint paths; they will be referred to as the left-path, the slack-path and the right-path. The left-path and the right-path are constructed from chains of links, whereas the slack-path will be one single link. The number of links of the right-path, αu , and the left-path, αu¯ , will depend on ku and ku¯ , respectively. Specifically, αu = 1 if ku = 0, and αu = ku otherwise. Similarly, αu¯ = 1 if ku¯ = 0, and αu¯ = ku¯ otherwise. The subgraph made up by node-pair (su , tu ) and its three connecting paths is said to constitute the truth-setting component for variable u. An example can be seen in Figure 4.6. Clearly, there will be exactly |U | truth-setting components. su right-path
left-path
slack-path tu
Figure 4.6: Truth-setting component for variable u ∈ U . It is assumed that ku = 2 and that ku¯ = 3. Now consider a clause Ci ∈ C. Construct and associate with the clause two nodes, vi and wi . These two nodes will be connected to exactly three of the truth-setting components, namely those whose associated variables, negated or non-negated, occur in clause Ci . For each literal l in Ci , connect them as follows: if l is a non-negated variable, say u, connect vi and wi by one link each to the right-path of the truth-setting component corresponding to variable u, such that the created path between vi and wi has exactly three links, and such that the end-nodes of the link of this path that is part of the truth-setting component are not both connected to another (one) pair, vj and wj , associated with some other clause, Cj ∈ C. If l is a negated variable, say u ¯, take the corresponding action on the left-path of the truthsetting component of u. Note that this will always be possible since there are at least ku links on the right-path, and ku¯ links on the left-path of the truth-setting component of variable u. An example of the connection associated with a clause is shown in Fig. 4.7. Making these connections for every Ci ∈ C, completes the construction of the supply graph G for the instance of MSD-SPF3. What remains is to specify demands and associated paths, and also the link capacities. We impose a demand for each node-pair
84
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS vi
sa
sb
sc
ta
tb
tc
wi
Figure 4.7: Subgraph corresponding to clause C = (¯ a, b, c) ∈ C, and truthsetting components for variables a, b, c ∈ U . (vi , wi ), with three possible 3-link paths, all of which traverse exactly one truth-setting component on that side (left or right) that is determined by the corresponding variables’ appearance (negated or not) in the associated clause Ci . These demands are referred to as the long demands. Further, assume that there is a demand between each of the pairs (su , tu ), u ∈ U , with the three obvious possible paths. These demands constitute what will be called the short demands. In total, this gives |C| + |U | demands. Finally, let every link corresponding to a slack-path have capacity K/2. Assign to all other links capacity K. This completes the transformation from 3SAT to MSD-SPF3, which is carried out in polynomial time. Suppose that we have a positive answer to 3SAT. This means that we have a function, T : U → {true, f alse}, that satisfies every clause Ci ∈ C. For each variable u ∈ U for which T (u) = true, assign the demand (su , tu ) the left-path of the truth-setting component for u. For each u ∈ U for which T (u) = f alse, assign the demand (su , tu ) the right-path. Since T is a satisfying truth-assignment, there will be at least one literal in each clause for which the corresponding short demand is assigned a path that is disjoint with the path of the long demand associated with the clause. Thus chosing an arbitrary such path for the long demand gives a single-path pattern with neither shared links, nor usage of slack paths. This implies that a flow
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS
85
xd = K may be allocated to each demand. Conversely, suppose that we have a positive answer to the constructed instance of MSD-SPF3, i.e., that there exists a single path routing for which xd ≥ K is possible for each demand d. Since ce ≤ K for all links e, it can immediately be deduced that no slack-paths are used. Consequently, every short demand path corresponds to a truth assignment of the corresponding variable u; if (su , tu ) is routed on the right-path, then T (u) := f alse, and if (su , tu ) is routed on the left-path, then T (u) := true. As xd ≥ K for all demands d, there must be at least one of the three paths for a long demand with the property that this path does not coincide with a path used for a short demand. In particular, this implies that this literal is set true by T . Thus all clauses are satisfiable. Hence 3SAT ∝ MSD-SPF3 and MSD-SPF3 must be N P-complete. In many cases it is easier to understand a problem transformation if a complete example is given. We believe that this is indeed the case for the proof of Proposition 4.8. A complete example of how an instance of 3SAT is transformed into an instance of MSD-SPF3 is given in the following example. Example 4.6. Consider the following instance of 3SAT; U = {a, b, c, d, e, f, g} and C = {c1 , c2 , c3 , c4 }, where c1 = {¯ a, b, c}, c2 = {¯ a, d, g}, c3 = {¯ a, f, g¯} and c4 = {c, e, f¯}. Table 4.2 is determined from the given clauses and provides sufficient information to construct the supply graph of the MSD-SPF3 instance. The supply graph of a b c d e f g
ku 0 1 2 1 1 1 1
αu 1 1 2 1 1 1 1
ku¯ 3 0 0 0 0 1 1
αu¯ 3 1 1 1 1 1 1
Table 4.2: The information needed to transform 3SAT to MSD-SPF3 . the MSD-SPF3 instance corresponding to the given instance of 3SAT, can be seen in Figure 4.8. In this figure, every link is assigned a distinct number, given immediately to the left of the link. Note that each (vi , wi )-nodepair constitutes a long demand and corresponds to clause ci , and that each (su , tu )-node-pair constitutes a short demand and corresponds to variable u. Note also that each demand (node-pair) has exactly three allowed paths (from which only one can be selected). The paths for each demand are
86
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS v2
v1
v3
v4 34
31 25
28
sa
1
29
26 27
32 33
30
35 36
sc
sb
sd
sf
se
sg
11 2
4
9 10
6 7 8
5
13 14 15
16 17 18
19 20 21
22 23 24
12 3
ta
37
tb
38
tc
41
39
43
40 w2
w1
44
42
tf
te
td
w3
45
tg
47 48 46 w4
Figure 4.8: Supply graph for the instance of MSD-SPF3, given by the 3SAT instance. listed in Table 4.3. A path is given as a set of integers, where each integer corresponds to a link according to Figure 4.8.
4.2.3
Resolution algorithms
When the feasible set X models the single-path constraint, it is not at all obvious how a resolution algorithm for lex max{Θ(x) : x ∈ X},
(4.27)
should be formulated. Because of the non-convexity it is not possible to exploit the notion of “blocked demands” as was done in Section 3.1.2 and in Section 3.2.4. Note that with the complicating single-path constraint, a demand may be blocking for a specific collection of single paths, but be possible to increase for another collection of single paths. We will restrict our attempts to formulate resolution techniques to the problems where path-sets are limited. The approach generally taken is greatly inspired by the resolution techniques for the convex counterpart of the studied problem. Focus will be put on representing subproblems of (4.27), as MIPs. Particularly, each MIP is designed to compute a specific entry, say entry j, of Θ(x). We
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS Corresponds to clause c1 clause c2 clause c3 clause c4 variable a variable b variable c variable d variable e variable f variable g
Demand (v1 , w1 ) (v2 , w2 ) (v3 , w3 ) (v4 , w4 ) (sa , ta ) (sb , tb ) (sc , tc ) (sd , td ) (se , te ) (sf , tf ) (sg , tg )
Path 1 {25, 1, 37} {28, 2, 40} {31, 3, 43} {34, 12, 46} {1, 2, 3} {6} {9} {13} {16} {19} {22}
Path 2 {26, 8, 38} {29, 15, 41} {32, 21, 44} {35, 18, 47} {4} {7} {10} {14} {17} {20} {23}
87
Path 3 {27, 11, 39} {30, 24, 42} {33, 22, 45} {36, 19, 48} {5} {8} {11, 12} {15} {18} {21} {23}
Table 4.3: The demands and their allowed paths. Paths are given as sets of integers, where each integer corresponds to a link in Figure 4.8.
will sometimes denote this entry by the j:th level, as Θ(x) is non-decreasing in the coordinates. It will become clear that the full problem can be solved (in some different ways) essentially by resolving a sequence of these MIPs.
The first level The first level, i.e, the first element of Θ(x) (i.e, θ1 ), can be obtained by solving max s.t.
θ1 X
(4.28) udp = 1
∀d
(4.29)
∀e
(4.30)
∀ p, d
(4.31)
p
XX d
δedp udp θ1 ≤ ce
p
θ1 ≥ 0, udp ∈ {0, 1}
Apparently, this formulation has a difficulty of being nonlinear, containing multiplication of two variables (constraint (4.30)). However, by defining a new variable, µ = θ11 , this problem can be avoided. Of course, it is then necessary to presume that θ1 > 0, which is reasonable (if θ1 = 0 there are demands that have no paths). Clearly, µ will be minimal when (and only when) θ1 is maximal. Further, if we restate the problem in variable µ, the nonlinearity is eliminated, making use of that neither θ1 nor µ are
88
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
demand-dependent; min
µ X
s.t.
(4.32) udp = 1
∀d
(4.33)
∀e
(4.34)
∀ p, d
(4.35)
p
XX d
δedp udp ≤ µce
p
µ ≥ 0, udp ∈ {0, 1}
The last formulation is a (linear) mixed 0-1 program. The advantages of the “inverted approach” taken in (4.32)-(4.35) have been exploited in [30], although for the splittable paths case (which is convex). Finding all levels – an application-specific approach Assuming knowledge of levels 1, 2, . . . , k − 1 (i.e., entries θ1 , θ2 , . . . , θk−1 ), it is possible to formulate a MIP that computes level k. Performed iteratively, with the first level obtained from (4.32)-(4.35), this provides a resolution technique for the considered problem. We will start by giving a MIP formulation to compute the second level, assuming that the first level , θ1∗ , is known. For this purpose a variable, y2 = θ2 − θ1∗ , describing adjacent level difference, is defined. max s.t.
y2 XX d
X
(4.36) σdp = (D − 1)y2
(4.37)
p
σdp ≤ y2
∀d
(4.38)
∀ p, d
(4.39)
p
σdp ≤ M wdp XX wdp = D − 1 d
(4.40)
p
wdp ≤ udp X udp = 1
∀ p, d
(4.41)
∀d
(4.42)
∀e
(4.43)
∀ p, d
(4.44)
p
XX d
δedp (udp θ1∗ + σdp ) ≤ ce
p
udp ∈ {0, 1}, wdp , σdp , y2 ≥ 0
where M is a sufficiently large number, e.g. M = maxe {ce }. Here, constraints (4.37) and (4.38) establish that D−1 demands reach θ2 . Constraints (4.39)-(4.42) assure that demands use only one path each, and constraint (4.43) is the usual link-load constraint. Note that it is possible that y2∗ = 0,
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS
89
the in which case θ2∗ = θ1∗ . Given an optimal solution y2∗ to (4.36)-(4.44), P ∗ + θ ∗ ), y second level is computed as θ2∗ = y2∗ + θ1∗ . Defining yk = θk − ( k−1 1 i=2 i this formulation can be extended to find an arbitrary level (provided that the lower levels are known), generalizing the MIP of (4.36)-(4.44); max s.t.
yk XX d
X
(4.45) σdp = (D − (k − 1))yk
(4.46)
p
σdp ≤ yk
∀d
(4.47)
(k)
∀ p, d
(4.48)
p
σdp ≤ M wdp X X (k) wdp = D − (k − 1)
p d (2) wdp ≤ udp (r) (r+1) ≤ wdp wdp X X (r) wdp = p d
X
(4.49) ∀ p, d
(4.50)
∀ p, d, r
(4.51)
∀r
(4.52)
∀d
(4.53)
∀e
(4.54)
∀ p, d, r
(4.55)
D − (r − 1)
udp = 1
p
XX d
δedp (udp θ1∗ +
p
k−1 X
(r)
wdp yr∗ + σdp ) ≤ ce
r=2
udp ∈ {0, 1},
(r) wdp , σdp , yk
≥0
Here, r = 2, 3, . . . , k − 1. It should be noted that the correctness of (4.45)(i) (4.55) relies entirely on that wdp is forced binary for all i = 2, . . . , k, although there is no such explicit constraint. Property 4.9. If θ1∗ and all yi∗ , i = 2, . . . , k − 1, are optimal, then for (i) any feasible solution to (4.45)-(4.55) it holds that wdp ∈ {0, 1}, for all i = 2, . . . , k. (r−1)
∈ {0, 1}, for all p = 1, 2, . . . , Pd , d = 1, 2, . . . , D, P P (r−1) (r−1) = ∈ {0, 1}, and since for some r, 3 ≤ r ≤ k. As wdp d p wdp
Proof. Suppose that wdp
(r−1)
D − r + 2, there exist exactly D − r + 2 non-zero variables wdp must be equal to 1. By (4.51),
(r−1) wdp
≥
(r) wdp ,
so
(r−1) wdp
, all of which (r)
= 0 implies wdp = 0. (r−1)
∗ to be optimal there must exist a (d, p), such that wdp Now for yr−1 (r) wdp
P
= 1 and
∗ = 0 (otherwise yr−1 could be increased). Combined with the constraint
(r) p wdp
= D − r + 1, this implies that there must exist D − r + 1 non-zero
90
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS (r)
(r)
variables wdp , that sum up to D − r + 1. Since 0 ≤ wdp ≤ 1, it follows (r)
that wdp ∈ {0, 1}. An identical argument can be used showing the same (2)
(2)
relation beween wdp and udp , implying that wdp ∈ {0, 1} as udp ∈ {0, 1} by definition. Thus by induction over r the general result follows. Summarizing the above findings, it is possible to formulate a procedure that solves lex max{Θ(x) : x ∈ X}, (4.56) as is done by the following algorithm. Algorithm 4.3. (for solving (4.24)-(4.26)) Step 0: Assign k := 1. Solve (4.32)-(4.35) for the first level, θ1∗ = µ1∗ and optimal udp . If D = 1 then stop. The MMF solution is x = θ1∗ u, and the used paths are given by optimal udp . Otherwise proceed to Step 1. Step 1: Assign k := k + 1. If k > D then stop. Then the MMF allocation P PD (r) ∗ ∗ ∗ is given by, for each demand d, xd = θ1 + p , + σ y w dp r=2 dp r and the optimal paths are given by optimal udp . The optimal levels P are given by θi (x) = θ1∗ + ij=2 yj∗ . Otherwise proceed to Step 2. (r)
Step 2: Solve (4.45)-(4.55) for optimal objective, yk∗ , optimal variables wdp , udp , and σdp . Go to Step 1. Finding all levels – a generic method The MIP model outlined in this section is application of the method of formulating a non-convex MMF problem by cumulated ordered values, described in Section 2.4.2. It is referred to as a generic method, since its original form constitutes a general way of expressing a wide range of nonconvex MMF problems. Let us repeat the derivation of this formulation, for ¯ the considered application. PkDefine the k:th cumulated ordered value, θk (x), ¯ 1 ≤ k ≤ D, as θk (x) = j=1 θj (x). Then, for a given outcome vector x, this entity can be computed as X θ¯k = max krk − bkd (4.57) d
s.t.
rk − xd ≤ bkd
∀d
(4.58)
bkd ≥ 0
∀d
(4.59)
which is linear even if x is a variable. Note that this is application of the expressability result described by (2.5)-(2.6) in Section 2.1.3. Using the possibility of rewriting (2.4) as (2.7)-(2.10) we may rewrite lex max{Θ(x) : x ∈ X}
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS
91
as lex max
¯ Θ(x)
(4.60)
θ¯k = krk −
s.t.
X
∀k
(4.61)
rk − xd ≤ bkd
∀ k, d
(4.62)
bkd ≥ 0
∀ k, d
(4.63)
bkd
d
x∈X
(4.64)
where k = 1, 2, . . . , D. For the purpose of solving problem (4.60)-(4.64), with X constituted by the single-path and the link-load constraints, we may apply Algorithm 2.3, expressed for the considered application by the following algorithm. Algorithm 4.4. (for solving (4.24)-(4.26)) Step 0: Assign k := 1. Solve (4.32)-(4.35) for the first level, θ1∗ = µ1∗ and optimal udp . If D = 1 then stop. The MMF solution is x = θ1∗ u, and the used paths are given by optimal udp . Otherwise proceed to Step 1. Step 1: Assign k := k + 1. If k > D then stop. P Then the MMF allocation is given by, for each demand d, x∗d = p zdp (optimal variables zdp ), and the optimal paths are given by optimal udp . Otherwise proceed to Step 2. Step 2: Let l = 1, 2, . . . , k, and let M be a sufficiently large number, e.g. M = maxe {ce }. Solve max s.t.
θ¯k
(4.65)
θ¯k ≤ krk −
X
bkd
(4.66)
d
θ¯l∗ ≤ lrl −
X
bld
∀ l : l 6= k
(4.67)
zdp ≤ bld
∀ l, d
(4.68)
∀ p, d
(4.69)
∀d
(4.70)
∀e
(4.71)
∀ p, l, d
(4.72)
d
rl −
X p
zdp ≤ udp M X udp = 1 p
XX d
δedp zdp ≤ ce
p
zdp ≥ 0, bld ≥ 0, udp ∈ {0, 1}
for optimal objective θ¯k∗ and optimal variables zdp and udp . Go to Step 1.
92
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
Finding all levels – assuming a finite outcome set In many cases, especially in the communication network context, it is very reasonable to assume that the flow volume allocated to demand d may take on only a limited set of discrete values. This was the explicit requirement in Section 4.1.5, where we on the other hand assumed predefined single paths. Recall that the assumption of discrete flow values is very reasonable if flows can only be assigned multiples of a predefined module. The restriction results in essentially the same problem, but with a finite outcome set. Introducing this restriction to the considered problem yields the following: lex max s.t.
Θ(x)
(4.73)
x∈X
(4.74)
xd ∈ v
∀d
(4.75)
where v = {0, v1 , v2 , . . . , vr }, 0 < v1 < v2 < . . . < vr , is a finite (ordered) set of possible flow values. From Property 2.15 we know that a solution to (4.73)-(4.75) is obtained through solving the following lexicographical minimization: lex min s.t.
P
d t1d ,
P
d t2d , . . . ,
vk − xd ≤ tkd tkd ≥ 0
P
d trd
(4.76) k = 1, 2, . . . , r, ∀ d
(4.77)
k = 1, 2, . . . , r, ∀ d
(4.78)
x∈X xd ∈ v .
(4.79) ∀d
(4.80)
Intuitively, it is not hard to see that (4.76)-(4.80) first assures that as many demands as possible are raised to the first non-zero level, v1 . Keeping this many demand volumes greater or equal than v1 , it is then assured that as many demands as possible are raised to v2 , and so on. Now since our primary interest is to enforce unsplittable flows, not necessarily requiring that flows belong to the predefined set of values, the idea is to try to solve (4.76)-(4.80), omitting the explicit value constraint (4.80). Such an approach may seem far-fetched but is motivated from positive experience with running times of this approach applied to related location problems [41]. Resolution of (4.76)-(4.79) is accomplished by the following algorithm. Algorithm 4.5. (for approximately solving (4.24)-(4.26)) Step 0: Assign k := 1. Let M be a sufficiently large number, e.g. M = v1 .
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS
93
Solve τ1 = min
X
t1d
(4.81)
d
s.t. v1 −
X
zdp ≤ t1d
∀d
(4.82)
∀ p, d
(4.83)
∀d
(4.84)
∀e
(4.85)
∀ d, p
(4.86)
p
zdp ≤ udp M udp = 1 XX
δedp xd ≤ ce
p
d
zdp ≥ 0, t1d ≥ 0, udp ∈ {0, 1}
and let τ1∗ be the optimal objective value, zdp and udp the optimal solution. If D = 1 then stop. The MMF solution is then given by optimal variables zdp , and the used paths are given by optimal udp . Otherwise proceed to Step 1. P Step 1: Assign k := k + 1. If vk−1 > maxd { p zdp : d = 1, 2, . . . , D} or k > r then stop, optimal zdp give the (approximate) MMF solution and optimal udp give the used paths. Otherwise proceed to Step 2. Step 2: Let l = 1, 2, 3, . . . , k − 1, and let M be a sufficiently large number, e.g. M = vk . Solve X τk = min tkd (4.87) d
s.t.
vl −
X
zdp ≤ tld
∀ l, d
(4.88)
∀l
(4.89)
∀d
(4.90)
∀ p, d
(4.91)
∀d
(4.92)
∀e
(4.93)
∀ l, p, d
(4.94)
p
X
tld ≤ τl∗
d
vk −
X
zdp ≤ tkd
p
zdp ≤ udp M X udp = 1 p
XX d
δedp zdp ≤ ce
p
zdp ≥ 0, tld ≥ 0, udp ∈ {0, 1}
and let τk∗ be the optimal objective value, zdp and udp the optimal solution. Go to Step 1. It should be noted that, since we are interested in the case where continuous flows are allowed, iteratively solving (4.87)-(4.94) will not give an
94
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
exact solution to the considered problem, but, as we shall see, in many cases a good approximation. Upper and lower bounds In a communication network, it is often a reasonable assumption that each demand d is given with acceptation limits, hd and Hd , where it is required that the allocation vector satisfies hd ≤ xd ≤ Hd , for all d, d = 1, 2, . . . , D. The upper limit, Hd , can be incorporated in a natural fashion in all of the presented MIP models. This is just a matter of substituting the socalled “big-M constraints”, zdp ≤ udp M , with zdp ≤ udp Hd for all paths p = 1, 2, . . . , Pd , for all demands d = 1, 2, . . . , D. The lower limit, hd , has to be added as explicit constraints, hd ≤ xd for all demands. Note that the acceptation limits have to be carefully a priori determined, since otherwise there is a large risk that they make the MIP model infeasible.
4.2.4
Numerical experiments
As has been shown, the studied problem suffers from heavy computational complexity. This is mainly due to the single-paths requirement and the fact that it embodies a multi-criteria optimization problem. Therefore, it is interesting to study and compare computation times for different instances and for different resolution techniques. Exact methods We will start by giving a flavour of the computation times associated with solving lex max{Θ(x) : x ∈ X}, where the feasible set X models the single-path and the link-load constraints, in an exact manner. Two of the presented approaches solve the problem to optimality – one is called application-specific (Algorithm 4.3), and the other will be referred to as generic (Algorithm 4.4). Both methods require solution of a sequence of MIPs. The frameworks of the algorithms are implemented in MATLAB6.5, and the MIPs are solved using a MATLAB interface to CPLEX 9 (mex-function), called CPLEXINT (downloadable freeware [5]). This means that the generic CPLEX 9 MIP-solver is used for resolving MIPs (4.32)-(4.35), (4.45)-(4.55), and (4.65)-(4.72). The computations were carried out on a PC with an Intel PIII-1GHz CPU, RAM of 256 MB, and Windows 2000 OS. Table 4.4 contains computation times for the two different methods, for a number of small instances. The instances are characterized by that there is a demand between every node-pair and that link capacities are uniformly distributed over {10, 20, 30, 40, 50}. For the first 9 instances
4.2. MAX-MIN FAIRNESS OF UNSPLITTABLE FLOWS
95
there are two paths per demand, and for the 5 last instances there are three paths per demand.
#nodes 3 4 5 6 7 8 9 10 11 4 5 6 7 8
#links 3 6 8 12 12 13 18 18 19 6 8 12 17 12
#paths/ demand 2 2 2 2 2 2 2 2 2 3 3 3 3 3
computation times (s) app-specific generic 0.1090 0.0940 0.0940 0.0470 0.8130 0.4710 1.1230 1.3730 10.098 4.7190 16.420 21.139 1.62·103 327.92 3 1.61·10 327.11 1.92·103 107.41 0.4220 0.1080 1.1560 0.7020 8.8550 13.077 26.738 28.999 236.49 46.704
Table 4.4: Comparison of the application-specific and generic methods for some small instances. The results of Table 4.4 suggest that the generic method is slightly faster than that of the application-specific method. We may sum up the usage of variables and constraints for the MIP corresponding to iteration k in the two different approaches, as is done in Table 4.5. Knowing that both algorithms performs D − 1 iterations (2 ≤ k ≤ D), the generic method has a clear advantage.
B R C
application-specific P P P d d k d Pd + 1 P 1 + 2|D| + k d Pd + E
generic P d dP P k|D| + 2 d Pd P k + (k + 1)D + d Pd + E
Table 4.5: Comparison of number of variables and constraints for step k in the application-specific and generic methods. B, R, and C indicate the number of binary variables, continuous variables, and constraints, respectively.
96
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
Assuming finite outcomes The approach based on the assumption that the possible outcomes are finite can be seen as an approximate method for solving the studied problem. From this viewpoint it is interesting too see, if replacing an exact method by Algorithm 4.5, how much computation time that can be saved, and to what cost, in terms of deviation from optimum, this may be done. We then have to predefine a set of values, v, which the method will use trying to assign its values to flows. The hardware and software constellations are identical to those of the numerical experiments of the exact methods. In Figure 4.9 the (sorted) allocation vector for a 10-node, 18-link, 2 paths/demand instance is shown (entry 8 of Table 4.4). Link capacities are uniformly distributed over {10, 20, 30, 40, 50}. The lines with crosses are the allocation vectors obtained by the exact generic algorithm (Algorithm 4.4), whereas the circled lines are the allocation vectors obtained by the approximate approach (Algorithm 4.5) with 4 different set of values, v. In Figure 4.9(a), modules (resolution) are of size 10, i.e., the elements of the predefined grid, v1 , v2 , . . . , vr , are all the numbers vi that can be written as vi = 10·z, z ∈ Z, 0 ≤ vi ≤ 50. The grid associated with Figures 4.9(b), 4.9(c), and 4.9(d) are defined analogously, but with module sizes of 5, 2, and 1, respectively. It should be noted that for the most dense grid considered (Figure 4.9(d)), the computation time is merely 14.54 seconds. The exact method solves the same instance in about 5 minutes. In Table 4.6, the approximate approach is applied to a number of different instances. Again, link capacities are distributed over {10, 20, 30, 40, 50}, and there is a demand between every node-pair in the network. The computation times are given for Algorithm 4.5 with module size 2 (dist-2), module size 5 (dist-5), and also for the best exact method – the generic method (Algorithm 4.4). Dashed entries correspond to runs that did not finish within half an hour. Comparison of the exact methods and the approximate approach, by the computation times given in Table 4.6, strongly suggests that the approximate approach should be used whenever its deviation from the optimum is acceptable. Certainly, such an error tolerance will depend on the details of the application. From our numerical results it is tempting to conjecture that for sorted allocation vectors, if we consider an arbitrary entry, the absolute difference between distribution approach and the exact solution can be at most the size of the module. It is however easy to come up with a counterexample Example 4.7. Consider the network given in Fig. 4.10. In this graph there are two demands; (A, A′ ) and (B, B ′ ). All link capacities are equal to 15, except for link e that has a link capacity of 5. The exact solution is Θ(x) = (7.5, 7, 5). Suppose that our predefined grid is {0, 5, 10, 15}. Then the approximate approach solution is Θ(x∆ ) = (5, 15). Thus θ2 (x∆ ) − θ2 (x) = 7.5 > v = 5.
4.3. CONCLUSIONS 30
optimal approximate approach
25
25
20
20 assigned flow
assigned flow
30
97
15
15
10
10
5
5
0
0
5
10
15
20
25
30
0
35
optimal approximate approach
0
5
10
15
demand
20
25
30
35
demand
(a) resolution=10, computation time=0.218s (b) resolution=5, computation time=0.766s 30
optimal approximate approach
25
25
20
20 assigned flow
assigned flow
30
15
15
10
10
5
5
0
0
5
10
15
20
25
30
35
demand
(c) resolution=2, computation time=5.84s
optimal approximate approach
0
0
5
10
15
20
25
30
35
demand
(d) resolution=1, computation time=14.54s
Figure 4.9: Comparison of different resolutions for the approximate approach. The exact solution was computed in 327 seconds.
4.3
Conclusions
In Chapter 4 we have considered (linear) max-min fairness allocation problems, with non-convex problem structure. The non-convexity of the studied problems results from discrete solution spaces, and complicates both formulation and resolution. In Chapter 3 we did not encounter this difficulty as all decision variables were allowed to take on rational numbers, and we could in fact exploit the convex problem structure to formulate solution algorithms. The first non-convex MMF problem studied was almost identical to the most basic one described in Chapter 3 – when each demand has exactly one fixed path and flows have to be max-min fairly distributed. The difference lies in that we now only allow flows to assume multiples of a predefined module. It was shown that, changing units, this requirement can be viewed as a requirement of flows being integral. We compared the solution of the integral-flow problem with the basic problem, and derived a number of relational properties. Moreover, an analogy to the max-saturating property was given. In order to motivate suspicion of non-existence of polynomial
98
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
A'
A
B
e
B'
Figure 4.10: A contradicting example. time algorithms we then proved that obtaining MMF of modular flows is N P-hard. Nevertheless, using the classical approach of waterfilling (Algorithm 3.1), some subproblems could be shown to be of polynomial time. For resolution of the considered problem, we proposed an algorithm that solves an application-specific linear relaxation of a lexicographical minimization problem ((2.72)-(2.76)). Strictly speaking, since being a relaxation, this consituted an approximation algorithm. However, it was shown to reach an optimal solution in practically all of the randomly generated problem instances, and this at acceptable running times, even for relatively large instances. We then took on the problem of obtaining a max-min fair distribution of flows if each demand may use no more than one path that has to be selected in the problem solution process. This problem is often refererred to as maxmin fairness of unsplittable flows. General unsplittable-flow problems are known to be difficult, so it was reasonable to expect provable difficulty also from this problem. We separated the problem into two cases – the case when each demand may use any path, and the case when each demand may use one path from a predefined list. With the objective of obtaining maxmin fairness, both cases were shown N P-hard. In fact we proved that just obtaining the first entry of the sorted allocation vector is N P-hard in itself, in both cases. With a deeper understanding of the complexity of the unsplitabble flow MMF problem, the focus was then put on resolution techniques. We presented two exact, MIP-based algorithms, where one was derived specifically for this application, and the other a generic MMF problem resolution technique. In addition we gave an approximation algorithm that was based on (a relaxation of) the assumption that the outcome set is discrete and finite. The numerical experiment, which was carried out on network instances ranging from 3 nodes and 3 demands to 20 nodes and 190 demands, showed that, in general, the generic algorithm is usually faster than the
4.3. CONCLUSIONS
99
application-specific one, if the problem should be solved to optimality. However, both approaches did indeed exhibit vast time-consumption when problem instances were scaled up. Finally, we applied the approximate method to our randomly generated problem instances. Even though being based on successive resolution of MIPs, this approach obtained suboptimal solutions of quite high quality at acceptable running times in cases where the exact methods did not solve the problem in less than half an hour.
100
CHAPTER 4. NON-CONVEX ALLOCATION PROBLEMS
#nodes 3 4 5 6 7 8 9 10 11 4 5 6 7 8 9 10 11 12 13 14 15 16 16 17 18 19 20
#links 3 6 8 12 12 13 18 18 19 6 10 12 17 17 16 22 23 24 26 24 25 33 34 36 40 38 36
#paths/ demand 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
computation times (s) generic method dist-2 dist-5 0.1090 0.0940 0.0780 0.0940 0.0470 0.0770 0.8130 0.4710 0.2810 1.3730 0.5920 0.1550 4.7190 0.7490 0.2640 21.139 1.6750 0.2970 327.92 6.0000 0.7510 327.11 6.0630 0.7170 107.41 7.5480 0.5150 0.1080 0.2950 0.1560 0.9840 0.9380 0.2810 13.077 4.8110 0.4380 28.999 4.9530 1.6090 76.045 10.518 1.2370 3 1.239·10 31.809 0.6860 – 58.518 5.3940 – 180.81 2.5340 – 50.954 1.5780 – 51.781 2.5780 – 16.640 1.2200 – 47.485 2.4700 – 59.623 5.6410 – 29.400 3.1260 – 99.595 12.333 – 358.72 5.5310 – 1.838·103 4.9680 – 108.31 8.0770
Table 4.6: Comparison of computation times of the approximate approach and the exact (generic) method, for various instances.
Chapter 5
Dimensioning problems
101
102
CHAPTER 5. DIMENSIONING PROBLEMS
This chapter deals with so-called dimensioning problems. It is significant for a dimensioning problem that, as opposed to an allocation problem, the link capacities are assumed to be design variables. The designation for network optimization problems for which link capacities are to be determined, is uncapacitated problems. In the spirit of the previous chapters, we will consider dimensioniong problems for which fairness among demands is a preliminary objective. The type of fairness that will be addressed is commonly known as proportional fairness, introduced in Section 2.1.2.
5.1
Proportionally fair dimensioning
The essence of Proportional Fairness (PF) is to assign flows to paths so that the sum of logarithms of the total flows is maximized. The use of the logarithmic function, instead of e.g., a linear function (which in particular could lead to throughput maximization), makes it impossible to assign zero flow to any demand and, on the other hand, makes it unprofitable to assign too much flow to any individual demand. A more formal investigation (as was carried out in Section 2.1.2) establishes that use of the logarithmic function has the important property of defining a fair rational preference relation on the strictly positive orthant, Rm ++ . A number of studies considering the capacitated flow allocation problems for PF have been carried out before [10, 14, 15]. In the capacitated problems, link capacities are given and the optimal flow allocation pattern is to be found. The capacitated problem with a fixed path for each demand is considered in [15]. In [10] and [14], a more general problem of simultaneously finding demands’ paths and a corresponding flow allocation pattern is investigated. It is shown in [43] how the capacitated problem can be approached by piece-wise linear approximation of the logarithm. Here, we concentrate on the PF dimensioning problem, assuming that we are given a set of demands (each with an associated list of paths) and the topology of the network. The problem is to assign flows to demands and capacity to links such that the resulting allocation vector is proportionally fair, and such that the aggregated flow traversing a link does not exceed the capacity. To bound the problem, we assume that we are given a marginal cost for each link e, ρe , and some budget, B. It should then hold for the link capacities, ye , (which now are decision variables) that
X e
ρe ye ≤ B.
(5.1)
5.1. PROPORTIONALLY FAIR DIMENSIONING
103
Assuming that each demand is given a fixed path, the basic PF dimensioning problem takes the following shape: X f (x) = max wd log xd (5.2) d
X
s.t.
ρe y e ≤ B
(5.3)
e
X
δed xd ≤ ye
∀e
(5.4)
d
x ≥ 0, y ≥ 0 .
(5.5)
Here, y = (y1 , y2 , . . . , yE ), and wd is the value of a unit of demand d (for pure PF, wd = 1 for all demands d). We know from Chapter 2 that usage of the logarithmic objective function induces a fair rational preference relation. From a more intuitive perspective the interpretation of the objective function (5.2) can be as follows. The client associated with demand d does not pay for xd (assigned bandwidth) but for the logarithm of xd . This implies that the revenue from a client can be negative if he is assigned too little bandwidth. With function (5.2) this happens if the flow assigned to a client is less than one. The idea underlying the above interpretation was introduced as early as in 1854 by Hermann Heinrich Gossen in his book ”The Development of the Laws of Exchange among Men and of the Consequent Rules of Human Action”. Gossen’s First Law states that the pleasure obtained from each additional amount consumed by the same commodity diminishes until satiety is reached [4]. Another side of this law could be a statement that the pleasure approaches minus infinity as the amount of consumed commodity tends to zero. Proposition 5.1. Let x∗ and y ∗ be the solution of (5.2)-(5.5). Then the following equalities hold: X X f (x∗ ) = log(B) wd − wd log(ξd ) + d
+
X
wd log(wd ) − log
d
x∗d ye∗
d
wd B P , and = ξd d wd X = δed x∗d ,
P
d wd
X
wd ,
(5.6)
d
(5.7) (5.8)
d
where ξd is the cost of the path realizing demand d, ξd =
P
e ρe δed .
Proof. The formulae follow from the explicit solution of the dual. To obtain the solution we note that for an optimal solution equalities must hold for
104
CHAPTER 5. DIMENSIONING PROBLEMS
(5.3) and (5.4), resulting in X
ρe
e
X
δed xd = B .
(5.9)
d
We dualize (5.9), and form the Lagrangian, X P P L(x; σ) = − wd log xd + σ , e ρe d δed xd − B
(5.10)
d
and rewrite it as L(x; σ) =
X
σ
d
P
e ρe δed
xd − wd log xd
− σB .
(5.11)
The dual function is given by W (σ) = min L(x; σ) , x≥0
(5.12)
which should be maximized with respect to the dual multiplier σ, in order to find a solution to the dual. Let σ ∗ be such an optimal multiplier, i.e., W (σ ∗ ) = max W (σ) ,
(5.13)
σ
where W (σ) = min x≥0
X
σξd xd − wd log xd
d
− σB .
(5.14)
The flows, xd (σ), minimizing the Lagrangian for a fixed σ are obtained from the stationary point of (5.14). The consecutive flows are obtained by differentiating the terms of the sum in (5.14), and putting the consecutive derivatives equal to zero, wd − σξd = 0 , xd (σ) resulting in xd (σ) =
wd . σξd
Inserting (5.16) into (5.14) we finally arrive at X wd − σB . W (σ) = wd − wd log σξ d
(5.15)
(5.16)
(5.17)
d
The maximum of the dual function is attained at the stationary point of (5.17) with respect to the multiplier σ, resulting in the equality X wd −B =0 . (5.18) σ d
5.1. PROPORTIONALLY FAIR DIMENSIONING
105
Hence, the optimal multiplier σ ∗ is given by σ∗ =
X wd d
B
,
(5.19)
which immediately implies (5.6) and (5.7). Of course, the maximum of the objective function (5.2) depends only on B (provided that the rest of the constraints are fixed); (5.6) implies that this maximum is of the form f (B) = a log(B) + b .
(5.20)
Furthermore, from formula (5.2) it is deduced that when paths are also subject to optimization, i.e., when each demand is not restricted to a single fixed path, then the optimal solution will assign each demand flow xd to its shortest path. This is because only the second term on the right hand side of (5.6) depends on path selection. The same term is minimized when the shortest paths are used.
5.1.1
Bounded flows
As was discussed in the balance of Section 4.2.3, it is often very reasonable to assume that a demand can be assigned a flow only within a predefined range, hd ≤ xd ≤ Hd , d = 1, 2, . . . , D . (5.21) To make P hold for such bounds that 0 ≤ hd < Hd , and further P sense, it must that d hd ξd < B < d Hd ξd . We will continue the investigation of the PF dimensioning problem by adding (5.21) to optimzation problem (5.2)-(5.5), resulting in f (x) = max
X
wd log xd
(5.22)
ρe y e ≤ B
(5.23)
d
s.t.
X e
X
δed xd ≤ ye
∀e
(5.24)
hd ≤ xd ≤ Hd
∀d
(5.25)
d
x ≥ 0, y ≥ 0 .
(5.26)
The solution of the optimization problem defined by (5.22)-(5.26) can, just as (5.2)-(5.5), be successfully determined with the aid of dualization. The additional constraints need not necessarily be dualized but can be taken into
106
CHAPTER 5. DIMENSIONING PROBLEMS
account explicitly in the minimization of the Lagrangian (5.14) for a fixed multiplier σ. This implies that formula (5.16) takes the form hd ,
wd σξd
wd σξd
, xd (σ) = H , d
< hd wd hd ≤ σξ ≤ Hd d wd Hd < σξd .
(5.27)
In this case the dual function can be maximized in an exact way, but explicit formulae like (5.6) and (5.7) are not available. To maximize the dual function we first calculate the threshold σ:s following from (5.27): σd1
=
σd2
=
wd , H d ξd wd . hd ξd
(5.28) (5.29)
Note that, for a given demand d, σd1 < σd2 because hd < Hd , and also that σd1 = 0 if Hd = +∞, and σd2 = +∞ if hd = 0. Now the relations (5.27) can be rewritten as: 0 ≤ σ ≤ σd1 Hd , wd , σd1 ≤ σ ≤ σd2 xd (σ) = (5.30) σξd hd , σ ≥ σd2 .
The next step is to sort all σd1 and σd2 , d = 1, 2, . . . , D, in non-decreasing order (in the sorted sequence some of the elements can be equal). Then, from each subsequence of equal elements all but one elements are deleted. This yields a shorter sequence (s1 , s2 , . . . , sn ), with the property s 1 < s2 < . . . < sn ,
(5.31)
where s1 may be equal 0 and sn to +∞. Now we form the following n − 1 intervals: [s1 , s2 ], [s2 , s3 ], . . . , [sn−1 , sn ] , (5.32) and for each of them ([sj , sj+1 ], j = 1, 2, . . . , n − 1) we introduce three sets of indices (demands); Lj
=
Fj
=
Uj
=
{ d : xd (σ) = hd for σ ∈ [sj , sj+1 ] } , wd for σ ∈ [sj , sj+1 ] } , and { d : xd (σ) = σξd { d : xd (σ) = Hd for σ ∈ [sj , sj+1 ] } .
(5.33)
Note that Lj ∪Fj ∪Uj = {1, 2, . . . , D} and Lj ∩Fj = Lj ∩Uj = Fj ∩Uj = ∅ for j = 1, 2, . . . , n − 1, i.e, the demands are partitioned into three disjoint sets.
5.1. PROPORTIONALLY FAIR DIMENSIONING
107
Note also that Fi 6= Fj for i 6= j, i, j = 2, 3, . . . , n − 2 (provided Fi , Fj 6= ∅). For each interval [sj , sj+1 ] the dual function takes the form n P σξd xd − wd log(xd ) − W (σ) = min d∈Fj x≥0 P P −σ B − d∈Lj ξd hd − d∈Uj ξd Hd − o P P − d∈Lj wd log(hd ) − d∈Uj wd log(Hd ) , (5.34)
or equivalently,
W (σ) =
X
wd ) wd − wd log( σξ d
d∈Fj
−
P P −σ B − d∈Lj ξd hd − d∈Uj ξd Hd − X X − wd log(hd ) − wd log(Hd ) . d∈Lj
(5.35)
d∈Uj
Example 5.1. Figure 5.1 illustrates the dual function for optimization problem (5.22)-(5.26) for a simple network with D = 3 demands and with cost coefficients ξ1 = ξ2 = ξ3 = 1, reward coefficients w1 = 1, w2 = 2, w3 = 10, and the budget B = 13. The bounds are as follows: h1 = 3, h2 = 2, h3 = 0, H1 = +∞, H2 = +∞, H3 = 5. The parameters imply that the intervals (5.32) are: [0, 31 ], [ 13 , 1], [1, 2] and [2, +∞). −20
W −21
−22
−23
−24
−25
−26
−27
−28 0
0.3333
1
2
2.5
σ
Figure 5.1: The dual function for a simple network. Of course, function (5.35), as the dual function of the convex problem (5.22)-(5.26), is concave and thus continuous [27]. Figure 5.1 suggests that
108
CHAPTER 5. DIMENSIONING PROBLEMS
it is also differentiable, which is actually the case. Note that according to (5.35), the first derivative of the dual function in interval [sj , sj+1 ] is equal to X X X wd dW (σ) = −B + . (5.36) ξd hd + ξd H d − dσ σ d∈Lj
d∈Uj
d∈Fj
Consider a point sj , (j ≥ 2). Because of (5.30), for all demands d that change category from Uj to Fj at this point, the equalities wd (5.37) Hd = s j ξd
hold, so the terms ξd Hd and wsjd cancel out in (5.36). The same holds for Fj and Lj and the lower bound hd at the point sj . Hence the left and right derivatives of the dual fuction are equal at each point sj , j = 2, 3, . . . , n − 1. Note that the dual function (5.35) is not twice differentiable. According to (5.36), in interval [sj , sj+1 ] its second derivative is equal to X wd d2 W (σ) = , 2 dσ σ2
(5.38)
d∈Fj
so in general it is discontinuous at the ends of the intervals (5.32) where sets Fj change. Note also that in the case when the set Fj is empty the dual function W (σ) is linear in [sj , sj+1 ] implying that dWdσ(σ) is constant 2
W (σ) = 0, for σ ∈ [sj , sj+1 ] (cf. (5.36) and (5.38)). and d dσ 2 The dual function is concave and differentiable, so its maximum is attained at a stationary point σ ∗ resulting from the equation
dW (σ) = 0 , σ ∈ [0, +∞) . (5.39) dσ Of course, the stationary point σ ∗ can belong only to one of the intervals (5.32). Let j be the index of interval [sj , sj+1 ] such that σ ∗ ∈ [sj , sj+1 ]. This interval has the unique property that the stationary point(s) resulting from (5.39) belongs to [sj , sj+1 ]. The considered stationary point is given by P d∈Fj wd ∗ P P , and σ |Fj 6=∅ = B − d∈Lj ξd hd − d∈Uj ξd Hd ( P P any σ ∈ [0, +∞) , B = d∈Lj ξd hd + d∈Uj ξd Hd ∗ P P . (5.40) σ |Fj =∅ = does not exist , B 6= d∈Lj ξd hd + d∈Uj ξd Hd
Note that the unique interval j with the property σ ∗ ∈ [sj , sj+1 ] can be identified by the properties dW (σ) dW (σ) ≥ 0 and ≤0, (5.41) dσ dσ σ=sj
σ=sj+1
and that it can happen that in this interval the dual function is constant. The optimal multiplier defines the optimal demand flows via formula (5.30).
5.1. PROPORTIONALLY FAIR DIMENSIONING
109
Example 5.2. Again consider the instance given by Example 5.1. It can easily be verified that for the consecutive intervals [0, 31 ], [ 31 , 1], [1, 2], [2, +∞), the respective stationary points given by (5.40) are: 83 , 25 , no stationary point, and 54 . Thus, as can be expected considering Figure 5.1, only the second interval has the property that the stationary point of the dual belongs to it: 25 ∈ [ 31 , 1]. The corresponding optimal flows are x1 = 3, x2 = 5 and x3 = 5. Note that the dual function is linear in interval [1, 2] and therefore it has no stationary point there.
5.1.2
An objective function extension
A practical variation of the logarithmic objective function could be to extend it by a term that pennalizes the cost induced by installation of link capacities. The influence of such an additional term can then be adjusted by the reward coefficients wd . Unbounded flows Introducing the pennalizing term for the case when flows are unbounded results in the following optimization problem, X X f (x) = max wd log xd − ρe ye (5.42) e
d
s.t.
X
ρe y e ≤ B 0
(5.43)
e
X
δed xd ≤ ye
∀e
(5.44)
d
x ≥ 0, y ≥ 0 .
(5.45)
Due to (5.6) and (5.20), the maximal value of objective function (5.42) is attained at the maximum, with respect to variable B, of the one-variable function (constant b in (5.20) is skipped) X g(B) = log(B) wd − B , (5.46) d
P overP0 ≤ B ≤ B0 . The optimum of (5.46) is attained either at B = d wd P (if d wd ≤ B0 ) or at B0 P (if d wd > B0 ). Clearly, the optimal B is the optimal total cost of links e ρe ye . Furthermore from (5.6) it follows that P if d wd ≤ B0 the optimal value of (5.43) is equal to X X w wd , (5.47) f∗ = wd log ξdd − d
d
and the optimal flows are given by wd x∗d = , d = 1, 2, . . . , D . ξd
(5.48)
110
CHAPTER 5. DIMENSIONING PROBLEMS
Note that an equivalent formulation of optimization problem (5.43)-(5.45) is X f (x) = max (5.49) wd log xd − ξd xd d
s.t.
X
ξd xd ≤ B0
(5.50)
d
x≥0.
(5.51)
The objective function (5.49) is strictly convex and the unique solution, not taking the budget constraint (5.50) into account, is obviously given by (5.48). A problem arises, however,Pwhen the budget constraint is not satisfied at such a solution, i.e. when d ξd x∗d > B0 . If this is the case then, in order to find the optimal solution for (5.49)-(5.51), we have to solve (5.2)-(5.5) for the fixed budget B0 . Bounded flows In the case of the bounded flows, constraints (5.21) are added to (5.49)(5.51). The unique solution of the resulting optimization problem, again not taking the budget constraint (5.50) into account, is given by wd hd , ξd < hd wd 0 hd ≤ wξdd ≤ Hd d = 1, 2, . . . , D . (5.52) xd = ξd , wd H , ≥ H d d ξd
Again, a problem arises when the budget constraint is not satisfied at this solution. Then the optimal solution is found by solving (5.22)-(5.26) for P the fixed budget B . Of course, we will have to assume that h ξ < 0 d d d P B < H ξ , in order to make this optimization problem feasible and d d d non-trivial.
5.1.3
Numerical examples
To show the character of the introduced solutions we will proceed by giving some larger numerical examples. We start, however, with an example showing the difference between the concepts of Proportional Fairness and Max-Min Fairness, in terms of throughput for a solution to a network dimensioning problem. Comparison of PF and MMF in dimensioning Consider optimization problem (5.2)-(5.5) for the special case when wd = 1 for all demands d, d = 1, 2, . . . , D, and ρe = 1 for all links e, e = 1, 2, . . . , E,
5.1. PROPORTIONALLY FAIR DIMENSIONING
111
and suppose that B = D. Application of formula (5.7) yields the proportionally fair flows, 1 x∗d = , d = 1, 2, . . . , D , (5.53) nd where nd is the length of the shortest path of demand d. The form of (5.53) justifies the name ”proportionally fair”, in the sense that the more links that are needed for a demand to connect its node-pair, the less flow is allocated to that demand. Now consider the max-min fairness counterpart of optimzation problem (5.2)-(5.5), for the same special case. Trivially, the solution to the corresponding MMF dimensioning problem will be to assign an equal, maximal flow to all demands, resulting in D , d = 1, 2, . . . , D . x∗d = P d nd
(5.54)
Summing up we get that the throughput associated with the PF solution is X 1 , nd d
whereas the throughput of the MMF solution is D2 P . d nd
Using a well known inequality, P 1 d nd
P
d nd
≥ D2 ,
it is established that, with the given presumptions, the PF solution dominates the MMF solution counterpart in terms of throughput. Note that equality will hold if and only if the shortest paths for all the demands are of equal length. A backbone network Consider the 12-node (polish) backbone network depicted in Figure 5.2. There are E = 18 links and D = 66 demands. Consider the special case with all wd :s and ce :s equal to 1. For these coefficients, the objective function (5.42) is shown in Figure 5.3, revealing that the maximum is attained at B = 66. Optimal flows are equal to reciprocals of the lengths of the shortest paths measured as the number of links in a path. The dual function (5.17) for the optimal budget B = 66 is depicted in Figure 5.4. The optimal dual multiplier is σ = 1. Note that f (66) = −W (1) − D. In the next example, described in Tables 5.1 and 5.2, we consider the backbone network with links’ unit costs proportional to their length (column 4 in Tables 5.1 and 5.2) resulting in the shortest paths of the length
112
CHAPTER 5. DIMENSIONING PROBLEMS 2
3
6
10
1
3
1
2
4
16
5
18
11
8
13
14
7
17
6
15 11
12
8 9
4
12 7
10
5
9
Figure 5.2: A backbone network. given in column 7. Three experiments have been carried out for this case. The first experiment corresponds to optimization problem (5.42)-(5.45) — the unbounded case with the extended objective function and the budget constraint (5.43) skipped. The optimal flows are given in column 3 (the optimal budget is B = 66). In the next two experiments bounds (5.21) have been added to (5.42)(5.45). The boundsP have been generated randomly and are given in columns 5 and 6 (in effect, d hd ξd = 245.64). In the second experiment we have assumed B0 = 250. In this case the solution of (5.22)-(5.26) applies (for B = 250). The optimal multiplier for budget B = 250 is σ = 2.12 (cf. Figure 5.5) and the maximum of the primal function (5.2) is f (x) = −30.65 (the optimal flows are given in column 8). Note that assuming xd = hd for d = 1, 2, . . . , 66, we would get f (x) = −47.09. Finally, in the third experiment we have assumed the budget constraint large enough (B0 = 300) and in the resulting solution of (5.42)-(5.45) exP tended by (5.21) (column 9) the optimal budget d ξd xd equals 259.49, and the optimal primal solution is f (x) = −17.27. Studying the numerical results of Tables 5.1 and 5.2, some useful obsevations can be made: • It can be verified that flows with small lower bounds are likely to exceed their lower bounds so that xd > hd . This is natural, looking at the objective function. • In experiments 2 and 3, the number of flows xd different from hd and Hd in the optimal solution is approximately 30%. This relatively small percentage should be compared to the objective function gain, using optimal flows instead of the lower bounds. • An obvious way to proceed if the solution of (5.42)-(5.45) with the
5.2. RESILIENT PF DIMENSIONING
113
−109.5
F −110
−110.5
−111
−111.5
−112
−112.5 50
55
60
65
70
75
80
B
Figure 5.3: The primal function of (5.42)-(5.45). added bounds constraint (5.21) is addressed, P is to firstPassign all flows according to (5.52) and P then compute d ξd xd and d ξd hd . If the resulting budget Bopt = d ξd xd is acceptable, thenPthe corresponding solution can be applied. Otherwise some B0 > d ξd hd should be chosen and (5.22)-(5.26) applied. It can then be checked what is the actual loss with respect to the objective function choosing this B0 instead of Bopt .
5.2
Resilient PF dimensioning
In the dimensioning process it is quite common to require, apart from the realization of the demands, robustness (resilience) to network failures. A network failure can occur if capacity of a link is lost (through e.g., a duct cut), either partially or completely. Another possible failure is that of a node, which however through special topology modifications can be considered as a link failure. It is a reasonable and common methodology to dimension the network such that i) the prescribed allocation requirements are met, and ii) such that the function of the network is maintained (possibly slightly deteriorated) under failure conditions. In this section we investigate a network dimensioning problem that intends to allocate the demands in a proportionally fair way, and at the same time forces resilience to certain predefined, potential link failures. In fact, the combination of fair bandwidth allocation and resilience is to the best of our knowledge novel in the context of dimensioning problems.
114
CHAPTER 5. DIMENSIONING PROBLEMS 50
W
40
30
20
10
0
−10
−20
−30
−40
−50
0
0.5
1
1.5
2
2.5
3
σ
Figure 5.4: The dual function of (5.2)-(5.5) for the optimal budget B = 66. The introduced problem formulation and its solution algorithms are based on the concepts presented in Section 2.4 and combine the ideas of the PF and the max-min fairness principles. To be strict, the considered problem is a non-linear max-min fairness problem, i.e., a max-min fairness problem for which the criteria are non-linear. To practically visualize the methodology, one can think of a scenario where for each failure situation, users and network operator agree to assign bandwidth to demands according to the PF principle, i.e., through maximizing the logarithmic revenue. This enables acceptable fairness as well as reasonable total network throughput. Since besides this, the interest is to keep the bandwidth distribution fair also over the failure situations, the total logarithmic revenue for individual situations is allocated in the max-min fair way. In this manner, none of the situations are favored. Technically put, the demand bandwidth allocation generated by the resulting algorithm is proportionally fair over the demand flows for the individual situations, and max-min fair for the logarithmic revenues over all situations. The algorithm is based on linear programming (using linear approximation of the logarithmic objective function implied by PF) applied in an iterative way.
5.2.1
Problem formulation
To formulate the problem we will need some notation that has not been previously used. Assume that a network is given in terms of topology. Also, consider as given the set of demands, d = 1, 2, . . . , D, (node-pairs). For each demand, d, there is an associated set of paths, p = 1, 2, . . . , Pd . As
5.2. RESILIENT PF DIMENSIONING
115
40
W 20
0
−20
−40
−60
−80
−100
−120
0
2
4
6
8
10
12
14
σ
Figure 5.5: The dual function for the optimal budget in (5.22)-(5.26).
usual, let δedp denote the edge-path incidence relation. Further, a set of possible failure situations, indexed by s = 1, 2, . . . , S, is given. Predefined are also the reward coefficients, wds , intended to be dependent on both demand and situation, and a set of availability coefficients, αes , indicating the availability of link e in situation s, 0 ≤ αes ≤ 1. As in Section 5.1, we assume that each link isP given with an associated marginal cost, ρe , and that it is required that e ρe ye ≤ B, for some given budget B. We wish to determine zdps , i.e., the flow allocated to path p of demand d in situation s, as well as the link P capacities, ye . These will thus be the problem decision variables. Let xds = p zdps , and define the allocation array x as x = [xds : d = 1, 2, . . . , D, s = 1, 2, . . . , S]. P The revenue in situation s for allocation array x is given by Rs (x) = d wds log(xds ), and the revenue vector, R, by R = (R1 (x), R1 (x), . . . , RS (x)).
The proportional fairness resilient dimensioning problem is defined as the following optimization problem:
116
CHAPTER 5. DIMENSIONING PROBLEMS 1 node
2 node
1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4
2 3 4 5 6 7 8 9 10 11 12 3 4 5 6 7 8 9 10 11 12 4 5 6 7 8 9 10 11 12 5
3 x, no bounds 0.24 0.29 0.22 0.24 0.59 0.32 0.18 0.32 0.54 0.50 0.19 1.00 0.20 0.22 0.25 0.28 0.69 0.19 0.33 0.43 0.36 0.17 0.18 0.20 0.22 0.41 0.16 0.35 0.30 0.26 1.00
4 ρ, direct link ∞ 3.40 ∞ ∞ 1.70 ∞ ∞ ∞ ∞ 1.85 ∞ 1.00 ∞ ∞ ∞ ∞ 1.45 ∞ ∞ 2.30 ∞ ∞ ∞ ∞ ∞ ∞ ∞ 2.90 ∞ ∞ 1.00
5 h
6 H
7 ξ
0.56 1.43 0.05 1.03 0.96 0.75 1.43 0.75 1.62 0.40 1.97 0.77 1.86 1.15 0.98 1.47 0.30 0.67 0.72 1.13 0.05 2.14 0.97 0.05 1.74 0.16 2.23 0.69 0.70 0.94 0.05
10.0 2.06 0.58 100 1.83 100 100 100 100 100 3.33 2.23 3.75 100 100 2.79 100 10.0 100 2.79 0.32 3.23 10.0 0.89 2.65 10.0 3.65 100 10.0 100 0.05
4.15 3.40 4.70 4.15 1.70 3.10 5.60 3.10 6.30 1.85 5.40 1.00 5.00 4.60 3.95 3.55 1.45 5.35 3.00 2.30 2.80 6.00 5.60 4.95 4.55 2.45 6.35 2.90 3.30 3.80 1.00
8 x, B0 = 250 h h 0.10 h h h h h h h h h h h h h 0.33 h h h 0.17 h h 0.10 h 0.19 h h h h H
9 x, B0 = 300 h h 0.21 h h h h h h 0.54 h h h h h h 0.69 h h h H h h 0.20 h 0.41 h h h h H
Table 5.1: Numerical results.
lex max
Θ(R(x)) X s.t. xds = zdps
(5.55) ∀ d, s
(5.56)
p
X
ρe ye ≤ B
(5.57)
e
XX d
δedp ≤ αes ye
zdps ≥ 0, y ≥ 0
5.2.2
∀ e, s
(5.58)
∀ d, p, s
(5.59)
p
Resolution methods
The resilient dimensioning problem formulated by (5.55)-(5.59) is non-trivial as it involves lexicographical maximization of a sorted vector of non-linear functions. Nevertheless, the formal defintion (Definition 2.19) of max-min
5.2. RESILIENT PF DIMENSIONING 1 node
2 node
4 4 4 4 4 4 4 5 5 5 5 5 5 5 6 6 6 6 6 6 7 7 7 7 7 8 8 8 8 9 9 9 10 10 11
6 7 8 9 10 11 12 6 7 8 9 10 11 12 7 8 9 10 11 12 8 9 10 11 12 9 10 11 12 10 11 12 11 12 12
3 x, no bounds 0.26 0.63 0.28 0.40 0.20 0.35 0.45 0.34 0.38 0.22 0.67 0.16 0.43 0.31 0.34 0.19 0.71 0.14 0.61 0.19 0.27 0.24 0.19 0.80 0.43 0.17 0.65 0.27 0.74 0.13 0.33 0.21 0.19 0.34 0.28
4 ρ, direct link ∞ 1.60 ∞ ∞ ∞ ∞ 2.20 ∞ ∞ ∞ 1.50 ∞ 2.30 ∞ ∞ ∞ 1.40 ∞ 1.65 ∞ ∞ ∞ ∞ 1.25 2.30 ∞ 1.55 ∞ 1.35 ∞ ∞ ∞ ∞ ∞ ∞
117
5 h
6 H
7 ξ
0.96 0.05 0.44 0.05 1.89 1.28 0.05 1.29 1.21 1.14 0.31 1.56 0.05 0.06 0.05 1.97 0.05 1.80 0.35 1.32 1.50 1.62 0.05 0.84 0.38 1.55 0.92 1.52 0.05 0.05 1.33 0.05 0.84 0.25 0.87
100 0.95 10.0 0.63 2.02 2.06 0.44 2.61 2.29 100 100 100 0.57 10.0 0.21 2.57 0.53 100 100 100 2.65 2.28 1.04 0.84 10.0 100 2.28 1.59 1.02 0.40 2.55 0.60 10.0 10.0 100
3.90 1.60 3.55 2.50 5.10 2.85 2.20 2.90 2.60 4.55 1.50 6.10 2.30 3.20 2.90 5.40 1.40 6.95 1.65 5.20 3.65 4.10 5.20 1.25 2.30 6.05 1.55 3.75 1.35 7.60 3.05 4.70 5.30 2.90 3.55
8 x, B0 = 250 h 0.30 h 0.19 h h 0.21 h h h 0.31 h 0.21 0.15 0.16 h 0.34 h h h h h 0.09 h h h h h 0.35 0.06 h 0.10 h h h
9 x, B0 = 300 h 0.63 h 0.40 h h H h h h 0.67 h 0.43 0.31 H h H h 0.61 h h h 0.19 h 0.43 h h h 0.74 0.13 h 0.21 h 0.34 h
Table 5.2: Numerical results, continued. fairness applies. Moreover is it possible to make use of the convex structure of the problem. Note that functions Rs (x), s = 1, 2, . . . , S are concave, and that the feasible set is convex. We may thus use an application-specific variant of either Algorithm 2.1 or Algorithm 2.2. We will omit the exact adaptation of Algorithm 2.1 and concentrate on an application-specific version of the more efficient Algorithm 2.2, which bases its function on the use of dual multipliers.
118
CHAPTER 5. DIMENSIONING PROBLEMS
Algorithm 5.1. (for solving (5.55)-(5.59)) Step 0: Assign N := {1, 2, . . . , S}. Solve max s.t.
t
(5.60) X
xds =
zdps
∀ d, s
(5.61)
p
X
ρe ye ≤ B
(5.62)
e
XX
δedp ≤ αes ye
∀ e, s
(5.63)
∀s
(5.64)
∀ d, p, s
(5.65)
p
d
X
Rs (x) =
wds log(xds ) ≥ t
d
zdps ≥ 0, y ≥ 0
and let t∗ , y ∗ and x∗ be the optimal solution, and Λ∗ = [λ∗s ]s=1,2,...,S be the optimal dual multipliers corresponding to constraints (5.64). Step 1: For all s ∈ N : λ∗s > 0 assign N := N \ {s} and ts := t∗ . If N = ∅ then stop, the components of x∗ gives the max-min fair solution, and y ∗ holds the corresponding link cpacities. Otherwise proceed to Step 2. Step 2: Solve max
t
(5.66)
s.t. xds =
X
zdps
∀ d, s
(5.67)
p
X
ρe ye ≤ B
(5.68)
e
XX d
δedp ≤ αes ye
∀ e, s
(5.69)
wds log(xds ) ≥ ts
∀s∈ /N
(5.70)
wds log(xds ) ≥ t
∀s∈N
(5.71)
∀ d, p, s
(5.72)
p
Rs (x) =
X d
Rs (x) =
X d
zdps ≥ 0, y ≥ 0
and let t∗ , y ∗ and x∗ be the optimal solution, and Λ∗ = [λ∗s ]s∈N be the optimal dual multipliers corresponding to constraints (5.71). Go to Step 1. Notably, although it would be rather difficult to find optimal multipliers for the optimization problems necessary to solve in Algorithm 5.1, a
5.2. RESILIENT PF DIMENSIONING
119
linear approximation makes this practicable, since many linear programming solvers provide the optimal dual variables along with primal optimal solution. As mentioned before in the context of applying Algorithm 2.2, investigating dual multipliers is really a method of detecting the situations for which the corresponding revenue (Rs ) is blocking (not possible to increase further), and not the ones that are non-blocking (possible to increase further), which would be even better. However, as is also explained in Section 2.4, assuming that all the situations for which the corresponding revenue is not shown to be blocking by the dual multiplier test are indeed non-blocking, will work even though not to improve t∗ in two consecutive iterations. Pwe risk This is because that s λ∗s = 1, resulting in that each iteration will reveal at least one blocking situtation, so we will eventually reach an iteration where every situation s for which λ∗s = 0 is non-blocking.
5.2.3
Linear approximation
In the implementations of Algorithm 5.1 a piece-wise approximation of the logarithmic function is used, resulting in LP approximations of all the considered convex optimization problems. This is done by introducing additional variables, rds , corresponding to total flows, xds , which along with additional sets of constraints, rds ≤ fk xds + gk ∀ d, s, k,
(5.73)
replaces the logarithm of the flow, log(xds ). Here, k = 1, 2, . . . , K, and K is the number of linear pieces of the approximation, and fk and gk are the coefficients of the consecutive linear pieces. Figure 5.6 illustrates an example of the approximation (actually the approximation that is used in the numerical examples in Section 5.2.5). Using this approximation the convex optimization problem of Step 0 assumes the following LP form: max
t
(5.74)
s.t. xds =
X
zdps
∀ d, s
(5.75)
p
X
ρe y e ≤ B
(5.76)
e
XX
∀ e, s
(5.77)
∀s
(5.78)
rds ≤ fk xds + gk
∀ d, s, k
(5.79)
zdps ≥ 0, y ≥ 0
∀ d, p, s
(5.80)
d
δedp ≤ αes ye
p
Rs (x) =
X
wds rds ≥ t
d
120
CHAPTER 5. DIMENSIONING PROBLEMS 5
log(X)
3
F2
F1
4
F3
F4
F5
2
1
Fk 1 2 3 4 5
0
−1
−2
fk 3.9805 0.7774 0.2380 0.0731 0.0180
gk -2.7170 -0.7910 0.3761 1.5649 2.9318
−3
−4
−5 −10
0
10
20
30
40
50
60
70
80
90
100
X
Figure 5.6: Piece-wise approximation of the logarithmic function
5.2.4
Extensions of the basic problem
The proportional fairness robust dimensioning problem (5.55)-(5.59) can be extended in several ways. Such variations of the problem can be achieved by introducing additional constraints characterizing the solution set. First, we may assume that the capacities of links, ye , are limited (e.g., because of the shortage of transmission capacity), adding constraints ye ≤ ce
∀e,
(5.81)
where ce are fixed upper bounds on link capacities. Secondly, we can introduce lower and upper bounds on the total demand flows realized in failure situations; hds ≤ xds ≤ Hds ∀ d, s , (5.82) where hds and Hds are the given bounds on total flows. Finally, we can impose constraints on the flow reconfiguration in the case of failure. So far we have assumed that individual flows, zdps , are only situation-dependent and can be freely reconfigured using surviving resources. This allows us to not explicitly distinguish the the normal state, i.e., the state with all αes equal to 1), in the formulation of the problem. If we wish to prohibit flows that are not affected by a failure (i.e., the flows that survive a given failure situation s) to be disconnected and rerouted we proceed as follows. We label the ”true” failure situations with s = 1, 2, ..., S, and use the index s = 0 for the normal state. Then we assume that if a link fails then it fails totally
5.2. RESILIENT PF DIMENSIONING
121
(i.e., αes ∈ {0, 1}), and introduce the binary path availability coefficients: θdps =
Y
αes
∀ d, p, s .
{e:δedp =1}
Now, the considered requirement for flow reallocation can be taken into account by introducing new constraints: zdps ≥ θdps zdp0
∀ d, p, s
It should be noted that all the above described modifications allow for the application of the introduced algorithm without any special adjustments.
5.2.5
Numerical results
The introduced algorithm has been implemented in three variants, all on the same hardware, a Dell Precision 220 PC, with an Intel Pentium III-1GHz CPU, RAM of 256 MB, a Quantum Atlas10K2-TY092L SCSI HDD and the Windows 2000 Pro SP2 OS. The different software implementations are given in Table 5.3. A number of experiments were carried out to test the alReference code C++ AMPL
Programming environment Microsoft Visual C++ 6.0; Callable CPLEX libraries AMPL ver. 20010215
Matlab
MATLAB 6.1
Solver CPLEX 7.5.0 CPLEX 7.5.0 MATLAB Optimization toolbox
Table 5.3: Software implementations of the algorithms. gorithm for different network examples. In fact, in order to have a reference, a problem-specific version of Algorithm 2.1 has been implemeted in paralell. The following subsections contain selected input data and the results of the algorithms for three different-sized networks. The network instances used are presented in Table 5.4. Obviously, the networks of particular interest are the ”Polish backbone network”, N12 , and the artificial network (randomly generated), N41 , shown in figures 5.7(a) and 5.7(b), respectively. To show the dynamics of the considered algorithms we also study a small, triangular (toy) network, N3 , for which we will give complete numerical results. A summary of selected numerical values obtained by the algorithms applied to N12 will also be given. For N41 only execution time is reported. For the problem instances associated with N3 and N12 the budget B is equal to 1000, while for N41 it is 1E6.
122
CHAPTER 5. DIMENSIONING PROBLEMS ref. code
# nodes
# links
# demands
N3 N12 N41
3 12 41
3 18 72
3 66 100
# paths per demand 2 6-13 3
# failure situations 4 19 35
Table 5.4: The networks used for experiments.
2
3
6
1
10
3
16
1
2
4
5
18
11
8
13
14
7
17
6
15 11
12
12
8 9
4
7
10
5
9
(a) The N12 network
(b) The N41 network.
Figure 5.7: Two larger example instances. The simple network, N3 We start by presenting results achieved by the algorithms applied to the simple 3-node network, N3 . In this experiment the revenue coefficients wds , and cost coefficients ρe are all put equal to 1. Tables 5.5 and 5.6 give the input data. Results from these trials are found in Table 5.7 (empty entries Demand Nodes Links (e)
p=1 p=2
d=1 1-2 1 2,3
d=2 1-3 2 1,3
d=3 2-3 3 1,2
Table 5.5: Demands and paths for network N3 indicate that an entity remains unchanged with respect to the preceding step). Values of flows, zdps , are given only if not equal to zero. Final results (after the algorithm completion) are shown in the rightmost position. Note that Rs′ (in contrast to Rs ) is relevant only for the basic algorithm (Algorithm 2.1), and that λs on the other hand is relevant only for Algorithm 5.1.
5.2. RESILIENT PF DIMENSIONING
Links e=1 e=2 e=3 wds
s=1 1 1 1 1
αes s=2 s=3 0 1 1 0 1 1 1 1
123
s=4 1 1 0 1
ρe 1 1 1
Table 5.6: αes , wds and ce for network N3 n Instant t∗ ts
0 After Step 0 20.35 ts = 20.35 , s = 0, 1, 2, 3
Rs
Rs = 20.35 , s = 0, 1, 2, 3
y
y1 = y2 = y3 = = 333.33 z110 = 24.81 z210 = 24.81 z310 = 283.72 z320 = 308.53 z121 = 24.81 z211 = 308.53 z311 = 308.53 z112 = 308.53 z222 = 24.81 z312 = 308.53 z113 = 308.53 z213 = 308.53 z323 = 24.81 s = 0, 1, 2, 3 ∅ For constraint (5.64): λ0 = 0, λ1 = λ2 = λ3 = 0.33
zdps
Z1 Z0 λs
1 After Step 2 26.8 t0 = 26.8 , ts = 20.35, s = 1, 2, 3 R0′ = 26.80 , R0 = 26.8 , Rs′ = 20.35 , Rs = 20.35, s′ = 1, 2, 3 s = 1, 2, 3 y1 = y2 = y3 = = 333.33 z110 = 333.33 z210 = 333.33 z310 = 333.33 After Step 1
z121 z211 z311 z112 z222 z312 z113 z213 z323
2 After Step 1
R0′ = 26.8
= 24.81 = 308.53 = 308.53 = 308.53 = 24.81 = 308.53 = 308.53 = 308.53 = 24.81 ∅ s = 0, 1, 2, 3
s=0 s = 1, 2, 3 For constraint (5.71): λ0 = 1
Table 5.7: Numerical results applying Algorithms 2.1 and 5.1 to instance N3
The Backbone Network, N12 Already network N12 (medium-size Polish backbone network) is quite challenging for the algorithms in terms of computation times. Since for instance the number of the non-zero flows, zdps , is quite big in this trial, only selected numerical results are given. As in the N3 case, the revenue coefficients, wds ,
124
CHAPTER 5. DIMENSIONING PROBLEMS
are all put equal to 1. Link costs are given in Table 5.8. Situations are defined in accordance to the N3 case, i.e., each situation corresponds to one exclusively, completely failed link, except for the normal situation, when no links are broken. In effect, αes are simply obtained by expanding Table 5.6. The evolution of Rs over (selected) iterations n, along with the evolution of the auxiliary variable t and the resulting link capacities ye , is illustrated in Table 5.9. Table 5.9 reveals at which iteration (n) each indie ρe
1 1.85
2 3.4
3 1
4 1.45
5 2.3
6 2.9
7 1
8 1.6
9 2.2
e ρe
10 1.5
11 2.3
12 1.4
13 1.65
14 1.25
15 2.3
16 1.55
17 1.35
18 1.7
Table 5.8: Link marginal costs for network N12 . vidual situation was blocked. By studying the second column (t∗ ) and the 8th column (Rs , n = 15) it is concluded that situations 5,6,15 and 18 are blocked at n = 0, t∗ = 91.62. Situation 8 is blocked for n = 1, t∗ = 92.15 and 17 and 3 for n = 2, 3, t∗ = 92.32, t∗ = 92.33, respectively, and so on. It is of interest to illustrate the computational efficiency of the algorithms Rs t∗
n 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
91.62 92.15 92.32 92.33 93.11 93.56 93.96 94.06 94.27 95.93 96.22 96.26 96.68 97.37 97.83 101.64
s 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
0 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62 91.62
1 92.15 92.15 92.18 92.15 91.62 91.62 92.15 92.15 92.15 92.15 92.15 92.15 92.15 92.15 91.62 92.15 92.15 91.62 92.15
n 2 92.32 92.32 92.32 92.32 91.62 91.62 92.32 92.15 92.32 92.32 92.32 92.32 92.32 92.32 91.62 92.32 92.32 91.62 92.32
14 97.83 96.22 92.33 93.96 91.62 91.62 97.37 92.15 95.93 94.27 93.56 97.83 93.11 96.68 91.62 96.26 92.32 91.62 94.06
15 101.64 96.22 92.33 93.96 91.62 91.62 97.37 92.15 95.93 94.27 93.56 97.83 93.11 96.68 91.62 96.26 92.32 91.62 94.06
e
ye
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
25.89 33.32 42.54 49.76 40.46 13.70 54.97 27.97 22.43 31.64 16.55 38.13 22.43 55.60 22.24 25.24 40.45 29.56
Table 5.9: Selected results and parameters for network N12 and their implementations in terms of execution time. The corresponding data is found in Table 5.10. Tests for N41 have been performed using only AMPL implementations. Therefore, some entries for N41 in Table 5.10 are
5.3. CONCLUSIONS
Reference code N3 N12 N41
125 Execution times Implementations of Algorithm 2.1 C++ AMPL Matlab