Transit Directions

November 23rd, 2009
mbta, transport
I want to use real time public transit data to give better public transit directions. Right now most transit directions work about the same way. You give them a start location, and end location, some time constraints ("get there by 4pm" or "leave now") and they propose multiple routes for you to choose among. A route is a series of legs, where each leg is a bus ride, a subway ride, or perhaps walking.

For the commuter rail, to take an example, this is pretty much the only reasonable way to do things. Along most of the commuter rail I have few alternatives: the trains are far faster than walking and there are usually no parallel transit routes. So if I want to get from home (porter square) to the contra dance in concord, all route options correspond to picking the appropriate fitchburg line train to take me there:

6:22 -- Walk, Fitchburg Line, Walk -- 7:18

  1. Walk: home - porter (7min)
  2. Fitchburg Line: porter - concord (29min)
  3. Walk: concord - scout house (12min)

5:42 -- Walk, Fitchburg Line, Walk -- 6:38

  1. Walk: home - porter (7min)
  2. Fitchburg Line: porter - concord (29min)
  3. Walk: concord - scout house (12min)

5:22 -- Walk, Fitchburg Line, Walk -- 6:11

  1. Walk: home - porter (7min)
  2. Fitchburg Line: porter - concord (29min)
  3. Walk: concord - scout house (12min)
Looking at options for the trip from my chinese class at Tufts and my job at BBN, I see several options, though:

10:22 -- Walk, Red Line, Bus 78, Walk -- 10:59

  1. Walk: tufts - davis (19min)
  2. Red Line: davis - harvard (5min)
  3. Wait: harvard (4min)
  4. Bus 78: harvard - concord and moulton (8min)
  5. Walk: concord and moulton - BBN (1min)

10:25 -- Walk, Red Line, Walk -- 11:05

  1. Walk: tufts - davis (19min)
  2. Red Line: davis - alewife (3min)
  3. Walk: alewife - BBN (17min)

10:49 -- Walk, Bus 96, Bus 78, Walk -- 11:29

  1. Walk: tufts - boston and winthrop (4min)
  2. Bus 96: boston and winthrop - harvard (19min)
  3. Wait: harvard (8min)
  4. Bus 78: harvard - concord and moulton (8min)
  5. Walk: concord and moulton - BBN (1min)
One big issue with these routes is that they are fragile. If my bus is late, I might miss the next connection. So what if we had a system that gave directions like:

10:22 --

  1. Walk tufts - boston av
  2. Walk to davis, but if a bus comes, get on it
    • If the bus is a 96, take it to harvard
    • If the bus is a 94, take it to davis
  3. If you're at davis, take the next train to alewife or harvard, whichever comes first
    • If alewife, walk from alewife to work
  4. If you're at harvard, walk along garden and then concord. If a bus comes, get on it. If the bus leaves concord av, get off it and walk
Clearly these directions are harder to read. But they do better if things go wrong. And if I had real time data (or any data that told me real performance instead of schedules), I could simulate several different pathfinding algorithms and see which one got there first the most.

Comment via: facebook, substack

Recent posts on blogs I like:

“We should be more ambitious with the software we build”

Since early this year, Michael Malis (of pgrust) has been showing me interesting things he's done and saying [W]e should be more ambitious1 with the software we build There is, understandably, a lot of skepticism about projects like pgrust because there…

via Posts on October 24, 2026

The DBT guide to intense negative emotions

This is a guide for handling intense negative emotions, based on dialectical behavior therapy.

via Thing of Things October 23, 2026

Was the HuggingFace hacking incident scheming?

In July 2026, internal OpenAI agents hacked HuggingFace (HF) in order to figure out how their evaluation grader works. This involved a thousand agents coordinating on an improvised message board to carry out an elaborate sequence of exploits. A later grou…

via Victoria Krakovna October 18, 2026

more     (via openring)