UROP Openings

Have a UROP opening you would like to submit?

Please fill out the form.

Submit your UROP opening

An algorithm to infer bus travel from smartphone and vehicle GPS data (Remote)




14: Economics

Faculty Supervisor:

Ben Olken

Faculty email:


Apply by:

If eligible for direct funding, applying in advance of December 3 is advantageous


Mary Pietrusko: mpietrus@mit.edu

Project Description

Megacities of the developing world face severe mobility barriers and traffic congestion, limiting the potential gains from agglomeration forces. Well-designed public transit, and public bus systems specifically, are key to this problem. Fundamental to effective system design is accurately measuring public transport behavior and demand. We study these questions in the context of Jakarta's public bus system, TransJakarta. To measure bus usage, we are using GPS location data for a sample of smartphone users in Jakarta and the universe of all TransJakarta bus GPS location data (every 5-10 seconds). For this UROP project, you will work with a sample of the smartphone location data and contemporaneous bus location data to develop an algorithm that classifies each smartphone trip based on its probability that it used a TransJakarta bus. You will work together with the research team to design the algorithm, apply it and evaluate the results, and iterate through the process of algorithm design and tuning. You will use (and may help improve) tools our team has developed to visualize and interpret the location data. This UROP offers a highly self-contained project with considerable hands-on experience. Apply by sending your CV, grade transcript, link to public repository with sample code (if available), and a paragraph on relevant experience (previous projects) to Prof. Gabriel Kreindler at gkreindler@fas.harvard.edu. If eligible for direct funding, applying in advance of December 3 is advantageous (sponsor funding may also be available after this date).


For this project you should: have experience or significant interest writing algorithms to automatically clean big, messy data; extensive experience with python; active interest to evaluate whether an algorithm is successful and how to improve it. A minimum 10 hours a week (on average) is required for this project, with flexible timing.