[GIS] Finding optimal network with python and network analyst in arcgis 10.0

network-analystpythonrouting

Hello GIS StackExchange,

I'd like to know if there's any way to find the shortest distance across the diagonals of a polygon. I am creating a network analyst solution to determine the most cost effective route between 2 points. The solver will travel along the roads edge for the most part to determine optimal routes but there may be situations where cutting across certain polygon features will be more efficient than continuing along the edge of the road. The question here is what is the best way to cut across the traversable polygon features?

Sample route optimizer

The image is a sketch i did to illustrate how i'd like the route optimizer to function. The blue point feature is the route origin point while the green feature is the destination point. The green polygons are parcels that can be traversed, while the yellow polygons cannot be cut across. The blue line is the road network which is the main edge feature to determine the optimal route, the purple diagonal(ish) line is the result of the router determining that cutting across the polygon would indeed be more optimal than following the road.

The idea i have for cutting across the polygon features is to first determine the shortest distance within all traversable polygons and then create a line feature class containing the shortest distances for all the traversable polygons in the network dataset. This line feature class will then be connected to the same connectivity group as the roads feature class to ensure the router can connect both features and possibly determine that cutting across the polygon is indeed more optimal than following the road edge in certain situations.

One problem i have encountered in my research is that polygons may be made up of countless number of vertices and as such it would be difficult to determine the shortest path across the polygon. This question is related to my thesis project, it is to be written in python within arcgis 10.0. I have done quite a lot of research already so don't feel obliged to remind me about the need to learn this for myself because i have and i'm stuck. My biggest fear is designing the model half way only to find out that the approach i took was wrong from the start. That's why i need some help. I'd appreciate any documentation that can help or any complete resource that will prevent me re-inventing the wheel, or even ideas about how to go about certain aspects of building the router.

Thanks as always gis stackexchange. Apologies for the lengthy post.

Best Answer

The eventual solution i came up with was to create shortest distance line features within each polygon and pass through any polygon that had an averlying line feature with a vertex that connects to the road at both ends. The use case for this application is to optimize collector cable routing for wind farms.

This video shows how the optimizer might be used

http://www.youtube.com/watch?v=aGFsLe0EcF8

Related Question