Overview
The motivation for us to build MTA Trip Planner is to help users find the fastest route while taking subway. Since express trains are much faster than local trains and there are lots of common stops for these two types of trains, it is possible for passengers to save time by switching trains at these transfer stations. However, switching from local trains to express trains also takes time. Sometimes it is difficult for users to decide whether they should switch or not. For instance, if a Columbia University (located on 116th St.) student wants to buy some clothes from Macy’s store (located on 34th St.), which would be the fastest route for this student? Applications like Google Map will tell the student to take line 1 train to get there. However, it is possible for the student to save more than 5 minutes by switching from local trains to express trains at 96th St. If the time slot between the arriving of local trains and express trains is small, then it is faster for the student to switch trains at 96th St. Otherwise, staying on local trains may be a better choice. Sometimes it is difficult for passengers to make right decisions by random guessing. For some passengers, they may not even know that they have this option to save time.
Currently, there is no application that can generate optimal subway routes based on current traffic conditions. Our application can help users make right decisions by combining current traffic condition with history information using machine learning prediction. Our web application server is hosted on AWS EC2 virtual machine. On the website page, users can select their departure site, destination stop, and the direction (uptown or downtown). Then, an optimal route plan will be generated and displayed to users. Subscribed users can also receive a text message of whether they should switch or not at a specific transfer station.
After users entering their route plans, the program will initially generate possible routes that connects the source and destination. For the case that involves switching from local train to express train, the program will gather current information of local train, and then push the information to Machine Learning model on AWS. The Machine Learning model will generate binary predictions of whether the user should switch or not at a connection stop. After that, the decision will be sent back to the main program. Finally, the main program calculates and display the optimal route to the user.