This repository contains the code and data for a thesis project examining the systemic effects of autonomous vehicles on urban mobility patterns, with a case study focusing on Rotterdam.
Full paper: paper/paper.md
Background: The introduction of autonomous vehicles (AVs) represents a potential paradigm shift in urban transportation, but their system-level impacts remain uncertain. While AVs promise benefits like reduced parking demand and improved safety, questions persist about their effects on congestion, mode choice, and overall urban mobility patterns.
Objective: This research investigates how the introduction of self-driving cars will affect urban transportation systems, focusing on which undesired effects might emerge and what policies could effectively mitigate them while preserving benefits.
Methods: An agent-based model combined with mesoscopic traffic simulation was developed to simulate AV adoption in Rotterdam. The model integrates empirical data on travel patterns, road networks, and mode choice behavior. A full-factorial analysis explored 144 scenarios examining four key uncertainties: AV costs, perceived value of time, space efficiency, and induced demand. Additionally, 72 policy combinations were tested to evaluate intervention effectiveness.
Results: AV adoption is primarily driven by cost, with significant uptake occurring only when costs fall below 50% of current levels. Space efficiency emerges as the critical factor determining system outcomes: inefficient AVs (density factors ≥1.0) lead to severe congestion, while efficient AVs (density factors ≤0.5) can maintain or improve traffic flow even at high adoption rates. Notably, cyclists and transit users are more likely to switch to AVs than car users, potentially undermining sustainable transport goals. Traditional policy interventions show limited effectiveness, with no single approach consistently improving system performance across different scenarios.
Implications: Traditional policy interventions show limited effectiveness across different scenarios, suggesting that cities need to develop proactive, adaptive policy frameworks to manage AV adoption, focusing on space efficiency requirements, shared use and integration with existing sustainable mobility options rather than simple restrictions or pricing mechanisms.
model/
- Core simulation code
model.py
- Main model implementation (documentation)agent.py
- Agent behavior and decision making (documentation)data.py
- Data loading and preprocessing (documentation)traffic.py
- Traffic simulation integration using UXsimrun_model.py
- Experiment execution scripts (experimental setup)scenarios_policies.py
- Scenarios and policies used (appendix D)data/
- Input data files (full documentation)
population_data_pc4_*.pkl
) - from CBStravel_time_distance_google_*.pkl
) - from Google Maps APItrips_by_hour_chances.pickle
) - from ODiN 2023od_chance_dicts_periods.pickle
) - from V-MRDH modelpolygons.pkl
) - derived from OpenStreetMaprijbewijzen_personenautos.pkl
) - from CBS mobility datanetwork/graphs/
- Road network files
merged_network.graphml
- Combined Rotterdam road network (documentation)network/create_network.ipynb
- Network processing notebookresults/
- Simulation outputs
img/
- Generated plots and visualizations
prototyping/
- Development notebooks
ODiN_analysis.ipynb
- Trip pattern analysispc4.ipynb
- Population and car ownership analysistravel_api/
- Travel time data collection
travel_time_distance_google.ipynb
- Travel time collection and processingv_mrdh/
- Origin-destination data processing
v_mrdh_od_demand.ipynb
- OD matrix processingmodel/analysis_single_run.ipynb
- Single simulation run analysismodel/analysis_ff.ipynb
- Scenario and policy analysis.github/workflows/
- CI configuration
See the full model documentation and experimental setup for detailed information about the implementation and experiments.
The model requires several data files to run. Key files include:
network/graphs/merged_network.graphml
data/population_data_pc4_65coded.pkl
data/areas_mrdh_weighted_centroids.pkl
data/polygons.pkl
data/travel_time_distance_google_transit.pkl
data/travel_time_distance_google_bicycling.pkl
data/trips_by_hour_chances.pickle
data/od_chance_dicts_periods.pickle
data/rijbewijzen_personenautos.pkl