2

For many months I have been looking to get the distance from certain incidents/origins (wells) to the nearest facilities/destinations (rail car terminals) by road (trucking).

I have used Closest Facility Analyst and OD Cost Matrix but am hitting the same bump. Around 20% of the wells snap to "island" road network lines that do not ultimately route to any facilities/destination I need.

I have hundreds of thousands of roads that span southern Texas, downloaded from open street maps Geofabrik. I have approximately 15,000 wells.

The entire map

Below you will see the results of an OD Cost Matrix on a selection of the data. Very few points route to the 2 facilities shown. This is using "end-point" network connectivity on the roads.

End Point connectivity

I also attempted with "any-vertex" connectivity but of course this problem does not help with the stranded islands, of which there are thousands. Even if I dissolve the lines and attempt to use the single largest "continent" (see an older question of mine Network Analyst's Closest Facility - starting from route-possible road segments) I am still left with hundreds of thousands of road islands. The number of road features only drops from 460,000 to 350,000 after this dissolve method.

enter image description here

How would you approach this problem?

  • Remove island roads – FelixIP Jun 15 '17 at 20:28
  • It's how to remove the island roads that I am having trouble with. I am currently attempting @AriJane 's answer (gis.stackexchange.com/questions/92147/…) to see if this applies to me. – Red Jun 15 '17 at 20:33
  • As an update, the solution linked only applies to single floating line segments (and a side effect is it removes T-junctions as well). It does not apply to islands with multiple road segments as shown in my pictures. Thus it would only solve the case of the top right red circle, and not the other two. – Red Jun 17 '17 at 14:53
  • Script here gis.stackexchange.com/questions/183610/… divides network into group of links connected via nodes – FelixIP Jun 17 '17 at 19:29
  • Thank you for linking, I solved my own issue taking advantage of Service Area Analysis, I will post below. – Red Jun 17 '17 at 20:09
2

In order to modify my network so that all of my points would route, I did a number of steps.

Firstly I made a copy of my road shapefile and ran the iterate tool at 2 meters to catch any unnoticeable breaks.

Then I created a Any Vertex road network from the shapefile.

I then started a Service Area Analysis from Network Analyst. The goal of this was to give me all roads that could reach my facilities of interest. When right clicking for properties I set the default break time to an arbitrary large number so that all possible routes could be used. enter image description here

I also turned Polygon Generation off and Line Generation on.

The result was a line feature that I can now use to create a new road network from and continue my OD cost matrix!

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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