Università degli Studi di Trieste     FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI               Corso di Laurea Mag...
Ringraziamenti    E così abbiamo finalmente raggiunto questo nuovo traguardo.Sarei egoista se parlassi al singolare, il mer...
Acknowledgements    The present thesis is the result of a research carried on from September 2011 toAugust 2012; part of t...
Contents1 The    Network Pricing Problem                                                                                  ...
3.4.1 Initialization . . . . . . . . . . . . . . . . .                      .   .   .   .   .   .   .   .   .   .   .   . ...
9Introduction     Bilevel programs are nowadays a well known field of research. Studies have beencarried on this particular...
10
Chapter 1The Network Pricing Problem    In the present section we will introduce the Network Pricing Problem (NPP) in itsg...
12                              CHAPTER 1. THE NETWORK PRICING PROBLEM    Bilevel programs first appeared in 1973 in an art...
1.3. THE BILEVEL FORMULATION OF THE NPP                                                             13Let K denote the set...
14                                 CHAPTER 1. THE NETWORK PRICING PROBLEMnot such constraints could undermine feasibility ...
1.4. LINEARIZATION SCHEME FOR THE NPP                                                     15(while mantaining the primal f...
16                                              CHAPTER 1. THE NETWORK PRICING PROBLEM            max                   t ...
1.4. LINEARIZATION SCHEME FOR THE NPP                                                             17                      ...
18   CHAPTER 1. THE NETWORK PRICING PROBLEM
Chapter 2The Congested Network PricingProblem    In this section we will describe a variant to the Network Pricing Problem...
20              CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEMthe network is able to sustain before congestion occurs (o...
2.2. CNPP LOWER LEVEL: TRAFFIC ASSIGNMENT PROBLEM                                      21  2. Demand-offer interaction: sin...
22             CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEMchoosing an alternative route over the network. Thus, unlik...
2.2. CNPP LOWER LEVEL: TRAFFIC ASSIGNMENT PROBLEM                                         23    where tr0a is the travel t...
24                 CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEM     where:                                           x...
2.3. FIRST LEVEL OF THE CNPP: LEADER PROFITS                                                             25theoretical bas...
26               CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEM     1. From bilevel to single level through Lagrangian D...
2.4. REFORMULATING THE CNPP                                                                       27Consequently, the part...
28                   CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEMFrom the first KKT condition (eq. 2.35) we have that: ...
2.4. REFORMULATING THE CNPP                                                                            29                λ...
30                    CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEM  max             (   λk · bk −                     ...
2.4. REFORMULATING THE CNPP                                                         31                                    ...
32   CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEM
Chapter 3Solving the CNPP3.1     The Conditional Gradient method        (Frank-Wolfe Algorithm)    Although the bilevel fo...
34                                                             CHAPTER 3. SOLVING THE CNPP    Therefore, the optimization ...
3.1. THE CONDITIONAL GRADIENT METHOD(FRANK-WOLFE ALGORITHM)35                                                            ...
36                                                             CHAPTER 3. SOLVING THE CNPP3.1.3    Stopping criterion    A...
3.2. CONVERGENCE CONDITIONS                                                               37                              ...
38                                                CHAPTER 3. SOLVING THE CNPPin real time more critical . This can be part...
3.4. TWO-STEPS ALGORITHM                                                                              393.4    Two-steps a...
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis
Upcoming SlideShare
Loading in...5
×

Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis

1,089

Published on

Thesis for the final dissertation for my MS degree in Computer Science & Engineering.
Subject is Mathematical Optimization in the field of Network Pricing Problems.

The present thesis is the result of a research carried on from September 2011 to August 2012; part of this work has been developed at the Graphes et Optimisation Mathématique (G.O.M.) group of the Université Libre de Bruxelles, under the supervision of Professor Martine Labbé; further development and experimentation have been carried on at the Laboratorio di Ricerca Operativa of the Università degli studi di Trieste with Professor Lorenzo Castelli as supervisor.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,089
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Approximate Algorithms for the Network Pricing Problem with Congestion - MS thesis

  1. 1. Università degli Studi di Trieste FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Curriculum Ingegneria Informatica Approximate algorithms for the Network Pricing Problem with Congestion Tesi di Laurea in Ricerca OperativaRelatore: Laureanda:Chiar.mo Prof. Desirée RigonatLorenzo Castelli Sessione Estiva Anno Accademico 2011 - 2012
  2. 2. Ringraziamenti E così abbiamo finalmente raggiunto questo nuovo traguardo.Sarei egoista se parlassi al singolare, il merito di questo risultato è di tante, tante persone, chein mille modi mi hanno aiutata, sostenuta, incoraggiata durante questi tre anni. Un sentito ringraziamento va prima di tutto al mio relatore, Professor Lorenzo Castelli peravermi dato l’opportunità di svolgere questo lavoro e per la pazienza, l’aiuto e il sostegno con cuimi ha seguita durante quest’ultimo anno e per avermi proposto il periodo di studi all’estero, chemi ha permesso di avvicinarmi al mondo della ricerca.Ringrazio poi la Professoressa Martine Labbé e tutto il gruppo di ricerca del G.O.M. dell’UniversitéLibre de Bruxelles, per avermi dato la possibilità di lavorare con loro. È stato un onore e so-prattutto un piacere. Niente di tutto questo sarebbe stato possibile se non avessi avuto il sostegno costante, siamorale che materiale, della mia famiglia: grazie mamma e papà per aver sempre creduto in me,Pietro per aver condiviso gioie e dolori della vita domestica, Gattila per avermi sempre ricordatoquando era ora di staccare e andare a dormire, Oscar per aver sostituito efficacemente la svegliae Napo per avermi costretta a fare ogni tanto una pausa! Come non sfruttare poi quest’occasione per dire a tutti i miei amici quanto sono stati esono importanti per me: è bello sapere che, non importa in quale angolo di mondo ci si trovi, acasa ci sono delle persone su cui puoi sempre contare. Non mi basterebbe davvero il tempo percitare ognuno, ma sappiate che vi ho pensati tutti. Qualche eccezione però è doverosa e quindiringrazio Marta: sei la migliore amica che si possa avere, grazie per le lunghe chiacchierate eper condividere con me momenti di follia, di regressione infantile (Pasqua e Natale, tu sai cosaintendo!) e per essere la persona allegra e positiva che sei! Grazie a te e a tutta la tua famiglia!Poi devo proprio ringraziare Federico: c’è poco da dire, sei un vero amico, grazie per tutte le volteche mi hai ascoltata, per le chiacchierate senza fine, per tutti gli hobby che abbiamo condiviso eper le serate a base di sushi e babezzi!Ringrazio poi tutti i miei compagni di avventure di EESTEC: Erni, Mariela, Filippo, Carlo,Nicola, Alessandra, Enrico, Francesca, conoscervi e condividere esperienze con voi mi ha davveroaperto un mondo, mi ha fatto imparare un sacco di cose e mi ha fatto crescere tantissimo. Sietegrandissimi! Infine, un grazie speciale a Matteo, che più di tutti mi ha aiutata a credere in me stessa e atrovare la forza di continuare quando credevo di non farcela. Grazie per i tuoi incoraggiamenti,per l’entusiasmo, per il tuo humour, lasciatelo dire..un po’ British (ma che io apprezzo enorme-mente) e per la tua arte culinaria, quest’ultima invece prettamente Italica (per fortuna)! Vorreiringraziarti per tante tante altre cose, ma quella a cui tengo di più è ringraziarti semplicementedi esserci, perchè mi rendi una persona migliore.Grazie anche alla tua stupenda famiglia: Laura, Danilo, Chiara, John e George, grazie per tuttii bei momenti passati assieme, e per gli incoraggiamenti che mi avete sempre dato!Ancora una volta, grazie di cuore a tutti quanti!I wish you all the best!
  3. 3. Acknowledgements The present thesis is the result of a research carried on from September 2011 toAugust 2012; part of this work has been developed at the Graphes et OptimisationMathématique (G.O.M.) group of the Université Libre de Bruxelles, under the supervi-sion of Professor Martine Labbé; further development and experimentation have beencarried on at the Laboratorio di Ricerca Operativa of the Università degli studi di Triestewith Professor Lorenzo Castelli as supervisor.
  4. 4. Contents1 The Network Pricing Problem 11 1.1 Bilevel programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.2 The Network Pricing Problem (NPP) . . . . . . . . . . . . . . . . . . . . . 12 1.3 The bilevel formulation of the NPP . . . . . . . . . . . . . . . . . . . . . . 12 1.3.1 The Tmax upper bound . . . . . . . . . . . . . . . . . . . . . . . . 13 1.3.2 Complexity of the NPP . . . . . . . . . . . . . . . . . . . . . . . . 14 1.4 Linearization scheme for the NPP . . . . . . . . . . . . . . . . . . . . . . . 14 1.4.1 From bilevel NPP to single level NPP . . . . . . . . . . . . . . . . 14 1.4.2 From bilinear NPP to linear NPP . . . . . . . . . . . . . . . . . . . 162 The Congested Network Pricing Problem 19 2.1 Congestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.2 CNPP lower level: traffic assignment problem . . . . . . . . . . . . . . . . 20 2.2.1 Assignment hypotheses . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.2.2 Taking congestion into account: D.U.E. Assignment . . . . . . . . 21 2.2.3 Another type of equilibrium: System Optimum . . . . . . . . . . . 22 2.2.4 Cost functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.2.5 Second level of the CNPP: flows assignment . . . . . . . . . . . . . 23 2.3 First level of the CNPP: leader profits . . . . . . . . . . . . . . . . . . . . 25 2.4 Reformulating the CNPP . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.4.1 From bilevel CNPP to single level CNPP . . . . . . . . . . . . . . 26 2.4.2 From bilinear CNPP to Mixed Integer non-linear CNPP . . . . . . 27 2.4.3 Complexity of the CNPP . . . . . . . . . . . . . . . . . . . . . . . 303 Solving the CNPP 33 3.1 The Conditional Gradient method (Frank-Wolfe Algorithm) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.1.1 Applying Frank-Wolfe to the D.U.E. assignment problem . . . . . 33 3.1.2 F-W algorithm steps . . . . . . . . . . . . . . . . . . . . . . . . . . 35 3.1.3 Stopping criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 3.2 Convergence conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.3 Accelerating convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.4 Two-steps algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 7
  5. 5. 3.4.1 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.4.2 Algorithm improvements . . . . . . . . . . . . . . . . . . . . . . . . 41 3.5 One step algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.5.1 One-level CNPP through the duality theory . . . . . . . . . . . . . 46 3.5.2 Linearization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.5.3 Algorithm steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.5.4 Big M parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . 534 Implementation 55 4.1 Program structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.2 Data format: input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 4.3 Data format: inner representation . . . . . . . . . . . . . . . . . . . . . . . 58 4.4 Interaction with the Xpress solver . . . . . . . . . . . . . . . . . . . . . . . 59 4.5 Data output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 4.6 Network generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 Tests and results 65 5.1 Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 5.2 Statistics: average resolution time . . . . . . . . . . . . . . . . . . . . . . . 66 5.3 Solution quality: equal solutions . . . . . . . . . . . . . . . . . . . . . . . 73 5.4 Solution quality: different solutions . . . . . . . . . . . . . . . . . . . . . . 74 5.5 Stopping criterion precision . . . . . . . . . . . . . . . . . . . . . . . . . . 75 5.6 Final considerations and further development . . . . . . . . . . . . . . . . 77A Input file example 79B Programs usage 83
  6. 6. 9Introduction Bilevel programs are nowadays a well known field of research. Studies have beencarried on this particular class of optimization problems since the 1970s. The NetworkPricing Problem, a particular case of which is the main subject of the present work, hasbeen formulated in the late 1990s (see Labbé et al. (1998)). It belongs, as the namesuggests, to the class of network optimization problems where prices have to be set onthe links of a network in order to maximize the profit of the owner. The bilevel structureof the NPP implies that these prices will be influenced by the distribution on the networkof one or more users that want to travel on it at the minimum cost.The NPP usually assumes that arc costs are independent of flows . In road transportationsystems, when arc costs depend on flows, the network is usually referred to as congested.In the present work, we illustrate two asymptotically converging algorithms to solve theNPP in the case of congested networks, hereafter referred to as the Congested NetworkPricing Problem (CNPP).In particular, we propose to identify an equilibrium point for the CNPP using the Frank-Wolfe algorithm (see Frank and Wolfe (1956)) by reformulating the bilevel CNPP into asequence of approximating single level linear problems. One of the algorithms uses theselinear approximations to solve only the second level problem (that is, the problem of theusers) while the other applies the linearization procedure to the whole CNPP.The Frank-Wolfe linearization scheme was also used by Brotcorne et al. (2001) in thedesign of a primal-dual heuristic to solve the NPP. In their work however arc costs arestill supposed to be independent of flows. In this thesis, Chapter 1 introduces the NPP in its generic, uncongested formulation,together with a linearization procedure to obtain an equivalent linear single level prob-lem.In Chapter 2 we first define a nonlinear arc cost function in order to introduce thecongestion element; then we formulate the lower level of the CNPP as an optimizationproblem with nonlinear objective function and linear constraints. Finally we present asimplification procedure to transform the CNPP in a non linear single level problem.In Chapter 3 a brief introduction to the Franke-Wolfe algorithm is given; then the twoF-W based algorithms to solve the CNPP are presented, together with a review of the(very brief) pre-existent literature and some hints for future improvements.Chapter 4 deals with implementation details, for both of the presented algorithms andfor the software used for generating the networks to be used for computational tests.Finally, Chapter 5 is dedicated to experimental data and results, from which we desumeour final considerations and discuss future developments.
  7. 7. 10
  8. 8. Chapter 1The Network Pricing Problem In the present section we will introduce the Network Pricing Problem (NPP) in itsgeneric formulation, which does not take congestion into account. As its initial form isthat of a bilinear bilevel problem, we will first give a brief introduction to this class ofproblems. Then the NPP will be introduced and we will illustrate how it can be refor-mulated first into a single level bilinear, then into a linear problem with a mixed integerformulation. In the present chapter we will refer to the formulations and notations inLabbé et al. (1998), Brotcorne et al. (2000) and Brotcorne et al. (2001). Heilporn (2008)in her PHD thesis gives a detailed analisys of the geometric structure of the problem andthe particular cases that have so far been proved to be easier to solve.1.1 Bilevel programming Bilevel programs belong to a class of Stackelberg sequential games with two players,where a leader plays first, taking into account the possible reactions of the second player,called the follower. By denoting x and y respectively the leader’s and follower’s decisionvariables vectors, this situation can be described mathematically by: min F (x, y) (1.1) x,y s.t. G(x, y) ≤ 0 (1.2) y ∈ arg min f (x, y) (1.3) y s.t. g(x, y) ≤ 0 (1.4) Note that the formulation above assumes that if there are multiple optimal solutionsfor the lower level problem, the solution that is most profitable for the leader is selected;this is an optimistic approach, in opposition to a pessimistic approach where the leaderchooses the solution that protects himself against the follower’s worst possible reaction.Both scenarios have been investigated in literature (see Heilporn (2008) for a detailedbibliography on this). 11
  9. 9. 12 CHAPTER 1. THE NETWORK PRICING PROBLEM Bilevel programs first appeared in 1973 in an article by Bracken and McGill (1973),while the complete formulation, as described aboved, was first introduced in an articleby Shimizu and Aiyoshi (1981). An annotated bibliography containing more than onehundred references on bilevel programming has been compiled by Vicente and Calamai(1994), while the books by Shimizu et al. (1997) and Luo et al. (1996) are devoted, infull or in part, to this subject.Generically non differentiable and non convex, bilevel problems are, by nature, hard.Even the linear bilevel problem, where the objective functions and the constraints arelinear, was proved to be N P-hard by Jeroslow (1985). Hansen et al. (1992) prove strongN P-hardness. Vicente et al. (1994) strengthen these results and prove that merely check-ing strict or local optimality is strongly N P-hard.1.2 The Network Pricing Problem (NPP) Let us define a transportation network as a set of nodes (cities) and a set of arcs(routes) linking some of these nodes together. At the upper and lower level, consider anauthority and a set of network users respectively. We also define a commodity as a setof network users travelling from the same origin to the same destination. In addition toa fixed cost associated with every arc, tolls are imposed by the authority on a specifiedsubset of arcs of the network. Hence the Network Pricing Problem consists of devising tolllevels on the specified subset of toll arcs in order to maximize the authority’s revenues.Then, reacting to the tolls, each commodity travels on the shortest path from its originto its destination, with respect to a cost equal to the sum of tolls and initial costs. Morespecifically, the formulation we will refer to in the present work assumes that only a subsetof the links has taxes and that the network is a multicommodity transportation network;moreover, in order to avoid trivial solutions leading to infinite revenues for the authority,we will assume that there always exists a toll-free path for each origin/destination pair.No assumption is made regarding the non-negativity of the toll: as shown by Labbé et al.(1998) a schema which allows negative tolls (that can be interpreted as incentives) canlead to a better solution than one with only positive taxes. An optimal tolling policy is such that tolls are low enough not to deter the users fromusing those links (rather than alternative routes with no toll arcs) while still generatinghigh profits. In this model, it is generally assumed that the users will travel on shortest(cheapest) origin-destination routes and congestion is not taken into consideration.1.3 The bilevel formulation of the NPP Let G = (N , A ∪ B) be a transportation network where N denotes the set of nodesand A ∪ B is the set of arcs, where A is the subset of toll arcs and B the subset of toll-freearcs. Each arc of A has a travel cost composed of a fixed part ca and an unknown tollta . Each arc of B bears only a fixed travel cost, identified by da .
  10. 10. 1.3. THE BILEVEL FORMULATION OF THE NPP 13Let K denote the set of commodities, where each commodity k is associated with anorigin/destination pair (ok , dk ); the demand vector bk associated with each commodityk is defined by:  k  η if i = o(k) bk = i −η k if i = d(k) ∀i ∈ N , ∀k ∈ K (1.5) 0 otherwise  where η k represents the number of users of commodity k.Finally xk denotes the number of users of commodity k on arc a ∈ A ∪ B (that is, the aamount of flow on arc a for the origin/destination pair k). The NPP can thus be formulated as a bilevel program with bilinear objective func-tions and linear constraints, where the flows xk denote the optimal solution of the second alevel problem parametrized by the upper level toll vector t. max t a · xk a (1.6) t,x k∈K a∈A s.t. min ( (ca + ta ) · xk + a da · xk ) a (1.7) x k∈K a∈A a∈B xk a − xk a = bk i ∀k ∈ K, ∀i ∈ N (1.8) a=i+ ∈A∪B a=i− ∈A∪B xk ≥ 0 a ∀k ∈ K, ∀a ∈ A ∪ B (1.9)1.3.1 The Tmax upper bound It is usually assumed that there cannot exist a toll setting scheme that generatesprofits and creates negative cost cycles in the network and that there exists at leastone path composed solely of untolled arcs for each origin-destination pair (the "toll-freepath" previously mentioned). These conditions avoid the degenerative and unrealisticcases where looping in a cycle drains users’ traveling costs to zero and where a non-alternative path scenario would allow the leader to put an infinitely high toll on one ormore links, thus leading to an infinite profit. In a practical scenario, by the way, such an assumption could not always hold; forexample the toll-free path could be significantly longer than the tolled path, and even ifwe consider the time as a factor in the cost function of our model, such a choice couldnot be likely for most "real" users (i.e. they would in any case prefer the quicker route).Moreover, often tariffs are set by companies considering a whole set of policies that arejust partially related to traffic. In such a scenario, it is perfectly reasonable to assumethat an upper bound for the tariffs exists, much more reasonable than assuming that theycan be "arbitrarily high" or "limited by the cost of a toll-free path". Finally, whether or
  11. 11. 14 CHAPTER 1. THE NETWORK PRICING PROBLEMnot such constraints could undermine feasibility of specific instances of NPP is a matterrelated with the specific istance itself. The common formulation of the Network Pricing Problem however allows for an up-per bound T max to be set for the tariffs. Since this bound can be set to infinite, it willnot alter the generality of the model and will help to find a realistic solution in casethe network is not fully compliant with the above requirements regarding toll-free paths.This implies adding the following constraint to the above model: ta ≤ T max ∀a ∈ A ∪ B (1.10) In the present work we will assume that a feasible toll-free path always exixsts; as aconsequence the above constraint will be omitted in our formulations.1.3.2 Complexity of the NPP As demonstrated by Labbé et al. (1998) this problem in its general form is stronglyN P-Hard. However a linearization scheme illustrated in the same work leads to a mixedinteger programming formulation that involves a small number of binary variables. Thisformulation can be solved using standard algorithms such as branch and bound that willlead to an exact solution in reasonable time for small instances of the problem, or allowsfor efficient heuristic procedures to be developed, as shown by Brotcorne et al. (2000and 2001). Such algorithms lead to far better results on large network since they areable to exploit the particular structure of the network in order to quicken the solvingprocedure.1.4 Linearization scheme for the NPP The aim of the procedure that will briefly be illustrated in the present section (for amore comprehensive description see Labbé et al. (1998)) is to obtain a single level linearproblem from the bilevel bilinear NPP. The process is carried on in two phases: 1. From bilevel to single level through the theory of Duality; 2. From bilinear to linear.1.4.1 From bilevel NPP to single level NPP Under the assumptions that strong duality holds for the second level problem, andthat there exists a toll-free path for each origin/destination pair (or, alternatively, thatthere exists an upper bound to tariffs), it is possible to reduce the bilevel bilinear NPPto a single level bilinear problem.The process implies the replacement of the second level problem by its dual constraints
  12. 12. 1.4. LINEARIZATION SCHEME FOR THE NPP 15(while mantaining the primal feasibility constraint) and its objective by the complemen-tary slackness condition, that is, adding another constraint which imposes primal anddual feasibility for the respective objectives. Dual constraints: according to Equation 1.9 for each arc a ∈ A ∪ B and for eachcommodity k ∈ K a non negative primal variable xk exists. Thus the dual problem will ahave as many dual constraints associated with each arc and each commodity: λk − λk ≤ ca + ta i j ∀a = (i, j) ∈ A, ∀k ∈ K (1.11) λk − λk ≤ da i j ∀a = (i, j) ∈ B, ∀k ∈ K (1.12) Where i and j are respectively the head and tail nodes for arc a ∈ A ∪ B.Moreover, since the primal constraints of flow conservation are equalities, the correspond-ing variables λk are free. i Primal-dual feasibility: the dual objective of the second level problem is: max η k λkk − d η k λkk o (1.13) k∈K k∈K According to the strong duality theorem, if: 1. vector x is a feasible solution for the primal problem, ¯ ¯ 2. vector λ is a feasible solution for the dual problem, 3. the values of both the primal and the dual objective function coincide, ¯ then the vectors x and λ are optimal solutions for both of the problems. ¯Thus we can substitute the second level objective with a constraint that imposes equalitybetween the values of the primal and the dual objective, which implies optimality: Zprimal = Zdual (1.14) that is: (ca + ta ) · xk + a da · xk = η k · λkk − λkk a d o ∀k ∈ K (1.15) a∈A a∈B The resulting problem, equivalent to the NPP as described previously, is thus thefollowing:
  13. 13. 16 CHAPTER 1. THE NETWORK PRICING PROBLEM max t a · xk a (1.16) t,x k∈K a∈A s.t. (ca + ta ) · xk + a d a · xk = a a∈A a∈B k =η · λkk d − λkk o ∀k ∈ K (1.17) xk − a xk = bk a i ∀k ∈ K, ∀i ∈ N (1.18) a=i+ ∈A∪B a=i− ∈A∪B λk − λk ≤ ca + ta i j ∀a = (i, j) ∈ A, ∀k ∈ K (1.19) λk i − λk j ≤ da ∀a = (i, j) ∈ B, ∀k ∈ K (1.20) k xa ≥0 ∀k ∈ K, ∀a ∈ A ∪ B (1.21) ta ≥ 0 ∀a ∈ A (1.22) λk i free ∀i ∈ N , ∀k ∈ K (1.23)1.4.2 From bilinear NPP to linear NPP The problem obtained so far still contains bilinear terms in both the objective andthe complementary slackness constraint. What we want to obtain in this section is asingle level linear problem. First of all it is necessary to introduce a binary variable and a slack variable totransform the bilinear term ta · xk . The binary variable is used to re-define the integer avariable. Since the second level problem is a flow assignment problem, each flow demand ofthe commodities is distributed on the network by following the path of minimum cost. Itfollows that the binary variable introduced for each arc a ∈ A∪B and for each commodityk ∈ K is defined as follows: k 1 if a ∈ A ∪ B belongs to the minimum cost path for commodity k ∈ K ra = 0 otherwise (1.24) Thus resulting in: xk = η k · ra a k (1.25) The following constraint for the new variable needs to be added to the problem: k ra ∈ {0; 1} ∀a ∈ A ∪ B, ∀k ∈ K (1.26) Then, a slack variable is used to re-define the continuous variable. Since each com-modity is associated with a single path (the one with minimum cost), the leader imposesthe fee on a tariffed arc a ∈ A only if this is used by at least one commodity, for whichthat particular arc belongs to the path of minimum cost. Therefore, the slack variableintroduced for each arc a ∈ A and for each commodity k ∈ K is as follows:
  14. 14. 1.4. LINEARIZATION SCHEME FOR THE NPP 17 k ta if ra = 1 pk = a (1.27) 0 otherwise The following constraints need to be added: pk − ta ≤ 0 a ∀a ∈ A, ∀k ∈ K (1.28) − pk + ta − M · (1 − ra ) ≤ 0 a k ∀a ∈ A, ∀k ∈ K (1.29) pk a −N · k ra ≤0 ∀a ∈ A, ∀k ∈ K (1.30)where M e N are arbitrary big − M parameters.Equation 1.28 forces the value of pk to zero if ta is zero. Equation 1.29 is a Big-M type aconstraint. If ra is one, the constraint must be satisfied. In fact pk will be equal to ta k a kaccording to Equations 1.28 and 1.29. If ra is zero, the constraint is relaxed. Equation1.30 denotes an upper bound for pk . If ra equals one, pk is less than Na . If ra is zero, pk a k a k ais zero too. According to the transformation carried out, the formulation of the single level NPPis as follows: max η k · pk a (1.31) p k∈K a∈A k s.t. ra − ra = ek k i ∀i ∈ N , ∀k ∈ K (1.32) a=i− ∈A∪B a=i+ ∈A∪B (ca · ra + pk ) + k a da · ra = λkk − λkk k d o ∀k ∈ K (1.33) a∈A a∈B k k λi − λj ≤ ca + ta ∀a = (i, j) ∈ A, ∀k ∈ K (1.34) λk − λk ≤ da i j ∀a = (i, j) ∈ B, ∀k ∈ K (1.35) k pa − ta ≤ 0 ∀a ∈ A, ∀k ∈ K (1.36) − pk + ta − M · (1 − ra ) a k ≤0 ∀a ∈ A, ∀k ∈ K (1.37) pk − N · ra ≤ 0 a k ∀a ∈ A, ∀k ∈ K (1.38) ta ≥ 0 ∀a ∈ A (1.39) pk ≥ 0 a ∀a ∈ A, ∀k ∈ K (1.40) k ra ∈ {0; 1} ∀a ∈ A ∪ B, ∀k ∈ K (1.41) λk i free ∀i ∈ N, ∀k ∈ K (1.42) where ek is the new demand vector, defined as follows: i  −1 if i = ok  k ei = 1 if i = dk ∀i ∈ N, ∀k ∈ K (1.43) 0 otherwise 
  15. 15. 18 CHAPTER 1. THE NETWORK PRICING PROBLEM
  16. 16. Chapter 2The Congested Network PricingProblem In this section we will describe a variant to the Network Pricing Problem which takescongestion levels into account. We will refer to this as the Congested Network PricingProoblem (CNPP). The peculiarity of considering congestion lays in the fact that arccosts are no longer considered as constants. Instead, they depend upon arc flows: theyget higher as flow levels approach the capacity of the links (which are fixed) and get loweras flow is moved to other links. Congestion thus implies a mutual dependence betweenarc costs and arc flows, and here lies the difficulty of the model. Our particular casedeals with a road transportation network, such as a highway system, so that the firstlevel problem remains a profit maximization problem and the second level problem willbe a Traffic Assignment Problem, which has been covered by a vast amount of literatureover the past decades. For a complete mathematical analysis of the Traffic Assignmentproblem we refer to the omonymous work by Patriksson (1994) and for a more genericintroduction on optimization problems on transportation networks we refer to the workby Sheffi (1985). No previous work covers the CNPP as presented here, however a sim-ilar model, applied on a telecommunications network can be found in Julsain (1998).Instead, issues related to congestion have been thoroughly investigated in the field ofNetwork Design Problems by Marcotte (1986).2.1 Congestion The generic definition of congestion on a network, either a physical transportationnetwork or a data telecommunication network states that such a condition occurs whena link or node is carrying so much data that its quality of service deteriorates. Thiscan lead to various disadvantages for the users of the network, namely delay, increasein transportation costs and can eventually lead, in worst case scenarios, to the completehalt of the service. Network congestion is thus tightly related to the concept of networkcapacity, that represents the maximum amount of units of flow that a link or a node of 19
  17. 17. 20 CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEMthe network is able to sustain before congestion occurs (or before the system comes to ahalt because of it). In order to introduce congestion in the NPP we have to take all thisinto consideration. The scenario to which we will refer is that of a road transportationnetwork (i.e. a highway system) where link costs will depend upon the amount of flowon that specific link: as the amount of flow on that link increases, the cost will increaseas well in order to avoid congestion; thus the users will be induced into moving partof the flow to another, now cheaper link; the cost of the previously loaded link willconsequently decrease proportionally with the flow that has been removed from it, andso on. This deviation of flow and consequent fluctuation of link costs finally convergeto a configuration of balance, that is referred to as equilibrium. An equilibrium can bereferred to either the users (thus referred to as User Equilibrium) or to the network(System Equilibrium) depending on the final configuration we want to obtain.All of these concepts will be anayzed in detail in the present chapter in order to applywhat explained above to the NPP.For the proper definitions of Equilibria on a trasnsportation network we will refer to(Wardrop, 1952).2.2 CNPP lower level: traffic assignment problem In this section we will analyze the second level of the CNPP, that is, how the users ofthe network (followers) spread across the arcs according to the supply (per-arc cost) andthe demand (necessity to travel form origin to destination). We will formulate assign-ment assumptions in order to formulate the follwers’ problem as a Traffic Assignmentproblem (see i.e. Sheffi (1985)). According to transportation system theory, the system we are considering is mono-modal and continuous (meaning that all users/vehicles belong to the same category),and we assume that users travel with private individual vehicles. Demand is representedby an origin-destination (O/D) matrix and the supply is defined by the transportationnetwork itself (nodes, links and assigned costs).Interaction between demand and supply is simulated according to an appropriate as-signment model, which must be coherent with the objectives, the given constraints andpossible simplification hypotheses.Where not otherwise specified, notation is consistent with the one used in the previouschapter for the NPP.2.2.1 Assignment hypotheses In order to build a model that is consistent with the structure of a traffic assignmentproblem, we rely on the following hypotheses: 1. Cost-flow functions: we are considering congestion, so we define the congested network, where the arc-cost vector depends upon the arc-flow vector (C = C(f )).
  18. 18. 2.2. CNPP LOWER LEVEL: TRAFFIC ASSIGNMENT PROBLEM 21 2. Demand-offer interaction: since we are considering a congested network and we are not taking into account any inter-period dynamics on the evolution of the system, we will refer to a User Equilibrium assignment (UE); in this model we will specifically consider the equilibrium configurations where demand, path and arc flows are equal to their respective costs. 3. Path choice behavior: users choose their path preemptively and don’t modify it while traveling. 4. Choice model: it is completely deterministic, because the perceived usefulness is deterministic (not aleatory); all users choose a maximum usefulness path, that is the one with the minimum cost. 5. Classes of users: although it is possible to divide users in classes according to specific criteria, we are considering here as an only differentiation criterion the O/D pair, thus determining a mono-class assignment for the users. 6. Demand characteristics: demand flows are constant in time, since they are not dependent upon cost fluctuations due to congestion. Thus we are considering a rigid demand. Regarding transportation costs, we are considering the following hypotheses: 1. cost functions are separable with respect to the links, that is, the cost of a single ¯ arc is independent from the cost of other arcs (Ca (f ) = Ca (fa ), ∀a ∈ A). 2. non additive path costs will not be taken into consideration; specifically, we will ignore all costs that cannot be obtained through a sum of single-arc costs over the path.2.2.2 Taking congestion into account: D.U.E. Assignment Considering a congested network implies that there is not only dependence of arcflows from arc costs (as in assignments to non-congested networks) but there is alsodependence of arc costs from arc flows (through the arc cost functions). This mutualdependence of flows and arcs determines a final configuration of the system where flowson paths are consistent with the cost of the paths themselves. This configuration is seenas the state towards which the system evolves in conditions of recurring congestion, thatis, when congestion occurs in a systematic way for a sufficiently long period of analysis.Given the above considerations and previously stated hypotheses, literature suggests thatwe choose as a traffic assignment model a single-class, mono-modal and rigid demandDeterministic User Equilibrium (D.U.E.). A D.U.E. assignment is consistent with Wardrop’s first principle (Wardrop, 1952),which states that “The journey times in all routes actually used are equal and less thanthose which would be experienced by a single vehicle on any unused route” . In otherwords, when an equilibrium is reached, no individual is able to reduce their costs by
  19. 19. 22 CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEMchoosing an alternative route over the network. Thus, unlike other models such as De-terministic Uncongested Networks (D.U.N.) or Deterministic Network Loading (D.N.L.)models, D.U.E. models do not assign all the demand to the path of minimum cost foreach O/D pair, but distribute it on different paths to take into account the effect ofcongestion at the equilibrium condition.2.2.3 Another type of equilibrium: System Optimum A possible alternative to a D.U.E. assignment is represented by a System Optimum(S.O.) assignment, which is consistent with Wardrop’s second principle (Wardrop, 1952).This states that which “At equilibrium the average journey time is minimum”. Thismeans that users must cooperate to the minimization of the total cost of the network. This approach can be used, for example, to calibrate the instruments of controlavailable to the manager of the system because flows and costs at the system optimum areconsistent with the objectives to which the operator aims. However, the resulting choicebehavior is likely to be unrealistic because some users, just to reach the minimum cost ofthe system, would not choose individual paths of minimum cost. Therefore, in general,solutions of an S.O. assignment do not coincide with those of a D.U.E. assignment. Thus this model, although providing a formulation and a resolution algorithm thatare similar to the D.U.E. and despite being able to provide good solutions when appliedto the road pricing problem, is not consistent to the objective of wanting to recreate asequential game between the parties where each seeks to achieve its purpose without anymutual collaboration.2.2.4 Cost functions Cost functions express the cost of a path or arc based on the performance of thenetwork. Because network congestion is taken into account, the costs vary with theflows on which they depend. Assuming separable functions and the absence of non-additive path costs, each arc of the network has a cost that is a function only of the flowon the arc itself. According to (Wardrop, 1952), a generic arc cost function, separable and free ofnon-additive costs, has the following formulation: Ca (fa ) = β1 · tra (fa ) + β2 · twa (fa ) + β3 · mca (fa ) (2.1) where tra is the travel time, twa is the waiting time, mca is the monetary cost, β1 ,β2 , β3 are coefficients of homogenization. Travel time on a directed arc of a highway network is obtained through the followingempirical relation: β fa tra (fa ) = tr0a · 1 + α · (2.2) qa
  20. 20. 2.2. CNPP LOWER LEVEL: TRAFFIC ASSIGNMENT PROBLEM 23 where tr0a is the travel time in unconstrained conditions (i.e. optimal traffic andweather conditions), qa is the capacity of an arc (calculated through appropriate analysistools provided by the technical literature(i.e. Transportation Research Board (2000)), αe β are parameters that have to be calibrated. The function defined by eq. 2.2 is not linear, continuous, strictly positive and strictlyincreasing. Waiting time can be attributed to the presence of barriers for the collection of tolls,crossroads with traffic lights or parking areas. Since we are considering the case of ahighway network, there are no intersections and parking areas to generate waiting times,therefore we neglect the related component of generalized cost. Monetary cost, borne by the individual user who travels along the transportationnetwork, can be further decomposed into the sum of the monetary cost of the toll andthe monetary cost of fuel (depending on the level of congestion), that is: mca (fa ) = mctoll + mcf uel (fa ) (2.3) Since this would not cause any loss in generality for our model, here we neglect thecomponent of the cost due to fuel consumption. As a consequence, the monetary cost isreduced to mca (fa ) = mctoll that from now on will simply be referred to as "arc tariff" ta . Cost function is thus reduced to: β fa Ca (fa ) = tr0a · 1 + α · + δ · ta (2.4) qa where δ is a binary parameter with value 1 if the arc has costs, 0 otherwise. Note that the charge included in the cost function specified is considered independentof the distance traveled and of the time evolution of the system (the so-called inter-andintra-period dynamics).2.2.5 Second level of the CNPP: flows assignment Let G = (N , A ∪ B) be a transportation network comprising set N of the nodes andthe union A ∪ B of disjoint sets A and B (A ∩ B = ∅), where A is the set of the arcswhere the leader imposes a tariff and B is the set of the toll-free arcs. Let K be the set ofcommodities, that in this case correspond to the O/D pairs. A set of O/D pairs is thusdefined, (ok , dk ) : k ∈ K and each (ok , dk ) pair has a constant demand flow η k , that isthe number of users for the commodity k ∈ K. Let x and t be the flow and tariffs vectorrespectively. We denote by xk the flow on arc a ∈ A ∪ B for the commodity (O/D pair) ak ∈ K; thus the flow on an arc is given by xa = k∈K xk . We denote by Ca (xa ) the arc acost function specified as follows: β xa Ca (xa ) = tr0a · 1 + α · ∀a ∈ A ∪ B (2.5) qa
  21. 21. 24 CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEM where: xa = xk a ∀a ∈ A ∪ B (2.6) k∈K Note that for every arc a ∈ A we will also have to consider the tariff ta ; such tariff isadded to the cost Ca as shown by eq.2.4. Moreover, let bk be the demand vector associated with each commodity k ∈ K, whosecomponents (one for each node i ∈ N ) are:  −η k if i = ok  k bi = ηk if i = dk ∀i ∈ N , ∀k ∈ K (2.7) 0 otherwise  The arc formulation of the deterministic equilibrium assignment problem as an opti-mization model is as follows: xa xa min (Ca (ωa ) + ta )dωa + Ca (ωa )dωa (2.8) x a∈A 0 a∈B 0 s.t. xk + a xk − a xk − a xk = bk a i ∀i ∈ N , ∀k ∈ K (2.9) a∈i− ∩A a∈i− ∩B a∈i+ ∩A a∈i+ ∩B k xa ≥ 0 ∀a ∈ A ∪ B, ∀k ∈ K (2.10) where i− ∈ N and i+ ∈ N are respectively the entering and exiting arcs for nodei ∈ N. Equation 2.8 expresses the objective function of the problem, which is nonlinearbecause of the cost function adopted. Equation 2.9 imposes a number of linear constraintswhich is equal to the number of network nodes in order to express conservation of flowsat the nodes. Finally, equation 2.10 imposes the non-negativity of the arc flow variablesfor each commodity. The problem above is known as minimum cost multi-commodity flow convex prob-lem ((LeBlanc et al., 1975)) or Traffic Assignment problem (Petersen (1975), Patriksson(1994)). In literature there are several variations to the basic problem presented here.Daganzo (1977a,b) proposes the introduction of capacity constraints on arc flow variablesand linearization of the cost function from a non-zero value of the flow below the limitof capacity. However, it is believed that such changes are unnecessary here, given thatthe cost function grows more than proportionally with the increase of the flow/capacityratio, thus already conditioning in an effective and appropriate way the distribution offlows on the network. In addition, changes should be made to the solution algorithm andto the convergence conditions that would make too complex and uncertain the definitionof the problem (see also Hearn and Ribera, 1981).A stochastic variant of this problem, based on the concept of Stochastic User Equilib-rium (S.U.E.) was also investigated thoroughly in literature (see Sheffi (1985) for the
  22. 22. 2.3. FIRST LEVEL OF THE CNPP: LEADER PROFITS 25theoretical bases and Polyak (1990) and Damberg et al. (1996) for resolution algorithms).2.3 First level of the CNPP: leader profits In this section the first level of the CNPP is considered, that is, how the leadermaximizes his or her profit by imposing fees on the tariffed arcs and dependently on thedistribution of the followers on the network at the equilibrium. For the original problem the objective function for the first level of the problem (theleader’s problem) is the following: max xk · t a a (2.11) t,x k∈K a∈A∪B As said before, it is a non-linear objective function, since it contains a bilinear term.In addition, the following constraint will apply: ta ≥ 0 ∀a ∈ A (2.12) Equation 2.12 being imposed by the non negativity of the cost functions stated insec.2.2.4.The resulting bilevel problem is thus the following: max xk · ta a (2.13) t,x k∈K a∈A∪B xa xa min (Ca (ωa ) + ta )dωa + Ca (ωa )dωa (2.14) x a∈A 0 a∈B 0 xk a − xk a = bk i ∀i ∈ N , ∀k ∈ K (2.15) a=i− ∈A∪B a=i+ ∈A∪B xk ≥ 0 a ∀a ∈ A ∪ B, ∀k ∈ K (2.16) ta ≥ 0 ∀a ∈ A (2.17) (2.18)With cost/flow interdependence as expressed by equation 2.5 and demand vector bkdefined by equation 2.7.2.4 Reformulating the CNPP The aim of the present section is to apply a simplification scheme to the CNPP, inorder to obtain a formulation that is easier to handle. The process is carried out in twophases:
  23. 23. 26 CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEM 1. From bilevel to single level through Lagrangian Duality; 2. From bilinear to mixed-integer non-linear.2.4.1 From bilevel CNPP to single level CNPP Symmetrically to the procedure that was carried on for the linear NPP, in this phasethe second level problem will be replaced by its KKT conditions. This is a legitimateoperation, assuming that objective and constraints are ∈ C 1 and have the characteristicsdescribed below (see Sheffi (1985) and Bertsekas (1995)). Be such the case, a vector xthat satifies the KKT conditions, is known to be optimal for the considered problem.Given a generical convex program: min f (x) (2.19) s.t. h(x) = 0 (2.20) g(x) ≥ 0 (2.21)where f (x) and h(x) are convex and g(x) are linear.Its Lagrangian is defined as: L(x, λ, µ) = f (x) + λT h(x) − µT g(x) (2.22)At a minimum point, x, we have L(x, λ, µ) = 0 which implies that the following withrespect to the partial derivatives: xL : f (x) + λT h(x) − µT g(x) = 0 (2.23) λL : h(x) = 0 (2.24) µL : g(x) ≥ 0 (2.25)Plus the following complementarity condition must hold: µT g(x) = 0 (2.26)In the typical instance of a Traffic Assignment problem, which is our second level prob-lem, the corresponding constraints are the following: h(x) = 0 ⇒ xk − a xk − bk = 0 a i ∀i ∈ N , ∀k ∈ K (2.27) a=i− ∈A∪B a=i+ ∈A∪B g(x) ≥ 0 ⇒ xk ≥ 0 a ∀a ∈ A ∪ B, ∀k ∈ K (2.28)
  24. 24. 2.4. REFORMULATING THE CNPP 27Consequently, the partials derivatives are: xL : Ca (xa ) + ta + λk − λk − µk = 0 i j a ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.29) λL : xk − a xk − bk = 0 a i ∀i ∈ N , ∀k ∈ K (2.30) a=i− ∈A∪B a=i+ ∈A∪B µL : xk ≥ 0 a ∀a ∈ A ∪ B, ∀k ∈ K (2.31) (2.32)The complementarity condition will be: µT xk = 0. a aEquations 2.23 and 2.26 are the Karush Kuhn Tucker Conditions (KKT ) for our secondlevel problem.By substituting the problem with its KKT conditions, we obtain the following reformu-lation for the CNPP: max ta · xk a (2.33) t,x a,k s.t. xk − a xk = bk a i ∀i ∈ N , ∀k ∈ K (2.34) a=i− ∈A∪B a=i+ ∈A∪B Ca (xa ) + ta + λ i − λ k − µk = k j a 0 ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.35) µ k · xk = 0 a a ∀a ∈ A ∪ B, ∀k ∈ K (2.36) xk a ≥0 ∀a ∈ A ∪ B, ∀k ∈ K (2.37) µk a ≥0 ∀a ∈ A ∪ B, ∀k ∈ K (2.38) λk i free ∀i ∈ N , ∀k ∈ K (2.39)where Ca (xa ) is the derivative of the cost function expressed by eq.2.52.4.2 From bilinear CNPP to Mixed Integer non-linear CNPP The problem obtained so far still contains bilinear terms in both the objective andthe complementary constraint. What we want to obtain in this section is a single levelnon-linear problem with a mixed-integer formulation.Simplification of the objective (ta · xk term) a In the present section we will substitute the ta · xk term in the objective with terms aderived from the equality constraints of the problem in order to obtain an equivalentformulation that will be non-linear in only one variable.
  25. 25. 28 CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEMFrom the first KKT condition (eq. 2.35) we have that: µk = Ca (xa ) + ta + λk − λk a i j ∀a = (i, j) ∈ A, ∀k ∈ K (2.40) µk = Ca (xa ) + λk − λk a i j ∀a = (i, j) ∈ B, ∀k ∈ K (2.41)Thus the second KKT condition (eq. 2.36) can be formulated as: (Ca (xk ) + ta + λk − λk ) · xk = 0 a i j a ∀a = (i, j) ∈ A, ∀k ∈ K (2.42) (Ca (xk ) + λk − λk ) · xk = 0 a i j a ∀a = (i, j) ∈ B, ∀k ∈ K (2.43)by substituting µk with eq. 2.40 and eq. 2.41. These are equal to: a Ca (xk ) · xk + ta · xk + (λk − λk ) · xk = 0 a a a i j a ∀a = (i, j) ∈ A, ∀k ∈ K (2.44) Ca (xk ) a · xk a + (λk i − λk ) j · xk a =0 ∀a = (i, j) ∈ B, ∀k ∈ K (2.45)From 2.44 we thus obtain: ta · xk = −Ca (xk ) · xk + (λk − λk ) · xk a a a j i a ∀a = (i, j) ∈ A, ∀k ∈ K (2.46)So the objective (eq.) becomes: max −(Ca (xk ) · xk + (λk − λk ) · xk ) a a j i a (2.47) λ,x a∈A k∈KNote that the following equality holds: (λk − λk ) · xk = j i a λk · ( i xk − a xk ) a (2.48) a∈A k∈K k∈K i∈N a=i− ∈A a=i+ ∈AWhich is even more evident if we express it in the equivalent matrix-vector formulation: k k )i∈N λk · (Ai,a · xk ). a∈A k∈K i∈N xa · (Ai,a · λi ) = a∈A k∈K i aThe flow conservation constraint (eq. 2.34) states that: xk − a xk + a xk − a xk = bk a i ∀i ∈ N , ∀k ∈ K (2.49) a=i− ∈A a=i+ ∈A a=i− ∈B a=i+ ∈BThus we have: xk − a xk = bk − a i xk + a xk a ∀i ∈ N , ∀k ∈ K (2.50) a=i− ∈A a=i+ ∈A a=i− ∈B a=i+ ∈BFollowing from eq.2.48 and 2.50:
  26. 26. 2.4. REFORMULATING THE CNPP 29 λk · ( i xk − a xk ) = a (2.51) k∈K i∈N a=i− ∈A a=i+ ∈A λk · bk − i i λk · ( i xk + a xk ) ∀i ∈ N , ∀k ∈ K a (2.52) k∈K i∈N k∈K i∈N a=i− ∈B a=i+ ∈BEq.2.45 states that: Ca (xk ) · xk = (λk − λk ) · xk a a j i a ∀a = (i, j) ∈ B, ∀k ∈ K (2.53) k k kWe can thus substitute the a∈A k∈K (λj −λi )·xa term in the objective, that becomes: max λk · bk − i i Ca (xk ) · xk − a a Ca (xk ) · xk a a (2.54) λ,x k∈K i∈N a∈A b∈BLinearization of the µk · xk term a a The problem obtained so far still contains the nonlinear constraint µk ·xk = 0 deriving a afrom the complementarity slackness condition. However, this term can be linearizedthrough a relaxation, in the following way: kFirst of all, it is necessary to introduce a binary variable za , defined as: k 1 if µk = 0 a za = (2.55) 0 if µk = 0 aSince we don’t really need to know the exact value of µk but only have to impose that ait will be zero if xk = 0 and vice versa, we can write the KKT conditions as: a Ca (xa ) + ta + λk − λk ≤ M · za i j k ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.56) xk a ≤ M · (1 − k za ) ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.57)Where M is an arbitrary Big-M constant. However, for the problem not to be unboundedthe following must also hold: Ca (xa ) + ta + λk − λk ≥ 0 i j ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.58) xk ≥ 0 a ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.59)Thus the final reformulation for the CNPP will be:
  27. 27. 30 CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEM max ( λk · bk − i i Ca (xa ) · xk − a Ca (xa ) · xk ) a (2.60) λ,x k∈K i∈N a∈A b∈B s.t. xk a − xk a = bk i ∀i ∈ N , ∀k ∈ K a=i− ∈A∪B a=i+ ∈A∪B (2.61) Ca (xa ) + ta + λk i − λk j ≤M· k za ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.62) Ca (xa ) + ta + λk − λk ≥ 0 i j ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.63) xk ≤ M · (1 − za ) a k ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.64) xk ≥ 0 a ∀a = (i, j) ∈ A ∪ B, ∀k ∈ K (2.65) k za ∈ {0; 1} ∀a ∈ A ∪ B, ∀k ∈ K (2.66) ta ≥ 0 ∀a ∈ A, ∀k ∈ K (2.67) λk i free ∀i ∈ N , ∀k ∈ K (2.68)2.4.3 Complexity of the CNPP The complexity of the CNPP, as formulated above, depends heavily on the choice forthe cost function. For the particular cost function that was illustrated in section 2.2.4,this complexity relies on the choice for the positive integer parameters α and β. We candistinguish three situations that can occurr and that are of some interest: 1. α = 0 β fa In this case the congestion-dependent term α · qa equals zero, and the CNPP instance becomes a standard NPP one. In fact, while the constraints and leader objective face no change, the follower’s objective becomes:
  28. 28. 2.4. REFORMULATING THE CNPP 31 xa min (Ca (ωa ) + ta )dωa = (2.69) x 0 a∈A∪B xa = min (tr0a + ta )dωa = (2.70) x 0 a∈A∪B = min (tr0a + ta ) · xa (2.71) x a∈A∪B Thus resulting in a formulation that is identical to the one illustrated in the pre- vious chapter for the uncongested NPP. The case β = 0 is similar and does not offer any interesting particolarity. 2. α > 0 and β = 1 In this case the CNPP instance described above represents a quadratic problem (note that the constraints are all linear). Its complexity is superior to the uncon- gested NPP, but many efficient resolutive algorithms exist for this class of problems. 3. α > 0 and β > 1 In this case the CNPP instance is non linear and we can expect it to be much harder to solve than the uncongested NPP. Several solving approaches could be possible, from penalizing the nonlinear constraint in the objective (thus obtaining a convex polyhedron as feasible region) to heuristic procedures that use local approximations of the nonlinear term to generate a succession af approximating subproblems, and so on. Two procedures of this last type will be presented in the next chapter.
  29. 29. 32 CHAPTER 2. THE CONGESTED NETWORK PRICING PROBLEM
  30. 30. Chapter 3Solving the CNPP3.1 The Conditional Gradient method (Frank-Wolfe Algorithm) Although the bilevel formulation for the CNPP presented in the previous chapterhas not been studied so far, the User Equilibriun problem which constitutes the secondlevel of our problem (that is, the followers’ problem) is well known and has been studiedthoroughly in the past decades, with many resolutive algorithms developed so far. Thwmost widely known is probably the Frank-Wolfe algorithm (Frank and Wolfe (1956)),also known as Conditional Gradient method (Bertsekas (1995)). This algorithm solves asequence of linear problems that approximate the original non linear one, and generatesa sequence of admissible flow vectors from the solutions of the approximating instances.Asymptotically, this sequence will converge to the optimum solution. The fact thatit uses a linear approximation of what is here the second level part makes the F-Walgorithm particularly interesting for the resolution of the bilevel problem.3.1.1 Applying Frank-Wolfe to the D.U.E. assignment problem In the present section, we will briefly illustrate how the Frank-Wolfe algorithm canbe applied to a D.U.E. resolution. The algorithm solves a sequence of linear problems that approximate the originalproblem and then generates a sequence of admissible flows arc vectors x(j) from a feasi- ¯ble solution of the original problem x(0) ∈ Sx , where Sx is the set of admissible flows arcs. ¯The solution of the linear subproblems identifies, with respect to the current solutionx(j−1) , a direction along which to minimize the objective function in order to determine¯the new point x(j) . ¯ Using the Taylor expansion stopped at the first term, the objective function z(¯) can xbe approximated in a point y ∈ Sx by a linear function zl (¯): ¯ x z(¯) ∼ zl (¯) = z(¯) + x = x y z(¯)T (¯ − y ) y x ¯ (3.1) 33
  31. 31. 34 CHAPTER 3. SOLVING THE CNPP Therefore, the optimization problem with nonlinear objective function z(¯) and lin- xear constraints can be approximated by a succession of problems with linear objectivefunction zl (¯) and linear constraints for every point y ∈ Sx . In fact we have: x ¯ argmin z(¯) ∼ argmin zl (¯) = argmin z(¯) + x = x y z(¯)T (¯ − y ) = argmin y x ¯ z(¯)T x (3.2) y ¯ Since in one point y the gradient of the objective function ¯ z(¯) equals the arc cost xvector calculated in the same point, z(¯) = c(¯), we obtain: y ¯y argmin z(¯) ∼ argmin c(¯)T x x = y ¯ (3.3) The objective function described above, paired with the non-negativity and flowconservation constraints of the Traffic Assignment Problem (eq. 2.9 and 2.10) denote anoptimization problem that corresponds to the model of D.U.N / D.N.L, the minimumcost - multi-commodity flow linear problem. This problem can be solved through the well-known Dijkstra’s algorithm (henceforth referred as All-or-nothing assignment (AON)). It follows that through the application of Frank-Wolfe algorithm it is possible toreduce a problem of D.U.E. assignment (convex) to a sequence of approximating D.U.N.assignment subproblems (linear), thus ignoring locally the cost-flow inter-dependencedue to congestion. The j-th subproblem, with j = 1, . . . , m, where m is the number of the subproblemsin the succession, can be formulated as follows: (j) (j) min Ca (x(j−1) ) · xa,AON + (j) a Ca (x(j−1) ) · xa,AON (j) a (3.4) x a∈A a∈B k,(j) k,(j) s.t. xa,AON − xa,AON = bk i ∀i ∈ N , ∀k ∈ K a=i− ∈A∪B a=i+ ∈A∪B (3.5) k,(j) xa,AON ≥ 0 ∀a ∈ A ∪ B, ∀k ∈ K (3.6) (j−1) where xa is the flow on arc a ∈ A ∪ B of the (j − 1)-th problem, specified asfollows: x(j−1) = a xk,(j−1) a (3.7) k∈K (j) k,(j) xa,AON = xa,AON (3.8) k∈K (j) (j−1) Ca (xa ) is the cost of arc a ∈ A ∪ B calculated through the specified cost function (j−1)from the arc flow xa :
  32. 32. 3.1. THE CONDITIONAL GRADIENT METHOD(FRANK-WOLFE ALGORITHM)35   (j−1) β (j) (j−1) xa Ca (xa ) = tr0a · 1 + α ·  ∀a ∈ A ∪ B (3.9) qa (j) xa,AON is the flow on arc a ∈ A ∪ B, solution of the j-th problem obtained throughthe A.O.N. resolution algorithm. (j−1) Note that xa arc flows of the (j − 1)-th problem are constant (since they are the (j) (j−1)solution of this problem) and consequently Ca (xa ) arc costs are constant for the j-th (j)problem. It follows that xa,AON arc flows are the only variables in the j-th problem, thusresulting in a linear objective function for the j-th problem.3.1.2 F-W algorithm steps The steps of the Frank-Wolfe algorithm applied to D.U.E. assignment are the follow-ing:Initialization An admissible starting solution is found x(0) ∈ Sx (see §3.4.1) and a ¯ threshold is chosen for the stopping criterion (see §3.1.3).j-th iteration Given the flow vector x(j−1) , solution of the problem at the (j − 1)-th ¯ iteration: ¯ ¯x 1. The cost vector is determined in function of the flow vector, as C (j) = C(¯(j−1) ), through equation 2.5. 2. The approximating linear problem denoted by Equations 3.4, 3.5, 3.6 is solved through the All-or-nothing algorithm, since arc costs (denoted as arc labels) are constant for the j-th iteration. Thus the flow vector for the non congested (j) network is obtained: xAON . ¯ 3. The descent step is executed in order to determine the final solution for the j-th iteration. It consists in the following one-dimensional non-linear research problem: (j) µ(j) ∈ argminµ∈[0,1] ψ(µ) = z x(j−1) + µ · (¯AON − x(j−1) ) ¯ x ¯ (3.10) where µ is a scalar variable. The problem can be solved through the bisection algorithm or any other one-dimensional minimization procedure. 4. Vector x(j) is found as a solution for the j-th iteration. It is a convex combi- ¯ (j) nation of the previous j All-or-nothing assignment xAON : ¯ (j) x(j) = x(j−1) + µ(j) · (¯AON − x(j−1) ) ¯ ¯ x ¯ (3.11)Stopping criterion The stopping test is executed against a threshold (see §3.1.3). If the test fails, a new iteration is executed with vector x(j) as the starting solution; ¯ otherwise the algorithm is stopped and x ¯ (j) is the deterministic flows vector.
  33. 33. 36 CHAPTER 3. SOLVING THE CNPP3.1.3 Stopping criterion As mentioned in Chapter 3.1.2, at the end of each iteration a stopping test is run;when it is verified the sequence of approximating subproblems is stopped and the vectors ¯x(j) and t(j) of the j-th subproblem are the optimal solutions of the CNPP problem.¯ In order for x(j) to be a local minumum (in our case a global minimum since the ¯objective function is convex) it has to be a stationary point for z(x). This means thatthe following condition must hold: (j) z(¯(j) )T (¯AON − x(j) ) ≥ 0 x x ¯ (3.12) However, from a practical point of view, such a termination criterion may not beso valuable. The conditional gradient algorithm in fact is known for slowing down theconvergence rate significantly as it approaches the optimal solutiol. Moreover, in mostapplications, an approximated solution that is close enough to the optimum is morethan sufficient, especially if we can obtain it more quickly, through a lower number ofiterations. Given the considerations above, we are more eager to use a threshold-basedstopping criterion, so that the algorithm will stop once a given threshold is reached.From the convexity of the objective function we can obtain upper and lower boundinequalities from which we will derive such a criterion. We know z(x) to be convex only if the following holds: z(y) ≥ z(x) + z(x)T (y − x) (3.13) We therefore have that: (j) (j) zl (¯AON ) = z(¯(j) ) + x x z(¯(j) )T (¯AON − x(j) ) x x ¯ (3.14) (j) (j) T (j) (j) ≤ z(¯ x )+ z(¯ x ) (¯∗ x −x ¯ ) (3.15) (j) ≤ z(¯∗ ) x (3.16) where the equality follows from the definition of the optimal solution to the LP (j)problem, the first inequality by the fact that xAON solves this LP problem but not ¯ (j)necessarily x∗ , and the second inequality from the convexity of z. So, we have that at ¯every iteration j, (j) (j) zl (¯AON ) ≤ z(¯∗ ) ≤ z(¯(j) ) x x x (3.17) where the last inequality holds because x(j) is a feasible solution. In the condi- ¯tional gradient algorithm the value of z descends after each iteration, thus the se- (j)quence of {z(¯(j) )} strictly monotonically decreases towards z(¯∗ ), while the sequence x x (j) (j)of {zl (¯AON )} approaches z(¯∗ ) from below, though not necessarily monotonically. We x x (j)therefore always have an interval, [zl (¯AON ), z(¯(j) )], which contains the optimal objec- x xtive value. From this we can derive a threshold-based criterion of the type: let be achosen value for an acceptable relative objective error, then the stopping condition forthe j-th iteration is as follows:
  34. 34. 3.2. CONVERGENCE CONDITIONS 37 (j) |z(¯(j) ) − zl (¯AON )| x x (j) < (3.18) |zl (¯AON )| x3.2 Convergence conditions In order for the Frank-Wolfe algorithm to converge to a vector of optimal solutionsafter a certain number of iterations, it is necessary that certain conditions for convergenceare met. Since in the present work the algorithm is used for a User Equilibrium allocation, werefer to LeBlanc et al. (1975). In the article it is recommended that the specified costfunction meets the following requirements: 1. continuous and differentiable at least once at all points, 2. non-negative, 3. non-decreasing. As can be easily verified, the cost function used in the present work (eq. 3.9) meetsall three requirements, in particular, is strictly positive and strictly increasing. Typically, the Frank-Wolfe algorithm is adopted to find an equilibrium point oncongested networks in which all arcs are priced (so that the tariff component is added inthe function of generalized cost) or where there are no tariffs. In literature (Yang et al.(2004)) there is an example of application to a mixed network with tariffed and non-tariffed arcs, including a bilevel programming approach. However no account is taken ofthe congestion and still the objective function of the optimization model is nonlinear, asdemand is elastic; moreover, there are also non-additive costs and cost functions are notseparable. The Frank-Wolfe algorithm is adapted successfully to the case examined, asthe only additional condition states that it must be convex programming. Further necessary conditions for the convergence of Frank-Wolfe algorithm appliedto this case could not be found in literature.3.3 Accelerating convergence As it is known from numerous examples in literature, the time required for con-vergence of the Frank-Wolfe algorithm with D.U.E. allocation can vary considerablydepending on the size and complexity of the network, on the descending step and on thethreshold for the stopping test. As the number of iterations grow, the algorithm tendsto zigzag increasingly. While the algorithm has the historical advantage of a low memory usage (useful forcomputers especially a few decades ago), on the other hand, the computational efforttends to increase as you get closer to the optimal solution, thus making the resolution
  35. 35. 38 CHAPTER 3. SOLVING THE CNPPin real time more critical . This can be partly overcome by setting a less restrictivethreshold although this implies to sacrifice final accuracy. Leaving aside the particular structure of the modeled network to more specific casesthan those of this discussion, it is possible to accelerate the convergence of the algorithmby choosing an appropriate technique for the descending step. The µ(j) parameter introduced in subsection 3.1.2 was first used in LeBlanc et al.(1975); for each j-th iteration this parameter is determined through a one-dimensionallinear research, by solving a problem determined by Equation 3.10. There are some alternatives in literature to the descending step described above, inorder to accelerate the convergence of the original Frank-Wolfe algorithm. In particular,a variant of the of the parallel tangent method (PARTAN) LeBlanc et al. (1985) can beused, where two one-dimensional minimizations are made for each iteration. In an ar-ticle Lupi (1986) introduces another modification to the descending step that, althoughproviding a convergence rate of the same order of the PARTAN, requires only one one-dimensional minimization. Variants proposed by Fukushima (1984) and Weintraub et al.(1985) are also interesting. Please refer to the cited articles cited for a comparison ofdifferent methods based on numerical examples. The Frank-Wolfe algorithm for D.U.E. assignments has some resemblance with theMethod of Successive Averages (M.S.A.) algorithm for S.U.E. allocations (Stochastic UserEquilibrium) for stochastic equilibrium, except for the cost functions used (that includerandom components), the algorithm for solving approximating subproblems approxi-mants (Dial algorithm for stochastic assignments on non congested networks (S.N.L))and the descending step. Regarding the latter, a simple µ(j) = 1 is used, where j is the jindex of the iteration. By adopting this simple solution at the expense of mathematicalsophistication, the zigzag behavior is eliminated but the optimal solution we want thealgorithm to converge to may be missed. Again, there are alternatives in literature to the 1 descending step for the M.S.A jalgorithm for S.U.E. allocation; for example Polyak (1990) suggests a µ(j) = j −β de-scending step, where 0 < β < 1.
  36. 36. 3.4. TWO-STEPS ALGORITHM 393.4 Two-steps algorithm The procedure described in the present section is a Gauss-Seidel-decomposition-typealgorithm. It solves the problem described by eq. 2.13 - 2.17 by iteratively solving firstthe followers’ problem (through Frank-Wolfe) with respect to arc flows x(j) and then ¯the leader’s problem with respect to the tariff vector t(j) . It is probably the most ob-vious and immediate way to approach a resolution for our problem. It is also the onlybilevel/congestion solution approach for which some reference exists in literature. Asimilar algorithm was indeed used by Julsain (1998) to find an equilibrium point on acongested telecommunication network.The basic steps of the algorithm are the following:Initialization An admissible starting solution is found x(0) ∈ Sx (see §3.4.1) and a ¯ threshold is chosen for the stopping criterion (see §3.1.3).j-th iteration Given the flow vector x(j−1) and the tariff vector t(j−1) , solution of the ¯ problem at the (j − 1)-th iteration: 1. The cost vector is determined in function of the flow vector and the tariff (j) vector, as Ca , through:   (j−1) β (j) xa Ca = tr0a · 1 + α ·  if a ∈ A ∪ B (3.19) qa (j−1) k,(j−1) where xa = k∈K xa . 2. The linear approximation for the second level problem is solved through the All-or-nothing algorithm, since arc costs (and tariffs) are constant for the j-th iteration. (j) (j) min (Ca + t(j−1) ) · xa,AON + (j) a (j) Ca · xa,AON (3.20) x a∈A a∈B k,(j) k,(j) s.t. xa,AON − xa,AON = bk i ∀i ∈ N , ∀k ∈ K a=i− ∈A∪B a=i+ ∈A∪B (3.21) k,(j) xa,AON ≥ 0 ∀a ∈ A ∪ B, ∀k ∈ K (3.22) (j) Thus the flow vector for the non congested network is obtained: xAON . ¯

×