SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY DTA Anyway: Code Base & Network Development Lisa Zorn DTA Peer Review Panel Meeting July 25 th, 2012
Outline What is DTA Anyway? Why DTA Anyway? DTA Anyway Capabilities DTA Anyway API San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY2
What is DTA Anyway? SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY3 DTA Anyway Python Module Input Data (e.g. static Network) Python Script DTA Network
Why DTA Anyway? SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY4 DTA networks have different requirements from their static counterparts. For example (for Dynameq): Virtual Links and Virtual Nodes sit between Centroids and Road Links Centroid connectors feed into midblocks rather than intersections Links cannot overlap Links must be longer than the longest vehicle types that use them DTA Anyway automates this conversion
Why DTA Anyway for Everything? DTA Anyway Python Module Static Network Python Scripts DTA Network + Manual Edits Static Network + Projects DTA Network + Projects
DTA Anyway Capabilities DTA Anyway Can Read Cube Networks or other text-based static networks Read/Write Dynameq ASCII files Write GIS shapefiles for nodes, links, movements Perform typical network editing tasks (e.g. find the link nearest a point, split a link) SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY6 DTA Anyway Cannot Visualize anything directly (no GUI) – use GIS, or traffic assignment network editor (Static or DTA) Read/Write DTA networks for other DTA software (but designed to make this easily implementable)
API SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY7 history/dev/doc/_build/html/index.html
SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY8 API Example: Network history/dev/doc/_build/html/_generated/dta.Network.html
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY9 Converting the Static Network
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY10 Converting the Static Network Define Scenario: vehicle types and classes, generalized cost Import Cube network data, defining DTA attributes in terms of Cube attributes Add all movements, prohibiting most U- Turns, explicitly naming some where geometry is confusing Read GIS shapefile for road curvature Add virtual nodes/links between centroids and road nodes Move centroid connectors from intersections to midblock nodes Handle overlapping and short links
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY11 Converting the Static Network history/dev/doc/_build/html/script_createSFNetworkFromCubeN etwork.html
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY12 Importing Transit Routes
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY13 Importing Transit Routes Reads Cube-formatted transit line files and converts into DTA transit lines Where LRT lines go off the DTA network (underground or on separated ROW), they are split into segments (discarding those not on the DTA network) Movements are explicitly allowed for transit if previously prohibited
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY14 Importing Signals
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY15 Importing Signals Reads signal card data from Excel files in a SFMTA-defined format We search for the section specifying the weekday PM peak plan For errors and unique circumstances encountered (and there were many), responses could be: Update signal card itself Update signal-card reading code Update static network We approximate the few actuated signals with their fixed time version Signal-reading code is not very re-usable
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY16 Importing Stop Signs
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY17 Importing Stop Signs Stop signs are coded as (GIS point, street name, cross street name, and direction the stop sign is facing) Signal data takes precedence Mark as all-way stops when # of stop signs for a node matches the # of incoming links Otherwise, mark as two-way TODO: custom priorities for two-way stops where facility types tie (currently mark as all-way stops)
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY18 Importing Demand
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY19 Importing Demand Auto and truck tables are imported from SF-CHAMP PM demand tables 385.5k auto trips, 65k truck trips loaded 3:30-6:30p The DTA network uses same TAZ structure is used as SF-CHAMP because the zones are small (976 within SF, plus 22 external stations) Currently demand is loaded uniformly across time the time period
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY20 Importing Counts
San Francisco Network Development SAN FRANCISCO COUNTY TRANSPORTATION AUTHORITY21 Importing Counts Count Dracula is SFCTA’s developing traffic counts database Includes counts from PEMS and counts collected for past projects Recent ( ) midweek (Tue/Wed/Thu) counts are queried from Count Dracula for DTA Validation When multiple days of counts exist for the same location and time period, averaged across days minute link counts minute link counts minute movement counts minute movement counts