Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I'd like to be able to create buffers/zones/rings of transit times using Denver's public transportation system. For an example of what I'm talking about, check out triptropnyc.com - I don't need it to look nearly as nice, and I only have one origin point of interest.

My thought so far was to distribute random points around the area of interest and then pass those points to the Google Maps API a bit at a time. Once I had the travel times, I could then interpolate between the points to get the buffers - going back from more points if necessary to smooth out the estimates.

Would that be a valid approach? Are there other ways of estimating transit times that I should consider? Perhaps other sources of data that would be more useful or easier to get?

Let me know what you think. Thanks!

(Also, if you can think of additional/better tags for this question, go right ahead)

share|improve this question
1  
Note: I found out some time later that the Google Maps directions API doesn't permit use of the public transit mode - just driving, walking and bicycling. –  Matt Parker Aug 16 '10 at 15:35
2  
Another posters recent comments link to an application that essentially does this, gis.stackexchange.com/questions/46/… . It may be worth checking out how they calculate travel times. –  Andy W Oct 31 '10 at 2:01
    
I wonder how'd you make out with this problem? –  dassouki Sep 13 '11 at 11:09
    
@dassouki I'd love to tell you, but I unfortunately haven't had time to work on anything but research in months. This is the month in which most of my research projects are wrapping up, however, so I sincerely hope to have an update by the end of the year. –  Matt Parker Sep 13 '11 at 18:16
add comment

5 Answers

up vote 6 down vote accepted

I also agree this is an interesting problem. Instead of buffering transit lines though, I'd start out with stops, which are part of the Google Transit Feed Specification. RTD's feed is here. Perhaps use GraphServer to build trees.

share|improve this answer
    
Nice answer - thanks! –  Matt Parker Jul 23 '10 at 18:35
add comment

I tried something similar once (using FME's NetworkCostCalculator).

The interesting part is in the visualization. We wrote the data to 3D PDF, with time as the Z axis, and a background image at certain time intervals.

alt text

You just turned on the 10min image, or 15min etc - to show how far you could get in a certain time.

alt text

And if you turn the network into a cost surface it looks like this:

alt text

share|improve this answer
add comment

you'll need the TCQM to do the transit calcs (it's a free book).

Anyways the way we do it in the industry is we build a contour layer based on walking times from transit stops. Each transit stop can take up to .25 mile / 400m in terms of walking distance, which is usually the default number. People walk anywhere between 4 and 6 km an hour, so you can assume 4 or 5 as your average. So you have the distance and speed, you can get the time out of that.

share|improve this answer
add comment

I know I'm late in the game, but I would suggest you check out the Crimestat tools for network distances if you already have the points suggested by Kirk (assuming also you have the street network file).

Have you just done some simple sampling to estimate transit velocity to accomplish this since no online estimate exists (or used some other source to estimate velocity)? For this project I wouldn't think it would be unreasonable to assume a constant velocity.

share|improve this answer
    
Based on my own experiences with the public transit here, I don't think constant velocity is actually a reasonable assumption here. Proximity to an express or regional bus could make a big difference for people in our outlying areas, especially since we're very close to the routes of some of those buses. Then there's the light rail... –  Matt Parker Oct 29 '10 at 17:24
    
True, especially the farther outside the urban area the likely more it will deviate. Have you used any outside source such as the transportation departments suggestions (such as if they have pickup times between stops) to try to make some weight to attach to the network distance? This also complicates the question as the answer will be dependent not only on the bus stop but on the (bus stop + what bus it is). You could add in even more complications such as the need to transfer buses or have fixed network routes between bus stops. You should start timing your bus trips! –  Andy W Oct 29 '10 at 17:35
add comment

This is a seriously interesting problem from the viewpoint of walkability in a city.

My first thought is to treat the transit map like a graph and simply do a traversal out to each station from the root node (your location of origin). Then, for each node walked, create a series of expanding circles with estimated walk distances (not too many expanding circles, you could easily run out of processing power). After you generate all of the circles for the map, you'd need to calculate what circles overlap and simplify the resulting geometry. Then, you could treat each edge like a vertex and each vertex like an edge for a flow network to calculate the optimal walking paths (using Ford Fulkerson or whatever).

That's an algorithm that would probably work, but I really doubt it's optimal. I think you just nerd sniped me. ;P

share|improve this answer
    
I actually did something similar a few years ago using some arcane ArcGIS tool. The difficulty here is that public transit times in a city with three tiers of bus service and light rail are unlikely to be linear with distance. The nice thing about hooking into Google Maps is that it does a good job of picking optimal routes from A to B for me. –  Matt Parker Jul 23 '10 at 17:20
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.