A route-based solution algorithm for dynamic user equilibrium assignments

20
A route-based solution algorithm for dynamic user equilibrium assignments Sangjin Han * Centre for Transport Studies, UCL – University College London, Gower Street, London WC1E 6BT, United Kingdom Abstract The aim of this study is to establish a method to calculate good quality user equilibrium assignments under time varying conditions. For this purpose, it introduces a dynamic network loading method that can maintain correct flow propagation as well as flow conservation, and it shows a novel route-based solution algorithm. This novel algorithm turns out to be convenient and logically plausible compared to the conventional [Frank, M., Wolfe, P., 1956. An algorithm for quadratic programming. Naval Research Logistics Quarterly 3, 95–110] algorithm, because the former does not require evaluation of an objective function and it finds solutions maintaining correct flow propagation in the time-varying network conditions. The application of novel dynamic network loading method and solution algorithm to test networks shows that we can find high quality dynamic user equilibrium assignment. This is illustrated in an example network using the deterministic queu- ing model for a link performance function and associating costs and flows in a predictive way in discrete time. Ó 2007 Elsevier Ltd. All rights reserved. Keywords: Dynamic user equilibrium assignment; Solution algorithm; Flow propagation; Deterministic queuing model; Discrete time 1. Introduction Dynamic traffic assignment is a useful tool to analyse how congestion forms and dissipates in time-varying conditions. This is particularly attractive to use when we evaluate various Intelligent Transport System (ITS) measures, which usually control traffic movements in different ways over time. Numerous mathematical formulations have been proposed to define the dynamic traffic assignment prob- lem. They can be grouped into three broad categories; mathematical programmes, optimal control theory, and variational inequality. For example, Merchant and Nemhauser (1978), Janson (1991), Kuwahara and Akama- tsu (1997), Jayakrishnan et al. (1995), and Lin and Lo (2000) formulated the dynamic traffic assignment prob- lem as a mathematical programme. On the other hand, Friesz et al. (1989), Wie et al. (1990, 1994), Papageorgiou (1990), and Lam and Huang (1995) formulated the same problem as an optimal control 0191-2615/$ - see front matter Ó 2007 Elsevier Ltd. All rights reserved. doi:10.1016/j.trb.2007.05.001 * Present address: Korea Transport Institute, 2311 Daewadong, Ilsandonggu, Goyangsi 411-701, Republic of Korea. Tel.: +82 31 910 3112; fax: +82 31 910 3235. E-mail address: [email protected] Transportation Research Part B 41 (2007) 1094–1113 www.elsevier.com/locate/trb

Transcript of A route-based solution algorithm for dynamic user equilibrium assignments

Page 1: A route-based solution algorithm for dynamic user equilibrium assignments

Transportation Research Part B 41 (2007) 1094–1113

www.elsevier.com/locate/trb

A route-based solution algorithm for dynamic userequilibrium assignments

Sangjin Han *

Centre for Transport Studies, UCL – University College London, Gower Street, London WC1E 6BT, United Kingdom

Abstract

The aim of this study is to establish a method to calculate good quality user equilibrium assignments under time varyingconditions. For this purpose, it introduces a dynamic network loading method that can maintain correct flow propagationas well as flow conservation, and it shows a novel route-based solution algorithm. This novel algorithm turns out to beconvenient and logically plausible compared to the conventional [Frank, M., Wolfe, P., 1956. An algorithm for quadraticprogramming. Naval Research Logistics Quarterly 3, 95–110] algorithm, because the former does not require evaluation ofan objective function and it finds solutions maintaining correct flow propagation in the time-varying network conditions.The application of novel dynamic network loading method and solution algorithm to test networks shows that we can findhigh quality dynamic user equilibrium assignment. This is illustrated in an example network using the deterministic queu-ing model for a link performance function and associating costs and flows in a predictive way in discrete time.� 2007 Elsevier Ltd. All rights reserved.

Keywords: Dynamic user equilibrium assignment; Solution algorithm; Flow propagation; Deterministic queuing model; Discrete time

1. Introduction

Dynamic traffic assignment is a useful tool to analyse how congestion forms and dissipates in time-varyingconditions. This is particularly attractive to use when we evaluate various Intelligent Transport System (ITS)measures, which usually control traffic movements in different ways over time.

Numerous mathematical formulations have been proposed to define the dynamic traffic assignment prob-lem. They can be grouped into three broad categories; mathematical programmes, optimal control theory, andvariational inequality. For example, Merchant and Nemhauser (1978), Janson (1991), Kuwahara and Akama-tsu (1997), Jayakrishnan et al. (1995), and Lin and Lo (2000) formulated the dynamic traffic assignment prob-lem as a mathematical programme. On the other hand, Friesz et al. (1989), Wie et al. (1990, 1994),Papageorgiou (1990), and Lam and Huang (1995) formulated the same problem as an optimal control

0191-2615/$ - see front matter � 2007 Elsevier Ltd. All rights reserved.

doi:10.1016/j.trb.2007.05.001

* Present address: Korea Transport Institute, 2311 Daewadong, Ilsandonggu, Goyangsi 411-701, Republic of Korea. Tel.: +82 31 9103112; fax: +82 31 910 3235.

E-mail address: [email protected]

Page 2: A route-based solution algorithm for dynamic user equilibrium assignments

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1095

problem. Finally, Smith (1993), Friesz et al. (1993), Ran and Boyce (1996), Chen and Hsueh (1998), andHeydecker and Verlander (1999) adopted variational inequality (VI).

In order to solve the dynamic traffic assignment problem, especially when the formulation is based on amathematical programme or a VI, many studies adopted the Frank–Wolfe (F–W) (1956) algorithm. Forexample, Janson (1991), Ran and Boyce (1996), Jayakrishnan et al. (1995), and Chen and Hsueh (1998) allapplied the F–W algorithm in their solution approach. However, this algorithm has been known to giverise to very slow convergence after a few iterations because of the zigzagging pattern of the descent direction(Patriksson, 1994).

There have been mainly two approaches as an alternative to the F–W algorithm. One is the column gen-eration method (Dafermos and Sparrow, 1969; Leventhal et al., 1973), the other is the more general SimplicialDecomposition (SD) method (Larsson and Patriksson, 1992; Patriksson, 1994; Lee, 1995). The main idea ofthese methods is that a progress towards the solution can be made more efficiently by using several extremepoints rather than a single one as in the F–W algorithm. It has been known that both solution approachesusually give rise to more accurate equilibrium solution at less computation time compared to the F–Walgorithm.

In particular, when it comes to the dynamic traffic assignment, a column generation method that finds asolution based on route flows rather than link ones, becomes more plausible to use compared to the link-basedsolution approaches such as the F–W algorithm and SD method. This is because the route-based solutionapproach maintains correct flow propagation intrinsically unlike the link-based one. In a link-based solutionapproach, we may find a new link flow pattern by combining auxiliary link flows and current ones. However,this updated link flows do not necessarily respect the flow propagation because they do not result from adynamic network loading. On the other hand, the route-based solution approach finds link flows afterdynamic network loading with a given route flow pattern so that it always yields link flow pattern that main-tains correct flow propagation.

