• Nenhum resultado encontrado

DANILO FIUSA LORENZI UMA ABORDAGEM HÍBRIDA BASEADA EM REGRAS DE DESPACHO E BUSCA TABU PARA O PROBLEMA DE ROTEAMENTO DE VEÍCULOS COM COLETAS E ENTREGAS

N/A
N/A
Protected

Academic year: 2021

Share "DANILO FIUSA LORENZI UMA ABORDAGEM HÍBRIDA BASEADA EM REGRAS DE DESPACHO E BUSCA TABU PARA O PROBLEMA DE ROTEAMENTO DE VEÍCULOS COM COLETAS E ENTREGAS"

Copied!
77
0
0

Texto

(1)

DANILO FIUSA LORENZI

UMA ABORDAGEM HÍBRIDA BASEADA EM REGRAS DE

DESPACHO E BUSCA TABU PARA O PROBLEMA DE

ROTEAMENTO DE VEÍCULOS COM COLETAS E ENTREGAS

Dissertação apresentada como requisito parcial para a obtenção do grau de Mestre em Engenharia de Produção, Programa de Pós-Graduação em Engenharia de Produção e Sistemas, Pontifícia Universidade Católica do Paraná.

Orientador:

Prof. Marco Antônio Barbosa Candido, Dr.

CURITIBA 2003

(2)
(3)

Agradecimentos

Ao meu orientador, Professor Antônio Barbosa Cândido, por esta oportunidade. À PUC-PR, pelo apoio indispensável à realização deste trabalho.

À minha mãe, Sylvia, pela minha educação.

À minha esposa, Tatiane, por seu apoio e companheirismo. A meus irmãos, Fabiana e Pedro, pelos estímulos e motivações.

Ao meu primo, Guilherme Lorenzi, por seu interesse em minha formação. Ao meu amigo, Eduardo Maranhão, por seu apoio e pelas férteis discussões. Aos professores Raimundo Sampaio e Ricardo Pacheco e Alfredo Iarozinski Neto, pelos ensinamentos.

A todos os professores e funcionários do Programa de Pós-Graduação em Engenharia de Produção e Sistemas da PUC-PR.

(4)

Resumo

O problema de roteamento de veículos é de extrema importância na área de logística de distribuição tanto em escala global (navios e aeronaves) quanto em problemas de abrangência urbana (entregas rápidas, serviços de táxi, emergências médicas). Seus resultados podem ainda trazer contribuições para alguns problemas comuns referentes a sistemas produtivos (há uma forte relação entre problemas de roteamento e problemas de scheduling, por exemplo).

Este trabalho procura obter um algoritmo que busque uma solução factível e de qualidade para o problema de roteamento dinâmica baseado em serviços de entregas rápidas. O algoritmo foi desenvolvido em duas fases: uma fase de inclusão e outra de aprimoramento. A fase de inclusão foi baseada em uma regra de despacho usando uma nova estrutura de mapeamento de rotas apresentada neste trabalho e a fase de aprimoramento foi desenvolvida sobre heurística de busca tabu. O custo da solução foi baseado em tempos de atendimento, fator de importância inquestionável para uma empresa de entregas rápidas. Os resultado mostraram que a estratégia de mapeamento de rota da fase de inclusão é capaz de lidar com problemas de grande demanda de pedidos proporcionando soluções com tempos de atendimento aceitáveis e a fase de aprimoramento com busca tabu conseguiu, em várias ocasiões, melhorar a solução obtida na fase de inclusão. Foi adotado como horizonte de planejamento um dia útil de nove horas e meia incluindo um intervalo de uma hora e meia que pode ser considerado uma parada de almoço para o motociclista ou, genericamente, um tempo de indisponibilidade do servidor (um tempo de setup, por exemplo, em se tratando de um sistema produtivo).

Palavras-Chave: Roteamento dinâmico de veículos, regras de despacho, busca tabu, serviços de coletas e entregas, heurística.

(5)

Abstract

The vehicle routing problem has an outstanding importance in the distribution logistics area both at a global level (ships and aircrafts) and in problems having an urban scope (rapid deliveries, taxi services, medical emergencies). Its results may give contributions to some common problems concerning manufacturing systems (there is a strong relationship between routing problems and scheduling problems, for instance).

This work intends to obtain an algorithm able to find a feasible solution with quality for the dynamic routing problem based on rapid delivery services. The algorithm was developed with two phases of insertion and improvement, respectively. The insertion phase was based on a dispatching rule using a route mapping structure presented in this work, and the improvement phase was developed by applying tabu search heuristics. The cost of the solution is based on attendance times, a factor of irrefutable relevance for a company offering rapid deliveries. The results showed the route mapping strategy in the insertion phase is able to deal with problems having a large amount of requests, offering solutions with acceptable attendance times; the improvement phase based on tabu search managed to enhance, in several cases, the solution obtained in the insertion phase. A nine-hour-and-a-half working day was adopted as a planning horizon, including an hour-and-a-half interval which might be considered as a lunch break for the motorcyclist or, in general terms, a time in which the server is unavailable (a setup time, for instance, when dealing with a manufacturing system).

Keywords: Dynamic vehicle routing problem, dispatching rules, tabu search, pickup and deliveries service, heuristics.

(6)

Sumário 1 Introdução 15 1.1 Motivação 15 1.2 O Problema Abordado 16 1.3 Objetivo do Trabalho 16 1.4 A Abordagem Adotada 17 1.5 Organização Do Trabalho 17

2 O Problema de Roteamento de Veículos e Suas Variações 19

2.1 Aplicações Mais Conhecidas Para o VRP 19 2.2 Alguns Trabalhos em Roteamento de Veículos 20 2.3 Classificação dos Problemas Estocásticos e Dinâmicos 24 2.3.1 A Priori 24 2.3.2 Otimização Real-Time 25 2.4 Características Dos Problemas Dinâmicos de Roteamento 29 2.4.1 As Restrições 29 2.4.2 As Funções Objetivo 30 2.4.3 O Grau de Dinamismo 30

3 Métodos para Resolver o VRP e Suas Variações 32

3.1 Geração de Colunas 32 3.2 Busca Local 33 3.3 Cluster First-Route Second 34 3.4 Route First-Cluster Second 34 3.5 Busca Tabu 34 3.6 Simulated Annealing 34 3.7 Algoritmos Genéticos 35 3.8 Colônia de Formigas 35 3.9 Estratégias de Inclusão – Problemas Dinâmicos 36 3.10 Estratégias de Aprimoramento – Problemas Dinâmicos 37

(7)

4.1 A Restrição de Janela de Tempo 39 4.2 A Restrição de Capacidade 39 4.3 A Garagem Central 40 4.4 O Horário de Atendimento e a Pausa para Almoço 40 4.5 Tempo de Atendimento 40 4.6 Distâncias 40 4.7 Os Requisitos de Tecnologia 40 4.8 Modelagem 41 4.9 A Função Objetivo 42 5 A Abordagem 44 5.1 A Inicialização 44 5.2 A Estratégia de Inclusão 44 5.3 A Fase de Inclusão 44 5.3.1 A Estrutura de Mapeamento de Rotas 45 5.3.2 Limite de Visitas Entre uma Coleta e a Sua Entrega Correspondente 50 5.4 A Fase de Aprimoramento 51 5.4.1 Diferenças na Estrutura de Rede 52 5.5 A Busca Tabu 57 5.6 Fluxogramas 59 5.6.1 O Algoritmo Principal 59 5.6.2 A Fase de Aprimoramento 60 5.6.3 A Fase de Inclusão 61

6 Implementação Computacional e Obtenção dos Resultados 62

6.1 Cenário 62 6.1.1 A Distribuição Temporal 62 6.1.2 A Distribuição Espacial 62 6.1.3 A Prioridade do Pedido 63 6.2 Testes Computacionais 63 6.3 Obtenção dos Resultados 64

(8)

6.5 As Alterações da Fase de Aprimoramento 68

7 Conclusões e Sugestões para Trabalhos Futuros 71

7.1 Fase de Inclusão – A Viabilidade do Algoritmo 71 7.2 A Evolução dos Tempos de Atendimento. 71 7.3 Fase de Aprimoramento 72 7.4 Sugestões para Desenvolvimentos Futuros 74

(9)

Lista de tabelas

Tabela 1 - Principais Aplicações dos Problemas Baseados Em VRP 19 Tabela 2 - Resumo dos Problemas Estocásticos e Dinâmicos de Roteamento 28 Tabela 3 - Heurísticas para VRP 36 Tabela 4 - Tabela de Setores 47 Tabela 5 - Busca nos Setores Próximos 47 Tabela 6 - Lista de Tentativas para um Determinado Ponto 48 Tabela 7 - Parâmetros para as Experiências 64

(10)

Lista de figuras

