time dependent transportation network models petko bakalov, erik hoel, wee-liang heng #...
TRANSCRIPT
Time Dependent Transportation Network Models
Petko Bakalov, Erik Hoel, Wee-Liang Heng# Environmental Systems Research Institute (ESRI)
2
Outline
Review of network dataset model Time dependent data Time dependent analysis. Incorporating time data into the network model
Internal representation Build process.
Experimental Results
3
Network Model: Definition
A mechanism for defining and managing a connectivity information for features in a geodatabase.
Feature is graphic representation of a real-world object Line (e.g. freeways and railways) Point (e.g. railway stations)
4
The connectivity information is explicitly represented with network elements that are found in a single associated logical network (graph).
Three types of
network elements Junctions Edges Turns
The Underlying Logical Network
5
The Underlying Logical Network
Line Feature
* FID* Geometry
Point Feature
* FID* Geometry
Edge
* ID
Junction
* ID* Attributes
Turn
* ID
* Attributes
* Attributes
1 1
0..n
* 0..n
2
* *
1..n 1..n
Conn. Graph
Feature Space - stores features which have geometry
Connectivity graph – contains connectivity information about the features in the feature space
6
Network Attributes
Network attributes are properties of the network elements that control traversability Cost. Certain attributes
are used to measure and model impedances, such as travel time
Descriptors. Those are attributes that describe characteristics of the network or its elements.
7
Defining and Maintaining
Building – a process of establishment of connectivity where the connectivity graph is derived from the features As edits are made to the features in a network
model, the logical network becomes stale. Need to keep track of the modifications
Employ the dirty area management concept. When a feature is modified it creates dirty area
8
Build Algorithms
Initial build of a logical network Simply a special case of a rebuild over a dirty
region that encompasses the entire network Existing logical network is empty.
Incremental Rebuilding Rebuilding region is a subset of the dirty region. When we rebuild the entire dirty region, the
resulting logical network is completely correct.
9
Build Algorithm
First step: compute the set of connectivity nodes for the entire network.
Extracted through connectivity analysisline endpoint
interstate(indivisble)
street(divisible)
mid-span vertex
interstate tunnel
street bridge
Interstate group:
Street group:
Interstate--Street interconnect:
transition pointstreetsconnect
streetsconnect
interstatesconnect
I1 I2
S1
B1
T1
(0,0)
I3
S2
S3
S4P1
interstateconnects to
street
Connectivity Nodes(X,Y) Point FCID, FID Line FCIDs, FIDs, %'s along
(0,0) T1 I1/100%; I2/0%(0,0) B1 S1/33%(1,0) P1 I2/100%; S4/0%(2,0) S4/100%
(-1,0) I1/0%; I3/100%
(-1,1) I3/0%(0,1) S1/0%
(-1,-1) S2/0%(0,-1) S2/50%; S1/67%(1,-1) S2/100%(-1,-2) S3/0%(0,-2) S3/50%; S1/100%(1,-2) S3/100%
10
Step 1: Connectivity Analysis
Extract the geometry of all features in the network dataset.
Sort the vertex information in the table by coordinate values so that the coincident vertexes are grouped together
Analyze each group of coincident vertexes according to the connectivity model
11
Step 2: Junction creation
Create junction elements and populate vertex information table from the extracted connectivity nodes
1.For each connectivity node2. Create a logical junction element and set its x and y coordinate
weight values3. If there is a point feature participating in the connectivity node4. Associate the junction element with the point feature5. For each line vertex participating in the connectivity node6. Add a record to the vertex information table, tagged
with the junction element
12
Example
Connectivity Nodes(X,Y) Point FCID, FID Line FCIDs, FIDs, %'s along
(0,0) T1 I1/100%; I2/0%(0,0) B1 S1/33%(1,0) P1 I2/100%; S4/0%(2,0) S4/100%
(-1,0) I1/0%; I3/100%
(-1,1) I3/0%(0,1) S1/0%
(-1,-1) S2/0%(0,-1) S2/50%; S1/67%(1,-1) S2/100%(-1,-2) S3/0%(0,-2) S3/50%; S1/100%(1,-2) S3/100%
j1 j2
j3 j6=P1 j7
j8 j9 j10
j11 j12 j13
j4=T1
j5=B1
Streets
S1
67%
j3
Vertex Information TableLine FCID Line FID Relative Position Junction EID
StreetsI3
0%j1Interstate
I1100%
j9
Interstate
I1
0%j2
Streets S250%
j4
Streets S1
100%
j10
Streets
S4100%
j11
0%Interstate I3 j3InterstateInterstate I2 0% j4
33% j5Interstate I2 j6
j60%Streets S4 100% j7
0% j8S2
j9Streets S1Streets S2 100%Streets S3 0%
j12Streets S3 50%Streets S1 100% j12
j13Streets S3 100%
13
Create edge elements from vertex information table
1. Sort the vertex information table using the line FCID as primary key, line FID as secondary key, and relative position as tertiary key
2. For each adjacent pair of records in the sorted table
3. If the pair involves the same line feature
4. Create a logical edge element between the junction
elements specified by the two records
Step 3: Edge creation
14
Example
e11
e1
e9
e2
e10 e8
e4
e3
e5
e6 e7
j1 j2
j3 j6=P1 j7
j8 j9j10
j11 j12j13
j4=T1
j5=B1
Streets
S1
67%
j3
Sorted Vertex Information TableLine FCID Line FID Relative Position Junction EIDStreets
I3
0%
j1Interstate
I1
100%
j9
InterstateI1
0%
j2
Streets S250%
j4
Streets S1
100%
j10Streets
S4
100%
j11
0%
Interstate I3 j3
InterstateInterstate I2 0% j4
33% j5
Interstate I2 j6
j60%Streets S4 100% j7
0% j8S2
j9Streets S1
Streets S2 100%Streets S3 0%
j12Streets S3 50%
Streets S1 100% j12
j13Streets S3 100%
15
Outline
Review of network dataset model Time dependent data Time dependent analysis. Incorporating time data into the network model
Internal representation Build process.
Experimental Results
16
Time Dependent Data
Historical Speeds: based on the idea that travel speeds follow a week-long pattern. The traffic speeds are given to us in time slices
e.g. 15 min durations. Current travel times can deviate considerably.
Dynamic Traffic Speeds: The model client has to connect to the data providers over the Internet, download the live travel speeds Real Live Predictive
17
Time Dependent Data
Time-Dependent Turn Restrictions: Data vendors also provide addendums to their turn tables that specify the time of the day when turn restrictions are in effect Left turn is restricted from 4 to 6 pm Right turn is restricted on weekdays only.
18
Outline
Review of network dataset model Time dependent data Time dependent analysis. Incorporating time data into the network model
Internal representation Build process.
Experimental Results
19
Time Dependent Analysis
Clients query for the attribute value of a network element by specifying a current time, and the attribute implementation retrieve the appropriate value.
To perform network analysis that is dependent on the time-of day, the historic and dynamic traffic speeds have to be converted to actual travel times.
Obey the FIFO Principle for Time-Dependent Travel Times
20
FIFO Principle
For two departure times from the beginning of an edge, the earlier departure cannot arrive after the later departure.
e1
3-4 pm: 15 mph (4 mins per mile)4-5 pm: 30 mph (2 mins per mile)
3:56
3 miles at 15 mph
4:08
e1
4:00
3 miles at 30 mph
4:06
21
FIFO Principle
Account for crossing time-slice boundaries while traversing an edge.
e1
3:56
2 miles at 30 mph
4:04
1 mile at 15 mph
4:00
22
Outline
Review of network dataset model Time dependent data Time dependent analysis. Incorporating time data into the network model
Internal representation Build process.
Experimental Results
23
Internal Representation
Huge volume of data: For each applicable street, there is a set of speed values for various time-slices across the week, e.g., 672 values for a week.
To resolve the data volume issue, we exploit the fact that the historic speeds are inherently imprecise, and can be well approximated by a small set of representative daily profiles.
The values in the profiles are relative (ranging from 0.0 to 1.0).
24
Example
25
Build
There are three additional data processing steps in the above network building example needed to support the population of traffic data. Extract free flow, weekday and weekend speeds
from the data sources and map to profile. Create list of edge records. Resolve historic join. “Merge” the sorted list of
regular edge tuples from step.
26
System Architecture
NetworkBuild Engine
Traffic Windows Service
Solver
Time-DependentTraffic
Evaluator
Network Dataset
NavTeq Inrix
TMC Translator
In-MemoryDynamic TMC Mapping
TMC
106P057
EID Direction
e4 FT
106N057 e4 TF
….. ….. …..
….. ….. …..
EdgeFID
…..
99
…..
EdgeFCID
…..
1
…..
ObjectID
…..
301
…..
Streets_DynamicTMCs
EdgeFromPos
…..
0.6
…..
EdgeToPos
…..
1.0
…..
TMC
…..
106P057
…..
991302 1.0 0.6 106N057
TF_FreeflowSpeed
Streets (FeatureClassID 1)
…..
…..
…..
…..
35
…..
…..FT_
FreeflowSpeed
…..
30
…..
Length
…..
…..
…..
Shape
…..
…..
…..
ObjectID
…..
99
…..
NetworkDataset
Geodatabase
Dynamic TMC Mapping Table
TMC
106P057
EID Direction
e4 FT
106N057 e4 TF
….. ….. …..
….. ….. …..
In-Memory Cacheof Dynamic Speeds
StartTime
08:15
EndTime
08:30
Data
EID Direction
e4 FT
e4 TF
….. …..
Speed
35
41
…..
….. ….. …..
1. Create
network dataset
Create
2. Build
network dataset
3. Install and configure traffic
Windows service (accounts for NavTeq and Inrix; reference to network dataset)
4. Start traffic Windows service
4a. Instantiate TMC
translator and initialize it with reference to network dataset
4b. TMC
translator copies dynamic TMC mapping table
into local memory
5. At 5-minute intervals, traffic
Windows service pulls dynamic feeds from data providers and digests the feeds
5a. Update local
FileGDB with digested feeds
5b. Use
TMC translator to convert
digested feed into BLOB
format
6. Solver requests refresh
of dynamic speeds
6a. Network dataset reads BLOB from
FileGDB and de-serializes it into in-memory cache
7a. Solver
requests dynamic speed
7c. Evaluator
returns dynamic speed
7b. Evaluator
reads dynamic speed from cache
Integrating Dynamic Traffic Data into Network Datasets
File Geodatabase
TimeSlices Table
StartTime
08:00
EndTime
08:15
TableName
DataTable1
08:15 08:30 DataTable2
BlobData
TMC
106P057
106N057
…..
Speed
45
43
…..
DataTable1
….. …..
TMC
106P057
106N057
…..
Speed
35
41
…..
DataTable2
….. …..
Traffic Server
Client Machine
27
Outline
Review of network dataset model Time dependent data Time dependent analysis. Incorporating time data into the network model
Internal representation Build process.
Experimental Results
28
Experimental Results
Edges Junctions Size
North America73.5 million 27.2 million 23.7 GB
Europe141.5 million 55.5 million 51.8 GB
Latin America25.1 million 8.4 million 6.9 GB
Table 1 Test Datasets
29
Experimental Results
Table 2 Performance Results – North America
Table 3 Performance Results- Europe
Average 90th percentile
Local 3 stop routes ~680 ms ~965 ms
Nationwide 3 stops routes 3.5 seconds 5.5 seconds
Average 90th percentile
Local 3 stop routes ~712 ms ~1034 msNationwide 3 stops routes 4.4 seconds 6.7 seconds
30
Questions ???