travel demand modelling · live demo

A four-step model for Milan, on open data

The classical transport-planning workflow — trip generation, gravity distribution, logit mode choice on real GTFS transit times, and user-equilibrium assignment — built from scratch in Python on OpenStreetMap data and Milan's official public-transport feed. These maps are generated directly by the notebook.

Equilibrium assignment
Morning-peak car volumes at user equilibrium — width = flow, color = volume/capacity
Policy scenario
Through-traffic ban in the inner cordon — red = more traffic, green = less

Parameters are stated assumptions, not calibrated values — methodology demo, not a forecast. PT times from the official GTFS feed published by Comune di Milano/AMAT.