See all apps

Optimizing Public Transit

Submitted on April 04, 2013

What problem are you intending to solve?

We are developing tools to help city planners make smarter decisions around real-time dynamic scheduling of public transportation.

What is the technological approach, or development roadmap?

We’ve developed a massively parallel, open-source framework to analyze the data SFMTA gathers every day. We developed our framework in Clojure, a modern open-source language designed from the ground up to be highly parallel, which is important when dealing with the millions of data points the SFMTA gathers every day.

Through the data we analyze, we are uncovering patterns and trends that help the SFMTA make more informed bus scheduling and route planning decisions. But we can still do better. Our next step is to further develop our data analysis tool so city planners can make intelligent adjustments to bus scheduling in real-time. By the end of the Ignite challenge we will have built tools for a future where 1Gbps Internet is the norm and where developers and city planners can easily plug in additional data sources that can help them understand the way people get around their cities.

Ultimately we envision a future where people get around their city using smart, self-driven buses (think Google Cars, but buses instead). When buses are driven by computers they will use cameras and other sensors to gather data about their surroundings. People will be able to build upon our framework to instantly send this data over a 1Gbps network to a central server farm, which is turn analyzes this data in real-time, returning it to buses with dynamic instructions on where to move and how to drive, ensuring it remains safe and moves on a course that is optimal to the transit system as a whole.

How will end users interact with it, and how will they benefit?

Right now San Francisco transit planners can interact with a live demo of our tools by going to Our tools are designed to fully leverage as much parallel computing power that is available to process the massive amount of data gathered every minute by the SFMTA. The tools provide intelligent analysis of the data so planners can make better decisions regarding the scheduling of public transit. Right now you can see how far behind or ahead of schedule buses are, where on a route buses tend to fall behind (or get ahead of) schedule, and how many passengers are onboard the vehicle at any given stop. These tools enable a planner, and in the future a computer, to make better real-time decisions about where buses should be added or removed in order to optimize the entire transit system as a whole. While building these tools we worked with key members of the SFMTA to make sure we were solving problems that mattered. One of the people most influential to our project was Chris Pangilinan, an engineer at the SFMTA. According to Mr. Pangilinan, the two biggest problems SF transit planners face is where and why vehicles are slowed down along their route, and how to ensure that the system is providing service to the places that people need to go. Our tools help planners answer these questions by providing a deeper level of analysis into the data that they have available. Ultimately planners can move extra buses around the system to respond to the cities needs as in the case of an emergency; or in San Francisco’s case, a big event like Outside Lands. With our tools, planners can dig deeper into San Francisco transit data, enabling them to cut expenses by removing buses from routes that don’t get used, and also provide a better transit experience by adding buses to routes that are overcrowded. We think that operators will see patterns emerge in the data that let them understand why buses are running behind or ahead of schedule. With our tools we can exactly pinpoint locations on the route where this is happening helping planners make lasting change, not just temporary adjustments. While these tools help transit planners do their job better, ultimately the real winner is the city dweller who gets a faster, more reliable transit system.

How will your app leverage the 1Gbps, sliceable and deeply programmable network?

Already, thousands of sensors in the Muni system constantly gather a massive amount of data. We’ve developed a system designed to receive and analyze this data in a massively parallel way. In the future, public transit agencies will have even more data points, and effective analysis of this data will require next-generation networks -- not just in terms of data throughput, but also in computational capacity. Transit planners will be able to make decisions on the fly -- perhaps dynamically scheduling more buses during high traffic or high usage situations. Data streamed over a high throughput, high computing-capacity network means that insights and analysis will happen in real-time. In emergency situations, planners would have better information about the situation, letting them respond to it in a smarter and faster way. In the bigger picture we see these tools as a step forward in the creation of cities where public transportation is completely automated by computers. The same way that Google smart cars rely on analysis of video being collected to make adjustments that keep passengers safe, we envision an entire city that collects data from its transit vehicles that then send data back to a central computer which makes adjustments to the entire fleet ensuring that everything runs consistently.

Further application information

Additional supporting information, materials and resources

Read about project updates - project blog

Take a look at the existing code - project repository

Will your work be beta-ready by the end of the Development Challenge?


How much effort do you expect this work to take?

So far it has been a lot, and we know it will take more.

Do you need help?

Yes. We need to hire another backend developer who can help us build out our vision so that this application can be used by any city planner from any transit agency in the world

If you can help let them know in the comments below.

Noah Sidman-Gale

Bridging the gap between mobile technology and public transportation.

and team members

LuckyBird is two-person development team based out of San Francisco. Founders Noah Sidman-Gale and Cameron Saul first became interested in gigabit networks when they met Will Barkis at the ReRoute hackathon. Competing in the Ignite challenge has been an incredible experience for LuckyBird as it challenged them to think outside the box and develop applications for a world without limits. Even though they are a small team, Noah and Cam have the imagination and technical skills to confront the Ignite challenge head on. While inherently a mobile dev team, LuckyBird stepped up to the challenge when founder Cameron Saul learned Clojure in order to build a parallel backend that could grow with the advances of Gigabit technology.

comments powered by Disqus