In this respect, the present study develops a novel route-based solution algorithm by modifying Schitten-helm’s (1990) algorithm, a kind of the column generation method. The main idea of this novel solution algo-rithm is to use an interpolation method to find the optimal move size. By doing so, we can avoid repeatedobjective function evaluation in the line-search step. Therefore, the novel algorithm is particularly attractiveto use when we solve a dynamic traffic assignment problem, where the evaluation of an objective functionrequires more computation time compared to its static counterpart.

In order to develop the topic of dynamic traffic assignment, we specify several fundamental requirements ofthe model formulation, which extend those of the static counterpart. These requirements impinge on the anal-ysis in various ways, which we explore in this exposition. These include a mathematical expression of thedynamic equilibrium condition, and expression of demand feasibility, specifications of how costs are calcu-lated in the dynamic context, flow conservation and propagation, and the role of traffic models. Based on this,the present study develops a novel dynamic network loading method that incorporates the concept of flowconservation and flow propagation. This is then used within a solution method to calculate dynamic equilib-rium assignments.

The structure of the present paper is as follows. In Section 2, the formulation of the dynamic assignmentproblem is presented including explanation on link performance function and a dynamic network loadingmethod. Then Section 3 introduces a novel route-based solution algorithm, and compares it with a link-basedsolution approach. The results of the application to simple test networks are shown in Section 4.

2. Formulation of the model

2.1. Formulation

We can define the dynamic user equilibrium (DUE) state according to the Wardrop’s (1952) principle asfollows:

‘‘The travel costs incurred by traffic on all routes entered by traffic at each instant are equal or less thanthose that would be on any unused route at that instant.’’

Page 3: A route-based solution algorithm for dynamic user equilibrium assignments

1096 S. Han / Transportation Research Part B 41 (2007) 1094–1113

We can write the above statement in a mathematical form after Beckmann et al. (1956) as

fpðtÞ> 0 ) CpðtÞ ¼ C�odðtÞ¼ 0 ) CpðtÞP C�odðtÞ

� �8p 2 Rod 8od 8t ð1Þ

fpðtÞ is the flow entering route p at time t; Rod is the set of all routes from origin o to destination d; CpðtÞ is thecost incurred on route p starting at time t; C�odðtÞ is the minimum travel cost from o to d starting at time t.

The complementary inequality (1) states that in the DUE state, the flow entering a route p at time t wouldbe greater than 0 only if the travel cost on the route is equal to the minimum travel cost at that time. This canbe transformed into the variational inequality form according to Smith (1979).

We consider the route flow vector f to be demand feasible if for each origin–destination pair od

fp P 0 8p 2 RodPp2Rod

fp ¼ qodðtÞ 8t ð2Þ

where qod(t) is the demand for travel between origin and destination pair od at time t. We denote as D(t) thecorresponding set of all route flows at time t. Then assignment at time t, expressed in the form of a columnvector of route inflows f(t) 2 D(t), is an equilibrium if and only if:

�½h� fðtÞ�T � CðtÞ 6 0 8h 2 DðtÞ ð3Þ

where C(t) is the column vector of route costs incurred by travellers departing at time t.We can solve the variational inequality (3) as a forward dynamic programme according to Heydecker and

Verlander (1999) and Han and Heydecker (2006). First, we can see that for any f(t), the left-hand side of (3)will attain the value zero when h = f(t). Therefore, if an assignment f*(t) is found for which the greatest valuein the left-hand side of (3) is zero, then f*(t) satisfies (3) and so is an equilibrium. This means that the equi-librium solution, f*(t) at time t can be obtained by solving the equivalent minimisation problem as

f�ðtÞ ¼ Arg minf2DðtÞ

zðf; tÞ ð4Þ

where

zðf; tÞ ¼ maxh2DðtÞ

�½h� f�T � CðtÞ ð5Þ

This objective function (5) is known as the gap function (Hearn, 1982; Patriksson, 1994) and will be exactlyzero in equilibrium state according to the condition (3). We can therefore write the dynamic user equilibriumassignment problem over time in the form of a dynamic programme as

minf

Zt

zðfðtÞ; tÞdt

Subject to fðtÞ 2 DðtÞ8tð6Þ

It is natural to assume that the flows f(t) assigned to each route can influence the future cost of travel but notpast ones. We can also note at each time t that there is no contribution from future flows in the integration (6)because the value of the integrand given by the objective (5) will be zero at equilibrium. This means that wecan find optimal solutions at time t without knowledge of the inflows at future times. Therefore, the optimalsolution of the dynamic programme (6) can be found by minimising the objective function (5) for each instantsequentially from the earliest time to the latest one, thus corresponding to a forward dynamic programming(FDP) solution method.

In some cases, route travel costs at time t can be affected by flows that depart later from other origins thatare located relatively close to downstream parts of the route. The FDP ignores the effect of the future trafficcondition on the equilibrium solution calculated for time t. Based on the FDP concept, we can correctlymanipulate flows in a link that depart from various origins at different times because we deal with time inthe natural, increasing order. For example, we can calculate inflows to a link at time interval [t,t + Dt) by con-sidering all route flows from various origins at times earlier than or equal to the time t, once they arrive at thelink. Section 2.2 explains this dynamic loading method in detail. The concept of FDP also allows us to find thesolution according to a trianglurization approach, which is explained in detail in Section 3.

Page 4: A route-based solution algorithm for dynamic user equilibrium assignments

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1097

2.2. A dynamic network loading method

A network loading is a process that is used to calculate how flows will be distributed over a network with agiven route inflow profile for each origin–destination pair. In static assignments, this is simple because flowswill be constant along the entirety of a route regardless of time. However, dynamic network loading is not asstraightforward as in the static case because we should maintain flow propagation as well as flow conservation.Thus we should consider how much traffic, that entered the various routes at different times, would arrive ateach node over time. Then, we also need to consider how these traffics will be dispersed into connected links toreach their destination. Therefore, a key in the dynamic network loading is to collect traffic from varioussources in a link and split them into connected links for each instant. In this study, a dynamic network loadingis performed as described in Fig. 1 with given route flow patterns for each time increment.

As can be seen in Fig. 1, the link inflow ea(t) is calculated by summing all path flow components fp;aðtÞ,which represent inflows arriving at link a via route p for origin–destination pair od at time increment t. Thus,eaðtÞ ¼

Pod

Pp2P od

fp;aðtÞ. Note that updating link inflows properly requires specification of routes becauseflows of all links along a route are updated by simply adding fp;aðtÞ for all routes and all origin–destinationpairs at the same time increment. Because of this, the present dynamic network loading method needs pathenumeration a priori. In this study, we propose to define the route set by the reasonable route in the senseof Dial (1971), and enumerate them by using a ‘back-tracking’ algorithm (Steenbrink, 1974) as shown inAppendix A.

We can obtain the exit time sa(t) by calculating travel cost ca(t) with inflows ea(t) and a link cost function.Once we know the exit time, we can calculate gaðsaðtÞÞ, the link outflow at the exit time, according to the flowpropagation condition (7). Eq. (7) states that the change rate of exit time and the inflow rate can explain theoutflow rate at the downstream end. Therefore, we can discover how the flow changes along a route over timeaccording to:

