Repository navigation
Public transport routing
Jip Claassens edited this page Aug 3, 2026
·
4 revisions
(outline, to be written out)
Public transport breaks the assumption that makes road routing simple: impedance is not a property of a link, but of a link at a moment in time. A connection that takes 20 minutes at 08:15 may be unavailable at 08:20 and take an hour at 22:00. Routing therefore has to be solved in three dimensions at once: departure time, transfers, and fares across operators.
- Time expanded graphs: representing a timetable as a graph whose nodes are combinations of time, stop and route, which turns a timetable problem back into a shortest path problem. Object Vision arrived at this representation independently of, and before, the published RAPTOR algorithm (Delling, Pajor & Werneck, 2015).
- Alternatives: time dependent graphs, RAPTOR and Connection Scan, and what each buys and costs
- Waiting, transfer and access time: the components of a public transport journey and their differing weights in generalised cost, see Travel impedance
- Departure time windows: why a single departure time is not an answer, and how to aggregate over a window using earliest arrival, the mean, or a profile
- Fares: non additive cost across operators, and why this cannot be modelled as link impedance
- Access and egress modes: walking or cycling to the stop, and combining them with the transit leg into a multimodal impedance
- GTFS as input: from timetable feed to routable network, see Create a routable network from GTFS files
Accessibility modelling documentation
© Object Vision BV. Documentation under CC BY-SA 4.0, source code under GNU GPL v3.

Concepts
Networks
- Network data sources
- OSM
- NWB
- GTFS
- Building a routable network
- Network optimisation algorithm
- Travel speeds per mode
Origins & destinations
Computation
- Shortest path and the Dijkstra algorithm
- Origin Destination matrix (trip table)
- Isochrones and catchment areas
- Public transport routing
Indicators
Applications
Network models
Reference