The GMNS Plus Dataset is a publicly available, standardized transportation network collection based on the General Modeling Network Specification (GMNS). This project aims to support reproducible and comparable research in transportation modeling, planning, and analysis.
Led by NSF POSE Team from Arizona State University (ASU), the project is supported by the National Science Foundation (NSF) under the following initiative:
POSE: Phase II: CONNECT
Consortium of Open-source plaNNing models for Next-generation Equitable and efficient Communities and Transportation
Award #: 2303748
The dataset currently includes networks from a diverse set of cities and regions around the world:
1_Bay_Area_MultiModal
1.1_Bay_Area_Driving
1.2_Bay_Area_Cycling
1.3_Bay_Area_Walking
1.4_Bay_Area_Transit
2_King_County_Metropolitan_MultiModal
2.1_King_County_Metropolitan_Driving
2.2_King_County_Metropolitan_Cycling
2.3_King_County_Metropolitan_Walking
2.4_King_County_Metropolitan_Transit
3_Phoenix_City_MultiModal
3.1_Phoenix_City_Driving
3.2_Phoenix_City_Cycling
3.3_Phoenix_City_Walking
3.4_Phoenix_City_Transit
4_WashingtonDC_City_MultiModal
4.1_WashingtonDC_City_Driving
4.2_WashingtonDC_City_Cycling
4.3_WashingtonDC_City_Walking
4.4_WashingtonDC_City_Transit
5_Anaheim
6_Berlin-Center
7_Berlin-Friedrichshain
8_Berlin-Mitte-Center
9_Berlin-Mitte-Prenzlauerberg-Friedrichshain-Center
10_Berlin-Prenzlauerberg-Center
11_Berlin-Tiergarten
12_Birmingham-England
13_Chicago_Regional
14_Chicago_Sketch
15_GoldCoast
16_Philadelphia
17_Sioux_Falls
18_Sydney
19_Atlanta
20_Austin
21_Boston
22_Chicago_Downtown
23_Dallas
24_Denver
25_Honolulu
26_Las_Vegas
27_Miami
28_Milwaukee
29_Minneapolis
30_New_Orleans
31_New_York
32_Phoenix_city
33_Pittsburgh
34_Philadelphia
35_Portland
36_San_Francisco
37_Seattle
38_WashingtonDC
39_Planning Networks for NVTA
39.1_NVTA_Full_Network
39.2_NVTA_Subarea_Network
40_State_level_Networks_MultiModal_USA
41_Railway_Network_USA
42_Waterway_Network_Salt_River
https://docs.google.com/spreadsheets/d/1VtJ-fnzJJk1h6Vy3uBS8Glei4sA7WhAe7JcgZO6vEic/edit?usp=sharing
These networks are formatted in GMNS to enable consistency, interoperability, and ease of use in academic and applied transportation research.
- The GMNS+ has a set of optimization models on Colab notebook. These problems cover: (1) Shortest Path Problem, (2) Facility Location Problem, (3) Traffic Assigment Problem, (4) OD Matrix Estimation (ODME).
1_Bay_Area_MultiModal
1.1_Bay_Area_Driving
1.2_Bay_Area_Cycling
1.3_Bay_Area_Walking
1.4_Bay_Area_Transit
2_King_County_Metropolitan_MultiModal
2.1_King_County_Metropolitan_Driving
2.2_King_County_Metropolitan_Cycling
2.3_King_County_Metropolitan_Walking
2.4_King_County_Metropolitan_Transit
3_Phoenix_City_MultiModal
3.1_Phoenix_City_Driving
3.2_Phoenix_City_Cycling
3.3_Phoenix_City_Walking
3.4_Phoenix_City_Transit
4_WashingtonDC_City_MultiModal
4.1_WashingtonDC_City_Driving
4.2_WashingtonDC_City_Cycling
4.3_WashingtonDC_City_Walking
4.4_WashingtonDC_City_Transit
39_Planning Networks for NVTA
39.1_NVTA_Full_Network
39.2_NVTA_Subarea_Network
40_State_level_Networks_MultiModal_USA
41_Railway_Network_USA
42_Waterway_Network_Salt_River
- All network entries have been reindexed and structurally reordered to ensure clarity and scalability in naming conventions.
- Updated network list.
- Reorganized all networks into a consistent and sequential order for easier access and management.
- Added a new Colab notebook, which includes four optimization problems related to the network data. These problems cover: (1) Shortest Path Problem, (2) Facility Location Problem, (3) Traffic Assigment Problem, (4) OD Matrix Estimation (ODME).
- Added 18 new networks, including: 17_Atlanta, 18_Seattle, 19_Portland, 20_Denver, 21_Las_Vegas, 22_Chicago, 23_Honolulu, 24_New_Orleans, 25_Austin, 26_Minneapolis, 27_Dallas, 28_Milwaukee, 29_New_York, 30_Washington, 31_Boston, 32_Philadelphia, 33_Pittsburgh, and 34_Miami. These additions further enrich the geographic diversity of the dataset and support more comprehensive transportation research across various urban settings.
- Added
16_San_Francisco
network, sourced from A unified dataset for the city-scale traffic assignment model in 20 U.S. cities. - For detailed update notes, please refer to the shared document:
Update Notes - San Francisco Network
Many of the networks in this datasetโsuch as 13_Phoenixโare generated using a set of open-source tools, including OSM2GMNS. These tools convert OpenStreetMap (OSM) data into GMNS-compliant formats, allowing for automated, transparent, and scalable network generation.
All generated networks undergo detailed verification to ensure structural integrity and suitability for simulation and modeling tasks.
Looking ahead, the project aims to scale this effort to cover:
- All 50 U.S. states and the District of Columbia
- Major international metropolitan areas, including Tokyo
This expansion will further support GMNS+ transportation research with standardized, high-quality network data.
Another key component of this project is the conversion and standardization of legacy TNTP-format networks into the GMNS format. This work ensures that valuable historical datasets can be integrated into modern modeling pipelines and benefit from the standardized structure provided by GMNS.
We gratefully acknowledge the original TNTP dataset hosted at:
๐ https://github.com/bstabler/TransportationNetworks
Released by Ben Stabler.
Transportation Networks is a repository dedicated to supporting transportation research by providing openly available network data.
โIf you are developing algorithms in this field, you probably asked yourself more than once: where can I get good data? The purpose of this site is to provide an answer for this question!โ
Many of these networks are used for studying the Traffic Assignment Problem, a fundamental challenge in transportation science.
A theoretical foundation for this topic can be found in:
๐ โThe Traffic Assignment Problem โ Models and Methodsโ by Michael Patriksson, VSP 1994.
This repository represents an updated version of Dr. Hillel Bar-Geraโs original TNTP website. As of May 1, 2016, all data updates are maintained on this GitHub repository only.
We thank the TNTP team for making these important datasets available to the research community.
While the original TNTP datasets are comprehensive and widely used, their formats differ slightly from the GMNS specification. As part of this project, we have developed a standardized conversion process to align TNTP networks with GMNS requirements.
This process includes:
- Schema unification: Adjusting field names, data structures, and file formats to conform to GMNS standards.
- Validation and documentation: Logs and memos detailing the integration and modification steps are available in the
Documents
directory. - Handling incomplete networks: Some TNTP datasets are missing node information or other structural components. These networks are currently stored in the
Incomplete_Networks
folder and will be completed and released in future updates.
This alignment enables consistent data handling, easier model integration, and improved reproducibility across research projects.
To guarantee both structural integrity and modeling usability, the GMNS+ Dataset project introduces a standardized multi-level modeling readiness and validation framework. This framework ensures that each dataset is not only complete and internally consistent but also fully prepared for simulation, performance analysis, and data-driven applications. From basic file checks to ODME preparation and traffic assignment validation, each level addresses a key aspect of model-readiness, offering a systematic path from raw data to reliable outputs.
- File Existence: Confirms that
node.csv
andlink.csv
files exist and are readable. - Required Fields & Data Types: Verifies essential fields (e.g.,
node_id
,link_id
) and their data types (e.g., integers for IDs, floats for coordinates or speeds). - Sorted Data Structure: Ensures nodes are sorted by
node_id
, and links byfrom_node_id
andto_node_id
. - Link Endpoints: Checks that all link endpoints are valid and exist in the node file.
- Zone Centroids: Validates that each zone has a matching centroid node (
node_id == zone_id
), grouped at the top of the node list. - Connector Links: Identifies and checks connector links from centroids to the main network.
- Demand File Structure: Confirms that the demand file has exactly three columns (
o_zone_id
,d_zone_id
,volume
) in the correct order. - Zone Consistency Across Files: Ensures that all zones referenced in the demand file exist in the node file.
- Speed and Length Units: Verifies that speeds are in consistent units (e.g., km/h, mph) and link lengths are properly measured (e.g., meters vs. miles).
- Capacity Values: Checks that capacities are within reasonable bounds and consistent with expected per-lane capacities.
- Unit Conversions: Validates field consistency based on standard conversion factors (e.g., meters to miles).
- VDF Parameters: Confirms that Volume Delay Function (VDF) fields (e.g.,
vdf_alpha
,vdf_beta
) are present, non-negative, and reasonable.
- Configuration Files: Confirms presence and formatting of files like
mode_type.csv
andsettings.csv
. - Single Mode Requirement: Checks that only one mode is defined, with warnings if multiple modes are found in single-mode setups.
- Parameter Consistency: Ensures simulation parameters (e.g., number of iterations, demand period length) are within reasonable and expected limits.
- Observed Volumes: Validates
obs_volume
fields in the link file (e.g., no negatives, sufficient coverage). - ODME Requirements: Prepares the network for Origin-Destination Matrix Estimation (ODME) by confirming that enough quality observed volume data exists.
- OD Connectivity: Checks
od_performance.csv
to ensure OD pairs with demand have feasible paths. - Route Assignments (optional): Validates additional route assignment data, if available.
- Accessibility Metrics: Computes accessibility indicators (e.g., number of destinations per origin) and flags cases with insufficient connectivity.
- Link and Route Performance: Analyzes outputs like total assigned volume, VMT, VHT, and average speeds.
- Statistical Comparisons: Compares assigned volumes against reference/observed volumes using metrics like Rยฒ, RMSE, and MAPE.
- Route Consistency: Ensures that route probability distributions are valid (e.g., sum to 1 per OD pair) and congestion levels are realistic.
- Target Demand Matching: Checks whether ODME-adjusted demands match target values.
- Feasible High-Demand Paths: Verifies that high-demand OD pairs are assigned feasible routes with acceptable travel times.
- Outlier Identification: Flags route and volume anomalies to maintain network quality.
In addition to the datasets and validation framework, this repository also provides a set of common tools and utilities for working with GMNS networks, including:
-
๐ Scripts in
GMNS_Tools/
: These include frequently used data preprocessing and conversion utilities to support tasks such as format transformation, attribute completion, and batch validation. -
๐ Visualization via NEXTA: A lightweight network visualization and analysis platform built to support GMNS-compatible networks, allowing users to explore topology, traffic volume, and accessibility results.
-
๐ฆ Network Accessibility Checks with DTALite: The DTALite simulator is used to evaluate network connectivity and perform accessibility analysis across origin-destination (OD) pairs.
These tools work together to streamline the process of data verification, simulation readiness, and visual inspection of network structures.
You can run the multi-level data validation process using the script Network_Validator_Main.py
.
python Network_Validator_Main.py
This will:
- Automatically detect all subdirectories containing network data,
- Perform validation across all defined levels (1โ8),
- And generate a detailed validation report for each network.
Open the script and modify the following line:
subdirectories = get_all_directories('.')
Change '.'
to the name of the folder you want to validate.
For example, to validate only the Sydney network:
subdirectories = get_all_directories('16_Sydney')
This allows you to selectively check a single network without scanning the entire directory.
The validation results will be saved in output files that summarize which levels passed, failed, or triggered warnings, making it easier to identify and fix data issues.