gaðsaðtÞÞ ¼ eaðtÞ�

dsaðtÞdt

ð7Þ

Eq. (7) is derived from the concept of flow conservation (see, for example, (Astarita, 1996)), e.g. the cumula-tive inflows to a certain link at a certain time will be the same as the cumulative outflows from the link at theexit time. The derivation process of condition (7) is shown in detail in Han (2003), so here we just put the resultonly.

For each time increment [t,t+Δ ]

For each origin-destination pair od

for each route p

For each successive link a within route p

e t e t f ta a p aod( ) ( ) ( ),= +

For each link a

Update link cost c ta ( )

Calculate h tp aod

a, ( ( ))τ with (7),(8)

Set f t h tp bod

a p aod

a, ,( ( )) ( ( ))τ τ=

if δ pa = 1, for∀ ∈ ∀p R odod , ;

b is the next link after a

in route p

t

Fig. 1. A dynamic network loading method.

Page 5: A route-based solution algorithm for dynamic user equilibrium assignments

1098 S. Han / Transportation Research Part B 41 (2007) 1094–1113

Then we calculate all possible hodp;aðsaðtÞÞ, which represent outflows from link a via route p for origin–

destination pair od at exit time sa(t) using (8) which is proved by Kuwahara and Akamatsu (1997):

hodp ðsðtÞÞ ¼

gaðsðtÞÞeaðtÞ

f odp ðtÞ for 8p which uses link a ð8Þ

Finally, we set hodp;aðsaðtÞÞ equal to f od

p;bðsaðtÞÞ, where b is the next link after link a in the same route p. In thisway, we can always calculate when and how much traffic will be split into the connected links from the down-stream end of each link beforehand. That means we can calculate inflows to each link at each instant, main-taining correct flow propagation as well as flow conservation in this network loading by considering the timeprogressively from the earliest to the latest.

If we calculate the link travel cost ca(t) or exit time sa(t), it does not necessarily correspond to the dis-crete time (or integer number), but it is more likely to be a real number, because it is calculated from thelink cost function, which allows real numbers. Therefore, we need to interpolate the value of hod

p;aðtÞ at eachinteger point from the values during the time increment, because practical solution procedures deal withdiscrete time increments rather than continuous time. The method of interpolation is explained in AppendixB.

2.3. Link performance function

This network loading method calls on use of a traffic model to calculate travel times on the basis of linkinflows. The role of the traffic model includes to provide for each time s of entry to a link, the correspondingtime s(s) of exit from the link. These models typically use the amount x(s) of traffic present on the link at thetime s of entry in the computation to satisfy the flow conservation requirement: _xðsÞ ¼ eðsÞ � gðsÞ, where _xðsÞdenotes the derivative of x(s) with respect to time s, e(s) denotes the link inflow at time s, and g(s) denotes thelink outflow at time s. However, this traffic model need to satisfy some requirements such as First-In–First-Out (FIFO) discipline, flow propagation, causality, as well as flow conservation to be used in dynamic trafficassignments. Han (2003) investigated these requirements in dynamic traffic modelling in detail and proved thata deterministic queuing model satisfies all these requirements.

The deterministic queuing model can be written as follows:

dLdt¼

0 ðLaðtÞ ¼ 0; eaðtÞ < QaÞeaðtÞ � Qa ðotherwiseÞ

�ð9aÞ

daðtÞ ¼LaðtÞQa

ð9bÞ

gaðt þ /a þ LaðtÞ=QaÞ ¼eaðtÞ ðLaðtÞ ¼ 0; eaðtÞ < QaÞQa ðotherwiseÞ

�ð9cÞ

and travel cost (or time), ca(t), can be defined by:

caðtÞ ¼ saðtÞ � t ¼ /a þ daðtÞ ð9dÞ

where La(t) is the queue length in link a at time t; da(t) is the delay in link a incurred by a vehicle that enters thelink at time t; Qa is the capacity for link a; /a is the free-flow travel time in link a.

According to the deterministic queuing model, traffic travels freely along a link and then possibly incursdelay at the downstream end, if there is a queue. While the inflow is less than capacity of link and there isno queue, the outflow is the same as the inflow, otherwise the outflow is equal to capacity. However, thisimplies that the deterministic queuing model does not represent an entirely plausible relationship betweenflows and travel costs if the inflows are less than a capacity and there is no queue. One can find discussionon other plausible traffic models that satisfy the requirements in dynamic traffic modelling in Heydeckerand Addison (1998).

Page 6: A route-based solution algorithm for dynamic user equilibrium assignments

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1099

2.4. Route travel cost

In static assignments, route travel costs are calculated directly by summing link travel costs at associatedtimes of entry along the links that constitute a route, because it is assumed that travel cost is constant regard-less of time. However, in the dynamic case, link flows and corresponding link travel costs are not necessarilyconstant over time. We need to take into accounts the fact that the network condition can vary as travellerstraverse a route. Therefore, we calculate a route travel cost by summing the cost of each link at the entrancetime to that links in order to reflect actual travel costs. This can be written in mathematical form as

CpðtÞ ¼ ca1ðtÞ þ ca2

ðt þ ca1ðtÞÞ þ � � � þ camðt þ ca1

ðtÞ þ ca2ðt þ ca1

ðtÞÞ þ � � � þ cam�1Þ ð10Þ

where Cp(t) is the travel time for route p at time t; ca(t) is the cost incurred on link a at time t anda1,a2, . . .,am 2 p.

Note that these time-varying route costs C(t) are used to evaluate the objective function (5), and that it canbe calculated after the dynamic loading of route inflows f as explained in Section 2.2.

3. Solution approach

In practice, it is difficult to solve the continuous minimisation problem (6) analytically in general road net-works. In this respect, this study converts the continuous minimisation problem (6) into a discrete one andsolves it in a triangularisation framework. Firstly, the discrete version of the continuous minimisation problem(6) can be written as follows:

minf

Xt

zðfðtÞ; tÞ

subject to f ðtÞ 2 DðtÞ 8tð11Þ

where

zðf; tÞ ¼ maxh2DðtÞ

� h� f½ �T � Cðt þ DtÞ ð12Þ

Note that in the objective function (12), flows at time t are associated with the costs at time t + Dt rather thanthe costs at time t. Heydecker and Verlander (1999) particularly called this cost-flow association a ‘predictive’assignment in order to distinguish it from a ‘reactive’ assignment, which associates costs and flows at the sameinstant t. Accordingly, the difference between the predictive and the reactive assignment lies in the way thatflows and costs are associated in a time increment [t, t + Dt). The former associates flows during [t, t + Dt)with the cost at the final instant t + Dt, whereas the latter associates these flows with the cost at the initialinstant t. This cost-flow association becomes important when we deal with a time as a discrete variable ratherthan continuous one. Further detailed explanation on the matter of how to associate costs and flows in dis-crete time can be found in Han (2003).

