anÁlise de resultados na construÇÃo de rota para o ... · um representante de vendas durante uma...

7
ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O PROBLEMA DO CAIXEIRO VIAJANTE Luiz Antonio Kretzschmar , Luiz Fernando Nunes, Paula Francis Benevides Departamento de Matemática Universidade Tecnológica Federal do Paraná Av. Sete de Setembro 3165 Curitiba PR CEP: 80230-901 E-mails : [email protected] , [email protected] , [email protected] Deise Maria Bertholdi Costa PPGMNE Programa de Pós-graduação em Métodos Numéricos em Engenharia Universidade Federal do Paraná Centro Politécnico Jardim das Américas CP 19011 Curitiba PR CEP: 81531-980 E-mail : [email protected] Resumo : O presente trabalho visa analisar e comparar as rotas reais praticadas por um representante de vendas durante uma semana e os resultados obtidos com três heurísticas de construção de rotas e a metaheurística GRASP para o PCV. Também aplicou-se o algoritmo 2-opt para melhoria das rotas geradas. A partir de um Centro de Distribuição (CD), de onde o representante sai para o inicio das visitas, estão os operadores logísticos (mercados, restaurantes, lanchonetes, etc.) que são os compradores/receptores dos produtos. O transporte, em geral, possui um custo muito elevado, comparado a qualquer outra atividade logística. Por isso, muitas empresas estão revendo seus métodos para minimizar os custos em geral. A otimização da distribuição de produtos é um problema estudado há muito tempo por pesquisadores de diversas áreas. Este tipo de problema é classificado como de otimização combinatória. Dentre as modelagens podem ser citados o Problema do Caixeiro Viajante (PCV) e o Problema de Roteamento de Veículos (PRV). Estes, tem por objetivo encontrar o menor caminho conectando-se N lugares de destino. O problema consiste em visitar todos os clientes programados, assim como transportar as caixas do depósito até os operadores logísticos, utilizando um roteiro com o menor custo possível. 1 PROBLEMA DO CAIXEIRO VIAJANTE O Problema do Caixeiro Viajante (PCV) consiste em estabelecer uma única rota que passe por cada nó de um grafo, uma e apenas uma vez, retornando ao nó inicial no final do percurso. Este roteiro Hamiltoniano deve ser feito de modo que a distância total percorrida seja mínima. O conjunto de rotas possíveis é o resultado de todas as combinações possíveis e pode ser calculado por )! 1 n ( , sendo n o número de nós. Este problema pertence à classe de problemas conhecida por NP-Hard, isto é, não existem algoritmos com limitação polinomial capazes de resolvê-lo. Assim a quantidade de passos de um algoritmo que possa solucioná-lo otimamente não pode ser dada por uma função polinomial do tamanho de sua entrada. Logo, apenas os problemas de pequeno porte podem ser solucionados de forma ótima. Problemas maiores tornam-se inviáveis através dos métodos exatos, haja visto o esforço computacional que seria exigido. Muitas abordagens de algoritmos heurísticos, que fornecem soluções factíveis próximas da ótima, têm sido desenvolvidas para resolver 216

Upload: others

Post on 14-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O ... · um representante de vendas durante uma semana e os resultados obtidos com três heurísticas de construção de rotas

ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA

PARA O PROBLEMA DO CAIXEIRO VIAJANTE

Luiz Antonio Kretzschmar, Luiz Fernando Nunes, Paula Francis Benevides Departamento de Matemática – Universidade Tecnológica Federal do Paraná

Av. Sete de Setembro 3165 Curitiba – PR CEP: 80230-901

E-mails : [email protected] , [email protected] , [email protected]

Deise Maria Bertholdi Costa PPGMNE – Programa de Pós-graduação em Métodos Numéricos em Engenharia

Universidade Federal do Paraná Centro Politécnico – Jardim das Américas CP 19011

Curitiba – PR CEP: 81531-980

E-mail : [email protected]

Resumo : O presente trabalho visa analisar e comparar as rotas reais praticadas por

um representante de vendas durante uma semana e os resultados obtidos com três

heurísticas de construção de rotas e a metaheurística GRASP para o PCV. Também

aplicou-se o algoritmo 2-opt para melhoria das rotas geradas. A partir de um Centro

de Distribuição (CD), de onde o representante sai para o inicio das visitas, estão os

operadores logísticos (mercados, restaurantes, lanchonetes, etc.) que são os

compradores/receptores dos produtos. O transporte, em geral, possui um custo muito

elevado, comparado a qualquer outra atividade logística. Por isso, muitas empresas

estão revendo seus métodos para minimizar os custos em geral. A otimização da

distribuição de produtos é um problema estudado há muito tempo por pesquisadores

de diversas áreas. Este tipo de problema é classificado como de otimização

combinatória. Dentre as modelagens podem ser citados o Problema do Caixeiro

Viajante (PCV) e o Problema de Roteamento de Veículos (PRV). Estes, tem por

objetivo encontrar o menor caminho conectando-se N lugares de destino. O problema

consiste em visitar todos os clientes programados, assim como transportar as caixas

do depósito até os operadores logísticos, utilizando um roteiro com o menor custo

possível.

1 PROBLEMA DO CAIXEIRO VIAJANTE O Problema do Caixeiro Viajante (PCV) consiste em estabelecer uma única rota

que passe por cada nó de um grafo, uma e apenas uma vez, retornando ao nó inicial no

final do percurso. Este roteiro Hamiltoniano deve ser feito de modo que a distância

total percorrida seja mínima. O conjunto de rotas possíveis é o resultado de todas as

combinações possíveis e pode ser calculado por )!1n( , sendo n o número de nós.

Este problema pertence à classe de problemas conhecida por NP-Hard, isto é, não

existem algoritmos com limitação polinomial capazes de resolvê-lo. Assim a

quantidade de passos de um algoritmo que possa solucioná-lo otimamente não pode

ser dada por uma função polinomial do tamanho de sua entrada. Logo, apenas os

problemas de pequeno porte podem ser solucionados de forma ótima. Problemas

maiores tornam-se inviáveis através dos métodos exatos, haja visto o esforço

computacional que seria exigido. Muitas abordagens de algoritmos heurísticos, que

fornecem soluções factíveis próximas da ótima, têm sido desenvolvidas para resolver

216

Page 2: ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O ... · um representante de vendas durante uma semana e os resultados obtidos com três heurísticas de construção de rotas

os problemas NP-Hard. apresentando soluções parciais e ótimas para o problema,

visto que, devido ao grande número de grandezas que influenciam o processamento

computacional, como a capacidade de carga, velocidade, número de veículos, tempo e

distância, o mesmo precisaria de uma grande capacidade computacional para

apresentar soluções exatas.

2 HEURÍSTICAS DE CONSTRUÇÃO DE ROTA

Heurísticas de construção de rotas para o Problema do Caixeiro Viajante são

algoritmos que geram um circuito viável partindo de conjunto inicial de vértices, e

modificando esse conjunto a cada iteração utilizando algum critério de escolha. Este

processo busca boas soluções a um custo computacional razoável, porém, sem ser

capaz de garantir otimalidade ou até, em vários casos, de estabelecer quão perto de

uma dada solução viável esta dada solução ótima.

Inicialmente as rotas serão calculadas utilizando as seguintes técnicas de

construção de rotas (Bodin et al, 1983):

Inserção do mais próximo (IMP);

Inserção do mais distante (IMD);

Inserção mais rápida (IMR).

Existem ainda outros procedimentos de construção de rotas que podem ser citados

tais como Inserção do Mais Barato, Inserção Arbitrária, Cobertura Convexa, Inserção

do Maior Angulo e outros descritos detalhadamente em Bodin et al., (1983).

Após a aplicação dessas técnicas podem ser promovidas Heurísticas de Melhorias

de rotas. Dentre as técnicas que se pode utilizar para realizar estas melhorias existem a

2-opt e 3-opt.

3 A METAHEURÍSTICA GRASP - GREEDY RANDOMIZED ADAPTIVE

SEARCH PROCEDURE

Proposto por Feo e Resende em 1995 o GRASP é um processo iterativo multi-

partida em que cada iteração consiste de duas etapas: uma etapa de construção e outra

de busca local. A fase de construção é também iterativa, adaptativa, randômica e

gulosa. Ela é iterativa uma vez que a solução é construída elemento a elemento. É

adaptativa, pois na escolha de um elemento são levadas em consideração as escolhas

dos elementos anteriores. A cada iteração desta fase uma percentagem dos melhores

elementos candidatos a serem incluídos na solução corrente são colocados em uma

Lista de Candidatos Restritos - LCR. Estes elementos que constituem a LCR são

escolhidos segundo uma função adaptativa e gulosa, que estima o beneficio da escolha

de cada um dos elementos. O nível de aleatoriedade e o quanto é gulosa a fase de

construção do GRASP é controlado pelo parâmetro α [0,1]. Um valor α = 0 faz

gerar soluções puramente gulosas, ou seja, somente o melhor candidato é inserido na

LCR; enquanto que α =1, considera todos os candidatos na LCR. Após a construção

da LCR o elemento que irá fazer parte da solução é escolhido aleatoriamente, desta

forma permitimos que a cada iteração GRASP soluções diferentes sejam construídas.

Como na fase construção a solução resultante não necessariamente representa um

ótimo local, é recomendável aplicar métodos de busca local que explore uma

vizinhança na tentativa de melhorar a solução inicial.

217

Page 3: ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O ... · um representante de vendas durante uma semana e os resultados obtidos com três heurísticas de construção de rotas

ALGORITMO:

1. Custo (s*) ;

2. k 0 ;

3. Enquanto k num_interações Faça

4. s Construtivo () ;

5. s Busca_Local (s) ;

6. Se ( custo(s) < custo(s*) ) Então

7. s* s ;

8. Fim Se

9. k k + 1 ;

10. Fim Enquanto

11. Retorne s* ;

Onde:

s : solução viável ou inviável

s* : melhor solução encontrada até o momento

4 INSERÇÃO DO MAIS PRÓXIMO

Segundo Goldbarg (2005) o algoritmo da inserção do mais próximo é uma

heurística que possui um processo onde três níveis de decisão são envolvidos:

a escolha do vértice a ser inserido na solução;

a posição de inserção desse novo vértice;

a decisão de um ciclo inicial.

ALGORITMO:

Passos:

P1. Inicie com um sub-grafo contendo apenas o nó i;

P2. Encontre o nó k tal que ikc seja mínima e forme a rota i-k-i ;

P3. Dada a sub-rota, encontre o nó k não paertencente a sub-rota mais

próximo de qualquer nó da sub-rota;

P4. Encontre o arco ( i , j ) na sub-rota que minimiza ijkjik ccc ;

Insira k entre i e j ;

P5. Volte ao passo 3 até formar um circuito Hamiltoniano.

O tempo de computação envolvido no algoritmo da Inserção Mais Próxima é

da ordem 2n .

5 INSERÇÃO DO MAIS DISTANTE

Esta heurística é semelhante à heurística Inserção do Mais Próximo. A diferença

está apenas no passo 2, quando então se escolhe a cidade k não pertencente ao ciclo,

mais distante de qualquer cidade do ciclo. Também, no passo 3, o nó k não pertencente

a sub-rota deve ser mais distante de qualquer nó e não o mais próximo

218

Page 4: ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O ... · um representante de vendas durante uma semana e os resultados obtidos com três heurísticas de construção de rotas

ALGORITMO:

Passos:

P1. Inicie com um sub-grafo contendo apenas o nó i;

P2. Encontre o nó k tal que ikc seja máxima e forme a rota i-k-i ;

P3. Dada a sub-rota, encontre o nó k não pertencente a sub-rota mais distante

de qualquer nó da sub-rota;

P4. Encontre o arco ( i , j ) na sub-rota que minimiza ijkjik ccc

Insira k entre i e j ;

P5. Volte ao passo 3 até formar um circuito Hamiltoniano.

O tempo de computação envolvido no algoritmo da Inserção Mais Distante

também é da ordem 2n .

6 INSERÇÃO MAIS RÁPIDA

ALGORITMO:

Passos:

P1. Tome um nó inicial para formar um circuito T com 1 nó e 0 arcos;

P2. Dado o conjunto kT , ache o nó kz não pertencente a kT mais próximo

de um nó ky em kT ;

P3. Seja 1kT a rota com k+1 nós obtida inserindo kz imediatamente em

seguida a ky ;

P4. Repita P2 e P3 até a formação do circuito Hamiltoniano.

O tempo de computação envolvido no algoritmo da Inserção Mais Distante

também é da ordem 2n .

7 DESCRIÇÃO DO PROBLEMA

Deseja-se resolver o problema de roteirização no trabalho de um representante

comercial ao visitar seus clientes e também na entrega dos produtos. Na tabela 1

consta o número de pontos (clientes) para cada dia da semana que o representante

deve visitar. Para este estudo utilizou-se a rota de um determinado representante e

considerou-se apenas a primeira semana, pois seus clientes são distribuídos em duas

semanas. Este trabalho consiste em avaliar os roteiros de visita do representante e seus

clientes, sugerindo rotas alternativas obtidas através dos métodos citados, visando a

minimização das distâncias totais percorridas. Foram utilizados dados reais de uma

distribuidora de produtos em uma determinada região da cidade de Curitiba-PR.Os

resultados obtidos foram comparados com as rotas reais que estão sendo utilizadas por

um determinado representante da referida distribuidora. Os endereços destes pontos

foram inseridos no Google Earth para obtenção de suas coordenadas geográficas.

Após esse procedimento, realizou-se a transformação das coordenadas geográficas

para cartesianas, para que pudessem ser calculadas as distâncias euclidianas entre os

pontos que o representante precisa visitar. Utilizou-se como base a relação atual de

roteiro de visitação, onde nele encontram-se todas as informações como ordem de

visitação e endereços.

219

Page 5: ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O ... · um representante de vendas durante uma semana e os resultados obtidos com três heurísticas de construção de rotas

Depois da coleta dos dados e todo refinamento montou-se a rota atual praticada

pelo representante em questão para as suas visitas. Esta rota é composta de 128 (cento

e vinte oito) pontos distribuídos em cinco dias da semana conforme a Tabela 1.

Tabela 1 – Distribuição de clientes por dia de semana

As coordenadas cartesianas dos pontos a serem visitados na segunda-feira estão

colocadas na tabela 2. Pontos Coordenada X Coordenada Y

1 3752488,24243602 -4364462,64983374

2 3756050,27689715 -4362649,87962627

3 3755896,59241043 -4362486,34635371

4 3755560,82614631 -4362965,13091839

5 3755688,26676055 -4362748,26821984

6 3755949,57816426 -4362260,44954684

7 3755870,77467340 -4362321,62161513

8 3755329,95802132 -4362376,52861622

9 3755614,99323938 -4361883,82881548

10 3755993,37097473 -4362602,60481156

11 3755935,23505069 -4362582,56056160

12 3755571,21439706 -4362335,96783149

13 3755586,38765755 -4362315,52401190

14 3755591,56007775 -4362302,28404101

15 3755638,33113054 -4362232,14120151

16 3755245,71480086 -4362871,12780603

17 3755552,30444430 -4361985,08907318

18 3755419,78275609 -4362815,82087081

19 3754907,38631603 -4363032,47795608

20 3755075,97414652 -4362763,32964638

21 3755105,95064149 -4362713,45446905

22 3755191,84205662 -4362569,40742147

23 3755222,13346723 -4362524,17781582

24 3755414,55063071 -4362595,42439348

25 3755275,28087388 -4362434,49280584

Tabela 2 – Segunda-feira – coordenadas (x,y) em metros

8 MELHORIA DE ROTA

As heurísticas de melhorias de rota conhecidas por 2-opt e 3-opt, surgiram em

meados da década de 60 e consistem em permutar arcos em uma rota inicial factível,

buscando encontrar uma rota de menor custo.

Na heurística 2-opt, dois arcos são desligados e substituídos outros dois de modo

que a distância total na nova rota formada seja menor que na rota inicial.

Analogamente ocorre na heurística 3-opt, onde três arcos são permutados. Estes

procedimentos terminam geralmente em um ótimo local, e são considerados métodos

Dia da Semana Segunda Terça Quarta Quinta Sexta

Pontos a serem visitados 24 25 27 19 32

Distância Euclidiana Total

(em metros) 15.808,84 25.198,19 25.185,89 36.156,98 20.691,49

220

Page 6: ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O ... · um representante de vendas durante uma semana e os resultados obtidos com três heurísticas de construção de rotas

eficientes para resolver o Problema do Caixeiro Viajante. Mais tarde foi criada outra

heurística ainda mais forte do que a 2-opt e 3-opt. Chama-se heurística k-opt, onde são

permutados k arcos (k 3). Embora a qualidade das soluções desta última técnica

melhore a medida que k aumenta, elas se tornam quase impraticáveis sob ponto de

vista computacional quando k 4. Algumas aplicações práticas destas heurísticas

podem ser vistas em Costa (1997) e Zamboni (1997).

Os passos do algoritmo para obter melhoramentos 2-opt e 3-opt são os seguintes:

ALGORITMO:

Passos:

P1: Obtenha uma rota inicial factível, utilizando algum dos procedimentos de

formação de rotas;

P2: Desligar 2 arcos da rota atual para o caso de 2-opt e 3 arcos para o caso 3-

opt, reconectando os nós por meio de arcos diferentes daqueles que foram

desconectados, formando uma nova rota. Se o comprimento da rota nova for

menor que o comprimento da rota anterior, troque a rota atual pela rota nova;

P3: Prossiga no passo 2 até que nenhuma melhoria possa ser alcançada.

9 TESTES E RESULTADOS COMPUTACIONAIS As Heurísticas de construção de rotas e Melhorias de Rotas para o PCV foram

implementadas em Visual Basic 6. Os testes computacionais foram realizados em um

notebook com processador Intel(R) Core(TM) 2 Duo T5550, 1,83 GHz e 2,99 GB de

RAM.

Dia semana

Pontos

Segunda

25

Terça

26

Quarta

28

Quinta

20

Sexta

33

Atual 15808,84 25198,19 25185,87 36156,98 20691,49

IMP 10483,08 17199,55 19362,35 23506,59 19294,12

IMP+2opt 9910,51 16986,96 19274,71 23506,59 18542,89

IMD 10054,84 17331,30 18789,62 21309,23 18344,68

IMD+2opt 9879,76 17322,14 18598,65 21309,23 18301,71

IMR 11438,71 17532,03 20656,51 23733,36 19857,29

IMR+2opt 10979,42 17367,07 19478,81 23501,20 18512,03

GRASP 10694,08 16641,36 19173,03 23779,66 20137,86

GRASP+2opt 10593,35 16451,17 18940,70 23320,39 19793,07

Tabela 3 : Comparação dos resultados (distâncias em metros)

10 CONCLUSÕES

Neste trabalho foram realizados testes com as Heurísticas de Construção e

Melhoria de Rota implementadas. Em todos os dias da semana houve melhoria na rota

já praticada pelo representante. Na comparação de desempenho entre as Heurísticas, a

Inserção do Mais Distante com melhoria 2-opt foi a que apresentou melhores

resultados. Em todas as Heurísticas o tempo computacional foi de aproximadamente 7

segundos.

221

Page 7: ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O ... · um representante de vendas durante uma semana e os resultados obtidos com três heurísticas de construção de rotas

REFERÊNCIAS

[1] Benevides,P.F., Aplicação de heurísticas e metaheurísticas para o problema do

Caixeiro Viajante em um problema real de roteirização de veículos. Dissertação de

mestrado. Curitiba, BR: UFPR,2011.

[2] Bezerra, O.B., Localização de postos de coleta para apoio ao escoamento de

produtos extrativistas - Um estudo de caso aplicado ao babaçu. Dissertação de

Mestrado. Florianópolis, BR: UFSC, 1995.

[3] Bodin, L.D; Golden, B.L; Assad, A.A.; Ball, M.O., Routing and Scheduling of

vehicles and crews - the state of the art, Comput. Operational Research. 10, (63-

211), 1983.

[4] Costa, D.M.B., Aplicação de Algumas Técnicas da Pesquisa Operacional na

Otimização dos Serviços Postais. Dissertação de Mestrado. Curitiba, BR: UFPR,

1997.

[5] F Feo, T. A. e Resende, M. G. C., Greedy randomized adaptive search procedures.

Journal of Global Optimization, v. 6, (109-133), 1995

[6] Ganhoto, M.A.,Abordagens para problemas de roteamento. Dissertação de

Mestrado, Universidade Estadual de Campinas, BR.2004.

[7] Goldeberg, D.E., Genetic Algorithms in Search, Optimization e Machine

Learning. Addison-Wesley Publishing Company, Inc,1989.

[8] Goldebarg, M. C.; Luna, H. P. L., Otimização Combinatória e Programação Linear

– Modelos e Algoritmos. Editora Campus. Rio de Janeiro,2005

[9] Nunes, L. F., Algoritmos Genéticos aplicados na abordagem de um problema real

de roteamento de veículos. Dissertação de Mestrado. Curitiba, BR: UFPR,1998.

[10] Schopf, E.C., Cera, M.C., Turchetti, R., Vieira, L.E., Bastianello, C.A., Muller,

F.M., Metaheuristicas Aplicadas na Solução do Problema do Caixeiro Viajante com

Demandas Heterogêneas. XXIV ENEGEP – Florianópolis, 2004

[11] Zamboni, L.V.S., Técnicas de Roteirização de Veículos Aplicadas ao Transporte

Escolar. Dissertação de Mestrado. Curitiba, BR: UFPR, 1997.

222