Hacker News new | ask | show | jobs
by stephengillie 2794 days ago
OneBusAway is surprisingly accurate, at least in my experience. Google Maps has very good transit support too.

One reason buses are late is because a bus must travel a circuit. Cars provide linear transportation, so the delay can only happen in the direction of your travel. Since buses run a circuit, they are impacted by delays in the direction opposite of your travel as well.

Your bus might be late because the return route has traffic or other delays. Or maybe a drunk or drug user got in a fight with the driver and the police were needed. Or someone in a wheelchair had a problem getting onto the lift.

4 comments

> Google Maps has very good transit support too.

Where do you live? I'm guessing the bay area?

I was carless in DC for a year and Google Maps was ALWAYS wrong about when busses when arrive. My friend recommended an app called Transit which was right about 90% of the time, which was a godsend for me.

Seattle - Google Maps often suggests taking 2 buses for a 1 bus trip - to goto Tacoma on the 594, instead of going down the hill and taking the 594, it recommends going to the bus tunnel and taking another bus for about a mile, then transferring to the 594.

But it shows stop locations and plans routes quite effectively. Using the 2 apps in tandem creates a workable solution.

In my experience Google Maps is mostly useless - I know this because OneBusAway is so accurate and they always disagree.

Although Google Maps' transit planner is invaluable for finding possible combinations of buses to use, I rely on OneBusAway to tell me which one is actually going to be faster right now.

Why is modeling required? Can’t we just put a sensor on every bus, and just return the empirical expected time it takes for the next bus to drive to your station given the time of day and day of week?
That's how it works (at least the OneBusAway feed in the Seattle area). They started in the 90s with an RFID transponder on bus stops, read by the bus as it went past; more recently they use things like odometry or GPS to feed information into the system.

But:

> just return the empirical expected time it takes for the next bus

There is a world of complexity in "the empirical expected time", there... expected according to what models?

Anecdotally, I think it's especially hard to model because any given delay is probably attributable to one or a few specific incidents. This isn't a situation where everything averages out and we can use a nice tractable AWGN model; we're down in the muck and the shot-noise.

Every bus does have sensors - it's where the data in the post came from. OneBusAway shows the live location of your bus too.

The issue here is the deviation between empirical expected time and actual arrival time. Unhandled exceptions abound.

Not really. A bus a schedule usually has a built in delay between cycles.