ArcGIS 네트워크에서 사용 가능한 모든 도로를 터치하면서 최적의 경로를 계산합니까?


13

겨울철 준비를 위해 도로에 소금을 뿌리는 가장 최적의 경로를 계산하려고합니다. 분석은 다음 기준을 알고 있습니다.

  • 단일 적재 지점에서 차량 시동 및 정지
  • 사용 가능한 모든 도로에 소금을 뿌려야합니다
  • 한 경로는 세르 틴 시간을 초과 할 수 없습니다 (2 시간으로 가정)
  • 비히클 당 소금의 제한된 부하로 인해 경로의 거리는 사용 가능한 소금의 양으로 제한됩니다. (10km 가정)

ArcGIS (10.0)의 네트워크 분석가는 경로를 계산할 시작점과 끝 점이 있다고 가정합니다. 그러나이 경우 출발지에서 목적지까지 가장 빠른 경로를 계산하는 것이 아니라 제한된 시간 내에 최대한 많은 도로 거리를 커버하는 가장 최적의 경로를 계산하는 것입니다.

이제 우리는 모든 도로 구간의 중간 지점을 계산하고이를 경로를 계산하기위한 목적지로 사용하려고합니다.


2
이것은 쓰레기 트럭 경로와 비슷하게 들립니다. 여기서 소금이 다시 장전되는 동안 트럭이 창고로 돌아와 비 웁니다. 둘 다 네트워크의 모든 부분을 방문해야합니다.
PolyGeo

매우 사실입니다. 이런 종류의 라우팅 질문을 해결하기위한 팁이 있습니까?
Mark Verschuur

관할권에는 추가 변수 인 모래가 있습니다. 적은 양의 도로는 모래가되고, 큰 양의 도로는 소금이됩니다. 나와 대화방을 시작하고 싶다면 문제를 완전히 논의 할 수 있습니다. 또한 우리가 한 일과 솔루션이 비교할 수 있는지에 대한 통찰력을 줄 수 있습니다
dassouki

여러 대의 차량 픽업 및 배송 문제로 줄일 수 있으며 그에 관한 논문이 많이 있습니다.
Jakub Kania

답변:


5

나는 대답의 일부가 도로 네트워크의 레이아웃에 달려 있다고 생각 하며이 질문은 그래프 이론 문제처럼 보이는 Math Stack Exchange ( /math// ) 에 게시 할 가치가 있습니다 . 이것이 최선의 해결책이라고 생각하지는 않지만 더 가까이 다가가는 데 도움이 될 수 있습니다.

도로 네트워크를 자연 지역으로 나눌 수 있습니다. 세그먼트의 길이의 합은 트럭이 주어진 하중으로 감당할 수있는 양과 거의 같습니다. 그런 다음 각 지역에 대해 eularian tour를 실행하여 모든 구간에 닿는 경로를 얻을 수 있습니다. 샘플 파이썬 코드

def eulerian_tour(network_graph):
    graph = network_graph[:]
    route = []
    def find_route(start):
        for (i, j) in graph:
            if i == start:
                graph.remove((i, j))
                find_route(j)
            elif j == start:
                graph.remove((i, j))
                find_route(i)
        route.append(start)

    find_route(graph[0][0])
    route.reverse()
    return route

그런 다음 리젼과 저장소 사이의 라우팅을 고려하고 사용 가능한 트럭에 대한 액세스 세그먼트를 논리적 세그먼트로 분리 할 수 ​​있습니다. 도움이 되었기를 바랍니다.


1

이 방법 으로이 작업에 접근합니다. ArcGIS Network Analyst에는 경로를 주문하고 관리하는 데 도움이되는 VRP 라는 솔버 가 있습니다. 예를 들어 네트워크 데이터 세트에있는 각 도로 링크를 지점 기능 (예 : Feature To Point (데이터 관리) GP 도구 )으로 변환 하거나 먼저 선을 간단한 두 정점 세그먼트로 분할 한 다음 중간을 중심점으로 만듭니다. ).

VRP 측면에서 말하면, 주문이 될 것입니다. 그런 다음 특정 시간 (2 시간)으로 경로를 제한하는 경로를 지정하면 저장소 위치가 시작 및 중지 지점이됩니다. 여러 대의 차량이 있다고 가정하면 한 대의 차량에 대해 여러 개의 경로 또는 동일한 차량에 대한 여러 개의 경로를 얻을 수 있습니다.

Network Analyst에서 VRP를 시작하는 방법을 이해하는 데 도움이되는 자습서 를 진행하는 것이 좋습니다 . 여러 솔벤트에이 솔버를 사용했으며 비즈니스 워크 플로를 충족시키기 위해 매우 강력하고 사용자 정의가 가능하다는 것을 알았습니다.

Network Analyst는 제한된 수의 입력 주문 (귀하의 경우 도로 중심)에서 잘 작동합니다. 나는 수천 건의 주문 (최대 9,000 건)에 성공했습니다. 따라서 대도시에 서비스를 제공하려는 경우 특정 도시 지역 내에서만 노선이 운영되도록 제한 할 수 있습니다 (VRP-노선 구역 측면).

고밀도 포인트 라우팅을 위해 특별히 설계된 보다 독창적 이고 강력한 솔루션을 찾고 있다면 RouteSmart 사용을 고려하십시오 . ArcGIS 위에 구축되었으며 이러한 유형의 문제를 해결하도록 설계되었습니다.


제안 해 주셔서 감사합니다. RouteSmart
Mark Verschuur를
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.