I have a bus route dataset with many overlapping bus routes. When I run the route solvers, ArcMap tends to recommend multiple bus changes (e.g. service 12 > service >10 > service 5 > service 32 > service 111). In my local context, however, most people will only take one single bus service to the point of destination. This problem arises because of the dense bus service routes covering the area.
Is there a possible way to restrict the network dataset to maintain a maximum of one (or two) bus transits? One possible way I was thinking of was to add additional impedance (e.g. 10 mins) when the software detects that the fromEdge bus service (as an attribute) is not equal to the toEdge bus service. However, I am unsure how to do that.
Any advice would be much appreciated!
If you've used the Add GTFS to a Network Dataset toolbox to create your network (unclear from your question), then there is no way to limit the number of transfers, unfortunately. If, however, you've created your network dataset in some other way, then, depending on how you've modeled those lines, there might be. If each bus line/route is a separate line feature, you could possible make use of turn features to add a time delay when switching from one line to another. This won't actually limit the number of transfers possible, but by incurring a time penalty, it will make routes with transfers less efficient.
Thank you for the reply. The dataset is not GTFS-based as my area does not have such datasets available.
I did consider using turn features. However, I have over 20000 line features and drawing them is just not practical. Also, there are many instances of having up to 15 overlapping lines, each representing a different bus service. Will there be a way to automate such rule-based turn impedances based on the feature's attribute instead? Otherwise, it would definitely be a great feature in the future.
There's no easy way to automatically apply a turn restriction for a situation like that. I wish there was!
You might be able to find a way to generate turn features programmatically with a python script, but it doesn't seem particularly easy.