I am wondering if GTFS and Generate Service Areas tools will be able to achieve what I need...
I have a set of data containing X trips with origins (O) and destinations (D) with a start time (ST) and an end time (ET).
I am looking to see if a public transit network can serve each individual trip - so the corresponding transit service will need to meet the following criterion:
If it meets ALL of the criterion, then we can say that transit could serve that individual trip
Whereas if 1+ criteria is not met, then we consider transit to not serve the individual trip
We must also consider the number of transit "jumps" needed to complete the trip IF it is considered to be serviced by transit - so if the trip meets all the above criterion, but requires the use of 3 different transit lines, and additional wait time, we need to determine that... but how?
Basically what I am trying to find out is:
For each individual trip...
What are the characteristics of the public transit trip that could serve it?
-Number of transit lines used if needed to switch lets say between the Blue line and Red line
-Walking distance from origin to pick up transit stop
-Walking distance from drop off transit stop to destination
-Trip cost (fare)
Are there any tools that can specifically solve this?
The dimension of time in ArcGIS tools is what I have the least knowledge about - I am not sure if it can incorporate this into the solver.
The short answer to your question is: No, no really, or not completely.
The first two criteria (seeing if there is a bus stop within 0.25 miles of the origin and destination) is very simple and can be solved with a Service Area or (better) with an OD Cost Matrix analysis.
For these two:
You could possibly mine the GTFS data to get the arrive and depart times for the relevant stops and return a yes or no just doing that. However, from the rest of your post, it sounds like you don't want a simple "yes a bus went by within 5 minutes" type of answer. You're actually looking to see if the bus that went by allows the traveler to get to the destination using a reasonable journey within 5 minutes of their desired arrival time. This is a much more complicated problem.
At ArcGIS Pro 2.4, we added the ability to solve public transit analysis problems in Network Analyst. So, given an origin and destination, you CAN calculate the transit route between them. However, there are some limitations to our public transit capabilities as they are now. We cannot:
- Count or limit the number of transfers
- Limit the walk time separately from the overall travel time. If the fastest way to get from A to B is to walk for an hour, it will tell you to walk for an hour even though that's not very realistic.
- Wait time is included in the analysis (because it uses the actual schedules), but it's not reported in a way that's easy to look at.
- Trip cost (fare) is not included in the calculations.
Is there a way we can program using ArcPy to output these values, or at least see which corresponding transit lines each trip takes (ex. it takes Bus A from Stop X to Stop Y)?
Unfortunately no. This is because the choice of bus is made internally by the Public Transit evaluator, and there's no way to get that information out of the evaluator. The evaluator can only return one value, which is "what is the cost to traverse this network edge?".