Figura 1 - Os Problemas de Otimização Dinâmicos 23 Figura 2 - Classificação de Problemas quanto a seus Objetivos e Grau de Dinamismo 31 Figura 3 - O Mapeamento de Rotas 46 Figura 4a - Tentativa de Inclusão de Pedido 49 Figura 4b - Tentativa de Inclusão de Pedido 49 Figura 4c - Tentativa de Inclusão de Pedido 49 Figura 4d - Tentativa de Inclusão de Pedido 50 Figura 5 - O Modelo de Fluxo em Redes para a Fase de Aprimoramento 51 Figura 6 - Arcos de Inclusão e Exclusão que não são Mais Válidos 53 Figura 7 - Atualização de Arcos de Inclusão por Alteração nos Roteiros Indicados 55 Figura 8 - Atualização dos Arcos Usados a Cada Nova Alteração Proposta pela Fase de Aprimoramento 57 Figura 9 - Algoritmo Principal 59 Figura 10 - Algoritmo da Fase de Aprimoramento. 60 Figura 11 - Algoritmo da Fase de Inclusão 61

(11)

Lista de gráficos

Gráfico 1 - Média dos Tempos de Atendimento 65 Gráfico 2 - Distribuição dos Tempos de Atendimento para R1 65 Gráfico 3 - Distribuição dos Tempos de Atendimento para R2 66 Gráfico 4 - Distribuição dos Tempos de Atendimento para R3 66 Gráfico 5 - Distribuição dos Tempos de Atendimento para R4 67 Gráfico 6 - Distribuição dos Tempos de Atendimento para R5 67 Gráfico 7 - Número de Pedidos Não Atendidos 68 Gráfico 8 - Distribuição dos Tempo de Atendimento com e sem Aprimoramento – Prioridade 1 68 Gráfico 9 - Distribuição dos Tempo de Atendimento com e sem Aprimoramento – Prioridade 2 69 Gráfico 10 - Distribuição dos Tempo de Atendimento com e sem Aprimoramento – Prioridade 3 69 Gráfico 11 - Comparação da Evolução dos Custos das Soluções 70 Gráfico 12 - Concentração de Pedidos com o Aprimoramento – Prioridade 1 73 Gráfico 13 - Concentração de Pedidos com o Aprimoramento – Prioridade 2 74

(12)

Lista de Siglas

1-PDP One vehicle – Pickup and Delivery Problem

1-PDPTW One vehicle – Pickup and Delivery Problem with Time Windows

DARP Dial-a-Ride Problem

DDARP Dynamic Dial a Ride Problem

DPDP Dynamic Pickup and Delivery Problem

DRIVE Dynamic Routing of Independent Vehicles

DSVRP Dynamic Stochastic Vehicle Routing Problem

DTRP Dynamic Travel Repairman Problem

DTSP Dynamic Traveling Salesman Problem

DVRP Dynamic Vehicle Routing Problem

DVRPPD Problema de Roteamento Dinâmica de Veículos com Coletas e Entregas

DVRPTW Dynamic Vehicle Routing Problem with Time Windows

DVRPTWP&D Dynamic Vehicle Routing Problem with Time Windows, Pickup

and Delivery

GIS Graphical Information System

GPDP Generic Pickup and Delivery Problem

m-PDP Multi-vehicle - Pickup and Delivery Problem

m-PDPTW Multi-vehicle - Pickup and Delivery Problem with Time Windows

m-TSPST Multiple Vehicle Traveling Salesman Problem – Stochastic Time

PDP Pick-up and Delivery Problem

PTSP Probabilistic Traveling Salesman Problem

PVRP Probabilistic Vehicle Routing Problem

SVRP Stochastic Vehicle Routing Problem

SVRP Stochastic Vehicle Routing Problem

TSPSC Traveling Salesman Problem – Stochastic Client

TSPST Traveling Salesman Problem – Stochastic Time VRP Vehicle Routing Problem

VRPSC Vehicle Routing Problem – Stochastic Client VRPSD Vehicle Routing Problem – Stochastic Demands

(13)

1 INTRODUÇÃO

O Problema de Roteamento Dinâmica de Veículos com Coletas e Entregas (DVRPPD) é uma generalização do Problema de Roteamento de Veículos (VRP), um problema muito estudado devido, principalmente, à sua intensa aplicabilidade. Sua forma original trata de uma frota de veículos idênticos que deve atender a uma demanda de pedidos previamente conhecida de maneira a minimizar a distância percorrida, o número de veículos usados, o tempo total de atendimento ou algum outro objetivo. Embora a maior parte dos trabalhos focalize os casos estáticos, ultimamente o número de publicações abordando o problema em sua forma dinâmica, isto é, onde as informações tanto sobre demanda quanto condições de tráfego, quebras, atrasos, entre outros fatores que não são conhecidas a priori, vêm se tornando cada vez maior.

1.1 MOTIVAÇÃO

Atualmente há uma tendência em se dedicar esforços afim de melhorar o desempenho de sistemas logísticos. Isto se tornou necessário com a crescente valorização dos serviços adquiridos em conjunto com a aquisição de um bem. Se antes o diferencial entre produtos concorrentes estavam relacionados a qualidade e preço, hoje estes fatores deixam de ser diferenciais para se tornarem pré-requisitos. Os níveis de qualidade de produtos concorrentes são cada vez mais próximos. Em muitos casos, não é possível distinguir dois produtos de marcas diferentes se a embalagem destes produtos for removida. A diferença de preço entre os produtos concorrentes também diminui até como conseqüência da equiparação de qualidade. As empresas estão lidando com margens de lucros cada vez menores havendo pouco espaço para se poder oferecer uma vantagem atrativa em termos de preço.

Com essa impossibilidade de se usar qualidade e preço como atrativos aos seus produtos, a alternativa que mais vem apresentando resultados é a ampliação e melhor qualificação do pacote de serviços que agora acompanham muitos

(14)

produtos. Nesta conjuntura, a qualidade dos serviços de entrega surge como um grande diferencial.

O comércio eletrônico é um dos grandes exemplos da importância de um serviço de entrega rápido e confiável. Se o grande atrativo do comércio eletrônico é a possibilidade de comprar sem sair de casa, o seu grande problema é a demora de alguns dias para que o produto chegue às mãos do cliente e, pior do que isto, a falta de um agendamento que permita ao cliente saber o dia e a hora da chegada de seu pedido para que ele não seja obrigado a ficar “preso” em sua casa aguardando sua encomenda. É certo que esta demora e esta falta de agendamento desmotiva o uso do comércio eletrônico e, por isto, é visível que ao atentarem para isto, algumas empresas comecem a reunir esforços e investimentos na tentativa de minimizar este problema. Algoritmos “inteligentes” de roteamento podem então se tornar de grande ajuda na busca por esta melhora de qualidade nos serviços de entrega.

Sabe-se que uma cadeia logística só pode funcionar adequadamente se todos os elos dessa cadeia estiverem bem sincronizados. Entre estes elos, antes da entrega do produto final, estão todas as movimentações de partes, matérias-primas, documentos como notas ficais, termos de garantia, etc. A cadeia logística então se divide em módulos menos dinâmicos (entregas internacionais e interurbanas) e mais dinâmicos (entregas rápidas intra-urbana). É o funcionamento de todos estes módulos que garante um serviço eficaz.

1.2 O PROBLEMA ABORDADO

O problema abordado é motivado por um caso real de roteamento de uma empresa de moto-boys. A empresa em questão conta com mais de 19000 clientes cadastrados que utilizam diversos tipos serviços de distribuição de objetos. Dentre estes serviços, a chamada entrega ponto-a-ponto é que recebe o foco desta dissertação. Este problema se caracteriza pelo grande número de veículos (~100) e de pedidos(~1000/dia) e pelo pouco tempo disponível para a obtenção de uma rota (~1min).

1.3 OBJETIVO DO TRABALHO

(15)

de despacho e busca tabu para um problema de roteamento específico e realista buscando soluções viáveis, de boa qualidade, em tempo computacional viável dentro de um cenário próximo da realidade .

1.4 A ABORDAGEM ADOTADA

O método proposto para lidar com o problema abordado neste trabalho é baseado em duas fases: a inclusão de novos pedidos (fase de inclusão) e o aprimoramento da solução corrente (fase de aprimoramento). Na fase de inclusão, é utilizada uma regra de despacho que procura minimizar o tempo de atendimento dos pedidos já conhecidos. Esta fase conta com um mecanismo aqui apresentado como mapeamento de rota, que consiste na verificação das rotas que passam perto dos locais de atendimento do novo pedido. Na fase de aprimoramento, uma busca tabu é realizada sobre uma estrutura de vizinhança determinada por movimentações possíveis de pedidos entre roteiros diferentes, sendo que estas movimentações possíveis são geradas durante a fase de inclusão pelo próprio mapeamento de rota.

1.5 ORGANIZAÇÃO DO TRABALHO

Esta dissertação está organizada da seguinte maneira: no capítulo 2, expõem-se primeiramente algumas aplicações dos problemas de roteamento de veículos. A seguir, apresentam-se alguns dos artigos mais importantes da literatura relacionada ao problema de roteamento. Algumas classificações e abordagens sugeridas por alguns autores são encontradas também neste capítulo. Finalmente, características como grau de dinamismo, restrições, funções-objetivo são comentadas.

