Traffic Assignment
Traffic Assignment
Milos N. Mladenovic
Assistant Professor
Department of Built Environment
02.05.2017
Course Outline
• Forecasting overview and data management
• Trip generation modeling
• Trip distribution modeling
• Mode split modeling
• Traffic assignment modeling
• Network theory
• Activity-based modeling
• Modeling practices
10.5.2017
2
Outline
• Time-of-day and directional volume factoring
• Traffic assignment overview
• Modeling strategy and components
• Traffic assignment models
10.5.2017
3
From activities to traffic
Daily
Trips Traffic
activities
10.5.2017
4
Hourly Travel Time Variation
Overnight
Morning
Midday
Afternoon
Evening
10.5.2017
5
Factoring
• Time-of-day networks require that the link capacity be
adjusted to reflect the capacity appropriate to the time
period, for example, the peak 60 minutes, the peak 90
minutes, or the peak 120 minutes, so that the volume
delay functions used in the equilibrium assignment
algorithm will function correctly
• Highway and transit network link data (capacity and
speed) must be coded appropriately for the time-
specific assignments
10.5.2017
6
Factoring
• Before Traffic Assignment
• Peak-period factors are applied to the mode-specific trip tables
• Production and attraction formatted trip tables are factored
• Directional split factors convert P and A trip tables to O and D trip
tables
10.5.2017
7
Time of Day Factoring before Assignment
10.5.2017
8
Time of Day Factoring after Assignment
10.5.2017
9
Inputs and Outputs
Before traffic assignment
• I: Time-of-day factors by trip purpose and by mode
• I: Directional split factors by trip purpose and by mode
• O: Time period trip tables by purpose and by mode in O & D format
• Data: from travel surveys (trip type and direction)
10.5.2017
10
Example - Time of Day and Directional
Factors
10.5.2017
11
Four-Step Travel Modeling
10.5.2017
12
Overall (Matrix Manipulation) Process
10.5.2017
13
Overall (Matrix Manipulation) Process
10.5.2017
14
Traffic Assignment Purpose
• Testing of alternatives
• Establishment of short range priority programs for traffic flow
improvements
• Analysis of the location of transport facilities within a corridor
• Providing input to other planning tools (e.g., air quality modeling)
• Detailed study of the effects of a traffic generator (such as a new
stadium) on traffic flows
10.5.2017
15
Network vs. System Equilibrium
• Network equilibrium –
when travelers can no
longer find better routes
to their destinations
• System equilibrium –
when there are no more
(significant) changes in
time, destination, and
mode choice of trips
(impedances)
- Computation time
10.5.2017
16
Traffic Assignment Objectives
• Obtain good aggregate network measures (e.g., total road flows,
total revenue by the bus service)
• Estimate zone-to-zone travel costs (times) for a given level of
demand
• Obtain reasonable link flows and identify heavily congested links
• Estimate the routes used between each O-D pair
• Analyze which O-D pair use a particular link or route
• Obtain turning movements at intersections
10.5.2017
17
Traffic Assignment Input/Output
Input
• Network geometry
• Network parameters for each link
• O & D matrix or trips to be “loaded”
• Assignment rule or hypothesis (such as “all trips take the min. time
path”)
Output
• “Traffic Flows” or travel volumes on each segment of the
transportation network
10.5.2017
18
Traffic Assignment Method Steps
1. Identify a set of routes considered attractive to travelers (skim tree
structure)
2. Assign suitable proportions of the trip matrix to these routes (flows
on the links)
3. Search for convergence
• Proximity to the solution
• Computation time / # of iterations
• Skim Tree – a list of minimum paths between an origin node and all
the possible destination nodes
• Minimum Path Algorithm – a logical set of rules used to find the
shortest part through a complex network
10.5.2017
19
Traffic Assignment Network
10.5.2017
20
Sample Road Network
103 104
5
4 3
Sample Network
2 Nodes 1-99 are Zones
Nodes 100-199 are external stations
1 Nodes 200-1,000 are node numbers
Rail Line
Centroid Connectors
Roadway Link
105
10.5.2017
21
Example of Coded Network
10.5.2017
22
Macroscopic Traffic Flow
10.5.2017
23
Network Flows
Macro
vs.
Micro
10.5.2017
24
Link Parameters
10.5.2017
25
Link Parameters
• Bureau of Public Roads Method
• Davidson’s Method
10.5.2017
26
Link Parameters
CATS LINK PERFORMANCE CURVES
S to
2 V /C
1
2
S (min)
V (thousands)
10.5.2017
27
Link Parameters
MODIFIED BPR LINK PERFORMANCE FUNTION
V
4
S t o 1 0 . 1 5 if (V / C ) 1 . 0
C
V
4
S t o 1 1 . 0 if (V / C ) 1 . 0
C
13
12
11
10
(Compared to Free Flow Travel Time)
[Travel Time Ratio]
0
0 0.25 0.5 0.75 V/C 1 1.25 1.5 1.75
10.5.2017
28
Shortest Routes in the Network
A B C D E
A 0 5 3 8 9 Routes and Times
B 5 0 6 8 12 A B; T = 5
C 3 6 0 5 6 A C; T = 3
D 8 8 5 0 8
…
E 9 12 6 8 0
10.5.2017
29
Route Choice
• Rational traveler – min perceived (anticipated) costs
• Factors
• Travel time
• Distance
• Monetary cost
• Congestion and queues
• Type of maneuvers required
• Road type
• Scenery
• Road works
• Reliability of travel time
• Habit
10.5.2017
30
In Reality
• Differences in individual perceptions
• The level of knowledge of alternative routes
• Congestion effects affecting shorter routes first
• Weighting?
• Multiple user classes
• Introducing “stochasticity”
• Congested assignment and equilibrium
10.5.2017
31
Braess’ Paradox
F
• Demonstrates that, under certain C
conditions, adding capacity to a 2+0.02V 25+0.002V
road network when driver seek to
minimize their own costs can A B
actually make everyone worse off 25+0.002V 2+0.02V
• Travel time-flow formulation in D
minutes
• There are 1000 cars that want to
travel from A to B, and none from F ACB: 2 + 10 + 25 + 1 = 38 min
• Logical choice is 500 cars take ADB: 25 + 1 + 10 + 2 = 38 min
ADB, and 500 cars take ACB
10.5.2017
32
Braess’ Paradox
F
• Green link is a new (planned) link C
2+0.02V
• At A, it is rational to chose AC 25+0.002V
A 1+0.001V B
ACD: 2 + 10 + 1 + 1 = 24 min
AD: 25 + X min
25+0.002V 2+0.02V
D
• At C, it is rational to choose CD
CDB: 1 + 1 + 2 + 10 = 24 min
CB: 25 + X min
10.5.2017
33
All-or-nothing Assignment
1. Compute Skim Trees via Moore’s Maximum Path Algorithm
10.5.2017
34
Moore’s Minimum Route Algorithm
• Comparing to Dijkstra’s algorithm, Moore’s algorithm selects the
top (the oldest) entry in the loose-end table (containing nodes
already reached by the algorithm, but not filly explored as
predecessors for further nodes)
• On the contrary, Dijkstra’s algorithm selects node nearest to the
origin
• To find the minimum time path between any two nodes, the links
are followed backward from the destination node to the origin
node.
10.5.2017
35
Moore’s Minimum Route Algorithm
• This algorithm does not
require all possible routes
between an origin and
destination to be
individually investigated
to find the shortest route
• Rather, a minimum “tree”
is developed by fanning
out from the origin to all
other accessible nodes in
increasing order of their
impendence summation
from the origin
10.5.2017
36
Moore’s Algorithm – Step 1
• Determine the time
to the nodes
connected to node
1.
• The time to node 2
is 1 and to node 5
the time is 2.
10.5.2017
37
Moore’s Algorithm – Step 2
• From the node closet to
the home Node 1, which
is node 2, the
connections are to nodes
3 and 6 (backtracking is
not permitted).
• The corresponding times
are the time to node 2
plus the outbound link
times from node 2 which
are 4 and 5 minutes,
respectively.
10.5.2017
38
Moore’s Algorithm – Step 3
• The node closet to the
home node is node 5.
• Proceeding from node 5 to
node 6 the time is the time
to node 5 plus the link time
on 5-6, or a total of 4
minutes.
• Likewise the time to node 9
is 4 minutes (time to node
5 plus link time is 5-9).
10.5.2017
39
Moore’s Algorithm – Step 4
• The time to the node 6 via
link 5-6 is less than the
previous route via link 2-6.
• Therefore, the link 2-6 is
deleted from the tree.
10.5.2017
40
Moore’s Algorithm – Step 5
• The node now closest to
the home node is node 3
which is 4 minutes away.
• Adding the corresponding
link time to nodes 4 and 7
the corresponding times
are 10 and 6 minutes,
respectively.
• By convention, the node
with the lowest number of
those equidistant from the
home node is taken first.
10.5.2017
41
Moore’s Algorithm – Step 6
• The node closet to the home
node is now node 6. The
times to nodes 7 and 10 are 6
and 7 minutes respectively.
• Since node 7 was reached
previously in 6 minutes, there
is no time savings via the
route entering on link 6-7.
• For this reason the
connection is shown in
dashed lines and will not be
part of the tree as can be
seen in step 7.
10.5.2017
42
Moore’s Algorithm – Step 7
• Building proceeds from
node 9 to nodes 10 and
13, with respective times
from the home node of 7
and 6 minutes.
• The dashed line indicates
that link 9-10 will not be
in the final tree for the
same reason mentioned
in step 6 above.
10.5.2017
43
Moore’s Algorithm – Step 8 and 9
• Building proceeds from node 7 to nodes 8 and 11
• Building proceeds from node 13 to Node 14.
10.5.2017
44
Moore’s Algorithm – Step 10
• Building proceeds
from node 10.
• The time node 11 is
longer than a
previous entry so
that link 10-11 will
not be in the tree.
• The time to node 14
is the same as a
previous entry so
that link 10-14 will
not be in the tree
10.5.2017
45
Moore’s Algorithm – Step 11 and 12
• Tree building proceeds from node 11 to node 12 and node 15
• Tree building proceeds from node 8. Note that the time via node
8 to nodes 4 and 12 are less than previous.
10.5.2017
46
Moore’s Algorithm – Step 13 and 14
• Link 3-4 and 11-12 are removed from the tree due to finding in
step 12
• Building proceeds from node 15 to node 14 and to node 16.
10.5.2017
47
Moore’s Algorithm – Step 15 and 16
• Building proceeds from node 12 to node 11 and to node 16
• The final tree as built by the process
To go from node 1
to node 4, the
route would be
found by first
looking at node 4
and proceeding to
back nodes 8, 7,
3, 2, and 1
10.5.2017
48
All-or-nothing Assignment
Tij matrix
C D
A 400 200
B 300 100
10.5.2017
49
All-or-nothing Assignment
Tij matrix
C D
A 400 200
B 300 100
10.5.2017
50
All-or-nothing Assignment
• Resulting traffic assignment
10.5.2017
51
All-or-nothing Assignment
• The method assumes there are no congestion effects (link costs
are fixed regardless of traffic volume)
• The method assumes that all drivers consider the same attributes
for route choice and that they perceive them in the same way
• These assumptions might work in sparse or uncongested networks
• Useful to represent a sort of “desire line” effect, i.e., what would
drivers do in the absence of congestion
• Building block for other assignment techniques, such as
equilibrium or stochastic methods
10.5.2017
52
Advanced Traffic Assignment
Techniques
• Iterative Assignment
• Incremental Assignment
• User Equilibrium Assignment
• System Optimum Assignment
• Stochastic User Equilibrium Assignment
10.5.2017
53
Example Network
10.5.2017
54
Incremental Assignment
1. Each origin-destination flow is divided into n equal parts, typically
four
2. Assign each part using all-or-nothing assignment, updating the
link-loading and travel times following the assignment of each
increment
3. After the assignment of the nth part, the link loadings are summed
to determine the final loading
• Easy to program
• Can be interpreted as the build-up of congestion during the peak
period
10.5.2017
55
Incremental Assignment
10.5.2017
56
Iterative Assignment
1. Compute the travel time on each link Sa(va) corresponding to the flow va
in the current solution;
"
2. Compute a weighted mean travel time Sa , which consists of the
current travel time [Sa(va)] and the travel time Sa from the previous
'
iteration:
S"a 0.75 S'a 0.25 Sa v a ϕ – 0.25 or generalized [0,1]
3. Trace minimum path trees from each origin to all destinations by using
the weighted travel times S"a from step 2;
4. Assign all trips from each origin to each destination to the minimum path
(all or nothing assignment); call this link loading; Va' and
'
5. Return to step 1 and replace va with Va .
6. After 4 iterations, compute the mean of the four all-or-nothing
assignments.
10.5.2017
57
Iterative Assignment
10.5.2017
58
Method of Successive Averages (MSA)
• Difficulty in achieving convergence when the output flow variables
are used directly as input
• MSA uses the averages of the link flow variables from all the
previous solutions so that the output of the next solution produces
convergent variables
• In each iteration, each of the previous solutions is weighted
equally
• The first iteration is the standard run of trip distribution, mode
choice, and traffic assignment
• The second iteration starts with the travel costs of the first solution,
and then is equally averaged with the first solution
• The third solution, is weighted 1/3 and the previous solution is
weighted 2/3
10.5.2017
59
Method of Successive Averages (MSA)
• Nth solution is
weighted (n-1)/n
• Standard loop, with
initial equilibrium
assignment
• MSA loop averages
variables from the
standard loop with
fixed weights
• MSA loop is run
several times until
convergence
10.5.2017
60
Method of Successive Averages (MSA)
iteration f Flow town Cost town Flow bypass Cost bypass
1 Fa 2000 0
V1 1 2000 50 0 15
2 Fa 0 2000
Cost computations:
V2 1/2 1000 30 1000 20
3 Fa 0 2000
tb1 = 15+.005(0)=15 V3 1/3 667 23.3 1333 21.7
ta1= 10+.02(2000) = 50 4 Fa 0 2000
6 Fa 0 2000
tb3 = 15+.005(1333)=21.67
V6 1/6 667 23.3 1333 21.7
ta3= 10+.02(667) = 23.34
7 Fa 0 2000
8 Fa 2000 0
9 Fa 0 2000
10 Fa 0 2000
10.5.2017
61
Comparison of Modeled and Observed
Speeds for MSA
32
27
Speed (mph)
22
7
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
MSA Loop
10.5.2017
62
System vs. User Optimum
• System optimal min system total travel time (for all vehicles)
• User equilibrium min travel time for individual user and equal on
all routes
10.5.2017
63
System vs. User Optimum
Travel time
Traffic volume
10.5.2017
64
System vs. User Optimum
Wardrop’s Second principle (System optimum)
• Under social equilibrium conditions, traffic could be arranged in
congested networks in such a way that the average (or total)
travel cost is minimized
• Idealistic situation
• Can control entry onto particular routes and control travelers to
use routes that do not minimize their own individual travel time
• Difficult to ever realize in practice there is always the
temptation for individual travelers to change routes to improve
their own travel time
• Reference point for comparison with user equilibrium
10.5.2017
65
User Equilibrium Assumptions
• Each motorist chooses the minimum travel-time route
• Motorists have full information of the travel time on every possible
route
• Motorists consistently make the correct decisions regarding route
choice
• All individuals are identical in their behavior
• X1 and X2 represent the traffic flow on two links below
10.5.2017
66
User Equilibrium Example
t(q) is used to find the equilibrium flows x1 and x2 and the O-D travel time t
10.5.2017
67
User Equilibrium Example
If q < q´
10.5.2017
68
User Equilibrium Example
If q ≥ q´
10.5.2017
69
User vs. System Equilibrium Example
𝑡1 = 8 + 𝑥1
𝑡2 = 1 + 2𝑥2
• x – vehicle/h in thousands
• t – time in minutes
10.5.2017
70
System Optimum (SO) Approach
𝑆 𝑥 = 𝑥1 8 + 𝑥1 + 𝑥2 (1 + 2𝑥2 ) 𝑥2 = 𝑞 − 𝑥1
𝑆 𝑥 = 𝑥1 8 + 𝑥1 + (𝑞 − 𝑥1 ) 1 + 2(𝑞 − 𝑥1 )
𝑑
𝑆 𝑥 = 0 → 6𝑥1 − 9 = 0 𝑡𝑜 𝑓𝑖𝑛𝑑 𝑡ℎ𝑒 𝑠𝑦𝑠𝑡𝑒𝑚 𝑚𝑖𝑛𝑖𝑚𝑢𝑚
𝑑𝑥1
Route flows:
𝑥1 = 1.5 𝑥1 = 1.5 ∙ 1000 = 1500 𝑣𝑒ℎ/ℎ
10.5.2017
71
SO Approach
𝑡1 = 8 + 𝑥1 = 9.5 𝑚𝑖𝑛
𝑡2 = 1 + 2𝑥2 = 6 𝑚𝑖𝑛
10.5.2017
72
User Equilibrium (UE) Approach
𝑡1 = 8 + 𝑥1 𝑡2 = 1 + 2𝑥2 q = 4 = 𝑥1 + 𝑥2
𝒕𝟏 = 𝒕𝟐 → User equilibrium
8 + 𝑥1 = 1 + 2(𝑞 − 𝑥1 )
Route flows:
𝑥1 = 0.333 → 𝑥1 = 0.333 ∙ 1000 = 333 𝑣𝑒ℎ/ℎ
10.5.2017
73
UE Approach
𝑡1 = 8 + 𝑥1 = 8.33 𝑚𝑖𝑛
10.5.2017
74
User Equilibrium Example 2
Rt. A Capacity = 1,000
VA 4 VB 4
TA 15 1 0.15 TB 20 1 0.15 ( )
1000 3000
10.5.2017
75
Equilibrium Volumes on Rt. A and B
10.5.2017
76
Equilibrium Volumes on Rt. A and B
10.5.2017
77
Equilibrium Volumes on Rt. A and B
10.5.2017
78
User Equilibrium Formulation
Va
min Sa x dx
a 0
Where:
va = number of vehicles per unit time on link (a) of the
network;
subject to
Sa va = generalized travel time on link a, which increases with
Va ijar Xrij flow v (a typical congestion function is
10.5.2017
79
User Equilibrium Formulation
1. Compute the travel time on each link Sa(va) that
corresponds to the flow va in the current solution;
2. Trace minimum path trees from each origin to all
destinations by using the travel times from step 1;
3. Assign all trips from each origin to each destination to the
minimum path (all-or-nothing assignment); call this link
loading (wa);
4. Combine the current solution (va) and the new assignment
(wa) to obtain a new current solution (v’a) by using a value λ
selected through a one-dimensional search, so as to
minimize the following objective function;
v 'a
Sa x dx
a 0
where va' 1 va Wa ; and
5. If the solution has converged sufficiently, stop; otherwise
return to step 1.
10.5.2017
80
User Equilibrium Solution
10.5.2017
81
Comparison of Solutions
10.5.2017
82
Stochastic User Equilibrium
• Stochastic user equilibrium is reached when no traveler believes
that his or her travel time can be improved by unilaterally changing
routes
• It includes a random component in traveler’s perception of travel
time
• It relaxes the presumptions used in the UE deterministic approach
to traffic assignment
10.5.2017
83
Stochastic User Equilibrium Formulation
A positive parameter
c rs
k The utility of using the kth route
between r and s
10.5.2017
84
Dial’s Algorithm (STOCH)
• STOCH effectively implements a logit route-choice model at the
network level
10.5.2017
85
Dial’s Algorithm (STOCH)
• A path is defined “efficient” if it includes only links that take the
motorist further away from the origin and closer to the destination
• Such links can be identified by associating two labels with each
node i; r(i) and s(i)
• r(i) denotes the travel time from origin node r to node i along the
minimum travel time path
• s(i) denotes the travel time from node i to destination node s along
the minimum path
• Each “efficient” path includes only links i j such that r(i) < r(j) and
s(i) > s(j)
10.5.2017
86
STOCH Preliminaries
a) Compute the minimum travel time from node r to all other nodes.
Determine r(i) for each node i
b) Compute the minimum travel time from node i to node s.
Determine s(i) for each node i
c) Define i as the set of downstream nodes of all links leaving node i
d) Define i as the set of upstream nodes of all links arriving at node i
e) For each link i → j compute the “link likelihood”, L(i → j), where
e r ( j )r ( i )t ( i j )
Li j
if r(i) < r(j) and s(i) > s(j)
0 Otherwise
10.5.2017
87
STOCH Example
• Assign a flow of 1000 trips between nodes 1 and 9
10.5.2017
88
STOCH Example
• Not all the paths connecting node 1 to 9 are considered efficient
Path 1 2 5 6 9 is efficient
Path 1 4 7 8 9 is not [s(4)= s(7)]
Path 1 2 3 6 9 is not [r(3) = r(6)]
10.5.2017
89
Link Likelihood Values
• The link likelihoods for all the links (with θ = 1) are shown in the
figure below (note that L(i j) = 0 for all “inefficient” links)
10.5.2017
90
Forward Pass
• Consider nodes in increasing order of r(i), starting with origin node r
• For each node i, calculated the “link weight” w(i →j), for each j i
(i.e., for each link emanating from i), where
j) if ir i.e. if node i is the origin
w(i j) LL((ii
j) w (mi) otherwise
m i
10.5.2017
91
Link Weights
W (5 8) L(5 8) W (m 5)
m5
• Where 5 includes nodes 2 and 4 (since links 2 →5 and 4 →5 enter
node 5)
W (5 8) 1.00000.3679 1.0000 1.3679
10.5.2017
92
Backward Pass
• Consider nodes in ascending order of s(i), starting with destination s
• When each node j is considered, compute the link flow x(i →j) for
each i i (i.e., for each link entering j) as follows
W ( i j )
rs
q for j s (i.e., if node j is the destinatio n)
W (m j)
X(i j) m i
x m W (i j)
m j W (m j)
j m
i
10.5.2017
93
Link Flows
W ( 2 5)
x(2 5) x(5 6) (5 8)
W ( 2 5) ( 4 5)
0.3679
(731 269 ) 269
0.3679 1.0000
10.5.2017
94
Public Transport Assignment
• Vehicles have varying numbers of people
• People move on multiple vehicles
• Multiple route choices - people realize when there is a set of paths
they can use
• Level of service and travel times for both people and vehicles
depend on demand
• When there are multiple route paths and frequencies or service, a
passenger decision strategy must be modelled instead
• Difference in capacity and flow interaction
• Generalized time and monetary costs
Cij = a1tijvehicle + a2tijwalking + a3tijwaiting + a4tijinterchange + aiinterchange + a5Fareij
10.5.2017
95
PT Link Performance Curve
10.5.2017
96
Public Transport Assignment
10.5.2017
97
Validation and Calibration
• Model calibration is the process of
developing mathematical functions
to explain travel behavior and the
process of developing the
associated coefficients or
parameters for these functions
• The exponent in the BPR formula is an example of a parameter
value, predicting changes in travel time as a function of link’s
volume to capacity ratio
• Calibration is performed individually for each of the four steps in
the modeling process and for the entire model
10.5.2017
98
Validation and Calibration
• Model validation is the process of
comparing model output with
observed data and making
judgments about the performance
of the model
• Includes reasonableness and
sensitivity check
• Reasonableness checks include the comparisons of the model
output with observed data and the comparison of model
parameters with parameters for similar urban areas
• Sensitivity checks determine how the model output changes in
response to changes in input data
10.5.2017
99
Validation and Calibration
• Model applied to complete model chain
• Base year model compared to observed travel (network traffic
volume counts)
• Judgment as to model suitability
• Validation of a previously calibrated model
10.5.2017
100
Trip Assignment Validation
• Comparison of observed and counted traffic
• Screen line volumes (agreement within about 5%)
• Corridor volumes
• Root-mean-square error (RMSE) by volume group
• RMSE by facility type group (typically <30%)
• Average weekday school year volumes
• Traffic count and transit ridership day-to-day variation
10.5.2017
101
Rules of Thumb – Examples
• Motorists often travel faster than speed limits under free flow
conditions
• Household trips average 9 to 10 per day and 3 to 4 per capita
• Intrazonal trips account for less than 5% of total trips
• A 10% transit fare increase will decrease ridership by 3%
• Allowable VMT difference should not exceed 5%
• Difference in observed and modeled travel across screen lines
should be 5% to 10%
10.5.2017
102
Limitations of Conventional Models
• Limitations in the node-ling model
• Incomplete networks
• Turning movements
• Intra-zonal trips
• Errors in defining average perceived costs
• Perception of cost by trip makers
• The assumption of perfect information about cost in all parts of
network
• Dynamic nature of traffic
10.5.2017
103