It is well known that when the Jacobian matrix of a link cost function is non-separable and asymmetric, wecan solve the mathematical programme within a diagonalisation framework (Dafermos, 1982; Ran and Boyce,1996). Therefore, the discrete formulation of the dynamic user equilibrium assignment problem (11) can alsobe solved according to the diagonalisation method. However, the concept of Forward Dynamic Programme,which finds equilibrium solution in the increasing order of time (refer to Section 2), allows us to use a trian-gularisation method akin to the Gauss–Seidel method rather than to a diagonalisation method, which wouldcorrespond to a Jacobi one. In the triangularisation method, the assignment calculated for each instant respectall earlier re-assignments made during the current iteration rather than at the previous one.

The solution method based on triangularisation can be specified as follows:

Step 0 (initialisation): Find a feasible link flow vector em(t) from free-flow travel costs, set m = 0.Step 1 (subproblem): Solve the triangularised problem with the existing algorithm for the separable case. This

yields a new link flow vector em+1(t).Step 2 (convergence test): If jemþ1ðtÞ � emðtÞ j< e for some specified value of the convergence criterion e, stop.

Otherwise, set m = m + 1, and go to Step 1.

Page 7: A route-based solution algorithm for dynamic user equilibrium assignments

1100 S. Han / Transportation Research Part B 41 (2007) 1094–1113

In Step 1, any solution algorithms for the separable case can be applied. However, it should be noted thatthey should be applied sequentially from the earliest time instant to the latest one, and we should use the flowsup to the processing time t as the ones which have been obtained at the current iteration rather than the flowsin the previous iteration. We now consider two distinct ways in which the triangularised problem in Step 1 canbe solved. One is a link-based solution approach and the other is a route-based approach.

3.1. A link-based approach (Frank–Wolfe algorithm)

The most popular link-based solution approach is the Frank and Wolfe (1956) (F–W) algorithm, and thiscan be written as follows.

Step 1.0 (initialisation of time increment): Set t = 0.Step 1.1 (initialisation of iteration counter): Set n = 1.Step 1.2 (update): Calculate the link travel costs, cn(t + Dt), using en(s) for s 6 t, en�1(s) for s > tStep 1.3 (direction finding): Implement ‘all-or-nothing’ assignment to find auxiliary link flows yn(t), using

cn(t + Dt) from Step 1.2Step 1.4 (line search): Find kn(t) as the value of k that solves

knðtÞ ¼ Arg min06k61

z½enðtÞ þ kfynðtÞ � enðtÞg�

Then calculate new link inflow en+1(t) as

enþ1ðtÞ ¼ enðtÞ þ knðtÞfynðtÞ � enðtÞg for all t ð13Þ

Step 1.5 (convergence test for inner iteration): if n has reached a pre-specified number or en+1(t) satisfies theconvergence criterion, then set t = t + 1 and go to Step 1.1; otherwise, set n = n + 1 and go to Step1.2

In this F–W algorithm, we update link flows by the linear combination of the current link flows and aux-iliary link flows as according to Eq. (13). However, if we associate k(t) directly with the link flows as (13), theupdated link flows do not necessarily respect flow propagation because they do not result from a dynamic net-work loading. In fact, k(t) should be associated with the route flows, and the corresponding link flows shouldbe obtained from a network loading. This means we need to perform another network loading whenever k(t)changes in order to evaluate an objective function properly because it normally requires the updated link flowsand associated costs. For example, a dynamic generalisation of Beckmann, (1956)’s objective function, whichwas first shown in Janson (1991) requires updated link flows and associated costs. That objective function canbe written as

Xt

Xa

Z eaðtÞ

0

caðwÞdw ð14Þ

In this respect, it would be inefficient to adopt the F–W algorithm, and this problem can arise in anylink-based solution approach for the dynamic assignment problem. Nevertheless, this problem has not beenexplicitly pointed out so far in the literature that has adopted the F–W algorithm as the solution method(e.g. Janson, 1991; Jayakrishnan et al., 1995; Ran and Boyce, 1996; Chen and Hsueh, 1998). Apart from theseproblems, it has been known that the F–W algorithm shows slow convergence as it approaches the optimalsolution because of the zigzagging pattern that results from use of the steepest descent direction (Patriksson,1994).

3.2. A route-based approach (a novel solution algorithm)

Originally, route-based solution approaches have been developed to overcome the slow convergence of theF–W algorithm. This algorithm is sometimes called a ‘column generation method’ in the sense that they find a

Page 8: A route-based solution algorithm for dynamic user equilibrium assignments

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1101

solution using several route flow patterns (or columns) that have been generated over iterations. It is knownthat the column generation method gives rise to an accurate equilibrium solution at a relatively small numberof iterations compared to the F–W algorithm. This method was first applied to static assignment problems byDafermos and Sparrow (1969) with explicit path enumeration. Then Leventhal et al. (1973) developed themethod which generates routes as they are needed. Later Schittenhelm (1990) applied this method to solvethe combined trip distribution and assignment problem.

We can take an advantage of a route-based solution approach particularly when we solve a dynamic assign-ment problem because it can maintain correct flow propagation intrinsically. This approach does not updatelink flows directly as we do in the F–W algorithm. Instead it updates route flows first, then it calculates linkflows and associated costs after a dynamic network loading with updated route flows.

In this respect, this study develops a novel column generation method to solve a dynamic assignment prob-lem by modifying Schittenhelm’s algorithm. Firstly, the original Schittenhelm algorithm to solve a staticassignment problem can be written as follows:

Step 0 (initialisation):Perform all-or-nothing assignment to the minimum cost routes, p�od for all origin–destination (od)pairs; set Mod ¼ fp�odg.