Os métodos mais utilizados para as diversas abordagens do problema de roteamento são apresentados no capítulo 3. Algumas referências de onde se utilizou cada método apresentado são fornecidas.

O capítulo 4 expõe detalhadamente o problema a ser abordado nesta dissertação. Uma modelagem matemática equivalente ao problema proposto é encontrada finalizando esta descrição.

O capítulo 5 apresenta o algoritmo proposto com novas idéias que tornem viável a abordagem para o tamanho do problema proposto. Destaca-se nesta seção

(16)

a apresentação do esquema de mapeamento de rotas criado com a finalidade de diminuir o tamanho da busca por pontos de inclusão de pedidos. Além disso, a estrutura de vizinhança baseada no problema de fluxo de custo mínimo em redes e usada pela busca tabu na fase de aprimoramento é explicada.

Os detalhes do cenário utilizado para testar o algoritmo e os ajustes finos utilizados na simulação são apresentados no capítulo 6.

O capítulo 7 relata os resultados computacionais encontrados para o cenário testado. Procura-se explorar tanto a solução como o próprio desempenho do algoritmo em gráficos que apresentem o tamanho do problema em cada instante da simulação. Este capítulo segue com as conclusões finais do trabalho e com uma discussão sobre sugestões para desenvolvimentos futuros.

No Anexo 1, explica-se a estrutura de matrizes utilizadas no Matlab para executar a simulação.

(17)

2 O PROBLEMA DE ROTEAMENTO DE VEÍCULOS E

SUAS VARIAÇÕES

O número de artigos publicados abordando os problema de roteamento dinâmica de veículos vem crescendo nos últimos 15 anos. Esses artigos abordam uma vasta coleção de aplicações e metodologias.

2.1 APLICAÇÕES MAIS CONHECIDAS PARA O VRP

O problema de roteamento de veículos tem fundamental importância em aplicações logísticas, de transporte e distribuição de recursos. Em todas as suas formas, o VRP está presente em muitos aspectos da vida diária de pessoas e organizações. A tabela 1 apresenta as aplicações práticas mais conhecidas do problema e faz referência a alguns trabalhos realizados para cada aplicação.

Distribuição de jornais Marcos C. Goldbarg e Henrique P. Luna apod. Golden e Magnanti e Dillmann et al.

Distribuição de

manufaturados Marcos C. Goldbarg e Henrique P. Luna apod. Perl e Daskin Transporte escolar Marcos C. Goldbarg e Henrique P. Luna apod. Newton e

Thomas

Coleta de lixo Marcos C. Goldbarg e Henrique P. Luna apod. Beltrami e Bodin, Kulkar

Entrega de correspondência Marcos C. Goldbarg e Henrique P. Luna apod. Frederickson Roteamento de helicópteros Marcos C. Goldbarg e Henrique P. Luna apod. Timlin e

Pulleyblank Roteamento em linhas

aéreas Marcos C. Goldbarg e Henrique P. Luna apod. Marsten e Shepardson,Mardsten et al., Yang e Tu Transporte coletivo urbano Marcos C. Goldbarg e Henrique P. Luna] apod. Ceder e Stern Serviços de emergência Marcos C. Goldbarg e Henrique P. Luna apod. Daskin Distribuição de gás Marcos C. Goldbarg e Henrique P. Luna apod. Bell et al. Roteamento em células

flexíveis de manufaturas Marcos C. Goldbarg e Henrique P. Luna apod. Finke e Kusiak Patrulhamento Policial Marcos C. Goldbarg e Henrique P. Luna apod. Larson Roteamento de Navios Marcos C. Goldbarg e Henrique P. Luna apod. Brown et al. Distrib. de vagões

ferroviários Marcos C. Goldbarg e Henrique P. Luna apod. Haghani TABELA 1: PRINCIPAIS APLICAÇÕES DOS PROBLEMAS BASEADOS EM VRP

Todas estas aplicações, além de muitas que não foram citadas aqui, tornam estes problemas de grande interesse para a pesquisa operacional desde os anos 50. Sua versão estática, onde todos os dados do problema são conhecidos a priori foi, e continua sendo, amplamente estudada por muitos autores. Entretanto, com os

(18)

avanços obtidos em telecomunicação, sistemas de localização e ainda com a necessidade do crescimento de sistemas logísticos just-in-time, a versão dinâmica desse problema recebeu a atenção de diversos pesquisadores na última década.

2.2 ALGUNS TRABALHOS EM ROTEAMENTO DE VEÍCULOS

A seguir, apresentam-se alguns artigos de referência em VRP.

Psaraftis, em 1988 , publicou o primeiro estudo da versão dinâmica do VRP apontando propostas de estudos posteriores. Inicialmente, Psaraftis discutiu as diferenças entre problemas estáticos e dinâmicos. As principais características que diferem problemas estáticos de problemas dinâmicos são reproduzidas abaixo:

1. A dimensão temporal é essencial;

2. Problemas podem ser abertos quanto ao horizonte de planejamento; 3. Informações futuras podem não ser conhecidas ou serem imprecisas; 4. Eventos mais próximos são mais importantes;

5. Mecanismos de atualização de informações são essenciais;

6. Atualizações de seqüenciamento e de designações devem ser possibilitadas;

7. Maiores capacidades de computação são necessárias;

8. Mecanismos de tratamento para deferimento indefinidos são essenciais;

9. Funções objetivo podem ser diferentes; 10. Restrições de tempo podem ser diferentes;

11. Flexibilidade para variar o tamanho da frota é menor; 12. Considerações sobre teoria de filas podem ser importantes.

Colocadas as características, o autor apresenta adaptações possíveis de abordagens estáticas a problemas dinâmicos detalhando o algoritmo MORSS (MIT

Ocean Routing and Scheduling), desenvolvido pelo próprio autor em parceria com outros pesquisadores, em 1985, para o MSC (Military Sealift Command).

Psaraftis, em 1995, apresenta um survey com as atualizações sobre o tema até então já levando em consideração os avanços obtidos em tecnologia de informação, comunicações e sistemas de informação geográfica (GIS). É

(19)

interessante ressaltar que ao listar novamente as características já colocadas no artigo de 1988 citado anteriormente, há uma ênfase no item 9 – sobre funções objetivo – em que se coloca a necessidade de se considerar demandas futuras se alguma informação probabilística estiver disponível explicitando tal informação na função objetivo. Apresentam este aspecto as abordagens estocásticas do problema de roteamento de veículos. O autor ainda avalia os trabalhos de Bertsimas e Van Ryzin, 1991 e 1993, sobre o DTRP e testa cada uma das 12 características mencionadas em 1988 para estas abordagens.

Savelsberg e Sol, em 1995, apresentaram o problema geral de coletas e entregas (GPDP) de uma forma diferente do problema abordado aqui no sentido de que todas as coletas eram realizadas antes de qualquer entrega. O problema foi formulado matematicamente usando teoria de conjuntos. Aplicando-se restrições simples à formulação feita pelos autores, o problema foi reduzido a outras três classes já conhecidas e que foram então encaradas como casos especiais do GPDP: “Pick Up and Delivery Problem” (PDP ), onde para cada veículo são designadas somente uma coleta e uma entrega. “Dial-a-ride Problem” (DARP), um PDP onde as cargas transportadas são unitárias (pessoas) e o próprio “Vehicle

Routing Problem” (VRP) que pode ser encarado como um GPDP onde todas as coletas se encontram no depósito. Esses problemas foram posteriormente divididos em subclasses como 1-PDP, 1-PDPTW, m-PDP, m-PDPTW além das versões dinâmicas de cada uma dessas subclasses.

Powell, Jaillet e Odoni, em 1995, apresentaram um trabalho onde diversos problemas em roteamento dinâmica e estocástica foram abordados. Neste trabalho, os autores discutem a obtenção de uma boa solução para o problema dinâmico e argumentam que o valor de uma função objetivo que mede a qualidade de uma solução para o caso estático pode não servir como parâmetro de qualidade para o caso dinâmico.

Bertsimas e Simchi-Levi, em 1996, forneceram um estudo de problemas estáticos, dinâmicos e estocásticos. Bertsimas foi um dos autores que mais desenvolveram analiticamente os problemas de roteamento. Este trabalho forneceu resultados interessantes para medidas de performance de heurísticas como tour partitioning para VRP capacitados com demandas uniformes, heurísticas para VRP com demandas heterogêneas baseadas em cluster first-route

(20)

Simchi-Levi, 1999 apod. Bramel e Schimi-Levi). Para a abordagem estocástica (demanda estocástica) do VRP (SVRP), estratégias a priori foram comparadas analiticamente (baseado em valores de casos piores e médios) com uma estratégia de re-otimização. O resultado conclui que a performance das estratégias a priori é comparável à performance da re-otimização principalmente para casos de pouca disponibilidade de processamento.

