510 likes | 696 Views
Otimização em grafos. Problema de roteamento de veículos. VRP. G. B. Dantzig e J. H. Ramser, The truck dispatching problem, Management Science, 6, 80-91. Definição.
E N D
Otimização em grafos Problema de roteamento de veículos
VRP G. B. Dantzig e J. H. Ramser, The truck dispatching problem, Management Science, 6, 80-91.
Definição The Vehicle Routing Problem (VRP) is a generic name given to a whole class of problems in which a set of routes for a fleet of vehicles based at one or several depots must be determined for a number of geographically dispersed cities or customers. The objective of the VRP is to deliver a set of customers with known demands on minimum-cost vehicle routes originating and terminating at a depot. Diferença para o m-TSP: capacidade nos veículos. fonte: http://neo.lcc.uma.es/radi-aeb/WebVRP/
Definição fonte: http://neo.lcc.uma.es/radi-aeb/WebVRP/
Motivação "A utilização de métodos computadorizados usualmente reduz de 5 a 20% os custos das rotas obtidas". P. Toth, D. Vigo: "The Vehicle Routing Problem". Monographs on Discrete Mathematics and Applications. SIAM, Philadelphia. 2001. Softwares:http://www.lionhrtpub.com/orms/surveys/Vehicle_Routing/vrss.html
Motivação (?) http://www.lionhrtpub.com/orms/surveys/Vehicle_Routing/vrss.html
J.-F. Cordeau, M. Gendreau, G. Laporte, J.-Y. Potvin and F. Semet, A guide to vehicle routing heuristics, Journal of the Operational Research Society, 53, 512-522, 2002. • G. Laporte, The vehicle routing problem: an overview of exact and approximate algorithms, European Journal of Operational Research, 59, 345-358, 1992 • G. Laporte, F. Semet, Classical heuristics for the capacitated vehicle routing problem, in: The vehicle routing problem, P. Toth, D. Vigo (eds), 1987.
Além de VRP gap (indicativo de precisão) heurísticas meta-heurísticas tendência algoritmos exatos ... tempo (indicativo de velocidade)
Além de VRP • Características de um bom algoritmo • Precisão • Velocidade + • Simplicidade • Flexibilidade
Precisão • Quão precisa é a resposta obtida pelo algoritmo. • Dificuldades: • Algoritmos com aleatoriedade (quantas vezes o algoritmo foi rodado para obter as respostas ?). • Algoritmos com ajuste de parâmetros • Consistência (0.1% gap para 95% das instâncias e 10% gap para o restante ?) • Respostas intermediárias (são úteis)
Velocidade • Quão rápido o algoritmo obtém a resposta? • Dificuldades: • tipo do problema (planejamento, operação, tempo-real?) • Computadores usados. • Paralelismo?
Simplicidade • Quão simples é implementar o algoritmo: • Deseja-se a maior simplicidade possível (em geral, um pouco de complexidade é necessária para a obtenção de bons resultados) • O algoritmo escrito deve ser reprodutível • Dificuldade: parâmetros • Soluções: robustez dos parâmetros (fixar parâmetros) • Parâmetros auto-ajustáveis
Flexibilidade • Muito provavelmente o problema prático será outro. • Grande idéia: penalidades
Variações • frota de veículos heterogênea (capacidade, velocidade...) • impossibilidade de certos veículos visitarem alguns clientes • possibilidade de entregas fracionadas • multiplos depósitos
depósito entrega abastecimento Variações • entrega e reabastecimento (VRP with pickup and deliveries and backhauls )
depósito entrega coleta entrega e coleta carga Q tempo Variações • entrega e coleta (VRP with pickup and deliveries)
depósito depósito intermediário entrega coleta entrega e coleta Variações • entrega e coleta com transferência (VRP with pickup and deliveries and transfers)
Variações • janelas de tempo (time-windows) [9h-12h] [8h-10h] [8h-10h] [14h-18h]
garagem origem destino Variações • dial-a-ride 1 [10h] 3 3 [12h] 1 [11h] 2 2 • possivelmente dinâmico (real-time planning) • hora de chegada importante (consulta médica ? )
dial-a-ride • G. Berbeglia, J.-F. Cordeau, I. Gribkovskaia, G. Laporte (2007). Static pickup and delivery problems: A classification scheme and survey. TOP 15, 1–31. (~150 referências para o problema estático) • J. Paquette, J.-F. Cordeau, G. Laporte, Quality of Service in Dial-a-ride Operations, Computers & Industrial Engineering.
Problemas integrados • Gerenciamento integrado • Exemplos: • controle de estoques + roteamento • roteamento + empacotamento • ...
Formulação Matemática retirado de: G. Laporte, The vehicle routing problem: an overview of exact and approximate algorithms, European Journal of Operational Research, 59, 345-358, 1992
Métodos exatos • Problema muito difícil! • "One of the most successful exact approaches for the CVRP is the K-tree method of [Fisher 1994] that succeeded in solving a problem with 71 customers. However, there are smaller instances that have not been exactly solved yet." Problemas práticos:
Heurísticas clássicas • Clarke and Wright (1964) • Sweep algorithm (Gillet and Miller, 1974) • Fisher and Jakumar (1981) • 1-petal (Foster and Ryan, 1976)
1 £ £ j i Clarke and Wright (savings heuristics) Clarke G and Wright JR (1964). Scheduling of vehicles from a central depot to a number of delivery points. Operations Research 12: 568–581. • Uma das mais usadas na prática (muito simples e rápida) • Idéia: • Iniciar com n rotas (uma para cada cliente) • tentar juntar rotas com a idéia de "savings" • sij = ci1 + c1j - cij
Clarke and Wright (savings heuristics) Versão paralela: escolher o melhor ganho e unir as rotas envolvidas. Versão sequencial: escolher uma rota e analisar as fusões possíveis. Efetuar a melhor fusão e continuar com a mesma rota enquanto houver fusões possíveis.
Clarke and Wright (algoritmo) retirado de: G Laporte, F Semet, Classical heuristics for the capacitated vehicle routing problem, in: The vehicle routing problem, P. Toth, D. Vigo (eds).
Sweep algorithm Gillett BE and Miller LR (1974). A heuristic algorithm for the vehicle dispatch problem. Operations Research 22: 340–349. Rotas são criadas através de uma varredura: clientes são gradualmente inseridos (respeitando-se a ordem em que eles são encontrados na varredura) enquanto a rota for factível. Depois, inicia-se uma outra rota.
Sweep algorithm retirado de: G Laporte, F Semet, Classical heuristics for the capacitated vehicle routing problem, in: The vehicle routing problem, P. Toth, D. Vigo (eds).
Fisher and Jakumar Fisher ML and Jaikumar R (1981). A generalized assignment heuristic for vehicle routing. Networks 11: 109–124. • Similar ao algoritmo de varredura, mas com distribuição das tarefas feita com ajuda de um problema de designação generalizado
Fisher and Jakumar GAP: alocar cada tarefa (cliente) a um trabalhador (rota) de maneira a minimizar uma função de custo (distâncias) e respeitar restrições adicionais (capacidade).
Fisher and Jakumar (dificuldades) • Escolha das sementes • Bramel and Simchi-Levi: escolha das sementes através de um algoritmo de localização capacitado. • Resolução do GAP • Em geral, relaxação lagrangiana.
1-petal Foster BA and Ryan DM (1976). An integer programming approach to the vehicle scheduling problem. Operational Research Quaterly 27: 307–384 Extensão do sweep algorithm onde várias rotas são geradas e depois escolhem-se as melhores (através de um problema de particionamento de conjuntos).
1-petal (set partioning problem retirado de: G Laporte, F Semet, Classical heuristics for the capacitated vehicle routing problem, in: The vehicle routing problem, P. Toth, D. Vigo (eds).
1-petal rotas Pétalas ? depósito
Meta-heurísticas • simulated annealing • genetic search • ant systems • neural networks • tabu search
Taburoute Gendreau M, Hertz A and Laporte G (1994). A tabu search heuristic for the vehicle routing problem. Mngt Sci 40: 1276–1290. • Procedimento de reinserção generalizado (GENI) • Penalidades auto-ajustáveis (flexibilidade)
Granular tabu search P. Toth, D. Vigo, The granular tabu search and its application to the vehicle-routing problem, INFORMS Journal on Computing, 15, 333-346, 2003. remove todos os arcos com custo ultrapassando um certo valor.