ASS5A0 H5USTTS1 INtSTTtU TE0

14
r~~~~~~~~~~~~~~~~~~~~~~~ "' ' ~' '- -:f''' -. 5. :~.. f (: i; ;00 00 0:'0'-:' !':-i ......-- : 00S fi , S-0 0 0 ;0 0 0 0 ff0 fX W i', :; .... : ,~ ' "" :r :'L-'LA ;0 E'~ ~ ~~~~- i'V0n00: ~'~' , %:- 0:. '.';'.0f'0 s00,r ff 4 ' ;0:0 -0 0 ::?0 ; -- 0 : ,: :it: i 7 : ;00 t::;0::D ; f; t00 00 00|0 0;w orkingif Lpaper0: 0;: :;- "0:' 0-), i ": ~I- -. /-?.. ":-/ :i-':-.....¥ ;,, L :.: t: .... : f. 0f- . ..... .,~~~~~~~~~~~~~-" .'.:-... ;.. ' . "- -- .,7:E: z0000 00 fff . Xt;00d : 0'!00 000; ff~~~~~~~~~~~ u" ".,S: i~ ' -. i t a dE~ ::tV 0ff:Qu0: l: ffff;; : -' D; 0S' .:O , : : - - . . -- . - - . . - - :- - !-- ; ,'AS 00 00;ff ff ffu 0f '; 0 302;000 iV ff u0' f f f'L! D 'V0 'S S ;0 : ,, :V ; , ' ' i/; 11f f f f; "' ' - ' , ' . ; ' - -' ' ' ':" ' -' .' ' -. ' - . - . , ,. - ' . : , ' . ': 240k ASS5A0 H5USTTS1 INtSTTtU TE0 'O' ' ECNLG' Y: ;' 7 /: Im 0 S amA D:X0 0 ::- 7i~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Transcript of ASS5A0 H5USTTS1 INtSTTtU TE0

Page 1: ASS5A0 H5USTTS1 INtSTTtU TE0

r~~~~~~~~~~~~~~~~~~~~~~~ "' ' ~' '- -:f''' -. 5. :~..