Allan Larsey, em 2000, fez uma extensa pesquisa bibliográfica sobre problemas de roteamento dinâmica em sua tese de Ph.D.

Kilby et al., em 1998, descreveram um estudo em cenários com apenas entregas ou apenas coletas. Enquanto no problema estático estes cenários são equivalentes para qualquer abordagem, no problema dinâmico o cenário com apenas entregas acrescenta uma dificuldade a mais visto que não se pode acrescentar um pedido de entrega a um veículo que já tenha saído do depósito. Neste trabalho, foi adotada uma unidade de tempo, “ time-step”. A cada time-step, o algoritmo inclui novos pedidos ao roteiro. No intervalo entre cada time-step um algoritmo de aprimoramento baseado em busca local é executado. Os autores discutem neste trabalho que o uso de meta-heurísticas pode ser inapropriado para um sistema dinâmico com o argumento de que diante de uma necessidade imediata de realizar um despacho, uma meta-heurística pode ser travada em uma solução pior já que estes métodos permitem que uma busca passe para soluções piores na tentativa de se livrar de um mínimo local. Os autores não comentam, no entanto a possibilidade de fazer a meta-heurística retornar sempre a melhor solução encontrada ao invés da solução atual, mesmo diante da solicitação imediata.

Deise Costa, em 1997, fornece as formulações básicas de vários problemas clássicos de roteamento, assim como as técnicas mais conhecidas para solucioná-los. Um algoritmo resultante de um apanhado destas técnicas é sugerido pela autora para resolver o problema de correspondências. O procedimento resultante é aplicado como exemplo na cidade de Curitiba.

Bianchi, 2000, publicou ao final deste ano, um survey em problemas de roteamento dinâmico. Neste trabalho, um gráfico dos problemas dinâmicos é apresentado contextualizando o caso particular do problema de roteamento. Este gráfico é apresentado na figura 1.

(21)

FIGURA 1: OS PROBLEMAS DE OTIMIZAÇÃO DINÂMICOS

Além disso, algumas metodologias utilizadas para as diversas abordagens do problema de roteamento dinâmica (DSVRP, DTRP, DVRPTW, DVRPTWP&D, DRIVE, DTSP e DVRP) são tabeladas.

Bianchi evidencia claramente que para os problemas de roteamento dinâmica há trabalhos que abordam estratégias (quando incluir novos pedidos além de como gerenciar veículos ociosos) e trabalhos que abordam heurísticas (como incluir novos pedidos e como aprimorar uma solução). Ao final, Bianchi sugere extensões para novos trabalhos.

Ichoua, Gendreau e Potvin, em 2000, abordaram regras de despacho para roteamento em tempo real que permitem, inclusive, a alteração de destinos imediatos, ou seja, um roteiro pode ter um determinado trecho alterado para que se atenda uma nova chamada próxima à posição atual do veículo mesmo que este

Caminho mais curto Problemas de Transporte Gerenciamento de frota Roteamento de veículos Gerenciamento de tráfego aéreo Alocação de recursos Problemas de scheduling Problemas de fluxo em redes ...

(22)

trecho já esteja sendo percorrido.

2.3 CLASSIFICAÇÃO DOS PROBLEMAS ESTOCÁSTICOS E DINÂMICOS

Segundo Allan Larsen, 2000, pode-se classificar as abordagens apresentadas em problemas estocásticos e dinâmicos de acordo com as estratégias básicas de otimização utilizadas e pela maneira em que as incertezas se apresentam no problema.

2.3.1 A priori

Na estratégia a priori, uma solução inicial é obtida baseando-se numa informação probabilística de eventos futuros (demanda de cliente, tempo de rota, etc).

Segundo Bertsimas e Simchi-Levi, 1996, para problemas com demandas randômicas pode-se gerar excessivo consumo de tempo e recursos ao se aplicar estratégias baseadas em re-otimização. Além disso, muitas alterações de roteiros levam a uma diminuição do nível de controle da frota. Estes fatores justificam a investigação dos métodos baseados em soluções a priori.

Os problemas de roteamento estocásticos (SVRP) e probabilísticos (PVRP e PTSP) explicados a seguir são exemplos de boas aplicações do método a priori:

TSP Probabilístico (PTSP) – uma abordagem TSP onde cada demanda tem a ela associada uma probabilidade de existir de fato. As demandas que se confirmam são conhecidas na hora em que se começa a execução da rota. A partir daí, os pedidos que não se confirmam são pulados e a seqüência determinada a

priori continua sendo seguida. Este problema pode ser aplicado em serviços de entrega que contam com uma base fixa de clientes que podem ou não ter uma demanda associada a cada dia. Uma boa solução deve ajudar a determinar rotas que, além de terem um custo baixo, sejam pouco influenciadas pela existência ou não do pedido;

VRP Probabilístico (PVRP) – Um problema semelhante ao VRP, mas com demandas probabilísticas. Bertsimas, Jaillet e Odini, em 1990, propuseram duas estratégias para o PVRP. A primeira, indicada para problemas onde as demandas

(23)

são conhecidas apenas na chegada dos veículos a cada cliente, obriga os veículos a visitarem todos os clientes, mas servindo apenas àqueles em que a demanda se confirmar. Quando a capacidade do veículo se esgota, este retorna ao depósito e se inicia uma segunda rota. Na segunda estratégia, onde as demandas são conhecidas antes do inicio da execução da rota, os clientes que não têm seus pedidos confirmados não são visitados e a seqüência pré-determinada da rota continua sendo executada;

VRP Estocástico (SVRP) – Gendreau, Laporte e Séguin, em 1996, relacionaram os problemas de roteamento estocásticos. Nestes problemas, há incertezas quanto aos tempos de percurso, demandas e existência de clientes. Pode-se dividir esta abordagem em:

TSPSC - é um TSP estocástico onde cada cliente tem a ele relacionada uma probabilidade de existir de fato (Stochastic Client). A existência da demanda é esclarecida ao iniciar a rota. Este problema equivale a um PTSP;

TSPST – É um TSP com tempos de percurso estocásticos (Stochastic Times). Geralmente o objetivo deste problema é maximizar a probabilidade de se completar o roteiro antes de um tempo pré-determinado;

m-TSPST – Uma versão do TSPST com vários veículos;

VRPSD – VRP com demandas estocásticas (o mais estudado entre os

SVRPs);

VRPSC – VRP com clientes estocásticos e demanda unitária. Este problema se assemelha ao PVRP;

VRPSCD – demandas e clientes estocásticos.

2.3.2 Otimização Real-Time

Estes métodos constroem rotas durante sua execução. O TSP dinâmico (DTSP) é o mais simples desses problemas. Apresentado por Psarafits em 1988, o problema consiste em um grafo completo com n nós em que a demanda é gerada independentemente em cada nó visitado pelo servidor e só é conhecida no instante da visita.

Bertsimas e Van Ryzin, em 1991, propuseram o Dynamic Traveling

Repairman Problem (DTRP). Com uma abordagem matemática concisa, o problema foi definido da seguinte maneira: um veículo (repairman) viaja a uma

(24)

velocidade constante e unitária em uma região delimitada quadrada de área A. Todas as demandas são dinâmicas e chegam de acordo com uma distribuição de Poisson com parâmetro de intensidade λ. As localizações de demanda são

uniformemente distribuídas. Cada demanda i requer uma quantidade de serviço com duração si. O objetivo é minimizar o tempo total de serviço. Foram abordadas as seguintes estratégias para este problema:

FCFS – first come, first served (os pedidos são atendidos pela ordem de chegada);

SQM - Stochastic Queue Median (o recurso retorna à mediana da região de atendimento cada vez que termina um serviço);

NN – Nearest Neighbour;

TSP – a cada número pré-determinado de clientes, um TSP é resolvido para determinar a ordem de execução. Se mais de um conjunto estiver aguardando, a ordem de execução de cada conjunto segue FCFS;

SFC – Space Filling Curve (os pedidos são atendidos enquanto o recurso viaja em torno do centro da região no sentido horário e os encontra);

PART – partition policy (a região servida é subdividida em pequenas regiões quadradas onde são atendidos os pedidos por FCFS. O recurso só sai da região quando não houver mais pedidos aguardando).

A partir destas estratégias foram calculados lower bounds para o tempo de percurso em condições de tráfico leve ou pesado. Posteriormente, os resultados obtidos por Bertsimas e Van Ryzin, 1993, foram generalizados por eles mesmos para o caso de mais de um veículo e com restrições de capacidade em Bertsimas e Ryzin, 1996.

Swihart e Papastravou, em 1999, apresentaram o problema dinâmico de Coletas e entregas (DPDP). Neste problema, um único veículo com restrições de capacidade única ou múltipla é roteirizado. Entende-se por capacidade única o caso do veículo que pode carregar apenas um pedido por vez tendo, portanto, que realizar cada entrega imediatamente antes da respectiva coleta. Em contrapartida, o problema de capacidade múltipla refere-se a veículos com capacidade infinita. As estratégias abordadas para o caso de capacidade múltipla foram:

(25)