Step 1 (equilibration):For each origin–destination pair od repeat the following steps.1.1 Find the minimum cost route p�od based on the current costs.1.2 If p�od 62 Mod, set Mod ¼Mod [ fp�odg.1.3 Find the maximum cost route �pod from Mod (i.e. �pod ¼ arg max

p2Mod;fp>0

CpÞ.

1.4 Transfer some flow from �pod to p�od so as to equilibrate costs between �pod and p�od. This flow trans-ferred from �pod to p�od can be decided by the one which minimises Beckmann et al.’s (1956) objec-tive function,

Pp2Rod

R ea

0cðwÞdw, while keeping other route flows fixed.

1.5 Repeat Step 1 for the next origin–destination pair.

Step 3 (convergence test):If a convergence criterion is met, stop; otherwise, go to Step 2.

Alternatively, here we suggest performing Step 1.4 without the optimisation of Beckmann’s objectivefunction. This study has found that we can equilibrate flow pattern between the minimum cost route andthe maximum cost route by making a single transfer of flows with an amount based on interpolation of costof travel.

The goal of transferring flows from the maximum cost route to the minimum cost route is to equilibratecosts between the two routes (in Step 1.4). If the cost of p�od is still less than �pod after transferring all flows from�pod to p�od, all flows should be transferred. Otherwise, we can estimate the optimal transfer rate by using thecost differences between �pod and p�od. This can be written mathematically after suppressing the subscript odfor clarity:

If Cðp�Þk¼1 < Cð�pÞk¼1, kn = 1.0Else

kn ¼ Cð�pÞk¼0 � Cðp�Þk¼0

ðCð�pÞk¼0 � Cðp�Þk¼0Þ � ðCð�pÞk¼1 � Cðp�Þk¼1Þð15Þ

where kn is the proportion of f�p that is transferred from route �p to route p*; Cð�pÞk¼0;Cðp�Þk¼0 are the costs ofthe maximum cost route and the minimum cost route, respectively, when there is no transfer; Cð�pÞk¼1;Cðp�Þk¼1

are the costs of the maximum cost route and the minimum cost route, respectively, when all flows are trans-ferred from �p to p*.

Eq. (15) can be obtained from the assumption that the cost difference between routes depends on the flowpattern, and hence on the size of the transfer rate k. We can represent this relationship graphically as shown inFig. 2.

Page 9: A route-based solution algorithm for dynamic user equilibrium assignments

cost ( = 0)

λ1.00

C p( )*

cost ( = 1.0)

λ=0

C p( )λ =0

C p( )*λ=1

C p( )λ =1

λn λ*

cost functions

interpolated costs

λλ

Fig. 2. Optimal flow transfer rate.

1102 S. Han / Transportation Research Part B 41 (2007) 1094–1113

We can get the following equations from linear interpolation of cost functions:

ðCð�pÞk¼1 � Cðp�Þk¼1ÞðCð�pÞk¼0 � Cðp�Þk¼0Þ

¼ 1� kn

kn

) kn ¼ Cð�pÞk¼0 � Cðp�Þk¼0

ðCð�pÞk¼0 � Cðp�Þk¼0Þ � ðCð�pÞk¼1 � Cðp�Þk¼1Þ

However, in Fig. 2, we can see that the interpolation method will in general identify only an approximate valuek* of k because route costs do not necessarily change linearly.

This novel algorithm can be applied to solve a dynamic traffic assignment problem (or to solve Step 1 in thetriangularisation method) as follows:

Step 1.0 (initialisation of time increment): Set t = 0.Step 1.1 (initialisation of iteration counter): Set n = 1.Step 1.2 (update): Calculate the link travel costs, cn(t + Dt), using en(s) for s 6 t, en�1(s) for s > t.Step 1.3 (column generation):

Find the minimum cost route p�odðtÞ based on the current costs cn(t + Dt). If p�odðtÞ does not belong tothe current route set Mod(t), include it with Mod(t) (i.e. ModðtÞ ¼ModðtÞ [ fp�odðtÞgÞ.

Step 1.4 (equilibration):Find the maximum cost route �podðtÞ from Mod(t) (i.e. �podðtÞ ¼ arg max

p2ModðtÞ;fpðtÞ>0

CpðtÞÞ.

Perform network loading after transferring all flows from �podðtÞ to p�odðtÞif Cðp�odðtÞÞk¼1 < Cð�podðtÞÞk¼1

kðtÞ ¼ 1:0

else

kðtÞ ¼ Cð�podðtÞÞk¼0 � Cðp�odðtÞÞk¼0

fCð�podðtÞÞk¼0 � Cðp�odðtÞÞk¼0g � fCð�podðtÞÞk¼1 � Cðp�odðtÞÞk¼1gð16Þ

Perform network loading after transferring flows based on estimated kðtÞ.Repeat Step 1.3 and 1.4 forall origin–destination pairs.

Step 1.5 (convergence test for inner iteration): if n has reached a pre-specified number or satisfies the conver-gence criteria, set t = t + 1 and go to Step 1.1; otherwise, set n = n + 1 and go to Step 1.2

The advantage of this novel algorithm over the F–W algorithm can be summarised in two points, partic-ularly when they are used to solve dynamic assignment problems. First, it does not require any evaluation ofthe objective function, which would be expensive for the dynamic assignment problem. Second, the novel solu-

Page 10: A route-based solution algorithm for dynamic user equilibrium assignments

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1103

tion algorithm maintains correct flow propagation automatically when updating the flow patterns because itfinds link flows after dynamic network loading with updated route flows.

4. Numerical example

4.1. Two-link network

To illustrate how the novel solution algorithm works for dynamic assignment within the framework of tri-angularisation, it has been applied to a simple two-link network, which has a single origin–destination pair.Then, the result is compared to that from the F–W algorithm adopting the objective function as (12). Finally,the flow patterns resulting from both predictive and reactive assignments are compared in the sense of Hey-decker and Verlander (1999). Note that an iteration number n in the subproblem of the triangularisation isfixed as 1 according to Sheffi’s (1985) streamlined procedure. He showed that it is sufficient to perform iter-ation once when we solve the subproblem of diagonalisation method.

Table 1 shows the specification of the two-link network and Fig. 3 shows a demand profile, which increasesat a constant rate w until time 10 (min), and maintains peak of 10w (veh/min) until time 15 (min), thendecreases to zero at a constant rate until time 30 (min).

Fig. 4 shows the equilibrium travel cost pattern for two routes when we apply the novel solution algorithmin the framework of triangularisation using a time increment of 1 min and w = 5.0 in the demand profile orFig. 3. Note that travel costs are identical for both routes from t = 8 to t = 28. However, this equilibriumresult can be obtained not only from the novel solution algorithm, but also from the F–W algorithm.

Fig. 5 shows that route 2 comes into use from time t = 8 when the travel time for route 1 is identical to thefree-flow travel costs of route 2, and the route 2 is out of use from time t = 28 in the equilibrium assignment.We can see slight difference in assignment proportions between the novel solution algorithm and the F–Walgorithm. However, we can note more significant difference between two solution algorithms in terms ofthe quality of solutions.

Table 1Specification of routes in the two-link network

Route Free-flow travel time, / (min) Capacity, Q (vehicles/min)

1 3 202 5 15

0 5 10 15 20 25 30 35 40

entry time (min)

dem

and

(veh

/min

)

10w

Fig. 3. Demand profiles.

Page 11: A route-based solution algorithm for dynamic user equilibrium assignments

0

1

2

3

4

5

6

7

8

9

1050 15 20 25 30 35 40

trav

el t

ime

(min

)

route 1

route 2

entry time (min)

Fig. 4. Equilibrium travel cost pattern from the novel solution algorithm.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1050 15 20 25 30 35 40

entry time (min)

assi

gnm

ent

prop

orti

on

New

F-W

Fig. 5. Assignment proportion for route 1.

1104 S. Han / Transportation Research Part B 41 (2007) 1094–1113

Table 2 shows the measure of disequilibrium as well as the gap value over iterations when each of the novelalgorithm and the F–W algorithm is applied in the two-link network. The measure of disequilibrium (n) iscalculated as

n ¼P

t

Pod

PpfpðtÞ � fCpðtÞ � C�odðtÞgP

t

Pod

PpfpðtÞ � C�odðtÞ

ð17Þ

This measure of disequilibrium is derived from Beckmann’s complementary inequality (1) and indicates therelative excess cost incurred by travellers, which should be zero in the equilibrium state. The gap value iscalculated by summing the objective function (12) over time as

Page 12: A route-based solution algorithm for dynamic user equilibrium assignments

Table 2Measure of disequilibrium and gap value over iterations

Iteration Novel F–W

Measure of disequilibrium Gap value Measure of disequilibrium Gap value

1 1.78127 7349.027344 1.78127 7349.0273442 0.000002 0.009903 0.000397 2.2651943 <10�6 0.008499 0.000361 2.0625004 <10�6 0.004395 0.000349 1.9903495 <10�6 0.002617 0.000348 1.9848716 <10�6 0.001312 0.000343 1.9575047 <10�6 0.000946 0.000337 1.9239208 <10�6 0.000397 0.000336 1.9160549 <10�6 0.000412 0.000342 1.95177810 <10�6 0.000305 0.000348 1.985008

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1105

Xt

zðf; tÞ ¼X

t

maxh2DðtÞ

�½h� f�T � CðtÞ ð18aÞ

¼X

t

CðtÞT � f � minh2DðtÞ

CðtÞT � h� �

ð18bÞ

The objective function (12) represents the difference in total travel costs between that of the current flow pat-tern and that of the corresponding all-or-nothing assignment solution if currents costs were maintainedthroughout. The gap value should be zero in the equilibrium as well.

Table 2 shows that the novel solution algorithm gives rise to more accurate equilibrium solution comparedto the F–W algorithm because the measure of disequilibrium (n) becomes near zero after iteration 2 and thegap value also rapidly converges into zero as iteration goes on. On the other hand, the F–W algorithm givesrise to the measure of disequilibrium as well as gap values that are much higher than those from the novelsolution algorithm. Furthermore, these values will not be improved after iteration 3. Fig. 6 compares the abso-lute cost difference between route 1 and route 2. As we can see, there is no difference in costs between route 1

entry time (min)

0

0.001

0.002

0.003

0.004

0.005

0.006

0.007

0.008

0.009

0.01

1050 15 20 25 30

cost

dif

fere

nce

(min

)

NewF-W

Fig. 6. Cost difference between two routes.

Page 13: A route-based solution algorithm for dynamic user equilibrium assignments

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1050 15 20 25 30 35 40

entry time (min)

assi

gnm

ent

prop

orti

on

Fig. 7. Assignment proportion for route 1 in equilibrium state (reactive).

0

5

10

15

20

25

1050 15 20 25 30 35 40entry time (min)

infl

ows

(veh

/min

)

delta 0.5delta 1.0delta 2.0continuous

Fig. 8. Inflows for route 2 for various size of the time increment (predictive).

1106 S. Han / Transportation Research Part B 41 (2007) 1094–1113

and route 2 during [8, 27] (when both routes carry flows) in the case of the novel algorithm, whilst, there is littledifference in the case of the F–W algorithm during the same time periods.

The equilibrium solutions that have been presented so far are based on the predictive cost-flow association.However, when the reactive cost-flow association is made, we find the resulting equilibrium assignment patternshown in Fig. 7. As can be seen, it corresponds to an all-or-nothing assignment to one or other of the routesfrom t = 8 (min). Thus, we cannot find identical travel times between the two routes during the time when thetwo routes are used together.

Another problem of the reactive cost-flow association can be found when we change the size of time incre-ment (Dt). Figs. 8 and 9 compare the equilibrium inflow pattern for route 2 in the two-link network as the size

Page 14: A route-based solution algorithm for dynamic user equilibrium assignments

0

5

10

15

20

25

30

35

40

45

50

1050 15 20 25 30 35 40

entry time (min)

infl

ows

(veh

/min

)

delta 0.5delta 1.0delta 2.0continuous

Fig. 9. Inflows for route 2 for various size of the time increment (reactive).

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1107

of time increment varies as D = 0.5 (min), D = 1.0 (min), and D = 2.0 (min) in the predictive and the reactivecost-flow association, respectively.

As we can see in Fig. 8, there is no substantial difference in the character of the equilibrium inflow patternfor route 2 regardless of the size of time increment in the predictive cost-flow association. Furthermore, theflow pattern becomes similar to that of the analytic solution for continuous time as the size of time incrementdecreases. This analytic solution is calculated according to the Heydecker and Addison’s (1996) novel equilib-rium condition. However, we can see from Fig. 9 that the inflow pattern changes according to the size of thetime increment in the case of the reactive assignment, and this is different in the character from that forcontinuous time.

1

2

3

4

5(1,4,40)

(4,6,30)(3,4,40)

(6,5,60)

(5,5,60)

(2,6,30)

O-D pair Route set (link numbers) 1→ 4 (1-5, 2) 1→ 5 (1-5-7,1-6, 2-7) 2→ 4 (3-5, 3-6-8,4-8) 2→ 5 (3-6, 4)

link number

free-flow travel time (min)

capacity(veh/min)

(7,2,25)

(8,2,40)

Fig. 10. Papageorgiou’s network.

Page 15: A route-based solution algorithm for dynamic user equilibrium assignments

1108 S. Han / Transportation Research Part B 41 (2007) 1094–1113

4.2. Papageorgiou’s network

A more substantial network (Papageorgiou, 1990) is depicted in Fig. 10. This network has 5 nodes, 8 links,and 4 origin–destination pairs (1–4, 1–5, 2–4, 2–5). The link number, free-flow travel time, and capacity areshown in parentheses beside each link. The routes are defined in the lower left-hand side of Fig. 10 for eachorigin–destination pair. These routes are enumerated according to Dial’s (1971) reasonable route conceptunder free-flow travel conditions.

0

2

4

6

8

10

12

0 10 15 20 25 30 35 40entry time (min)

trav

el t

ime

(min

)

0

0.05

0. 1

0.15

0. 2

0.25

0. 3

0.35

0. 4

0.45

0. 5

assi

gnm

ent

prop

orti

on

route 1 (cost)

route 2 (cost)

route 1 (ass. prop.)

5

Fig. 11. Equilibrium travel time pattern for OD pair 1.

0

2

4

6

8

10

12

14

1050 15 20 25 30 35 40

entry time (min)

trav

el t

ime

(min

)

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

assi

gnm

ent

prop

orti

on

route 1 (cost)

route 2 (cost)

route 3 (cost)

route 2 (ass. prop.)

route 3 (ass. prop.)

Fig. 12. Equilibrium travel time pattern for OD pair 2.

Page 16: A route-based solution algorithm for dynamic user equilibrium assignments

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1109

If we apply the novel solution algorithm to Papageorgiou’s network with the same demand profile as wasused for the two-link network, we can find the equilibrium solution at iteration 2. The measure of disequilib-rium (n) becomes less than 10�6, and the gap value from Eq. (18) also becomes near zero (0.000412) at thisiteration. Note that we can no longer update link flows by linear combination of the current and the auxiliaryflows in Papageorgiou’s network, because we should consider flow propagation and because a link is not auto-matically a route as in the two-link network. Accordingly, the F–W algorithm is not considered in this case,because it needs many network loadings in the line search step and would therefore be computationallydemanding.

Figs. 11 and 12 describe travel cost and assignment patterns at the equilibrium state for origin–destinationpairs 1 and 2. Note that only minimum cost routes can carry flows in the user equilibrium state, and this

0

10

20

30

40

50

60

1050 15 20 25 30 35 40

entry time (min)

infl

ows

(veh

/min

)

delta 0.5

delta 1.0

delta 2.0

Fig. 13. Inflows for link 3 for various size of the time increment (predictive).

0

10

20

30

40

50

60

70

80

90

100

1050 15 20 25 30 35 40

entry time (min)

infl

ows

(veh

/min

)

delta 0.5

delta 1.0

delta 2.0

Fig. 14. Inflows for link 3 for various size of the time increment (reactive).

Page 17: A route-based solution algorithm for dynamic user equilibrium assignments

1110 S. Han / Transportation Research Part B 41 (2007) 1094–1113

condition has been met for these origin–destination pairs. Correspondingly, good equilibrium solutions werefound for the other origin–destination pairs as well.

As in the case of the two-link network, we can see that only predictive assignment gives rise to plausibleassignments in Papageorgiou’s network. Figs. 13 and 14 describe the inflow pattern for link 3 in the equilib-rium state for predictive and reactive cost-flow association respectively as the size of time increment varies asD = 0.5 (min), D = 1.0 (min), D = 2.0 (min).

We can confirm from Figs. 13 and 14 that the flow pattern from predictive assignment is similar regardlessof the size of the time increment, whilst the flow pattern from the reactive assignment changes substantiallyaccording to the size of the time increment.

5. Discussion and conclusion

In the present study, we formulated dynamic user equilibrium (DUE) assignment in the form of a varia-tional inequality. Then we solved this problem in the framework of the triangularisation method by embed-ding the concept of forward dynamic programming. To solve the subproblem in the triangularisation method,we developed a novel solution algorithm by modifying Schittenhelm’s (1990) algorithm. Furthermore, thisstudy showed a dynamic network loading method that maintains correct flow propagation as well as flowconservation condition.

In particular, this study pointed out that the conventional Frank–Wolfe (F–W) algorithm can be inefficientand inconvenient to solve the dynamic assignment problem because we can no longer update link flows bytaking a linear combination of the current and auxiliary flows. This algorithm needs additional dynamic net-work loading whenever we change the step size during the line search in order to maintain the correct flowpropagation. By contrast, the novel solution algorithm, which was developed in this study, can be relativelyefficient compared to the F–W algorithm because the novel algorithm can maintain the correct flow propaga-tion intrinsically and does not need the evaluation of an objective function.

Results of application of the present DUE assignment model to some test networks using the deterministicqueuing model for a link performance function showed that we could find more accurate solution at less com-putation time using the novel algorithm compared to the conventional F–W algorithm. In fact, this new solu-tion algorithm gave rise to good quality solutions even in the Sioux Falls network, which is large enough toreflect real network condition (Han, 2000). Furthermore, it was found that the predictive cost-flow associationbut not the reactive one in discrete time could give rise to plausible flow patterns regardless of the size of timeincrement that is used in the solution method.

Acknowledgements

The author is grateful to Professor B.G. Heydecker for his invaluable supervision and encouragement andto referees, who contributed on this work with constructive suggestions and comments.

Appendix A. A back-track algorithm

We define the following notations to explain back-track algorithm to enumerate reasonable routes in thesense of (Dial, 1971):

p, route number;m, a link which connects node i to j;FSL (n), the first link starting from node n;NSL (m), the next link of link m (NSL (m) = �1, if m is the final link starting from node i);BL (n), a back link of node n;c�ði;jÞ, cost on link (i, j) in the free-flow condition.

Page 18: A route-based solution algorithm for dynamic user equilibrium assignments

p: route number

m: a link which connects node i to j

FSL (n): the first link starting from node n

NSL (m): the next link of link m (NSL (m)=-1, if m is the final link starting from node i)

BL (n): a back link of node n

*).( jic : cost on link ),( ji in the free-flow condition

p=0n=o (origin) m=FSL(n)

BL(n)=-1Do

c ci o j o( , )*

( , )*< and c cj d i d( , )

*( , )*< and m ≠ −1

Yesn=j m=-1

Yesj=d (destination)

Yesm=BL(n) m=NSL(i)

BL(n)=m BL(n)=m n=i /*back track */ p=p+1 m=FSL(n) m=NSL(n)k=nDo

store BL(n) for route pm=BL(k) k=iWhile (k≠o)

n=i /*back track */ m=NSL(i) While (n≠o or m≠-1)

No

No

No

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1111

Appendix B. Calculation of outflows in discrete time

Assume that we can draw vehicle trajectories in a link for a certain time increment [s, s + Ds) as Fig. B.1.Then, we may come across the discrete times tn, tn+1, . . ., etc., which lies between arrival time s(s) and s(s + Ds).Here, we shows how we can calculate outflow rates at these discrete time. Note that for the sake of simplicitywe suppress the subscript a, which denotes a link and the subscript od, which denotes an origin–destinationpair.

(time)

(distance)

s s s+ Δ

τ ( )s τ ( )s s+Δtn n+1

σ ( )tn

Fig. B.1. Vehicle trajectory in a link.

Page 19: A route-based solution algorithm for dynamic user equilibrium assignments

1112 S. Han / Transportation Research Part B 41 (2007) 1094–1113

Firstly, we can calculate cumulative outflows G(tn) at time tn as

GðtnÞ ¼ GðsðsÞÞ þ gð�Þðtn � sðsÞÞ ðB:1Þ

where gð�Þ denotes outflow rate during [s(s), tn), and is assumed to equal the outflow rate during[s(s),s(s + Ds)). Then, we can calculate gð�Þ as

gð�Þ ¼ Gðsðsþ DsÞÞ � GðsðsÞÞsðsþ DsÞ � sðsÞ ðB:2Þ

Therefore, we can rewrite (B.1) using flow propagation (7) as

GðtnÞ ¼ EðsÞ þ Eðsþ DsÞ � EðsÞsðsþ DsÞ � sðsÞ ðtn � sðsÞÞ ðB:3Þ

So, we can calculate outflow rate g(tn) at each discrete time tn as

gðtnÞ ¼Gðtnþ1Þ � GðtnÞ

DtðB:4Þ

Although we can calculate outflow rates from a certain link at each discrete time using (B.3) and (B.4), we needto calculate each outflow from various routes which constitute a link from the link outflow in order to performnetwork loading. For each instant t, this can be calculated using the following Eq. (B.5) which is proved by(Kuwahara and Akamatsu, 1997):

hpðsðtÞÞgaðsðtÞÞ

¼ fpðtÞeaðtÞ

for 8p which uses link a ðB:5Þ

According to the Eq. (B.5), we can calculate the route outflow which uses link a at discrete time tn as

hpðtnÞgaðtnÞ

¼ fpðrðtnÞÞeaðrðtnÞÞ

for 8p which satisfy dpa ¼ 1 ðB:6Þ

where r(tn) is the entering time to a link in order to exit at time tn and is decided as follows.Firstly, find k* which satisfies s(tn � kDt) 6 tn by increasing k from 1.Let r ¼ tn � k�Dt, then we can obtain r(tn) from interpolation as

rðtnÞ ¼ rþ tn � sðrÞsðrþ DtÞ � sðrÞDt ðB:7Þ

We can also calculate ea(r(tn)) or fp(r(tn)) during [r(tn),r(tn) + Dt) as

eaðrðtnÞÞ ¼ ea½rðtnÞ�ð½rðtnÞ� þ Ds� rðtnÞÞ þ ea½rðtnÞ þ Ds�ðrðtnÞ � ½rðtnÞ�Þ ðB:8aÞfpðrðtnÞÞ ¼ fp½rðtnÞ�ð½rðtnÞ� þ Ds� rðtnÞÞ þ fp½rðtnÞ þ Ds�ðrðtnÞ � ½rðtnÞ�Þ ðB:8bÞ

where [x] denotes the integer part of number x.Note that Dt should be less than travel cost c(t), otherwise we cannot calculate outflow rate after entrance

time s + Ds properly (see for example, Kuwahara and Akamatsu, 1997). In this respect, they suggested that Dt

should be less than the minimum link travel cost as

Dt 6 mina

/a; ðB:9Þ

References

Astarita, V., 1996. A continuous time link model for dynamic network loading based on travel time functions. In: Lesort, J.-B. (Ed.),Transportation and Traffic Theory. Pergamon, Oxford, pp. 79–102.

Beckmann, M., Mcguire, C.B., Winsten, C.B., 1956. Studies in the Economics of Transportation. Yale University Press, New Haven.Chen, S., Hsueh, C., 1998. A model and an algorithm for the dynamic user-optimal route choice problem. Transportation Research 32B

(3), 219–234.Dafermos, S.C., 1982. Relaxation algorithms for the general asymmetric traffic equilibrium problem. Transportation Science 16 (2), 231–

240.

Page 20: A route-based solution algorithm for dynamic user equilibrium assignments

S. Han / Transportation Research Part B 41 (2007) 1094–1113 1113

Dafermos, S.C., Sparrow, F.T., 1969. The traffic assignment problem for a general network. Journal of Research of the National Bureauof Standards 73 (B), 91–118.

Dial, R.B., 1971. A probabilistic multipath traffic assignment model which obviates path enumeration. Transportation Research 5 (2), 83–111.

Frank, M., Wolfe, P., 1956. An algorithm for quadratic programming. Naval Research Logistics Quarterly 3, 95–110.Friesz, T.L., Luque, J., Tobin, R.L., Wie, B., 1989. Dynamic network traffic assignment considered as a continuous time optimal control

problem. Operation Research 37 (6), 893–901.Friesz, T.L., Bernstein, D., Smith, T.E., Tobin, R.L., Wie, B., 1993. A variational inequality formulation of the dynamic networks user

equilibrium problem. Operation Research 41 (1), 179–191.Han, S., 2000. Dynamic traffic assignment techniques for general road networks. Ph.D. Thesis, University of London, UK.Han, S., 2003. Dynamic traffic modelling and dynamic stochastic user equilibrium assignment for general road networks. Transportation

Research 37B, 225–249.Han, S., Heydecker, B.G., 2006. Consistent objectives and solution of dynamic user equilibrium models. Transportation Research 40B,

16–34.Hearn, D.W., 1982. The gap function of a convex program. Operation Research Letter 1, 67–71.Heydecker, B.G., Addison, J.D., 1996. An exact expression of dynamic traffic equilibrium. In: Lesort, J.-B. (Ed.), Transportation and

Traffic Theory. Pergamon, Oxford, pp. 359–383.Heydecker, B.G., Addison, J.D., 1998. Analysis of traffic models for dynamic equilibrium traffic assignment. In: Bell, M.G.H. (Ed.),

Transportation Networks: Recent Methodological Advances. Pergamon, Oxford.Heydecker, B.G. Verlander, N., 1999. Calculation of dynamic traffic equilibrium assignments. In: Proceedings of the European Transport

Conferences, Seminar F, pp. 79–91.Janson, B.N., 1991. Dynamic traffic assignment for urban road networks. Transportation Research 25B (2/3), 43–61.Jayakrishnan, R., Tsai, W.K., Chen, A., 1995. A dynamic traffic assignment model with traffic-flow relationships. Transportation

Research 3C (1), 51–72.Kuwahara, M., Akamatsu, T., 1997. Decomposition of the reactive dynamic assignment with queues for a many-to-many origin–

destination pattern. Transportation Research 31B (1), 1–10.Lam, W.H., Huang, H.J., 1995. Dynamic user optimal traffic assignment model for many to one travel demand. Transportation Research

29B (4), 243–259.Larsson, T., Patriksson, M., 1992. Simplicial decomposition with disaggregated representation for the traffic assignment problem.

Transportation Science 26 (1), 4–17.Lee, S., 1995. Mathematical programming algorithms for equilibrium road traffic assignment. Ph.D. Thesis, University of London, UK.Leventhal, T., Nemhauser, G., Trotter, L., 1973. A column generation algorithm for optimal traffic assignment. Transportation Science 7

(2), 168–176.Lin, W.H., Lo, H.K., 2000. Are the objective and solutions of dynamic user-equilibrium models always consistent? Transportation

Research 34A, 137–144.Merchant, D.K., Nemhauser, G.L., 1978. A model and an algorithm for the dynamic traffic assignment problem. Transportation Science

12 (3), 183–199.Papageorgiou, M., 1990. Dynamic modelling, assignment, and route guidance in traffic networks. Transportation Research 24B (6), 471–

495.Patriksson, M., 1994. The Traffic Assignment Problem-Models and Methods. VSP, Utrecht, The Netherlands.Ran, B., Boyce, D.E., 1996. Modelling Dynamic Transportation Networks: An Intelligent Transportation System Oriented Approach.

Springer.Schittenhelm, H., 1990. On the integration of an effective assignment algorithm with path and path-flow management in a combined trip

distribution and traffic assignment algorithm. In: PTRC European Transport and Planning, 18th Summer Annual Meeting,Transportation Planning Methods, Seminar H, University of Sussex, England, September, pp. 203–214.

Sheffi, Y., 1985. Urban Transportation Networks: Equilibrium Analysis with Mathematical Programming Methods. Prentice-Hall,Englewood Cliffs, New Jersey.

Smith, M.J., 1979. The existence, uniqueness and stability of traffic equilibria. Transportation Research 13B (4), 295–304.Smith, M.J., 1993. A new dynamic traffic model and the existence and calculation of dynamic user equilibria on congested capacity-

constrained road networks. Transportation Research 27B (1), 49–63.Steenbrink, P.A., 1974. Optimisation of Transport Networks. John Wiley & Sons, London.Wardrop, J.G., 1952. Some theoretical aspects of road traffic research. Proceedings of the Institution of Civil Engineers 1 (2), 325–362.Wie, B., Friesz, T.L., Tobin, R.L., 1990. Dynamic user optimal traffic assignment on congested multi destination networks.

Transportation Research 24B (6), 431–442.Wie, B., Tobin, R.L., Friesz, T.L., 1994. The augmented Lagrangian method for solving dynamic network traffic assignment models in

discrete time. Transportation Science 28 (3), 204–220.