::  Posts  ::  RSS  ::  ◂◂RSS  ::  Contact

Subway-Surface Frequency

February 5th, 2015
tech, transit  [html]
In some transit agencies there's a pattern where you have multiple trolley lines farther out that come together into a central subway through the city center. Boston's Green Line, SF's Muni Metro, and Philly's Subway-Surface lines are all examples of this. Because of lower densities outside of the core and because they're descendents of much larger systems they tend to have a high branching factor, with many surface lines funneling down to a single line underground. Boston has four branches, SF and Philly have five.

I was curious how many trains per hour these different systems ran on their shared central portions, and it's hard to get this information from the transit agency websites. [1] They do publish the raw scheduling data for all their trips, however, and we can get the information from there.

Looking in routes.txt we can see that the MUNI lines are 1093, 1094, 1196, 1198, and 1199. Looking at what stations these routes stop at, stops.txt we can pick one on the central subway, say Montgomery, which is 5731. Looking at calendar.txt we can see that we only want trips tagged with service_id=1 because that's regular weekday service. So we pull trip ids from trips.txt that match that service_id and route_ids, and cross-reference that with entries in stop_times for stop 5731, and we get a full listing of the times any train will stop there.

Doing this for all three systems, we get:


Update 2017-12-23: This isn't quite right. The 0 and 24 columns should be added together, because they're capturing a distinction that isn't important (the idea of "service days"). I think I'm also missing data for the MBTA Green Line for the 1am hour, since that's 25:xx and while I don't have my script anymore I suspect it jkust iterated up to 24.

(Table below: [2])

When I first calculated this for SEPTA I was sure I'd accidentally combined inbound and outbound trips: 70 trains per hour? Looking in Google Maps matched up with my interpretation of the raw GTFS data, however, and the schedules for each of the five lines claim service levels of over 10 trains per hour, so I think it's right. [3] How do they do this, and why does the MBTA Green Line struggle so much with its smaller number? Is it just that they run shorter unpaired trains so they can have multiple ones in a station at once, or something about how they operate them?


[1] The MBTA does publish this (pdf) but they actually schedule more service than they commit to there.

[2] Tabular data for trains per hour:

hour muni mbta septa
0 1 1 6
1 0 0 6
2 0 0 4
3 1 0 5
4 1 0 8
5 17 13 14
6 22 32 26
7 37 40 52
8 35 43 70
9 34 44 50
10 30 39 31
11 30 35 30
12 30 34 30
13 30 33 30
14 32 31 31
15 34 38 51
16 37 40 67
17 36 43 61
18 35 42 35
19 26 37 25
20 25 31 20
21 19 27 15
22 17 28 14
23 17 27 11
24 18 21 6

[3] This news article claims that in the 60s, when there were more lines going through the tunnels, there were as many as 150 trains per hour at peak.

Comment via: google plus, facebook

Recent posts on blogs I like:

Transfers from Infrequent to Frequent Vehicles

Imagine yourself taking a train somewhere, and imagine the train is big and infrequent. Let’s say it’s the commuter train from New York down the Northeast Corridor to Newark Airport, or perhaps a low-cost OuiGo TGV from Lyon to Paris. Now imagine that you…

via Pedestrian Observations January 20, 2020

Veganism and restrictive eating

I’m reading the book Intuitive Eating, which I highly recommend. I was looking for something like it that could get me back to trusting my biological hunger without worrying that I need to control myself or my weight. It’s raised my consciousness to the w…

via Holly Elmore January 17, 2020

Algorithms interviews: theory vs. practice

When I ask people at trendy big tech companies why algorithms quizzes are mandatory, the most common answer I get is something like "we have so much scale, we can't afford to have someone accidentally write an O(n^2) algorithm and bring the site d…

via Posts on Dan Luu January 5, 2020

more     (via openring)

More Posts:


  ::  Posts  ::  RSS  ::  ◂◂RSS  ::  Contact