In 2008 Martin Rosvall and Carl T. Bergstrom released Infomap, probably the most fascinating network community detection algorithm developed so far; in this talk we explore it and discover its power in finding patterns of services in transportation networks, using GTFS data and Python.
We have two main characters in this talk:
The first one is GTFS (General Transit Feed Specification), a general and open framework developed by Google to define timetables and geographical information of transit services. GTFS data are nowadays very popular in transit companies, who usually send them to map providers to let users navigate and plan their trip using public transportation information.
The second guy is Infomap, a community detection algorithm able to map information flowing through a network. Infomap is written in C++ but with easy-to-use Python bindings and works also on a web application.
In this presentation GTFS data and Infomap will talk to each other using Python and network structures.
I first introduce the format of public GTFS data and how to get information from them using pure Python code; one of the nicest features we could find is the possibility of build networks of transit services, based on stations, stops, direct connections and travel times, finding ourselves in the network science world just after reading and parsing some basic .csv data into graphs.
In network science, scientists usually are attracted to discover patterns and communities within their data structures; the idea is to find out whether public transit networks show peculiar structures (spoiler: yes, they do!). This is where Infomap appears, mapping information that flow through the network into communities, such as our transit services run over transportation systems.
This is a short trip from the ground of transportation planning to one of the most innovative network community detection algorithms and back, without leaving your seat.