por FCFS;

Stacker Crane – Os pedidos são agrupados e uma rota ótima é encontrada para cada grupo.

Nearest Neighbour – A cada pedido atendido, o veículo passa a atender o pedido mais próximo.

Para o problema sem restrição de capacidade, as estratégias adotadas foram:

Dual TSP – resolve-se um TSP para as coletas e outro para as entregas executando os dois em seqüência;

Nearest Neighbour – os veículos partem para a entrega ou coleta (válido) mais próximo;

Dynamic Dial-a-ride (DDARP) – parecido com DPDP, divide-se em 3 tipos:

Many to One (MTO) - Com vários pontos de coleta e um ponto final de entrega. Um exemplo prático real é a coleta de passageiros distribuídos em uma região e o transporte deles até um ponto único (um centro urbano, por exemplo);

MTF (Many to Few) com vários pontos de coleta e poucos pontos de entrega. Para exemplificar, basta-se pensar no mesmo transporte mencionado em

MTO, mas com três ou quatro pontos de parada no centro urbano;

MTM (many to many) – Um caso em que muitos passageiros são coletados em pontos diferentes e distribuídos por vários pontos também. Por exemplo, um serviço de lotação.

Gendreau e Potvin, em 1999, descreveram um problema de roteamento dinâmica baseado num serviço de courier, modelando-o como um DVRPTW. Uma heurística baseada em busca tabu antes utilizada para o caso estático foi adaptada para o problema dinâmico.

Gendreau et al., em 1999, abordaram o Problema Dinâmico de Roteamento com Coletas e Entregas. Neste trabalho, os autores implementaram a estrutura de vizinhança Ejection Chains (vide seção 2.5.2) modificada de tal forma a ser compatível com pedidos de dois pontos (Coleta e Entrega). Para compatibilizar esta estrutura com o problema de Pick-up and Delivery, Gendreau et al. determinaram que cada exclusão seria de um, e apenas um, pedido com seus dois

(26)

pontos. A inserção do pedido na nova rota se daria em seqüência, ou seja, o ponto de coleta seria inserido no melhor ponto encontrado para depois o ponto entrega ser incluído após o ponto de coleta, evidentemente. Os custos de exclusão e de inserção de pedidos são calculados por uma função aproximada. Com esta estrutura de vizinhança, foi aplicada a busca tabu em cada intervalo de tempo entre pedidos (que oscilava entre 2 e 3 segundos). Durante a simulação foi possível obter algum aprimoramento nas rotas mesmo contando com o curto tempo disponível para a otimização. Neste trabalho, o problema foi abordado sem restrição de capacidade, com até 20 veículos a uma velocidade de 30Km/h e com uma taxa média de até 33 pedidos por hora numa área de 25Km2 (5x5).

As abordagens estocásticas e dinâmicas do problema de roteamento estão resumidas na tabela 2.

Abordagem Categorias Número de veículos

Principais Autores

PTSP 1 Larsen, 2000, apod. Jaillet et al. PVRP Mais de 1 Bertsimas, Jaillet e Odoni, 1990.

TSPSC 1 TSPST 1 m-TSPST Mais de 1 VRPSD Mais de 1 VRPSC Mais de 1 A priori SVRP VRPSCD Mais de 1

Gendreau, Laporte e Séguin, 1996.

DTSP 1 Psarafits, 1988

DTRP 1 Bertsimas e Van Ryzin 1991 e 1993. DPDP 1 Swihart e Papastravou, 1999. MTO 1 ou Mais MTF 1 ou Mais DDARP MTM 1 ou Mais Swihart e Papastravou, 1999.

DVRP Mais de 1 Gendreau e Potvin, 1999. Real-Time

DVDPPD Mais de 1 Gendreau et al.,1999

(27)

2.4 CARACTERÍSTICAS DOS PROBLEMAS DINÂMICOS DE ROTEAMENTO

Algumas das características que distinguem as abordagens encontradas para o problema dinâmico de roteamento são apresentadas a seguir. Além das restrições e das diferentes formulações para funções objetivo, a quantificação do grau de dinamismo vem sendo sugerida por diferentes autores. Nesta seção, uma das propostas para se calcular o grau de dinamismo dos problemas dinâmicos de roteamento é exibida.

2.4.1 As restrições

Cada formulação do problema de roteamento dinâmica se diferencia das demais principalmente por conta das restrições incluídas no problema.

Dentre estas restrições, destaca-se a janela de tempo, muito usada por muitos autores. A janela de tempo indica qual o horário viável para se visitar um determinado cliente. Há artigos que classificam a janela de tempo como rígida ou flexível, sendo que a janela de tempo flexível permite visitas fora do horário previsto (janela fechada), mas com um grande acréscimo de custo para a solução. A janela de tempo rígida não permite visitas quando fechada (solução inviável).

As restrições de precedência aparecem principalmente nos problemas

dial-a-ride e de coleta e entrega pela sua própria natureza. Os problemas dial-a-ride seja MTO, MTF ou MTM, não permitem que qualquer entrega seja feita enquanto todas as coletas não forem executadas. Os problemas de coleta e entrega permitem que uma entrega seja feita desde que a coleta referente a ela também já tenha sido executada. As restrições de tempo também incluem o tempo máximo de rota permitido. Alguns autores colocam esta restrição com uma janela de tempo do depósito que se abre ao iniciar a execução da rota e se fecha no tempo máximo permitido para qualquer rota ter sido concluída.

As restrições de capacidade podem ser basicamente de três tipos: irrestrito, capacidade única – a capacidade e as demandas são sempre unitárias o que leva a uma solução em que necessariamente um veículo atende a apenas um pedido de cada vez - e capacitado onde cada demanda preenche uma parte do volume ou peso admitido pelo veículo. Considera-se também o fato de uma frota homogênea (todos os veículos com a mesma capacidade) ou heterogênea (veículos com

(28)

capacidades diferentes).

Finalmente, a restrição de distância máxima para cada rota também é encontrada em algumas formulações.

2.4.2 As funções objetivo

Os objetivos no problema de roteamento dinâmica geralmente se referem à distância total de todas as rotas, tempo de atendimento, tempo total do planejamento ou minimização do número de veículos.

2.4.3 O Grau de dinamismo

Há problemas que partem de um conjunto de pedidos conhecidos antes de iniciar a execução da rota e que sofrem poucas alterações como cancelamentos, novos pedidos ou atrasos. Estes problemas são considerados de baixo grau de dinamismo. Problemas de alto grau de dinamismo têm sua rota iniciada com a chegada do primeiríssimo pedido e inclui novos pedidos a todo instante.

Larsen, 2001, propôs uma definição para o grau de dinamismo de um problema de acordo com a fórmula:

grau de dinamismo = t n i i n T t d

=      1 ,

onde nd é o total de pedidos que chegam depois de iniciada a execução da rota, nt é o número total de pedidos do problema, ti é o tempo de chegada do pedido i e T é o tempo final do horizonte de trabalho.

Pode-se então classificar problemas conhecidos de acordo com seu grau de dinamismo e suas funções objetivo. A Figura 2 exemplifica esta classificação para alguns problemas conhecidos.

(29)

FIGURA 2: CLASSIFICAÇÃO DE PROBLEMAS QUANTO A SEUS OBJETIVOS E GRAU DE DINAMISMO Dinamismo Objetivos de tempo Objetivos de Distância Distribuidora de bens de consumo Serviço de taxi Emergências Médicas

(30)

3 MÉTODOS PARA RESOLVER O

VRP

E SUAS

VARIAÇÕES

O Problema de Roteamento de Veículos pertence à classe dos NP-Completos. Por isso, a utilização de métodos de otimização é fortemente limitada pelo tamanho do problema. Para os casos práticos, onde geralmente se tem um número grande de pedidos e, por outro lado, um tempo disponível pequeno para encontrar uma solução, vários métodos heurísticas vêm sendo apresentados nos últimos anos. Os Métodos mais estudados para o VRP são abordados nesta seção.

3.1 GERAÇÃO DE COLUNAS

O algoritmo de geração de colunas é baseado no problema de programação inteira. As colunas desse problema representam as rotas viáveis do problema e são incluídas aos poucos no problema, pois o número possível delas é muito grande. Por esta formulação, o conjunto de variáveis se relaciona à utilização, ou não, das rotas viáveis. As restrições garantem que uma, e não mais do que uma rota que inclua algum local de atendimento, seja utilizada e que apenas um veículo seja utilizado para cada rota.

A geração de novas rotas possíveis (as colunas) é um dos pontos fundamentais dessa abordagem já que o número dessas rotas cresce rapidamente com o aumento do número de pedidos.

Encontrar colunas candidatas a entrar na base envolve o cálculo de custos reduzidos de cada uma delas (pricing). Quando o custo reduzido de uma coluna é negativo, esta coluna pode entrar na base. Há então algumas escolhas a serem feitas em relação às colunas já construídas e calculadas como, por exemplo: incluir a primeira coluna com custo reduzido negativo, calcular o custo reduzido de várias colunas e escolher aquela que tiver o menor destes custos (partial

pricing) ou adotar outra técnica de gerenciamento dessas colunas.

