Calculando rotas ideais enquanto toca todas as estradas disponíveis na rede ArcGIS?


13

Para a preparação da temporada de inverno, queremos calcular as melhores rotas para aspersão de sal nas estradas. A análise conhece os seguintes critérios:

  • os veículos começam e param em um único ponto de carregamento
  • todas as estradas disponíveis precisam ser salpicadas com sal
  • uma rota não pode demorar mais que um tempo de certificação (vamos assumir 2 horas)
  • devido à carga limitada de sal por veículo, a distância de uma rota é limitada à quantidade de sal disponível. (vamos assumir 10 km)

O analista de rede do ArcGIS (10.0) assume que você tem um ponto inicial e final para calcular a rota. No entanto, nesse caso, não se trata de calcular a rota mais rápida da origem ao destino, mas das rotas mais ideais para cobrir a maior distância possível da estrada em um período de tempo limitado.

Agora, estamos pensando em calcular pontos médios para cada trecho de estrada e usá-los como destinos para calcular a rota.


2
Isso parece muito com o roteamento de caminhões de lixo, apenas lá os caminhões retornam ao depósito para esvaziar enquanto aqui o sal é recarregado. Ambos precisam visitar todas as partes de uma rede.
PolyGeo

Muito verdadeiro. Você tem dicas para resolver esse tipo de perguntas de roteamento?
Mark Verschuur

Em nossa jurisdição, temos uma variável adicional, que é Sand. já que as estradas de menor volume ficam com areia e as de maior volume, com sal. Se você deseja iniciar uma sala de bate-papo comigo, podemos discutir o problema completamente. Eu também posso lhe dar algumas dicas sobre o que temos feito e se as nossas soluções podem comparar
dassouki

Pode ser reduzido a vários problemas de captação e entrega de veículos e há muitos documentos sobre isso.
Jakub Kania 17/10

Respostas:


5

Acho que algumas das respostas dependem do layout da rede rodoviária, e essa pergunta pode valer a pena ser postada no Math Stack Exchange ( /math// ), pois parece um problema da teoria dos grafos. Não acho que essa seja a solução ideal, mas pode ajudar você a se aproximar.

Você pode dividir a rede de estradas em regiões naturais, onde a soma do comprimento dos segmentos será aproximadamente igual à quantidade que um caminhão poderia cobrir com uma determinada carga. Em cada região, você poderia fazer um tour eulariano para obter a rota que tocaria em todos os segmentos. Código python de amostra

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

Você pode considerar o roteamento entre as regiões e o depósito e dividir a rota de acesso em segmentos lógicos para os caminhões disponíveis. Espero que isto ajude.


1

Eu abordaria essa tarefa dessa maneira. O ArcGIS Network Analyst possui um solucionador chamado VRP , que pode ajudá-lo a solicitar e gerenciar suas rotas. Eu converteria cada link de estrada que você tem no seu conjunto de dados da rede para apontar recursos ( ferramenta GP de recurso a ponto (gerenciamento de dados) , por exemplo, ou talvez primeiro dividir linhas em segmentos simples de dois vértices e depois obter um meio para se tornar um ponto central )

Falando em termos de VRP, esses serão seus pedidos. Em seguida, você atribui suas rotas limitando-as a um determinado horário (2 horas), e seu local de depósito será o ponto de partida e de parada. Supondo que você tenha vários veículos, você poderá obter várias rotas para um veículo ou várias rotas para o mesmo veículo.

Eu recomendo vivamente o tutorial que ajudará você a entender como começar a usar o VRP no Network Analyst. Eu mesmo usei esse solucionador para vários projetos e achei extremamente poderoso e personalizável em grande parte para atender ao meu fluxo de trabalho comercial.

Lembre-se de que o Network Analyst funcionaria bem com um número limitado de pedidos de entrada (no seu caso - centróide de estradas). Fui bem-sucedido com vários milhares de pedidos (até 9.000). Portanto, se você deseja atender uma cidade realmente grande, pode limitar suas rotas para operar somente em determinadas partes da cidade (em termos de VRP - Zonas de rotas).

Se você estiver procurando por uma solução mais pronta e poderosa que foi projetada especificamente para o roteamento de pontos de alta densidade, considere usar o RouteSmart . Ele é construído sobre o ArcGIS e foi projetado para resolver esse tipo de problemas.


Obrigado pelas sugestões. Definitivamente vou verificar RouteSmart
Mark Verschuur
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.