Schedule-Based Transit Assignment: A New Dynamic Equilibrium Model With Vehicle Capacity Constraints
Schedule-Based Transit Assignment: A New Dynamic Equilibrium Model With Vehicle Capacity Constraints
Schedule-Based Transit Assignment: A New Dynamic Equilibrium Model With Vehicle Capacity Constraints
ABSTRACT
1 INTRODUCTION
based models using diachronic graphs (Crisalli, 1999; Nguyen et al., 2001),
which can be reduced to static assignments on space-time networks, where
the congestion may affect the arc costs, but not the travel times that are
incorporated in the graph structure. Although this way it is possible, as in the
static case, to simulate the priority of passengers onboard, a distortion on the
cost pattern is introduced: at the equilibrium the cost for the passengers who
board the arriving run is equal to that suffered by those who must wait at the
stop for a successive run. Moreover, when using this approach a compromise
is to be made between numerical convergence and accuracy in constraint
satisfaction, because, if the waiting cost increases too strongly when the
onboard flow approaches the residual capacity, then the assignment
algorithm becomes unstable. Instead of introducing an asymmetric arc cost
function, Carraresi et. al. (1996) formulate the transit assignment on the
diachronic graph as a multi-commodity flow problem with explicit capacity
constraints. This way they get rid of the numerical instability, but introduce
the questionable behavioural assumption that all the paths whose cost is
within a threshold from the minimum cost are perceived as equivalent by
passengers. Moreover, this approach did not produce applicative tools,
because multi-commodity flow problems are much more cumbersome to
solve with respect to the shortest path problems that pervade all the other
models.
The main advantage of the Dynamic User Equilibrium (DUE) model
presented here is its capability of reproducing correctly the effects of the
vehicle capacity constraints, both in terms of performance pattern and flow
propagation. Our approach is simply to represent these phenomenon within a
suitable arc performance function that yields waiting time temporal profiles
consistent with a FIFO representation of passenger queues for any given
flow pattern. This way we overcome both the numerical instability and the
cost pattern distortion.
The paper is organized as follows. In section 2 we formalize our
modelling framework starting from the data structure of relevant input. In
section 3 the arc performance function is presented, and in particular we
propose the new waiting model. In section 4 a suitable network loading map
is introduced to handle time-continuous flows on the pedestrian network and
time-discrete point-packets on the line network. In section 5 the dynamic
equilibrium model is formulated as a fixed point problem. In section 6 we
address the main algorithmic issues that relate to time discretization, while
convergence is achieved trivially through the Method of Successive
Averages. Finally, in section 7 we present two numerical applications of the
proposed model, the first one an a toy network to discuss some reproducible
results, the second one an a large network to show the potentialities of the
method.
5 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
Converting the input data, usually organized in a GIS database, into the
assignment graph handled by the model is an essential operation, which
however is not usually addressed with much detail in the specific literature.
In the following we tribute the proper relevance to this issue, with the aim of
defining the minimum amount of information needed to apply the proposed
schedule-based transit assignment model.
expresses the maximum number of passengers that can physically fit in the
carrier. The latter expresses the rate at which passengers get off the carrier.
Each line ℓ∈ℑ is operated with a number κℓ∈ℵ of runs. The generic run
k∈[1, κℓ] ⊆ ℵ is characterized at each stop rs(ℓ)∈R(ℓ) by specific arrival
time ATsℓk∈ℜ and departure time DTsℓk∈ℜ. Not every run makes all the
stops of its route and to enhance efficiency we wish to keep as small as
possible the set of the lines. Therefore, a Boolean make-the-stop variable
MSsℓk∈{0,1} is introduced, that is equal to 1, if the k-th run of line ℓ makes
the s-th stop, and to 0 otherwise. These information represent the timetable
of line ℓ, which must satisfy the following consistency constraints (the
arrival and departure times relative to the runs that don’t make a certain stop
can be set arbitrarily within these constraints):
ATsℓk ≤ DTsℓk ≤ ATs+1ℓk, s∈[1, σℓ-1] , k∈[1, κℓ] ,
ATsℓk < ATsℓk+1, DTsℓk < DTsℓk+1 , s∈[1, σℓ] , k∈[1, κℓ-1] .
Regarding the fare schema, we attach to the s-th section of the k-th run of
line ℓ∈ℑ, from the stop rs(ℓ) to the stop rs+1(ℓ), with s∈[1,σℓ-1] and k∈[1,
κℓ], a specific section fare SFsℓk∈ℜ+ so as to obtain purely additive path
costs, which allows implicit path enumeration in route choice computations.
It often happens that one is interested in the main transit network, while
also the secondary transit network is to be taken into account in order to
correctly evaluate the overall performances. To this end, it can work very
well to simulate the secondary network through fast pedestrian edges, whose
speed is assumed equal to the transit operating speed. To this end, we allow
to specify a speed S(u,v)∈ℜ++ for each edge (u, v)∈E.
where the arc components of c, t and f are temporal profiles or run indexed
vectors, depending on the arc type.
a∈WA, the maximum number of passengers that can actually board on each
run k∈[1, κℓ(a)] is equal to the residual capacity Qℓ(a) - fd(a)k , where if s(a) > 1
d(a) = ( (-ℓ(a), NV(TL(a))) , (+ℓ(a), NV(TL(a))) ) is the corresponding
dwelling arc, otherwise fd(a)k = 0.
To evaluate the effects of the above capacity constraints, we shall
determine for each run k∈[1, κℓ(a)] the instant ρak when the last passenger
that achieves boarding it (or would achieve to do it, in case of null inflows)
enters the waiting arc. By definition the exit time of all passengers that board
run k coincides with the departure time DTs(a)ℓ(a) k, while the arc cost is given
by multiplying the travel time by the value of waiting time μ∈ℜ+. Then we
have:
If there was no room for a passenger reaching the stop at time τ to board any
run of the line till the end of the simulation period, then his travel costs
would be infinite; therefore, he will chose a different path.
fd(a)k
vehicle
ta(τ) - τ
time
f ′a(τ)
inflow
time
Figure 2 - Waiting time for given residual capacities and inflow
The instants ρak can be determined recursively following the run order.
10 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
To this end lets assume ρa0 = -∞. Starting from the instant ρak-1 the
passengers that arrive at the stop later than that willing to ride line ℓ(a) shall
board the successive run k until their number overcomes the residual
capacity Qℓ(a) - fd(a)k, which happens at a specific time denoted σak :
or the carrier of run k departs from the stop, which happens at time DTs(a)ℓ(a)k:
The proposed waiting model satisfies the FIFO rule, but yields
discontinuities in the travel time pattern, although this is coherent with the
real phenomenon. Indeed, the waiting time temporal profile has the saw-
tooth shape depicted in Figure 2, where each run k will be taken by the
passengers that entered the waiting arc during the time interval (ρak-1, ρak].
Strictly speaking, the travel time of run k∈[1, κℓ(a)] at the stop s(a) of line
ℓ(a) associated to the generic alighting arc a∈RA depends on the position of
the passenger in the alighting queue. Therefore, from the first to the last user
in the queue it varies linearly from 0 to the ratio fak/ηℓ between the number of
alighting passengers and the alighting capacity. This way, passengers
starting their trip at the same time from the same stop and travelling along
the same path may reach the same destination at different times.
However, if we should assume such a rigorous formulation to hold also in
determining the arc cost, we would end up with undetermined path costs,
which are highly undesirable from a modelling point of view. Moreover,
from a behavioural point of view, passengers are unlikely to make their path
choice relying on their alighting order. For these reasons we assume a risk
adverse behaviour, such that all the alighting passengers perceive a same
travel time equal to the maximum fak/ηℓ , while the arc cost is given by
multiplying this travel time by the value of alighting time γ∈ℜ+:
The travel time of run k∈[1, κℓ(a)] on the section s(a) of line ℓ(a)
associated to the generic running arc a∈RA is simply given by the difference
between the arrival time ATs(a)+1ℓ(a) k and the departure time DTs(a)ℓ(a) k:
The travel time of run k∈[1, κℓ(a)] at the stop s(a) of line ℓ(a) associated
to the generic dwelling arc a∈DA is simply given by the difference between
the departure time DTs(a)ℓ(a) k and arrival time ATs(a)ℓ(a) k, while the cost is
obtained similarly to (9). Then we have:
The travel time on the generic pedestrian arc a∈PA is simply given by the
ratio between the length Lb(a) of the edge b(a) = (NV(TL(a)), NN(HD(a)))
associated to a and its speed Sb(a). The arc cost is given by multiplying the
travel time by the value of walking time ω∈ℜ+. Then we have:
wx d k = −ca k + wHD ( a ) d k
(14.2)
k ∈ [1, κ A ( a ) ], a = FSE ( x, d ), x ∈ DN
14 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
When in equations (14.1) and (15.2) there is no run k satisfying the required
property, then the corresponding satisfaction term shall be considered equal
to -∞.
Since users choose only efficient paths, the system of equations (14) can
be solved by processing the nodes in topological order, while time instants
and runs may be processed in any order for each node. Then we express its
solution in compact form through the following functional:
w = w(c, t) . (16)
p = p(w, c, t) . (17)
Each passenger may anticipate or delay his departure time from the origin
in order to benefit from an higher satisfaction to reach his destination.
However, in doing this he suffers a disutility, which is here assumed to be
proportional to the advance or delay, respectively.
Following Bellei et al. (2006) we reproduce this travel decision through a
logit model such that the generic passenger desiring to depart at time τ from
the origin o∈Z toward the destination d∈Z has a continuous choice set of
alternatives from time τ-δA to time τ+δD, where δA∈ℜ+ and δD∈ℜ+ denote
the maximum feasible advance and delay, respectively. The systematic
utility ϖod(σ/τ) of the actual departure time σ∈[τ-δA ,τ+δD], that constitutes
the generic alternative, is assumed to be equal to:
where βA∈ℜ+ and βD∈ℜ+ denote the value of departure advance and delay.
On this basis, the departure time choice produces a transformation of the
desired demand flow temporal profile into an actual demand flow temporal
profile. Let Dod(τ)∈ℜ+ and Φod(τ)∈ℜ+ be the desired and the actual
cumulative demand flow at time τ, respectively. In the referred paper it is
proved that the above assumptions lead to the following formulation, where
ϑ∈ℜ++ is a parameter to be calibrated:
⎛ ϖod (τ / σ) ⎞
τ+δA exp ⎜ ⎟
⎝ ϑ ⎠
Φo '(τ) = ∫ Do '(σ) ⋅ σ+δD
d d
⋅ dσ . (19)
⎛ ϖ d
(λ / σ) ⎞
∫ exp ⎜⎝ ϑ ⎟⎠ ⋅ dλ
τ−δD o
σ−δA
Φ = Φ(w; D) . (20)
16 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
The outflows for the different arc types are determined as follows:
The arc cumulative inflow is simply given by the sum of the cumulative
flows relative to all the destinations:
Since users choose only efficient paths, the system of equations (21), (22)
17 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
and (23) can be solved by processing the nodes in reverse topological order,
while time instants and runs may be processed in any order for each node.
Then we express its solution in compact form through the following
functional:
f = f(p, t, Φ) . (24)
D p(w, t, c)
Φ(w; D) w
Φ p
f(p, t, Φ) w(c, t)
f t c
Γ(f)
path enumeration. Then, combining the latter with the arc performance
function (1) we have:
Note that the vehicle capacity constraints will be satisfied only at the
equilibrium, since they affect directly only the arc cost function, while the
network flow propagation is transparent to them.
6 SOLUTION ALGORITHM
This way, the generic temporal profile g(τ) can be represented numerically
through the (1 × n+1) row vector g = (g0, … , gi, … , gn).
Note that the generic instantaneous flow, being the derivative of a
piecewise linear cumulative flow temporal profile has a piecewise constant
temporal profile.
Time discretization is always a crucial compromise between accuracy and
efficiency. We don’t have explicit limitations to satisfy in our model.
However, if we expect reliable results relative to the passenger loads on each
run, which is usually the case in schedule-based transit assignment, we
cannot avoid introducing at least one instant τi∈τ between each couple of
consecutive runs of a same line (or of the same group of common lines)
departing from a stop.
Given the cumulative inflows f, the computation of the arc exit times and
costs is straightforward, except for waiting times.
function Γ(f)
for each arc a∈PA
for each instant τi∈τ
19 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
The exit times of the generic waiting arc a∈WA are computed in
chronological order, by examining which passengers achieve boarding each
run one after the other. Specifically, let F be the number of passengers that
boarded the runs preceding the current one, denoted k, plus the residual
capacity of the latter. Until the cumulative inflow fai is higher than F or τi is
later than DTs(a)ℓ(a) k, the exit time at τi is DTs(a)ℓ(a) k. When one of these two
conditions is met a new run is considered. Before iterating, we shall check
whether not all the residual capacity was used, and in this case update F to
ϕ = fa(DTs(a)ℓ(a) k).
Given the exit times t and the costs c, also the computation of the node
satisfactions and of the arc conditional probabilities is straightforward.
Note that, by processing nodes in topological order, when wxd i and pad i
are computed the node satisfactions relative to the arcs belonging to the
20 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
function f(p, t, Φ)
f=0
for each destination d∈Z
fd = 0, ed = 0
for each node x∈N in reverse topological order
21 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
6.3 Equilibrium
The DUE, expressed as a fixed point problem, can be solved through the
following MSA algorithm, where ε∈ℜ+ and mmax∈ℵ are, respectively, the
maximum cumulative flow difference and the maximum number of
iterations.
function DUE
m = 0, f = 0, y = ∞ initialization
until ||f-y||∞ < ε or m > mmax do stop criterion
m=m+1 new iteration
[c, t] = Γ(f) arc performance function
w = w(c, t) node satisfactions
p = p(w, c, t) arc conditional probabilities
Φ = Φ(w; D) departure time choice
y = f(p, t, Φ) network loading map
f = f + 1/m ⋅ (y - f) update arc flows with MSA
7 NUMERICAL APPLICATIONS
Figure 5 shows the onboard flows obtained with the two DTA; in the first
case the number of passengers that board on the second run at stop 2 exceeds
the residual capacity, while in the second case, as expected, the exceeding
users are forced to wait for the third run. This way also the third run
becomes full, so that some users are forced to wait for the fourth run.
onboard passengers [n°] - WITHOUT capacity constraint onboard passengers [n°] - WITH capacity constraint
100 100
run 1
80 run 2 80
run 3
60 60
run 4
40 40
Q
20 20
0 0
A B A B
section section
Figure 5 - Onboard flows without and with the vehicle capacity constraint.
This correct behaviour of the model is confirmed by the waiting time and
queue temporal profiles at stop 2 reported in Figure 6. In particular, the
passengers arrived at the stop between 7:19 and 7:25, which in the first case
could board the second run, in the second case have to wait for the third run,
since the residual capacity on the second run is used by the passengers
arrived between 7:10 and 7:19. Note that the latter users can still board the
same run, and thus their waiting time does not change.
23 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
1600 WITHOUT 50
capacity
40
1200 constraint
30
800 WITH
capacity 20
constraint
400 10
0 0
07.00 07.10 07.20 07.30 07.40 07.50 08.00 07.00 07.10 07.20 07.30 07.40 07.50 08.00
1200 1500
WITHOUT
capacity 1200
900 constraint
900
600 WITH
capacity 600
constraint
300 300
0 0
07.00 07.10 07.20 07.30 07.40 07.50 08.00 07.00 07.10 07.20 07.30 07.40 07.50 08.00
In order to test the efficiency of the proposed model and its applicability
to real instances, we performed a DTA on the regional transit network of
Rome. This very large network, depicted in Figure 8, consists of 3,963
transit lines (3,879 buses and 84 railways) with 45,682 stops (44,764 bus
stops and 918 railway stations) served during a work day by 10,447 runs.
The corresponding assignemnt graph consists of 122,747 arcs and 51,293
nodes. The demand consists of 288,007 morning trips to work or school and
is represented through 854 traffic zones, on which basis are defined 4 hourly
origin-destination matrices (06:00-07:00; 07:00-08:00; 08:00-09:00; 09:00-
10:00). The 5 hours of simulation, from 06:00 to 11:00 AM, are divided into
60 time intervals of 5 minutes.
Again, two DTA where performed without and with vehicle capacity
constraints, assuming as stop criterion mmax = 20. The computation, carried
out on a 3.0 GHZ PCU with 2 GB of RAM, in the first case required 18.7
minutes and just one iteration, since no congestion affects the travel choices,
while in the second case required 379 minutes, that is about 18.9 minutes for
each iteration, showing that the calculation speed is independent of
congestion.
24 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
Figure 8 - Number of passengers that cannot board an arriving carrier of the chosen line due
to the vehicle capacity constraints at the stops of the regional transit network of Rome.
REFERENCES
1. Bellei G., Gentile G., Papola N. (2003) Assegnazione alle reti multimodali in presenza di
congestione. In Metodi e Tecnologie dell’Ingegneria dei Trasporti. Seminario 2001, ed.s
G. Cantarella and F. Russo, Franco Angeli, Milano, Italy, 117-134.
25 Natale Papola, Francesco Filippi, Guido Gentile, Lorenzo Meschini
2. Bellei G., Gentile G., Papola N. (2005) A within-day dynamic traffic assignment model
for urban road networks. Transportation Research B 39, 1-29.
3. Bellei G., Gentile G., Meschini L., Papola N. (2006) A demand model with departure time
choice for within-day dynamic traffic assignment. To be published in European Journal
of Operation Research.
4. Carraresi P., Malucelli F. and Pallottino S. (1996) Regional mass transit assignment with
resource constraints. Transportation Research B 30, 81-98.
5. Cascetta E. (2001) Transportation systems engineering: theory and methods, Kluwer
Academic Publisher, 384-386.
6. Cristalli U. (1999) Dynamic transit assignment algorithms for urban congested networks.
In Urban Transport and the Environment for the 21st century V, ed. L.J. Sucharov,
Computational Mechanics Publications, 373-382.
7. DeCea J. and Fernandez E. (1993) Transit assignment for congested public transport
systems: an equilibrium model. Transportation Science 27, 133-147.
8. Gentile G., Meschini L., Papola N. (2003) Un modello logit di assegnazione dinamica
intraperiodale alle reti multi modali di trasporto urbano. In Metodi e Tecnologie
dell’Ingegneria dei Trasporti. Seminario 2001, ed.s G. Cantarella and F. Russo, Franco
Angeli, Milano, Italy, 33-55.
9. Gentile G. and Meschini L. (2006) Fast heuristics for the continuous dynamic shortest
path problem in traffic assignment. Submitted to Networks.
10. Hickman M. and Bernstein D. (1997) Transit service and path choice models in stochastic
and time-dependent networks. Transportation Science 31, 129-146.
11. Kurauchi F., Bell M. and Schmocker J.-D. (2003) Capacity constrained transit assignment
with common lines. Journal of Mathematical Modelling and Algorithms 2, 309-327.
12. Nielsen O. and Jovicic G. (1999) A large scale stochastic timetable-based transit
assignment model for route and sub-mode choices. Proceedings of 27th European
Transportation Forum, Seminar F, Cambridge, England, 169-184.
13. Nielsen O. (2000) A stochastic transit assignment model considering differences in
passengers utility functions. Transportation Research B 34, 377-402.
14. Nguyen S. and Pallottino S. (1988) Equilibrium traffic assignment for large scale transit
networks. European Journal of Operational Research 37, 176-186.
15. Nguyen S., Pallottino S. and Malucelli F. (2001) A modelling framework for the
passenger assignment on a transport network with time-tables. Transportation Science 35,
238-249.
16. Nuzzolo A. and Russo F. (1993) Un modello di rete diacronica per l’assegnazione
dinamica al trasporto collettivo extraurbano. Ricerca Operativa 67, 37-56.
17. Nuzzolo A., Russo F. and Crisalli U. (2003) Transit network modelling. The schedule-
based dynamic approach. Collana Trasporti, Franco Angeli, Milan, Italy.
18. Spiess H., Florian M. (1989) Optimal strategies: a new assignment model for transit
networks. Transportation Research B 23, 83-102.
19. Wilson N. and Nuzzolo A. (ed.s) (2004) Schedule-based dynamic transit modelling:
theory and applications. Kluwer Academic Publishers.
20. Tong C. and Wong S. (1999) A stochastic transit assignment model using a dynamic
schedule-based network. Transportation Research B 33, 107-121.