Savelsberg e Sol, em 1998, usaram um gerenciamento de colunas que permitissem que o problema de programação linear ficasse pequeno. Algumas técnicas são abordadas por eles são:

(31)

Redução de Rede – estratégia onde se eliminam trechos de alto custo entre pontos de pedido até que não se tenha mais nenhum custo reduzido negativo para depois retornar com estes trechos até que toda rede esteja completa novamente;

Column Pool – Mantém-se um “depósito” de rotas de custo reduzido negativo e atualizam-se estes custos ainda durante a otimização do problema principal. Este “depósito” deve ser gerenciado de forma a ficar com um tamanho razoável de roteiros. Antes de se buscar novas rotas resolvendo o problema

pricing, busca-se neste depósito colunas já construídas;

Sigurd, Pisinger e Sig, em 2001, também usaram uma abordagem com geração de colunas para o problema de coletas e entregas.

3.2 BUSCA LOCAL

Vários trabalhos focalizaram a construção de estruturas de vizinhança capazes de fornecer bons resultados quando exploradas por uma busca local.

Xu e Kelly, em 1996, apresentaram uma técnica de modelagem para estrutura de vizinhança baseada no problema de fluxo em redes para ser implementada numa busca tabu com excelentes resultados para o VRP.

César Rego, em 1998, apresentou Subpath Ejection method for the VRP”. Neste trabalho foi apresentada uma busca local baseada em Subpath Ejection

Chains que seguem um conjunto de regras chamadas flower reference structure. A estrutura Subpath Ejection Chains escolhe em uma determinada rota um ponto de pedido. A partir deste ponto, uma seqüência de tamanho variado de pedidos é retirada desta rota e incluída em uma rota seguinte. Desta segunda rota também são excluídos pedidos em seqüência para serem alocados numa terceira rota e assim por diante. A seqüência de rotas podia ser de qualquer tamanho, fechada ou aberta. Flower reference structure é um conjunto de regras que guiam o processo determinando a seqüência de rotas e os pontos de corte e produzindo uma vizinhança com interessantes características combinatoriais.

César Rego, em 2001, usou a estrutura “Node Ejection Chains”, apresentada por Glover em 1992 para o problema do caixeiro viajante, como vizinhança para uma solução de VRP. Diferentemente da flower structure utilizada em Subpath Ejection Chain, esta estrutura usa um conjunto de tripletos (seqüência que envolve

(32)

um nó, seu antecessor e seu sucessor) retirando de cada um destes tripletos o nó central e incluindo no tripleto seguinte.

3.3 CLUSTER FIRST-ROUTE SECOND

Há uma série de heurísticas que se baseiam em uma estratégia de agrupar para depois roteirizar. Geralmente, estas estratégias agrupam pedidos próximos resolvendo, em seguida, um TSP para cada grupo.

3.4 ROUTE FIRST-CLUSTER SECOND

Por outro lado, há outra classe de heurísticas que usam a técnica de roteirizar todos os pedidos para depois, identificando os melhores pontos de corte, dividir o roteiro inicial (muitas vezes inviável) em roteiros menores.

3.5 BUSCA TABU

A busca tabu é uma das mais conhecidas e usadas meta-heurísticas. Durante sua execução é feita a procura pelo espaço de soluções que permite que um movimento leve a uma solução pior que a atual (é claro que cada melhor solução encontrada é armazenada já que pode ocorrer de não ser encontrada nenhuma solução melhor com os movimentos futuros). Uma memória de movimentos e soluções é usada para se evitar que a busca retorne a posições já visitadas (tabu). Algumas características que diferenciam os métodos baseados em busca tabu são: tamanho da lista tabu, número de iterações que um movimento se mantém na lista e uso de listas de curta e de longa duração usadas para manter ciclos de intensificação e diversificação da procura.

3.6 SIMULATED ANNEALING

Esta é mais uma meta-heurística muito conhecida. Simulando o processo de resfriamento de metais, onde o custo da função objetivo faz o papel da energia ligada às tensões internas no material e sendo a probabilidade de se visitar uma solução pior que a solução atual, uma função de uma variável que faz o papel da temperatura do sistema, o Simulated Annealing consegue “fugir” de mínimos locais e encontrar melhores soluções. O controle da “temperatura” do sistema é o

(33)

quesito fundamental para se obter uma boa solução em um tempo razoável.

3.7 ALGORITMOS GENÉTICOS

Baseado na teoria evolutiva, esta heurística trata cada solução como um indivíduo e cria um conjunto destas soluções (população) que vão compartilhar características (reprodução) para gerar um novo conjunto de soluções (nova geração). Soluções com melhores funções-objetivo terão maior probabilidade de reproduzirem (seleção). Durante a reprodução, duas soluções trocam características (crossover) para se obter uma nova geração diferente, porém com características semelhantes às da geração anterior. Para que se evite perder uma característica desejável que não se encontra presente em uma geração, aplica-se uma probabilidade, geralmente pequena, de alterar uma solução em um determinado ponto (mutação). Cada uma destas etapas envolve processos decisórios principalmente quanto aos métodos de probabilidades de crossover, mutação, clonagem (passagem de uma boa solução para o conjunto seguinte de soluções sem reprodução), etc. O bom controle desses processos é necessário para se obter boas soluções.

3.8 COLÔNIA DE FORMIGAS

Baseada no processo de busca de alimento por formigas reais, esta é outra heurística inspirada na natureza. As soluções (rotas) são construídas ponto a ponto por agentes (formigas artificiais). Cada agente cria um roteiro (seqüência de pontos) e a cada trecho deste roteiro é associada uma variável de qualidade (feromônio), cujo valor é uma função do resultado final da função objetivo. Numa nova iteração, outros agentes irão criar novos roteiros passando com maior probabilidade por trechos onde a variável de qualidade seja maior (maior quantidade de feromônio) e aumentando por sua vez o valor destas variáveis de acordo com o resultado da função objetivo atingido. Além disso, usa-se diminuir numa certa razão o valor de todas as variáveis de qualidade a cada iteração (evaporação).

(34)

Além dessas, outras heurísticas adotadas para o problema de roteamento estão descritas na tabela 3.

Programação Dinâmica Marcos C. Goldbarg e Henrique P. Luna apod. Psaraftis

Relaxação Lagrangeana e

dualidade Marcos C. Goldbarg e Henrique P. Luna apod. Cristofides Geração de Colunas Savelsbergh e Sol, 1998.

Cluster First-Route Second Marcos C. Goldbarg e Henrique P. Luna apod. Gillet e Miller

Route First-Cluster Second Marcos C. Goldbarg e Henrique P. Luna apod. Newton e Thomas

Busca Tabu Marcos C. Goldbarg e Henrique P. Luna apod. Renauld et al. e Gendreau et al., 1996.

Simulated Annealing Marcos C. Goldbarg e Henrique P. Luna apod. Golden e Skiscmin.

Algoritmos Genéticos Homberger e Gehring, 1999.

Redes Neuronais Marcos C. Goldbarg e Henrique P. Luna apod. Somhom et al.

TABELA 3: HEURÍSTICAS PARA VRP

3.9 ESTRATÉGIAS DE INCLUSÃO – PROBLEMAS DINÂMICOS

O que mais diferencia o problema dinâmico do estático é a necessidade de se adotar uma política de atualização de pedidos. O grau de dinamismo de um problema é um determinante na escolha desta política.

Para lidar com a situação dinâmica, o programa desenvolvido com base nos algoritmos descritos por Savelsberg e Sol, 1998, (veja item Geração de Colunas) tem forte interação com os planejadores de rota. Cada vez que o programa é chamado, ele produz um plano de rotas dividido em duas partes. A primeira trata os pedidos que serão executados em curto prazo, digamos uma hora, e a segunda com pedidos a serem atendidos num prazo maior. O planejador de rotas é autorizado a modificar este planejamento prestando atenção principalmente aos roteiros previstos para o curto prazo. Quando todas as alterações são incluídas, esta parte do roteiro se torna permanente. Novos pedidos serão então incluídos na segunda parte do roteiro. O programa é chamado quando os planejadores de rota consideram necessário fazê-lo.

(35)

aprimoramento da solução que será executado depois que os pedidos já estiverem atualizados na solução em vigor. Métodos rápidos permitem atualizações a uma taxa maior. Métodos lentos requerem que novos pedidos aguardem mais tempo para serem incluídos.

Ascheuer, Krumke e Rambau, 2000, aproveitaram a definição de Shmoys, Wein e Willamson da estratégia chamada IGNORE para atualizações on-line no problema de scheduling adaptando-os para o problema de roteamento dinâmica. Além disso, esta estratégia foi comparada a outras duas: REPLAN (Ascheuer et al. apresentam a estratégia REPLAN como folclórica no sentido de que dificilmente alguém poderá reclamar sua autoria) e SMARTSTART (apresentado por eles).

