Transit Network Optimization.
Graph-based routing and network analysis for the London Underground, with a modular Python implementation and reproducible data inputs.

ENGINEERING DEEP DIVE
Inside the system.
A transit route can minimize travel time or station stops, and the two objectives can produce different journeys. The repository turns a London Underground data table into an inspectable graph-analysis application.
Modular graph utilities support Dijkstra routing, predecessor-based route reconstruction, and Kruskal minimum spanning trees with union–find. A command-line interface and bundled CSV input connect the algorithms to route inspection and network-wide journey analysis.
Explore the graph, routing, and CLI modules alongside the original journey-time figures. The analysis uses a bundled dataset and distinct travel-time and station-count objectives.
FROM THE REPOSITORY
What's inside.
- 01
Compares shortest routes by travel time and station count using Dijkstra search.
- 02
Builds minimum spanning trees with Kruskal's algorithm and union–find.
- 03
Includes a CLI, bundled station data, and journey-time analysis figures.
These notes summarize the reviewed implementation and available artifacts. Open the original source for code, documentation, and subsequent changes.
Open the original repository