f (: i; ;00 00 0:'0'-:' !':-i ......-- : 00S fi , S-0 0 0 ;0 0 0 0 ff0 fX W i', :; ....: ,~ ' "" :r:'L-'LA ;0 E'~ ~ ~~~~- i'V0n00: ~'~' , %:- 0:. '.';'.0f'0 s00,r ff 4 ' ;0:0 -0 0 ::?0 ; -- 0 : ,:

:it: i 7 : ;00 t::;0::D ; f; t00 00 00|0 0;w orkingif Lpaper0: 0;: :;- "0:' 0-), i" : ~I- -./-?.. ":-/ :i-':-.....¥

;,, L :.: t: .... : f. 0f- ...... .,~~~~~~~~~~~~~-" .'.:-... ;.. ' . "- - -

.,7:E: z0000 00 fff . Xt;00d : 0'!00 000; ff~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~gENU00 u" ".,S: i~

' -. i t a dE~ ::tV 0ff:Qu0: l: ffff;; : -' D; 0S' .:O, : : - - . . - - . - - . . - - :- - !-- ;,'AS 00 00;ff ff ffu 0f '; 0 302;000 iV ff u0' f f f'L! D 'V0 'S S ;0 :,, :V ; , ' ' i/; 11f f f f; "'

' - ' , ' . ; ' - -' ' ' ':" ' - ' .' ' -. ' - . - . , ,. - ' . : , ' . ':

240k ASS5A0 H5USTTS1 INtSTTtU TE0 'O' ' ECNLG' Y: ;' 7 /:-:Im 0 S amA D:X0 0 ::-

7i~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Page 2: ASS5A0 H5USTTS1 INtSTTtU TE0

A LINEARIZATION AND DECOMPOSITIONALGORITHM FOR COMPUTINGURBAN TRAFFIC EQUILIBRIA

by

Hedayat Z. Aashtiani

and

Thomas L. Magnanti

OR 122-83 June 1983

Preparation of this paper was supported in part by the Department ofTransportation under contract DOT-TSC-1058 and by the National ScienceFoundation under grand 79-26225-ECS.

Page 3: ASS5A0 H5USTTS1 INtSTTtU TE0

1

A LINEARIZATION AND DECOMPOSITION ALGORITHMFOR COMPUTING URBAN TRAFFIC EQUILIBRIA

Hedayat Z. Aashtiani and Thomas L. Magnanti

Sloan School of Management, M.I.T.Cambridge, MA 02139

Several years ago, we proposed and studied alinearization and decomposition algorithm forcomputing general urban traffic equilibria. Theprocedure applies to models that include linkinteractions, multiple commodities (e.g., modes oftransit, or user classes), and with demandrelationships general enough to model inter-actions between origin-destination pairs, such astravelers at an origin choosing trips from amongseveral possible destinations. As reported inthis paper, our computational experience with thisalgorithm has been very promising. It suggeststhat linearization and decomposition methodsenable general problems to be solved withcomputational effort comparable to that ofspecialized techniques used for solving sub-classes of equilibrium problems that haveequivalent optimization formulations.

INTRODUCTION

Models of urban traffic equilibria, likesimilar network applications in communication,water resource planning, and spatially separatedeconomic markets, are specially structured large-scale systems of nonlinear equations and inequal-ities. Often these models are stated in the formof equivalent fixed point models, nonlinearcomplementarity problems, or variational inequal-ity formulations--all problem domains that haveattracted considerable algorithmic development.Nevertheless, because they are so large, networkequlibirum models have eluded solution by generalpurpose methods devised in any of these problemcontexts. This lack of applicability has promptedresearchers to search for new algorithms includingspecial purpose methods that exploit theunderlying network structure.

In this paper, we study a Newton-type lineari-zation method and several decomposition proce-dures for solving a general traffic equilibriummodel. Our computational results suggest thatthese solution strategies can be very effective;indeed, they require little more computationaleffort than algorithms for solving simpler classesof equilibrium models.

The first attempts at solving large-scaletraffic equilibria problems appeared in the late1960's and early 1970's. These methods grew outof seminal work by Beckman, McGuire and Winsten

This article has appeared in Proceedings,Symposium, p. 8-19.

(7), and related work by Samuelson (34) in adifferent context, who showed that certainclasses of equilibria problems (basically, singlemode problems with no link interactions and withtravel demand functions with scalar arguments)could be formulated as equivalent nonlinear pro-gramming problems with linear network flow con-straints. The first algorithms of this type werefeasible direction algorithms with linear ratesof convergence [Bruynooghe, Gilbert andSakarovitch (10), Cantor and Gerla (12), Golden(23), and LeBlanc (28)]. More recent studieshave considered acceleration procedures [Florian(20)] for these algorithms and second ordermethods [Bertsekas (8), Dembo and Klincewicz(18)].

As the models of urban traffic equilibriabecame more general, they no longer could beformulated as equivalent optimization problems.Rather, they gave rise to models formulated asnonlinear complementarity problems [Aashtiani andMagnanti (2)], as stationary point problems[Asmuth (6)] and as variational inequalities[Smith (36)]. Consequently, solution methods hadto be tailored for one of these related formula-tions. This paper summarizes one of the firstalgorithmic studies of this variety, but whichhas appeared to date only in unpublished reports[Aashtiani (1), Aashtiani and Magnanti (3)].Since these results were first developed, severalinsightful studies have established conditionsunder which the solution strategies of this paperare guaranteed to converge. Pang and Chan (33)and related results of Josephy (26) have estab-lished local convergence for the Newton-typelinearization algorithm of our study and Dafermos(15-17), Florian (21) and Pang and Chan (32) haveestablished convergence criteria for Gauss-Jordonand Gauss-Seidel type iterative methods like thedecomposition methods that we have proposed.Basically, these results require monotonicity andsome form of diagonal dominance of the underlyingproblem maps (though only locally for Newton'smethod). Other studies by Ahn (4), Ahn and Hogan(5) and Irwin and Yang (25) have establishedsimilar results in the context of energy distri-bution and production in spatially separatedmarkets. In addition, Bertsekas and Gafni (9)have studied convergence properties of projectiontype methods. Rather than repeat the detailedanalyses and proofs of convergence, we refer thereader to these original sources.

IEEE 1982 Large-Scale Systems- -

Page 4: ASS5A0 H5USTTS1 INtSTTtU TE0

2

These studies now provide a firmer theoreti-cal foundation for our computational procedures.With the interest that they have generated andwith the continued attractiveness of algorithmicresearch related to our study, publication ofthis solution approach and of our empirical find-ings would seem to be timely.

Although we limit the discussion in thispaper to urban traffic applications, the algori-thms that we consider apply equally as well in avariety of other network equilibria applications.

1. THE MODEL

The traffic equilibrium model aims to predictflow patterns on links of an urban transitnetwork. The basic ingredients of the model aredemands for flow between specified origin anddestination (O-D) pairs of the network and delaycosts (time) on the paths p of the network.

Formally, for a given network [N, A] with aset N of nodes and a set A of directed arcs, themodel is a system of nonlinear euqations andinequalities:

(Tp(h)-ui)hp= 0

(T(h)-ui ) > 0

for all PEPi and iI (l.a)

for all pePi and iEI (l.lb)

h - Di(u)= for allPePi.

h >0

u > 0.

icI (l.lc)

(1.1d)

(1.1le)

The decision variables for this model are

The first two equations in (1.1) modelWardrop's traffic equlibrium law requiring thatfor any O-D pair i, the travel time (generalizedtravel time) for all paths, pPi, with posi-tive flow, hp > 0, is the same and equal toui, which is less than or equal to the traveltime for any path with zero flow. Equation(l.lc) requires that the total flow among differ-ent paths between any O-D pair i equals the totaldemand, Di(u), which in turn depends upon thecongestion in the network through the shortestpath variable u. Conditions (.ld) and (.le)state that both flow on paths and minimum traveltimes should be nonnegative.

Before continuing, let us introduce notationthat will streamline our discussion at points.Let = [ (p, a)] denote a path-linkincident matrix (6 (p, a) = 1 if link a lies onpath p). Then v = Ah is a vector of link flowscorresponding to the vector h of path flows. Foreach link aA, let ta(v) denote a delay func-tion defined on the link and let t(v) denote thevector-valued function with components ta(v).Similarly, let D(u) denote the vector-valuedfunction with components Di(u) and let T(h)denote a vector-valued function with componentsT (h). In addition, let FL (h) = {hp:pcP }denote the flow joining O-D pair i. Finally, letk denote the number of links in the network andlet denote an incident matrix of paths versusO-D pairs.

With this notation, we can formulate animportant special case of the equilibrium problem(1.1) -- an additive model in which

T(h) = ATt(v). (1.2)

hp the flow on path p of the network,

h, the vector of path flows hp withdimension r equal to the total number ofO-D pair and path combinations,

ui, an accessibility variable, or shortesttravel time, between O-D pair i,

u, the vector of accessibility variablesui with dimension s equal to thenumber of O-D pairs.

The parameters for the model are

I, the set of O-D pairs,

Pi the set of paths joining O-D pair i,

Di(u), the demand function for O-D pair i;D: Rs + , and+ +

T (h), the volume delay, or general dsutility,function for path p; T: R R+.

We assume that at least one path joins eachorigin and destination pair. Note that any pathp joins, and hence defines, a unique origin-destination pair icI.

That is, the volume delay on path p is the sum ofvolume delays of the arcs in that path. Through-out the remainder of this paper we assume thatthe equilibrium model is additive, i.e., equation(1.2) applies.

The notation of the equilibrium model (1.1)is deceptively simple and somewhat disguises itsgenerality. In particular, a judicious choice ofnetwork structure permits the formulation tomodel a wide range of equilibrium applicationsincluding multi-modal transit, multiple classesof users, and destination or origin choice. Tomodel multi-modal situations, we might view theequilibrium as occurring on an extended networkwith a distinct component for each mode oftransit. [Dafermos (14) and Sheffi (35) adoptthis approach as well]. The component networksmight be identical copies of the underlyingphysical transportation network, as when autosand buses share a common street network. Sincethe delay ta(v) on links of the automobilecomponent network depend upon the full vector vof link flows, the delay function can account forcongestion added by buses sharing these links.Note, though, that the networks for each modeneed not be the same. Consequently, bus routesmight be fixed and subway links might be distinctfrom those of other modes.

Page 5: ASS5A0 H5USTTS1 INtSTTtU TE0

3

Aashtiani and Magnanti (2) specify moredetails concerning the model's range of applica-tions and demonstrate that only mild continuityassumptions are required to establish the exist-ence of an equilibrium solution.

Notice that the first set of equations (.la)in the equilibrium formulation (1.1) state thatthe product of one of the problem variables hpand a particular function f(h,u) T(h) - ui iszero. Moreover, by inequalities (l.lB) and (l.ld)both terms hp and fp(h,u) in the product hpfp(h,u)must be nonnegative. As such, the equilibriummodel (1.1) is reminiscent of the well-knownnonlinear complementarity problem:

xiFi(x) = 0Fi(x) > 0

xi 0.for i = 1, 2,...,m (1.3)

In referring to this formulation, we let x be anm-dimensional vector with components xi andF(x) be the vector-valued function with mcomponent functions Fl(x), F2 (x), ..., Fm(x).

Suppose that we let g.(h,u) FL (h) - D (u)1

for all icI and replace equations (1.c) in theequilibrium model (1.1) with the constraints

(1.4)gi (h,u) > 0and ui gi (h,u) = 0.

Then the model becomes a nonlinear complmentarityproblem with the identifications

m r+sx = (h,u)

and F(x) = (fp(x) for all pePi and icI, gi(x)for all i) Rm.

If we make the mild assumption that thetravel time ta(v) on each link a of the networkis positive and that demand function Di(u) isnonnegative, then the equilibrium model (1.1) andthe nonlinear complementarity version of theproblem are equivalent. Essentially, theseassumptions imply that the shortest travel timeui between each origin-destination pair i ispositive. Consequently, the conditions (1.4)imply that gi(h,u) = 0, which is equation(l.lc). Aashtiani and Magnanti (2) prove thisequivalence algebraically.

Our solution procedure will be cast as amethod for solving this nonlinear complementarityversion of the equilibrium model.

2. SOLUTION STRATEGY

The formulation of the traffic equilibriumproblem as a nonlinear complementarity problembrings the entire theory of complementarity tobear on the problem, but has little algorithmicconsequence. Usually transportation problems arefar too large to be solved by available nonlinearcomplementarity algorithms [Kojima (27), LUthi(30)1. For example, even a small problem with100 O-D pairs and with only 10 paths joining eachO-D pair contains more than 1000 variables,

whereas the largest nonlinear complementarityproblem that general purpose codes can solve hason the order of 100 variables, and even thenrequires a few minutes of solution (CPU) time.Since our formulation of the traffic equilibriumproblem has one variable for each path joining anO-D pair and the number of paths in a networkexplode combinationally with the size of theproblem, solution by general nonlinear comple-mentarity algorithms would appear to be hopeless.

2.1 Decomposition

To overcome the computational burden imposedby the problem size, we propose an iterativedecomposition scheme. In this procedure, wepartition the set of variables {xi; icI} intoa collection of mutually exclusive subsetsI1,--., IM. Then corresponding to each subsetIj, we define a subproblem (SPj) as follows:

Fi(x)xi = 0(SPj) Fi(x) > 0

xi 0

for all iIJfor all ijfor all icIj.

In this formulation all of the components of xare fixed except those xi with iIj.Obviously, each (SPj) is a restricted versionof the orginal nonlinear complementarity problem.

To solve the problem we might use a standardGauss-Jordan or Gauss-Seidel type solutionstrategy. That is, given a solution xq at someiteration of the procedure, we find xq+l bysolving (SP1 ), (SP2), ..., (SPI) in order. Withineach subproblem (SPj) we let xi = xiq for allicI - I in the Gauss-Jordan procedure and solvefor xiq+l for icIj. In the Gauss-Seidelprocedure, we use the most recently computed valuesof each x at every sqep. That is, when solvingqm(SPJ) we let x= xi for every iI K and K < J.

The efficiency of this procedure dependsheavily upon how the set I is decomposed.Typically, it is best to collect together thosevariables that are most related to each other, sothat the corresponding subproblem inherits thecharacteristics of the original problem. Forexample, in the case of destination choice demandfunctions, we might decompose the problem interms of origins. We describe the decompositioncriteria in more detail in later subsectionsafter first looking more closely at the computa-tional requirements for solving each subproblem.

2.2 Linearization

Note that a decomposition of the equilibriumproblem in terms of its O-D pairs would seem toprovide the smallest subproblems that inherit theessential characteristics of the originalproblem. But, even for this decomposition, thenumber of variables, corresponding to the numberof available paths joining the origin and desti-nation would be so large that no nonlinear com-plementarity algorithm could be used directly tosolve the subproblems. Although the number ofpaths with positive flow is usually small (on theorder of 4 or 5) even by knowing these paths it

Page 6: ASS5A0 H5USTTS1 INtSTTtU TE0

4

is still not efficient to use general purposenonlinear complementarity algorithms, becausethey would require an enormous number of func-tional evaluations. For instance at each vertexin their grid search procedure, simplical pathmethods must evaluate all of the link-volumedelay functions.

This difficulty, which is in the nature ofthe nonlinear complementarity problem, can beovercome by introducing an iterative lineari-zation scheme, which is a version of Newton'smethod for linear inequality and equality systems.

We define the linearized problem for thenonlinear complementarity problem (1.3) at apoint x as follows:

[F(x) + (x - x)VF(x)]x =

(LCP) F(x) + (x - x)VF(x) > 0

x > 0.

We can then attempt to solve the nonlinear com-plementarity problem by successive linearization.That is, given a feasible solution xq at someiteration q, we define xq+l as the solution to(LCP) linearized at xq.

Clearly, (LCP) is a linear complementarityproblem. As is well-known, whenever VF(x), theHessian of F(x), is a positive semi-definitematrix, complementary pivot methods [Cottle andDantzig(13), Eaves (19), and Lemke (29)] wouldsolve the problem efficiently. These algorithmscan solve problems with 100 variables within afew seconds of CPU time. Therefore, if thisiterative procedure gives us a "reasonable" solu-tion after only a few linearizations, then itwould be much faster than any general purposenonlinear complementarity algorithm.

This technique has one significant advantagewhen applied to the traffic equilibrium problem:the linearized problem (LCP) is a traffic equi-librium problem with linear affine functions andinherits any special structure of original prob-lem, but is much easier to solve. Nevertheless,even for this simplified linear problem there isno efficient algorithm for large-scale applica-tions currently available in the transportationliterature (for the general case when Vt(v) orVD(u) are non-symmetric), even though the prob-lem can be solved by linear complementarityalgorithms.

Nonetheless, because the linearized problemis a traffic equilibrium problem, we can exploitthe nature of the problem as being cast in termsof path flows. At each iteration, instead ofrequiring all paths in the problem formulation,we can include only those paths that have posi-tive flows. This is possible because we cangenerate shorter travel time paths, if there areany, by using a shortest path algorithm at eachiteration (see section 3). Therefore, the (LCP)is much smaller in size than the nonlinar comple-mentarity problem and, consequently, much easierto solve, so that problems with 100 O-D pairs

could be solved easily without using any decompo-sition.

For the traffic equilibrium problem it iseasy to see that VF(x) is positive semi-definite when both Vt(v) and -VD(u) are posi-tive semi-definite matrices. To see this, usingthe vector notation introduced earlier we have

x = (h,u), v = Ah

and

F(x) = (ATt(Ah) - ru, rTh - D(u)).

Thus,Thus, r AT Vt(Ah) ' A -rVF(x) = T

-Fx rT, -VD(u) 31~~

Clearly VF(x) is a positive semi-definite matrix,because for any x = (h,u) and v = Ah we have:

-T - -T.T - -T.- -TT Dx VF(x)x=(h A )Vt(Ah)(Ah) - ru+u rh-u VD(u)u= T - + T>0= v Vt(v)v +u (-VD(u))u > 0.

2.3 Composite Strategy

The size of many applications met inpractice, with hundreds or even thousands of O-Dpairs, precludes the solution of successivelinearizations. Therefore, despite itsattractiveness, the linearization scheme cannotbe applied directly to many real-life problems.We can, however, combine decomposition andlinearization in a composite solution scheme:

General Scheme

Step 1 - Choose a starting point x and set q = 0.

Step 2 - Set J = 0.

Step 3 - Set J = J + 1. If J > M, go to step 6.Otherwise, set = xJ and set qq = 0.

Step 4 - Solve (LSPj), linearized at x, to find

a new point called x q+l .

Step 5 - Set qq = qq + 1. If x3q is a "reason-able" solution to (LSPj), then go tostep 3. Otherwise set x+l = xq and goto step 4.

Step 6 - Set q - q + 1. If xq is a "reasonable"solution to the nonlinear complemenarityproblem, then stop. Otherwise, go tostep 2.

We refer to this procedure as either the compositealgorithm or the linearization algorithm.

In this algorithm description, (LSPj) corresponds to the linearization of (SPj) at x,defined by replacing Fi(x) with its linearapproximation F (x) + (x - x ) VF (x) where xdenotes the vector (x ; c JJ) and Fi(x) denotes the vector (ai(x)/ ; k I5).

Page 7: ASS5A0 H5USTTS1 INtSTTtU TE0

5

We refer to each pass though every subproblemin the algorithm as a cycle (i.e., whenever were-execute step 2) and refer to each solution ofa linearized subproblem as an iteration.

Note that when M = 1, the composite schemereduces to the linearization scheme, and when allfunctions are linear, it reduces to the decompo-sition scheme.

In the next section, where we describe imple-mentation details of the algorithm, we show howto choose the starting point x and give somepractical criteria for assessing when a solutionis "reasonable".

3. IMPLEMENTATION

3.1 - Approximate Equilibria

In solving any traffic equilibrium problem wewill never compute a solution exactly. Rather,we require a convergence critieria that definesan approximate solution. Toward this end, forany > o, we say that a flow pattern h* is anc-approximate equilibria if it satisfies theconditions:

(u i-ui ) <_ c for all iI (Al)

iFLi(h*)-Di(u*) I/Di(u*) < E for all icI

where for all icI

(A2)

u Min T (h*) and u = Max{T (h*) < pcp p 1

hp 0

The first condition (Al) guarantees that thepercentage difference between the longest pathwith positive flow and the shortest path is lessthat c for all O-D pairs. The second conditionguarantees that the percentage difference betweenthe flow FLi(h*) and the demand Di(u*)between any O-D pair i is less than for allO-D pairs. Sometimes we refer to as theaccuracy of the solution.

When we are applying the decomposition (orlinearization) scheme, it does not pay to solveeach subproblem (or linearization) to within theultimate accuracy c, because the accuracy forany subproblem will be destroyed when anothersubproblem is solved. Therefore, it is better tostart with a less stringent accuracy requirementand to decrease it until the ultimate accuracy isachieved. For example, we can start with anaccuracy of ne for some integer n > 0 and some6 > 1. After achieving the accuracy Snc, thealgorithm continues to impose accuracy require-ments n¢1c, n-2c, . . . and finally, after nsteps, accuracy c. This feature increases theefficiency of the algorithm enormously.

3.2 Starting Solution

To find a starting solution to initiate theiterative algorithm, we can use an all-or-nothingassignment which finds, for each O-D pair i, the

shortest path p when all links have zero flow,and assigns all of the generated demand to thatpath. That is, define u as the cost of pathpT when all arcs flows are equal to zero andassign Di(u°) units of flow to p.

Notice that in this all-or-nothing assign-ment, we assign the flow generated by the demandfunction to a shortest path for each O-D pairsequentially, without considering the effect ofthe congestion from the flow previouslyassigned. This might lead us to assign too muchflow on those links that have low free-flowtravel times. To avoid this, we can update theminimum travel times, u, after each assignment.Also, since the initial u, as compared to theu at equilibrium, is small, and, since the demandfunctions are usually increasing, the all-or-nothing assignment procedure generates too muchinitial flow, far from the value at the equilib-rium. To avoid this, we can assign only somefraction of the generated demands to the shortestpaths. We have used this modified all-or-nothingassignment, with the choice of 0.5 for the frac-tion, in our computational results.

3.3 Path Generation

As we mentioned previously, when solving eachlinearization, we include only those paths thathave positive flow; we refer to these paths asthe set of working paths, denote PiW. Wealso refer to any solution (h*, u*) as an -approximate equilibrium with respect to the work-ing paths if it satisfies conditions (Al) and(A2) with the sets PiW for all icI. Toguarantee that this solution is an c-approximateequilibria over all paths, that is, over the setsPi for all iI, we must satisfy the followingcondition:

[u* - Min T(h*)]/ui* < for all icI. (A3)p~~~ -Ppcp PC

To construct the set of working-paths, westart with the paths in the initial solution. Weadd any path that gives Min{Tp(h*):pcPi}and that satisfies condition A3) to the set ofPiW. Also, we always delete any path withzero flow from the set of PiW to maintainthe size of the working-path sets as small aspossible.

Because we must apply the shortest paths somany times, once for each iteration, their compu-tation becomes one of the most time consumingcomponents of the linearization algorithm. Con-sequently, since most shortest path algorithmsfind all the shortest paths from one origin toall destinations simulataneously, we will typi-cally want to apply a decomposition by origin.Thus, we do not put two O-D pairs with differentorigins into the same subproblem unless all theother O-D pairs with the same origins areincluded in the subproblem.

Moreover, as noted previously, we would liketo avoid expending too much time in one subprob-lem finding a very accurate solution, which willlater be destroyed. Instead, we prefer to spreadour work to achieve, simultaneously, the same,

Page 8: ASS5A0 H5USTTS1 INtSTTtU TE0

6

but relaxed, accuracy for all subproblems. Thissuggests that we test condition (A3) andgenerate a shortest path for each O-D pair onlyonce in each cycle, rather than generating a newshortest path after each iteration (lineari-zation). When no linearization change of flowtakes place in one cycle, then the given accuracyhas been achieved and condition (A3) is satisfied.

3.4 Decomposition

The traffic equilibrium problem is richenough to permit various forms of decomposition.The selection from among the various optionsdepends upon the size of the problem and thenature of the demand function. For reasons dis-cussed in the previous sections and also basedupon our intuition, we have decided to considerthe following levels of decomposition:

Level 1 - No decomposition,

Level 2 - Decomposition by origin,

Level 3 - Decomposition by O-D pair,

Level 4 - Decomposition by O-D pair and mode.

Moving from level 1 to level 4, we expect toincur more cycles and less iterations within eachcycle (because the subproblems become easier tosolve). Therefore, it is not clear which levelof decompositin is best in terms of efficiency.However, as the size of the problem increases weare forced to use the higher levels of decompo-sition. On the other hand, as the demand depen-dency increases, the lower levels of the decompo-sition will be preferred.

Generally, we will tend to choose level 1whenever the demand function is completely depen-dent (i.e., the demand for the O-D pairs dependsupon the full vector of accessibility variables).We will choose level 2 when we have a destinationchoice demand function. Level 3 will be ourchoice when we have only mode choice demand func-tions; otherwise, we select level 4. In eachcase, if the size of the subproblem does notpermit us to use that level, we move to the nexthigher level of decomposition.

Notice that when there is no mode dependencyin the demand function, decomposition by modemight be best as the first level of decomposition.

3.5 Summary

To see how the composite linearization anddecomposition algorithm applies to the trafficequilibrium problem, in this section we brieflysummarize the steps of the algorithm when using adecomposition by O-D pairs.

To reduce the number of applications of theshortest path algorithm, we use a two-level de-composition scheme. In this first level, wedecompose the problem by origins and find theshortest path tree for each origin. Then foreach origin, in the second level we decompose the

problem in terms of destinations to constructsubproblems. In this way, we solve shortest pathproblems only once in each cycle.

To simplify the discussion, we consider thesingle mode case. For the multi-modal case, whenusing O-D decompostion, the steps of thealgorithm remain unchanged except that everythingis in a vector space corresponding to all modes.For example, each subproblem corresponds to oneO-D pair and all possible modes between the O-Dpair. The algorithm would be slightly differentif we first decompose the problem in terms ofmodes and then with respect to origins.

The algorithm is a refinement of the skeletondescription given in section 2.3. We start byfinding the initial solution (hO, u) by themodified all-or-nothing procedure described insection 3.2. The user also specifies severalparameters: (i) > o is the convergence para-meter to be applied in the convergence criteriaof section 3.1; (ii) n = 6nE is a relaxedconvergence criteria to be applied when solvingthe linearization and decomposition problems atany point. The parameter 6 > 1 specifies howquickly the algorithm will reduce the convergiencecriteria. The initial value of n of n is anotheruser supplied parameter. When the solution satis-fies (A1), (A2) and (A3) and is an En-approx-imate solution, the algorithm then reduces n by 1(until it equals 0) and begins step 2 again.

A solution is said to be "reasonable" insteps (4) and (6) if it satisfies convergencecritieria (Al) and (A2) with Pi replaced by

PiWu{piq} where pq is the shortest pathjoining O-D pair computed t h. Here x =(hq, uq). We add Pjq to Pi and delete any pathp from P that becomes zero in the solution toh q obtained when solving for O-D pair J = {i}.

To solve each subproblem, we will use thesolution from previous steps as the startingsolution. It is more reasonable, in the overallprocedure, that we always use the most recentlygenerated information. To do this, we update allof the data (including path flows, volume delays,minimum travel times, and so forth) whenever anychange in the flow occurs. This Gauss-Seidelstrategy is applied to the all-or-nothing assign-ment and to the decomposition and linearizationschemes.

For this algorithm, the corresponding sub-problem (SPi) for O-D pair i with the set ofworking-paths piW can be written in the formof (1.1) with PiW replacing Pi. In thisformulation,

T (h) = Z a · t (v) for all pEPWP aeA ap a a

and

v = F + 6ap ha a WPe ap p

where Fapairs onat (h ,u

for all aEA

is the sum of the flows by other O-Dlink a. he linearization (LSP ) of (SP.)) for pEPiis obtained by replacing Tp(h)'

Page 9: ASS5A0 H5USTTS1 INtSTTtU TE0

7

byUT (h)

(Tp(h)+ Z (h p-h ) PP p'CP W P p p

iand by replacing Di(u) by:

_ _ aDi(u)( Z whp- Di(u) - (ui-ui) au ).

Here for Pi all pp P

Here for all p,p'

aT (h)ah =8hp,

use the algorithm presented by Golden (24) whichis based upon Bellman's method. This algorithmcan solve problems with 1000 nodes and 5000 linksin less than one second.

All of the programs have been run on an IBM370/168 using the Fortran G compiler. ReportedCPU times do not include I/0 times.

Example 4.1 The network for this example has 9nodes, 36 links, and 12 O-D pairs.

at (v)Z Z 6 . 6 acAa'A a p a P ava,

Although computation of the coefficient matrixfor each (LSPi) at each iteration looks formi-dable and time-consuming, there are efficientways to perform these computations. Aashtiani(1), Aashtiani and Magnanti (3) specify furtherdetails on this point and describe the algorithmand its variants in greater detail.

3.6 Assumptions

From the computational point of view, thelinearization algorithm only requires some mildassumptions. More restrictive assumptions mightbe needed, however, to guarantee convergence ofthe algorithm. These mild assumptions are

i) The vector functions t(f) and D(u) arecontinuous and differentiable.

ii) Both t(f) and -D(u) are monotone functions,i.e., Vt(f) and -VD(u) are positive semi-definitive matrices.

It is easy to show that, for any form of decompo-sition discussed in section 3.4, the coefficientmatrix associated with any (LSPi) is positivesemi-definite; as we have already noted this is asufficient condition to solve (LSPi) by linearcomplementarity algorithms.

For transportation applications, these arevery mild assumptions that are valid for many ofthe demand and volume delay model met in practice.

4. COMPUTATIONAL RESULTS

We have tested the composite linearization anddecomposition algorithm on a variety of smallproblems with many different demand models and onsome larger problems using data generated byother researchers. In this section, we summarizethe algorithm's performance on three of thesetest cases we have. Aashtiani (1) and Aashtianiand Magnanti (3) report on a broader set of com-putational studies.

To solve the linear complementarity problemwe use Lemke's Algorithm [Lemke (29)], which isan efficient algorithm that can solve the prob-lems with a few hundred variables within a coupleof seconds. To find the shortest path trees, we

Figure 4.1 Network Configuration for Example 4.1

The volume delay functions are given as

ta(Va) = a + 0.002 * a va

where a and a are parameters rangingfrom 0 to 1. Steenbrink (37) specifies theirvalues. There is, for each O-D pair i-j with i #j = 1, 2, 3, 4, a fixed demand with valuesspecified in table 4.1.

DestinationOrigin 1 2 3 4

1 - 2000 2000 1000

2 200 - 1000 2000

3 200 100 - 1000

4 100 200 100 -

Table 4.1 Trip Table for Example 4.1

For a decomposition by O-D pair, and a choiceof = 1.0, = 5, and n = 2, the lineari-zation algorithm solved this problem in 0.2seconds of CPU time after 10 cycles and 45linearizations. Notice that since the volumedelay functions for this problem are linear, theequiv- alent minimization problem is a quadraticprogram. For different levels of accuracies,table 4.2 shows the value of

36 VaZ Jo ta(X)dx,

a=l

which is equivalent to the objective value func-tion for the minimization problem. Comparingthese values to 16970, the objective value thatSteenbrink found by quadratic programmingmethods, illustrates the accuracy of the lineari-zation algorithm, even though the goal of thealgorithm is not minimizing the objective value.

Page 10: ASS5A0 H5USTTS1 INtSTTtU TE0

8

Note that solution with only 5% accuracy is asgood in objective value as the solution found bySteenbrink.

Accuracy 36 aZv ' V t (vE va taZ JO ta(x)dxa a-l

Initial 102,031.44 53,246.00

25% 27,369.15 17,198.93

5% 27,003.61 16,971.05

1% 26,965.25 16,958.24

Table 4.2 Total Travel Time for Example 4.1

Example 4.2: This test problem is taken fromLeBlanc (28). The network consists of 24 nodes,76 links, and 552 -D pairs (all node pair combi-nations). There is a fixed demand between each0-D pair, and the volume delay functions aredefined as

t(v ) a + v4.a a a a a

LeBlanc (28) specifies values for the parameters.

We applied the linearization algorithm tothis test problem with the choice of = 1,6 5, n - 2, and used decomposition by -Dpairs. The algorithm terminated after 18 cyclesand 564 linearizations, and required 3.32 secondsof CPU time to find solutions with 1% accuracy.

Table 4.3 shows the number of linearizations,total link travel time, and the maximum per-centage change in the link flow after eachcycle. In addition, it shows the maximum per-centage change after each iteration for theFrank-Wolfe algorithm used by LeBlanc. Theseresults demonstrate how fast the linearizationalgorithm converges and how it exhibits less ofthe tailing phenomenon that is typical of theFrank-Wolfe algorithm. In terms of computationaltime, the linearization algorithm required 2.15seconds on an IBM 370/168 to achieve 5% accuracy,while the Frank-Wolfe algorithm required 10seconds on the CDC 74 (notice that the IBM 370 ismuch faster than the CDC 74).

The accelerated convergence of the linearizedalgorithm migh be expected. For problems likethis that leave an equivalent optimization pro-blem, linearization can be interpreted as makinga quadratic approximation to the objective func-tion (compare this with Newton's method for un-constrained minimization).

¢~ycLe Ma..'z oi As I..I,:*1 1._'Lax ,z; C..m. :u Li,/ FL-IubLv.r Ln.i:'..*-,ffl. T.vgl T~.~' ~a Lic.k £).ow ~y FZ*4uk-.,:

v - 922.'). - -

1 185 140.00 19o.J 68 .7

2 74 108.91 38., 4b..

J 30 102.22 14.7 39.4

* 9 100.7J 14.5 50.0

5 73 97.09 17.8 32.1

6 48 96.1 14.9 100.0

7 ~' 2.25 95.92 7.2 41.1

8 18 95.82 5.3 21.6

9 5 96.0: 6.6 35.4

10 37 95.96 3.1 16.3

11 is 95.3 .8 25.0

12 14 95.9. .8 16.0

13 11 95.91 .8 13.9

14 8 95.92 .4 9.6

15 6 95.V; .5 11.4

16 2 95.92 .$ 7.7

17 1 95.'Z .3 11.2

18 0 95.92 .0 7.9

Table 4.3 Computational Results for Example 4.2

Example 4.2: This example is a moderately-sizedtest problem with real data from the city ofHull, Canada. It has been used by researchers inseveral other studies [e.g., Florian and Nguyen(22)]. The computational results for thisexample give some idea of how well the lineari-zation algorithm performs, compared to the otheralgorithms, both in terms of convergence andefficiency.

The network has 155 nodes, 376 one-way links,27 zones, and 702 0-D pairs (all possible zonecombinations). There is only one mode of trans-portation (auto). The volume delay functions aregiven by the travel time function suggested inthe Bureau of Public Roads traffic assignmentmanual (11), which has the form

ta(fa ) = t[1 + .15(va/ca) 4 ]

aaa a a

with parameters t specifying the free-flowtime on link a and a specifying the nominalcapacity of link a. Finally, there is a fixeddemand between each -D pair. The data for thisproblem is a slight modification of that used inFlorian and Nguyen (22). In particular, wescaled the demand by a factor of 10, and thisexplains some differences between our results andthose reported elsewhere.

When applying the linearization algorithmsfor this problem, we chose e - 1, 5, n = 2 anda decomposition by -D pairs. The algorithmterminated after 20 cycles and 590 lineari-zations, and required 16.37 seconds of CPU timeto find a solution with 1% accuracy. The maximumnumber of paths between each -D pair with posi-

Page 11: ASS5A0 H5USTTS1 INtSTTtU TE0

9

tive flow was 4 and the maximum number of linksin the paths with positive flow was 44.

Table 4.4 shows the number of cycles andlinearizations needed to reach different levelsof accuracy. Also, it shows the computationaltimes and the total link travel time,Z Va ta(va).a

No. of CPU Total LinkAccuracy No. of Lineari- Time Travel Time

C Cycles zations (sec) (min)

Initial 590,336.

25% 4 179 3.81 257,570.

5% 12 405 10.49 236,631.

1% 20 590 16.37 235,776.

Table 4.4 Computational Results forwith Fixed Demand

Example 4.3

Nguyen (31) used the Convex-Simplex Method tosolve the equivalent minimization problem forthis problem. This algorithm required 42.16seconds of CPU time on a CDC CYBER 74 to find asolution with an accuracy almost equivalent to5%, as defined in section 3.1 (Nguyen has used adifferent criteria to define accuracy).

Florian and Nguyen (22) reported other com-putational times for both fixed demand andelastic demand variations of this problem fordifferent numbers of O-D pairs, up to 421. Forthe case of 421 O-D pairs, their algorithmrequired 43.42 seconds of the CPU time on the CDCCYBER 74 to find a solution with 5% accuracy, asdefined in section 3.1. The linerizationalgorithm required only 10.49 seconds on an IBM370/168 for a problem with 702 O-D pairs.

As a second test with this problem, we usedan elastic demand function with a linear func-tional form:

Di(ui) = bi - aiui for i = 1 .., 702

where ai and bi have been selected randomlyin a fashion similar to that reported in Florianand Nguyen (22). Table 4.5 shows the results ofthis test.

No. of CPU Total LinkAccuracy No. of Lineari- Time Travel Time

C Cycles zations (sec) (min)

Initial 197,681.

25% 6 468 8.03 234,532.

5% 14 1542 11.21 234,344.

1% 20 2548 18.46 234,004.

Table 4.5 Computation Results for Example 6.5

with Elastic Demand

The results in Tables 4.4 and 4.5 shows thatobtaining an equilibrium assignment with elasticdemand requires only 15 percent more computa-tional time than the fixed demand case. Althoughthe number of linerizations increases four fold,the computational time does not grow nearly asrapidly. This is because the computational timefor the linearization algorithm depends more onthe umber of cycles than the number of lineari-zations. Therefore, the algorithm is not highlydependent upon the type of the demand function.

The algorithm presented by Florian andNguyen, which is based upon Benders DecompositionMethod, required 54.13 seconds on the CDC CYBE?74 to achieve 5% accuracy, even with only 421 -Dpairs. This is almost 25 percent more than thetime for the fixed demand problem as comparedwith a 15 percent increase in time for thelinearization algorithm. For approximately 702O-D pairs, the Florian-Nguyen algorithm required80 seconds on the CDC CYBER 74 to achieve 5%accuracy. In contrast, the linearizationalgorithm required only 11.21 seconds on an IB,370/168. Of course, the IBM 370/168 is fasterthan the CDC CYBEIR 74, though not more tnan fourtime as fast. Also notice that they have usedthe optimizing FTN compiler, while we have usedthe FORTRAN G compiler.

Because of different operating environments,it is difficult to compare these algorithms. Atthe very least, these results show that thelinearization algorithm is as fast as, if notfaster than, the specialized algorithms presentedby Florian and Nguyen, which are among thefastest existing aoritnms for solving thetraffic equilibrium problem. Moreover, thelinearization algorithm has its own importantadvantage, which is the generaiity of thealgorithm compared to any algorithm based uponminimization techniques.

5. STORAGE REQUIREIMENTS AND DATA STRUCTURES

Implementation of the linearization algorithmrequires three types of storage--the computerprogram, the problem data, and path fow infor-mation. This section comments briefly ondifferent types of storage schemes that we havetested.

The computer program itself uses 10K words ofcomputer memory, including the main program, thelinear complementarity program, the shortest pathalgorithm, and all other subroutines.

As described in table 5.1, storing all of theproblem data requires at most 81AI + 6N1 + 10111words of memory as a function of IAI the numberof links, INI the number of nodes, and III thenumber of O-D pairs. This storage includes thenetwork structure, the tree for the shortest pathalgorithm, the link flows and path flows,parameters of the volume delay and demand functions(such as the data t, ca, ai, and bi for the cityof Hull problem with elastic demand), and,finally, vectors to store the update values fort(f), Vt(f), D(u), and VD(u).'

Page 12: ASS5A0 H5USTTS1 INtSTTtU TE0

10

ArraySize Arrays

IAI Start-node, End node, Link flow f,Link travel time t(f), Vt(f), 2arrays for parameters of the volumedelay function, and one dummy arrayfor the shortest path subroutine.

INI 4 arrays (including a pointer to thefirst link starting at each node, eachnode's predecessor node, and levelfrom the root) to represent theshortest path tree, shortest traveltime from an origin to all nodes, andone array for nodes to be scanned.

III Origin node, destination node, 4arrays for path flows h (those withpositive flow), minimum travel time u,total demand D(u), VD(u), and numberof used paths between each O-D pair.

Table 5.1 Memory Requirements to Storethe Problem Data

This data can easily be kept in memory on a main-frame computer such as the IBM 370 even for net-works with 10,000 links. For implementations withlimited storage, we can reduce storage requir-ments to 61AI + 61NI +81II at the expense ofadditional computation time by reevaluating t(v),Vt(v), D(u), and VD(u) whenever they areneeded, instead of storing this data.

The last, and major, requirement for storageis the path information. If we assume that themaximum number of paths with positive flows is Mland the maximum number of links in path is M2,then for each O-D pair we might allocate a fixedspace equal to Ml * M2 to store arc-path chains.Therefore, storing all path information requiresMl * 42 * III words of memory. For the choiceof M = 4, M2 = 50, and IliI = 700, as is thecase of example 4.2, the storage requirement wouldbe 140K words, which can be stored in core on anIBM 370. Nevertheless, most computers will chargefor using extra core storage.

To make the linearization algorithm capable ofsolving larger problems and, also, to reduce thecost of using extra core storage, we must reducethe storage requirement for the path information.There are two ways to achieve this goal-modifyingthe data structure for storing path information,or using out-of-core storage (e.g., disk or tape).

5.1 A Modified Data Structure

Previously, we allocated a fixed space equalto M * 2 for each O-D pair. We refer to thisscheme as S1. In practice, though, not all -Dpairs have the maximum number M of paths withpositive flow (for the city of Hull, there areonly 947 paths with positive flow which on averageis only 1.35 paths with positive flow joining eachO-D pair), and not all of the paths have MZ

links. Therefore, there is a great deal of unusedallocated storage. However, this fixed storagescheme has an advantage: it permits fast accessto groups of paths with the same O-D pairs or withthe same origins (this is important for thedecomposition schemes that we use). In fact thisallocation stores the paths in a sequential orderin terms of O-D pairs and origins.

Since we are generating the paths, it is noteasy to keep this sequential ordering when we usea variable number of paths M(1, i) and a variablepath length 1(2, i) for each O-D pair i. However,by introducing some pointers we can still havegood access to a group of paths. Naturally, theaccess time to any path would increase beyond thatrequired by the fixed space scheme. Thus, thereis a tradeoff between CPU time and storage utili-zation.

We have implemented the linearizationalgorithm with a new storage scheme S2 withvariable M(1, i) and fixed M2. Two pointers aresufficient for locating any path; we call theseFIRST and NEXT. For O-D pair i, FIRST(i) indi-cates the location of the first path joining O-Dpair i, and NEXT(p) indicates the location of thenext path with the same O-D pair as path p.NEXT(p) is set to zero when p is the last pathjoining an O-D pair.

When applied to the city of Hull example withelastic demand functions, the new allocationscheme requires 60K words to store the path infor-mation, compared to 140K for the original scheme.This savings in storage reduced the in-corestorage cost by $2.54, but increased the CPU costby $0.61. Thus, the total savings in cost was$1.93.

This modification makes the algorithm capableof solving larger traffic assignement problemsand, at the same time, reduces the total runningcost. An even better improvement might beachieved by allocating variable space for M(2, i),the number of links in the path, as well.

5.2 Out-of-Core Storage

In theory, we can always use out-of-corestorage. But how efficiently? This depends uponthe choice of record size, number of times we needto access to the records, and, more importantly,upon the order we need to access the records(sequential or random).

A fixed space allocation scheme could storeall of the paths with the same O-D pair and sameorigin sequentially. Thus, a decomposition schemeby O-D pair or by origin, would require, withineach cycle of the algorithm, only sequentialaccess to all of the records. This is not thecase for the modified data structure. For thisreason, it seems that an out-of-core storagefacility is more appropriate for the fixed storagescheme than for the modified scheme. Now thequestion is what is the optimal record size interms of total computer running cost.

Page 13: ASS5A0 H5USTTS1 INtSTTtU TE0

11

We have examined two differnt record sizes.For the first of these, denoted S3, we chose therecord size equal to Ml * M2 so that we could fitall of the path information corresponding to eachO-D pair in one record. This storage scheme re-quired only 45K words of in-core storage which isa reasonable requirement for any small computer;this compares to 174K words of storage for theoriginal storage scheme Sl. Therefore, thevariable space storage scheme is practical forsolving much larger traffic assignment problems.However, the total running cost increases, as wemight expect, and by a factor of 3. The firstfactor contributing to this cost increase is theaccessing cost to out-of-core storage. The secondfactor is the increase in in-core storage cost,even though this run requires less in-corestorage, because the program remains idle duringthe accessing process. Finally, the last factoris the increase in the CPU cost due to substantialswapping to transfer data from the out-of-corestorage to the arrays in the memory. To reducethe total running cost for S3, we must decreasethe number of accesses to the out-of-corestorage. To accomplish this, we need to increasethe record size.

For the next storage scheme S4, we chose therecord size equal to M * M2 * d, where d is themaximum number of destinations associated witheach origin (for the city of Hull, d = 36). Inother words, we store all of the paths originatingat each origin in one record. When equipped withthis storage scheme, the algorithm required anorder of magnitude less accesses to out-of-corestorage for the Hull problem (from 15,620 to1,333); therefore, the in-core storage cost andaccessing cost decrease substantially when usingS4 instead of S3 (by a factor of 5 1/2). More-over, S4 required only 7K additional words ofin-core storage.

On the other hand, S4 incurred almost 67% moreCPU time and cost than did S3. (The total costfor S4 was about 40% less than S3 for the Hullproblem). With S4, at each step the algorithmmust substitute all of the information from theone record into the corresponding array inmemory. Unfortunately, there is a great deal ofnon-usable information in most records, becausenot all of the O-D pairs have M paths with posi-tive flow. In contrast, for the implementationS3, we only transfer the paths with positiveflows, which are located at the top of the record,and discard the remainder of the record. This isnot possible for the implementation S4.

Overall, among the four schemes, when there isno in-core storage limitation, the modified datastructure scheme S2 would be best in terms oftotal cost, and the original scheme S1 would bebest in terms of speed. When storage is limited,scheme S4 seems to be best in terms of totalrunning cost, as least for the computational test-ing on the Hull example. We suspect that as pro-blem size increases even more, the savings of S4relative to S3 might become even more pronounced.

ACKNOWLEDGEMENT

Preparation of this paper was supported inpart by the Department of Transportation undercontract DOT-TSC-1058 and by the National ScienceFoundation under grant 79-26225-ECS.

REFERENCES

1. AASHTIANI, H., "The Multi-Modal TrafficAssignment Problem," Ph.D. Dissertation,Operations Research Center, MIT,Cambridge, MA (May 1979).

2. AASHTIANI, H. and T. MAGNANTI, "Equilibria ona Congested Transportation Network," SIAMJournal on Algebraic and Discrete Methods2 (1981) 213-226.

3. AASHTIANI, H. and T. MAGNANTI, "Modeling andComputing Extended Urban TrafficEquilibria," U.S. Department ofTransportation, Draft Report (September1979).

4. AHN, B., Computation of Market Equlibria forPolicy Analysis: The Project IndependenceEvaluation System (PIES) Approach, GarlandPublishing Inc., New York, NY (1979).

5. AHN, B. and W. HOGAN, "On Convergence of thePIES Algorithm for Computing Equilibria,"Operations Research 30 (1982) 281-300.

6. ASMUTH, R., "Traffic Network Equilibrium,"Technical Report SOL-78-2, StanfordUniversity, Stanford, CA (1978).

7. BECKMAN, M., C. MCGUIRE and C. WINSTEN,Studies in the Economics of Transporta-tion, Yale University Press, New Haven, CT(1956).

8. BERTSEKAS, D., "Algorithms for OptimalRouting of Flow in Networks," CoordinatedScience Lab. Working Paper, University ofIllinois at Champaign-Urbana (1976).

9. BERTSEKAS, D., and E. GAFNI, "ProjectionMethods for Variational Inequalities withApplication to the Traffic AssignmentProblem", Technical Report, Laboratory forInformation and Decision Systems, MIT,Cambridge, MA (1980).

10. BRUYNOOGHE, M., A. GIBERT, and M.SAKAROVITCH, "Une Mthode d'Affectation duTraffic," in Fourth Symposium of theTheory of Traffic Flow, Karlsruhe (1968).

11. BUREAU OF PUBLIC ROADS, "Traffic AssignementManual," U.S. Department of Commerce,Urban Planning Division, Washington, DC(1964).

12. CANTOR, D. and M. GERLA, "Optimal Routing ina Packet Switched Computer Network," IEEETransactions on Computers 10 (1974)1062-1068.

13. COTTLE, R. and G. DANTZIG, "ComplementaryPivot Theory of Mathematical Programming,"Linear Algebra and It's Applications.(1968) 103-125.

14. DAFERMOS, S., "An Extended TrafficAssignment Model with Applications toTwo-Way Traffic," Transportation Science,(1971) 366-389.

15. DAFETIOS, S., "An Iterative Scheme forVariational Inequalities," MathematicalProgramming, to appear.

Page 14: ASS5A0 H5USTTS1 INtSTTtU TE0

12

16. DAFERMOS, S., "Traffic Equilibrium andVariational Inequalities", TransportationScience 14 (1980) 42-54.

17. DAFERMOS, S., "Relaxation Algorithms for theGeneral Asymmetric Traffic EquilibriumProblem", Transportation Science 16(1982), in press.

18. DEMBO, R. and J. KLINCEWICZ, "An ApproximateSecond-Order Algorithm for Network FlowProblems with Convex Separable Costs,"Working Paper No. 21, Yale School ofOrganization and Management, New Have", CT(1978).

19. EAVES, B., "The Linear ComplementarityProblem," Management Science 17 (1971)612-634.

20. FLORIAN, M., "An Improved LinearApproximation Algorithm for the NetworkEquilibrium (Packet Switching) Problem,"Publication #57, Centre de recherche surles transports, University of Montreal,Montreal (July 1977).

21. FLORIAN, M. and H. SPIESS, "The Convergenceof Diagonalization Algorithms ForAsymmetric Network Equilibrium Problems,"Transportation Research, to appear.

22. FLORIAN, M. and S. NGUYEN, "A Method forComputing Network Equilibrium with ElasticDemand," Transportation Science, 8 (1974)321-332.

23. GOLDEN, B., "A Minimum Cost Multi-CommodityNetwork Flow Problem Concerning Importsand Exports," Networks, 5 (1975) 331-356.

24. GOLDEN, B., "Shortest-Path Algorithms: AComparison," Operations Research 24(1976) 1164-1168.

25. IRWIN, C. and C. YANG, "Iteration andSensitivity for a Spatial EquilibriumProblem with Linear Supply and DemandFunctions," Operations Research 30 (1982)319-335.

26. JOSEPHY, N., "Newton's Method forGeneralized Equations," Technical Report1965, Iathematics Research Center,University of Wisconsin, Madison, WI,(1979).

27. KOJIMA, M., "Computational Methods for theNonlinear Complementarity Problem,"Department of Administration Engineering,Keia University, Yokohama, Japan (1973).

28. LEBLANC, L., "Mathematical ProgrammingAlgorithms for Large Scale NetworkEquilibrium and Network Design Problems,"Ph.D. Dissertation, Department ofIndustrial Engineering and ManagementSciences, Northwestern UniverstiyEvanston, IL (1973).

29. LEMKE, C., "Bimatrix Equilibrium Points andMathlematical Programming," ManagementScience 11 (1965) 681-689.

30. LUTHI, H., "A Simplical Approximation of aSolution for the Nonlinear ComplementarityProblem," Mathematical Programming 9(1975) 278-293.

31. NGUYEN, S., "An Algorithm for the TrafficAssignment Problem," TransportationScience 8 (1974) 203-216.

32. PANG, J. and D. CHAN, "Gauss-Seidel MethodsFor Variational Inequality Problems OverProduct Sets," Working Paper, GraduateSchool of Industrial Administration,Carnegie-Mellon, Pittsburgh, PA (1982).

33. PANG, J., and D. CHAN, "Iterative Methodsfor Variational and Complementarity Prob-lems, " Mathematical Programming, toappear.

34. SAMUELSON, P., "Spatial Price Equilibriumand Linear Programming," American EconomicReview 42 (1952) 283-303.

35. SHEFFI, Y., "Transportation NetworkEqulibrium with Discrete Choice Models,"Ph.D. Dissertation, Department of CivilEngineering, MIT, Cambridge, MA (1978).

36. SMITH, M., "Existence, Uniqueness andStability of Traffic Equilibria",Transportation Research 13B (1979) 295-304.

37. STEENBRINK, P. A., Optimization of TransportNetworks, Wiley, London (1974).