A idéia básica da estratégia IGNORE é que iniciada uma rotina de otimização de pedidos conhecidos, novos pedidos são temporariamente ignorados até que esta rotina termine. A partir daí, os novos pedidos são incluídos e tratados pela rotina de otimização.

A estratégia REPLAN interrompe a execução da rotina de otimização e inclui os novos pedidos na solução assim que eles são revelados.

A contribuição de Ascheuer et al., 2000, nesse artigo foi a apresentação da estratégia SMARTSTART e a prova de sua maior eficiência. O SMARTSTART é parecido com o IGNORE, mas não permite que a rotina de otimização termine depois de passado um intervalo de tempo pré-determinado desde o início de sua última execução. Além disso, esta estratégia pode iniciar a rotina de otimização mesmo que hajam pedidos aguardando se, de acordo com parâmetros pré-determinados, estes pedidos forem poucos e estejam esperando há pouco tempo.

3.10 ESTRATÉGIAS DE APRIMORAMENTO – PROBLEMAS DINÂMICOS

Os problemas dinâmicos podem contar ou não com estratégias de aprimoramento de soluções concebidas após a inclusão dos pedidos conhecidos.

Gendreau et al., 1999 e 1996, incluíram busca tabu no seu algoritmo para aprimorar uma solução inicial obtendo alguma melhora. Embora este trabalho tenha trazido bons resultados, o número de veículos e de pedidos abordados estão muito longe daqueles encontrados na realidade da empresa analisada. Além disso, bons resultados dependem da disponibilidade de tempo para que a estrutura seja percorrida e aproveitada. Este tempo estava disponível entre cada chegada de

(36)

pedido (cerca de 2 minutos). No caso estudado aqui, este tempo não está disponível.

(37)

4 O PROBLEMA ABORDADO

Neste trabalho buscou-se criar uma situação próxima à realidade de uma prestadora de serviços de coletas e entregas. A seguir, são detalhadas as características do problema abordado.

4.1 A RESTRIÇÃO DE JANELA DE TEMPO

Conforme já mencionado na seção 4.1.1, a janela de tempo é uma restrição clássica presente na maioria dos problemas de roteamento. Entretanto, tal restrição não cabe no perfil de empresas prestadoras de serviço de coletas e entregas de pequenos volumes com motocicletas, enfoque deste trabalho. Primeiro porque dificilmente se encontram restrições de horário para motocicletas (como é comum a restrição ao trânsito de caminhões pesados em centros de cidades nos horários mais movimentados). Segundo, porque a maioria dos pedidos tem permissão para ser entregue em horário comercial. Este fato pode ser contemplado pela restrição de tempo total de atendimento, ou, como será feito aqui, pode-se evitar que um pedido seja entregue muito tarde pelo uso de uma função objetivo que penalize soluções onde um pedido é entregue muito tarde. É bem mais real para a empresa analisada que se determine um grau de prioridade a cada pedido e que, sendo máximo o grau de prioridade de um pedido, ele será atendido o mais breve possível dentro dos limites do estado atual do sistema.

4.2 A RESTRIÇÃO DE CAPACIDADE

Nesta abordagem não foi incluída qualquer restrição de capacidade. Esta decisão foi tomada com base no tipo de serviço investigado. A maior parte dos pedidos refere-se a documentos ou pacotes pequenos e, além disso, a abordagem favorece que uma entrega não seja feita muito tempo depois da sua respectiva coleta. Dessa forma, os pacotes não permanecem muito tempo ocupando a capacidade de carga da motocicleta.

(38)

4.3 A GARAGEM CENTRAL

A garagem central será considerada não como um local de armazenamento de carga, mas apenas como um ponto inicial de onde partem as motocicletas e para onde elas retornam apenas no fim do serviço.

4.4 O HORÁRIO DE ATENDIMENTO E A PAUSA PARA ALMOÇO

Será considerado um dia útil de 9,5 horas (correspondendo a um horário de atividade de 8:30h às 18:00h.) com intervalo para almoço de 1:30h. A hora exata de parada de cada motociclista deverá ser próxima de 12:00 podendo variar de acordo com algumas estratégias que serão adotadas para se buscar um melhor resultado. Não será permitido que, durante o horário de almoço, o veículo esteja carregado, ou seja, todas as coletas realizadas antes do almoço serão entregues antes do almoço.

4.5 TEMPO DE ATENDIMENTO

Será considerado um tempo de serviço de 5 minutos a cada ponto de coleta ou de entrega.

4.6 DISTÂNCIAS

Dentro de uma cidade que não esteja sujeita a muitos obstáculos naturais como grandes lagos e montanhas, como Curitiba, é possível utilizar distâncias euclidianas para calcular tempos de percurso. Para cidades como o Rio de Janeiro, que praticamente circunda uma grande floresta, esta aproximação perde muita qualidade. Uma alternativa interessante é proposta por Arce, 1997. Neste trabalho, o autor divide a cidade em quadrantes e considera que cada pedido que surge num quadrante, tem suas coordenadas no centro deste. Uma tabela com as distâncias reais entre os centros de todos os quadrantes é então utilizada para se aproximar a distâncias entre pontos de um mapa.

Neste trabalho, entretanto, foram consideradas distâncias euclidianas.

4.7 OS REQUISITOS DE TECNOLOGIA

(39)

fundamental que haja comunicação em tempo real entre o sistema de roteamento e cada veículo. Além disso, será considerada a possibilidade de se obter a posição de um veículo de forma dinâmica, por exemplo, por GPS. Esta informação ajuda o algoritmo a se atualizar quanto às partes já executadas dos roteiros planejados e ainda estimar com melhor eficácia os tempos de chegada para as visitas próximas.

4.8 MODELAGEM

O Problema Dinâmico de Roteamento de Veículos com Coletas e Entregas pode ser modelado como um conjunto de várias instâncias de problemas estáticos a serem resolvidos em seqüência.

Cada uma dessas instâncias estáticas pode ser formulada da seguinte maneira:

Sejam:

• o0 é a garagem central;

• N é o conjunto de todos os pedidos conhecidos em que cada pedido,

i, é definido por um local de coleta (oi), por um local de entrega (di), um horário em que o pedido se tornou conhecido (hi) e uma prioridade (pi); • N+ =



N i i o ∈ }

{ é o conjunto de locais de coleta;

• N- =



N i i d ∈ }

