TTCTrip Planner

Download & Demo



  • Home
    Main page
  • Info
    Abstract & Hypotheses
  • Program Design
    Procedures & Functionalites
  • Results
    Testing & Analysis
  • Conclusion
  • Bibliography

Abstract

The ultimate goal of the project is to ease the process of finding the best route when traveling by public transportation. I also intend to build a flexible program that works with custom databases created by 3rd-parties or users. Flexibility is extremely important because public transit system in other cities than Toronto will also benefit from the program.

The program is named "TTC Trip Planner" because it contains database for downtown Toronto area including buses, streetcars, and some subways. However, the program is able to read custom made databases in a carefully designed format. The program itself is written in Visual Basic.NET. This piece of software is also programed in modules so extensions of functionality can be added easily.

Since this program is intended to give people directions, the interface is designed as simple, functional, and user-friendly. When an user inputs the wrong data, the program uses plain words to state the error and help users to correct it. Another feature allows user to input addresses and postal code instead of the exact bus stops, then program is able to use Google Maps SDK to find the closest stop to the actual address.

I hypothesized that the program will be efficient and accurate. The program should also be able to create a trip with a maximum of 2 interchanges for any two stops in the database. To achieve these requirements, the program needs to be well optimized.

During the time i spent writing the program, I used several online tutorials and books to help me conquer the technical problems I encountered.

In order to test the accuracy and efficiency of the program, I designed a special testing procedure which test all 11772 combinations of starts and stops. Each best route, and total time used is recorded in a text file. At the end, 11769 combinations produced accurate results. No best route required more than 2 interchanges to complete. Time wise, all 11772 combinations took a total of 572 seconds. This equals to an average of 0.049 second per one run of the program. The system I tested my program on has a 2.0GHz Dual-Core Processor and 2 GB of memory. On a side note, all testings are done under the method of entering exact stops instead of addressed or postal codes because the second method's speed is greatly dependent on the Internet speed.

Overall, the program exceeded all expectations and proved all hypotheses as it achieves a 99.97% accuracy rate and an average of 0.049 second per run.

For the second method (search by address), I randomly selected 20 different addresses, postal codes, and places to pair up as starting spots and destinations. A total of 10 combinations were tested by this procedure. Average time used is 2.3 seconds (23 seconds in total), and 8 out of 10 trials produced accurate results (80% accuracy rate).

In conclusion, the TTC Trip Planner is a successful project. The program met all the goals I set at the beginning. I can see huge potential for future development for this program as it can literally be used for any city and any transportation system with customized databases. Some future improvements can also be made such as integration with TTC online database for live time schedule, addtion of full subway systems, and choices transportation method. This program can potentially help millions of people travelling by public transit.

To Top

  • Info
  • Abstract
  • Hypotheses
  • Home

Stephen Shi © 2009