Quantification & Comparison of Urban Fleet-Sensing Indices

Synopsis

Our project centers on developing a program to parse input GTFS data of real-world bus routes and configure it for use in a simulation that requires these routes.

As such, our project serves a larger simulation framework whose function is to model the routes of different fleet types (not only buses) and investigate their sensibility indices as they detect predetermined points of interest (i.e., utility poles) around a virtual representation of a real-world city. The work for this is being completed by a partner team.

A major aim of the framework as a whole is standardization; thus, the simulation will be able to function for any city around the globe, given the necessary data is available.

Functionality

The program takes input which is the city of interest and the GTFS data.  The GTFS parser then transforms, filters, formats, and pivots tabular data based on required data or required datasets (i.e., the bus routes) to interpret a specification

Via the parser, the user will receive a list of bus routes for their city of interest. The user can select a route of interest for the next simulation run. The parsed output includes the coordinates of all the stops along that route.

The program output will be integrated with a .json configuration file to define the parameters of the simulation and customize its environment. This file is run before each simulation run.

Working with Data Frames

Pandas Data frames are critical to how we interpret the data. These are unique 2D data structures, like a 2D array, or a table with rows and columns. 

All input GTFS data is parsed into a dataframe that can be manipulated and filtered before being output by the config file

The primary dataframe is a of a list of all bus routes in the specified city. For each route, we can extract a list of all its stops & their respective coordinates.

Below is an example of GTFS parsing for Greater Sydney, Australia.

Import Demo

The images below show how GTFS data from cities worldwide can be imported and output as desired. Specifically, they show the different bus stops throughout these cities based on data acquired from public databases. These stops are signified by the red dots.

Greater Sydney, Australia

Delhi, India

Nairobi, Kenya

Washington, DC

Paris, France

Buenos Aires, Argentina

Parsed Results (Bus Routes)

The images below show the final output after the GTFS data is parsed: a virtually navigable bus route to be utilized in the larger simulation framework. Specifically, it shows a set of routes from the Washington, D.C. Circulator bus system.

 The program outputs a Pandas data frame containing all the bus routes in the city and using a configuration file, the user can decide the route of interest for the simulation run.

The Team

Ramy Beshara | ramybeshara@cmail.carleton.ca

Daniel Muhwezi-Banyweine | danielmuhwezibanywei@cmail.carleton.ca

Dr. Marzieh Amini (Project Advisor) | marziehamini@cunet.carleton.ca 

Dr. Kevin Dick (Project Advisor) | kevindick@cmail.carleton.ca 


Please don't hesitate to contact any team member with enquiries about the project.

Resources

Python

GTFS

Pandas Library for Python

OSMnx Library for Python

OpenMobilityData

ArcGIS