Agent-based model identifying unsafe cycling infrastructure in Amsterdam before accidents happen.
Despite its reputation as a global cycling capital, Amsterdam identifies dangerous infrastructure only after harm has occurred. The current system relies on accident reports and citizen complaints. Near-misses, braking events, swerves — remain invisible to planners.
Each of the 110 recorded cycling trips is initialised as an independent agent. At every step, an agent occupies one of three states. Hard braking — defined as acceleration below -2.0g — triggers a probabilistic transition to a worse state.
Unsafe trips accumulated on average 730 hard braking events compared to just 97 for safe trips. A 7x difference pointing to systemic, route-level risk.
Traffic signals account for only 6.1% of all hard braking. The danger is in the infrastructure between stops — surfaces, lane width, mixed-use paths.
Brick pavers produce 30 braking events per km versus 8-9.5 on asphalt. Amsterdam's historic surfaces are a structural safety hazard.
Braking clusters concentrate around Amsterdam Centraal even after removing signal-adjacent events, pointing to mixed infrastructure and legacy surface materials.
ABM design and implementation: Marfa Kozelets
Team: M. Balancier, K. Hänni, C. Xia
UvA Computational Social Science