{ é o conjunto de locais de entrega;

• V = N+ ∪ N- é o conjunto de todos os locais referentes a todos os pedidos;

• Para cada local de entrega i ∈ N-, p

i ∈ {1, 2, 3} é a prioridade do pedido (1 para normal, 2 para urgente, 3 para urgentíssimo);

• M é o conjunto de veículo; • V0 = V ∪ {o0}.

• Para cada i, j ∈ V0, tij é o tempo de percurso entre os locais i e j.

• H é o tempo máximo para a coleta de pedidos. A partir de H, os

pedidos pendentes continuarão a serem atendidos até que todos estejam entregues, mas nenhum novo pedido será aceito.

(40)

Com estas definições, uma rota Rk viável é um roteiro definido sobre um subconjunto Vk⊂ V0 tal que:

• Rk começa em o0;

• {oi, di} ∩ Vk = ∅ ou {oi, di} ∩ Vk = {oi, di}, para todo pedido i ∈ N;

• Se {oi, di} ∩ Vk = {oi, di}, então oi é visitado antes de di, para todo pedido i∈N;

• Cada elemento de Vk é visitado exatamente uma vez.

Nestas condições, define-se Tik com i ∈ (N- ∩ Vk) como o horário de chegada do veículo k no local de entrega di mais o tempo de serviço comentado no item 4.4, para cada k ∈ M. Segue-se a restrição:

• Tik < H.

Pode-se agora definir uma solução, S, para o problema de coletas e entregas como sendo um conjunto de roteiros Rk tal que:



M k k R ∈ = V0; •



M k k R ∈ = {o0};

Adotando-se F(S) como uma função de custo correspondente a uma determinada solução, define-se o problema de roteamento de veículos com coletas e entregas da seguinte forma:

Min {F(S) | S é uma solução para o problema de coletas e entregas}

4.9 A FUNÇÃO OBJETIVO

A função objetivo adotada nesta abordagem está relacionada diretamente com o tempo de atendimento e com a prioridade de cada pedido. Para cada cliente, a prioridade representa um papel multiplicador do termo representativo do

(41)

tempo de atendimento. Desta forma, a Função Objetivo F(S) é definida por: F(S) =

∑ ∑

∈ + ∩ ∈ − − M k i V N i ik i T h P k α 1 ) ( ) ( ,

onde α é um expoente arbitrário positivo.

É importante ressaltar que os tempos de atendimentos são calculados apenas nos pontos de entrega. O uso do expoente maior que um é motivado pela afirmativa 8 de Psaraftis, 1998 e 1995, mencionados anteriormente no item 2.2. Procura-se, dessa forma, usar um termo não-linear para impedir que um pedido seja indefinidamente alocado para o fim do roteiro.

(42)

5 A ABORDAGEM

Neste capítulo será detalhado o método proposto para resolver o problema. Inicialmente, é apresentada uma explicação sobre a estratégia de inclusão adotada (quando incluir novos pedidos). Em seguida, a fase de inclusão é explicada (como incluir novos pedidos) em conjunto com o método de mapeamento de rota utilizado nesta fase. A partir daí, a fase de aprimoramento recebe foco ao se detalhar a estrutura de vizinhança e a busca tabu por ela utilizada.

5.1 A INICIALIZAÇÃO

No início do dia, todos os veículos (motos) estão no depósito central aguardando o primeiro pedido. Com a chegada deste pedido, um veículo parte para o seu atendimento indo ao ponto de coleta já tendo planejada a entrega em seqüência. Como neste momento o veículo já se direciona ao ponto de coleta do primeiro pedido, esta visita não pode mais ser alterada. Entretanto, não é garantida a entrega correspondente a esta coleta logo em seguida já que a entrada de outros pedidos podem alterar este agendamento enquanto o veículo não estiver a ponto de se dirigir para o ponto de entrega.

5.2 A ESTRATÉGIA DE INCLUSÃO

Para permitir que a fase de aprimoramento possa trazer melhores resultados fazendo com que haja mais tempo para sua execução, é utilizada a estratégia de interrupção SMARTSTART, explicado no item 3.9. A cada intervalo de tempo pré-determinado, a fase de aprimoramento é interrompida. Este intervalo de tempo começa a ser contado a partir da chegada do primeiro pedido após iniciada a fase de aprimoramento.

5.3 A FASE DE INCLUSÃO

A inclusão de novos pedidos é realizada de acordo com a regra de minimizar o custo total do planejamento após a inclusão individual de cada

(43)

pedido, ou seja, procura-se incluir a coleta e a entrega referentes ao novo pedido no roteiro e na posição que aumente o mínimo possível a soma dos tempos de atendimento de todos os pedidos do problema. A busca por bons locais de inclusão é realizada sobre uma estrutura delimitada por uma regra baseada em mapeamentos de rotas apresentada na seção abaixo. Além dessa regra, a limitação de visitas entre coleta e entregas de um mesmo pedido, explicada em 6.3.2, e a limitação do tempo total de atendimento para cada pedido dependente de sua prioridade também diminuem o espaço de soluções a ser pesquisado.

5.3.1 A Estrutura de Mapeamento de Rotas

Para lidar com um problema real de roteamento, uma nova estratégia –O Mapeamento de Rotas - é sugerida a seguir: Uma grade retangular cobre toda a superfície atendida pela frota, veja figura 3. Cada setor retangular é identificado por duas coordenadas inteiras (Hx e Hy). Além disso, é mantida uma tabela de setores com todos os roteiros que passam por cada setor incluindo o índice do local visitado pelo veículo imediatamente antes do roteiro passar pelo setor (veja tabela 4). A cada novo pedido, uma busca é realizada nas regiões em torno dos locais de coleta e entrega (veja tabela 5). Esta busca irá gerar uma lista de tentativas que compreendem os roteiros que atravessam esta região assim como os pontos anteriores indicados (veja tabela 6) e a partir dela será feita a procura pelo melhor ponto de inclusão de acordo com a função objetivo. Adiciona-se ainda à lista de tentativas a possibilidade de iniciar um novo roteiro se ainda houver veículos disponíveis e incluir o pedido após o horário de almoço em cada um dos roteiros em que não haja agendamento para depois desse horário.

A atualização do mapa de roteiros é realizada sempre que um novo pedido é adicionado a um roteiro. Isto é feito da seguinte maneira: Quando um pedido é incluído em um roteiro, R, depois de um certo ponto p, as linhas da tabela de setores relacionadas ao roteiro R e que tenham p como ponto anterior são excluídas. A partir de então se verifica quais setores são atravessados pelos trechos adicionados incluindo estes trechos na tabela.

Finalmente, como se trata de um problema dinâmico, os trechos que já tenham sido percorridos pelo veículo devem ser eliminados da lista de setores.

(44)

FIGURA 3: O MAPEAMENTO DE ROTAS

A figura 3, acima, exemplifica a estrutura de mapeamento de rotas. Neste exemplo, há três roteiros:R1, R2 e R3 e, em cada um deles, uma seta indica a posição atual do veículo e sua direção. As posições dos pedidos são identificadas por números positivos para pontos de coleta e negativos para pontos de entrega. Assim, por exemplo, no roteiro R1, o veículo efetuou a coleta do pedido 2 e desloca para coletar o pedido 5. Depois disso, o veículo deve entregar o pedido 5 finalizando o agendamento atual com a entrega do pedido 2. Os ponto 6 e -6 indicam os locais de coleta e entrega de um novo pedido e a área sombreada representa a região onde será realizada a busca por roteiros próximos.

Por este exemplo, teríamos a tabela de setores apresentada a seguir, na tabela 4. É importante ressaltar que os trechos já percorridos ou que estejam sendo percorridos pelos veículos não são levados em conta na construção da tabela já que não há sentido em se procurar alterar estes trechos.

Hx 11 10 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 H y 1 0 2 5 -1 -3 3 4 -4 R1 R2 R3 -2 -5 6 -6

(45)

Setor Roteiro Ponto

Anterior Setor Roteiro Ponto Anterior

3,5 R1 5 5,2 R1 5 3,6 R1 5 5,3 R1 5 3,7 R1 5 5,10 R1 -5 3,7 R1 -5 5,10 R1 -2 3,8 R1 -5 13,6 R2 4 4,3 R1 5 13,7 R2 4 4,4 R1 5 14,4 R2 -4 4,5 R1 5 14,4 R2 4 4,6 R1 5 14,5 R2 4 4,8 R1 -5 14,6 R2 4 4,9 R1 -5 14,10 R3 -3 4,10 R1 -5

TABELA 4: TABELA DE SETORES

No momento em que chega o novo pedido, os setores próximos ao ponto de coleta e ao ponto de entrega são procurados para se buscar tentativas de inclusão. No exemplo apresentado pela figura 3, o novo pedido tem pontos de coordenadas (7,8) para coleta e (11,4) para a entrega. A tabela 5 mostra os setores em que serão procurados os roteiros próximos para este exemplo.

Setor Roteiro Setor Roteiro Setor Roteiro Setor Roteiro Setor Roteiro Setor Roteiro

Proximidade do ponto de coleta Proximidade do ponto de entrega

7,8 --- 5,6 --- 8,6 --- 11,4 --- 9,2 --- 12,2 --- 6,7 --- 5,7 --- 8,10 --- 10,3 --- 9,3 --- 12,6 --- 6,8 --- 5,8 --- 9,6 --- 10,4 --- 9,4 --- 13,2 --- 6,9 --- 5,9 --- 9,7 --- 10,5 --- 9,5 --- 13,3 --- R1 ; -5 7,7 --- 5,10 R1 ; -2 9,8 --- 11,3 --- 9,6 --- 13,4 --- 7,9 --- 6,6 --- 9,9 --- 11,5 --- 10,2 --- 13,5 --- 8,7 --- 6,10 --- 9,10 --- 12,3 --- 10,6 --- 13,6 R2 ; 4 8,8 --- 7,6 --- 12,4 --- 11,2 --- 8,9 --- 7,10 --- 12,5 --- 11,6 ---

TABELA 5: BUSCA NOS SETORES PRÓXIMOS

A ordem dos setores procurados durante a busca é utilizada para se procurar antes nos setores mais próximos aos pontos de coleta e entrega e depois nos mais afastados. Com isto, pode-se definir um limite de tentativas a serem consideradas para cada uma das regiões de busca. Alcançando-se este limite, pode-se interromper a busca sabendo-se que as regiões mais próximas foram consideradas.

Referências

Documentos relacionados

Promovido pelo Sindifisco Nacio- nal em parceria com o Mosap (Mo- vimento Nacional de Aposentados e Pensionistas), o Encontro ocorreu no dia 20 de março, data em que também

(grifos nossos). b) Em observância ao princípio da impessoalidade, a Administração não pode atuar com vistas a prejudicar ou beneficiar pessoas determinadas, vez que é

No entanto, para aperfeiçoar uma equipe de trabalho comprometida com a qualidade e produtividade é necessário motivação, e, satisfação, através de incentivos e política de

Este trabalho buscou, através de pesquisa de campo, estudar o efeito de diferentes alternativas de adubações de cobertura, quanto ao tipo de adubo e época de

Mas, como patrocinador, ele também não deixa de ser só um torcedor, que tem de torcer para o time ir bem, mas que pode cobrar com um pouco mais de peso se o resultado não

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Se você vai para o mundo da fantasia e não está consciente de que está lá, você está se alienando da realidade (fugindo da realidade), você não está no aqui e

Para se buscar mais subsídios sobre esse tema, em termos de direito constitucional alemão, ver as lições trazidas na doutrina de Konrad Hesse (1998). Para ele, a garantia