SIMULATED ANNEALING APLICADO A UM PROBLEMA DE ROTEIRIZAÇÃO E PROGRAMAÇÃO DE VEÍCULOS

Documentos relacionados
Uma nova abordagem para o problema dial-a-ride

Introdução aos Problemas de Roteirização e Programação de Veículos

EXERCÍCIO: VIA EXPRESSA CONTROLADA

RAD1507 Estatística Aplicada à Administração I Prof. Dr. Evandro Marcos Saidel Ribeiro

3 Algoritmos propostos

IMPLEMENTAÇÃO DO MÉTODO DE FATORAÇÃO DE INTEIROS CRIVO QUADRÁTICO

COMPARAÇÃO DE MODELOS EXATOS PARA SOLUÇÃO DO PROBLEMA DE ROTEIRIZAÇÃO DE VEÍCULOS COM JANELAS DE TEMPO

UM ALGORITMO DE PROGRAMAÇÃO MATEMÁTICA BI-OBJETIVO PARA O PROBLEMA DE LOCALIZAÇÃO DE FACILIDADES NÃO CAPACITADO

Abordagem da Metaheurística Clustering Search com Simulated Annealing para o Problema de Alocação de Berços de Navios

4.1 Modelagem dos Resultados Considerando Sazonalização

4 Critérios para Avaliação dos Cenários

Mecanismos de Escalonamento

Universidade Federal do Rio de Janeiro

3 Metodologia de Avaliação da Relação entre o Custo Operacional e o Preço do Óleo

MÉTODOS DE ANÁLISE DE CIRCUITOS RESISTIVOS ANÁLISE NODAL

Variação ao acaso. É toda variação devida a fatores não controláveis, denominadas erro.

7 - Distribuição de Freqüências

Roteiro-Relatório da Experiência N o 4 CARACTERÍSTICAS DO TRANSISTOR BIPOLAR

APLICAÇÃO DO ALGORITMO GENÉTICO DE CHAVES ALEATÓRIAS VICIADAS AO PROBLEMA DE ESCALONAMENTO DE TÉCNICOS DE CAMPO

Programação Dinâmica. Fernando Nogueira Programação Dinâmica 1

UNIDADE IV DELINEAMENTO INTEIRAMENTE CASUALIZADO (DIC)

Seqüenciação de N ordens de produção em uma máquina com tempo de preparação dependente da seqüência uma aplicação de busca tabu

INTRODUÇÃO À PROBABILIDADE. A probabilidade é uma medida da incerteza dos fenômenos. Traduz-se por um número real compreendido de 0 ( zero) e 1 ( um).

Responda às questões utilizando técnicas adequadas à solução de problemas de grande dimensão.

CONCEITOS INICIAIS DE ESTATÍSTICA MÓDULO 2 DISTRIBUIÇÃO DE FREQÜÊNCIA - ELEMENTOS Prof. Rogério Rodrigues

Prioridades com Teste de Escalonabilidade

Medidas de Tendência Central. Prof.: Ademilson Teixeira

2 Experimentos com Mistura

MODELOS DE LOCALIZAÇÃO NA SELEÇÃO DE RESERVAS PARA CONSERVAÇÃO DE ESPÉCIES

Algoritmos Genéticos com Parâmetros Contínuos

Gestão e Teoria da Decisão

DIFERENCIANDO SÉRIES TEMPORAIS CAÓTICAS DE ALEATÓRIAS ATRAVÉS DAS TREND STRIPS

Modelo linear normal com erros heterocedásticos. O método de mínimos quadrados ponderados

Adriana da Costa F. Chaves

É o grau de associação entre duas ou mais variáveis. Pode ser: correlacional ou experimental.

CLUSTERING SEARCH APLICADO AO PROBLEMA DE ALOCAÇÃO DE BERÇOS

Sempre que surgir uma dúvida quanto à utilização de um instrumento ou componente, o aluno deverá consultar o professor para esclarecimentos.

3 A técnica de computação intensiva Bootstrap

Jogos. Jogos. Jogo. Jogo. Óptimo alvo investigação

DELINEAMENTOS EXPERIMENTAIS

3 Desenvolvimento do Modelo

2 Aproximação por curvas impĺıcitas e partição da unidade

PUCPR- Pontifícia Universidade Católica Do Paraná PPGIA- Programa de Pós-Graduação Em Informática Aplicada PROF. DR. JACQUES FACON

Modelagens Exata e Heurística para Resolução do Problema do Caixeiro Viajante com Coleta de Prêmios

3 Elementos de modelagem para o problema de controle de potência

Algoritmo de Otimização para o Problema de Roteamento de Veículos no Transporte Conjunto de Cargas e de Passageiros

Chapter 9 Location INTRODUÇÃO. Localização de Instalações. Problemas de comunicação

Desenho de uma rede Logística

Q 1-1,5(Q3-Q1) < X i < Q 3 + 1,5(Q 3 -Q 1 ) Q 3 +1,5(Q 3 -Q 1 ) < X i < Q 3 +3(Q 3 -Q 1 ) Q 1 3(Q 3 -Q 1 ) < X i < Q 1 1,5(Q 3 -Q 1 )

Universidade Federal do Paraná Departamento de Informática. Reconhecimento de Padrões. Classificadores Lineares. Luiz Eduardo S. Oliveira, Ph.D.

3. CIRCUITOS COM AMPOP S UTILIZADOS NOS SAPS

5 Relação entre Análise Limite e Programação Linear 5.1. Modelo Matemático para Análise Limite

27 a 30/09/05, Gramado, RS. Pesquisa Operacional e o Desenvolvimento Sustentável

Introdução a Combinatória- Aplicações, parte II

Figura 8.1: Distribuição uniforme de pontos em uma malha uni-dimensional. A notação empregada neste capítulo para avaliação da derivada de uma

3 Subtração de Fundo Segmentação por Subtração de Fundo

Aprendizagem de Máquina

Balanceamento das cargas nas respectivas fases do circuito [8]: Posicionamento do transformador abaixador: Recondutoramento dos circuitos:

Prof. Lorí Viali, Dr.

Ramos Energia e Automação

PROCEDIMENTO PARA ESCOLHA DA LOCALIZAÇÃO DE UM CENTRO REGIONAL DE DISTRIBUIÇÃO E RECOLHA DE EQUIPAMENTOS. N. R. Candido, V.B. G.

Modelo Logístico. Modelagem multivariável com variáveis quantitativas e qualitativas, com resposta binária.

BUSCA TABU: UMA APLICAÇÃO AO PROBLEMA DE SEQÜÊNCIAÇÃO DE ORDENS DE PRODUÇÃO

Uma contribuição para a avaliação das novas tecnologias e arquiteturas para o sistema elétrico automotivo

Estatística II Antonio Roque Aula 18. Regressão Linear

Processamento de Imagem. Prof. MSc. André Yoshimi Kusumoto

U N I V E R S I D A D E D O S A Ç O R E S D E P A R T A M E N T O D E M A T E M Á T I C A ARMANDO B MENDES ÁUREA SOUSA HELENA MELO SOUSA

Radiação Térmica Processos, Propriedades e Troca de Radiação entre Superfícies (Parte 2)

7 Tratamento dos Dados

APLICAÇÃO DE MÉTODOS DE BUSCA EM GRAFOS COM NÓS PARCIALMENTE ORDENADOS À LOCAÇÃO DE TORRES DE TRANSMISSÃO

Ao se calcular a média, moda e mediana, temos: Quanto mais os dados variam, menos representativa é a média.

DISTRIBUIÇÃO DE FREQUÊNCIAS

Reconhecimento Estatístico de Padrões

Diferença entre a classificação do PIB per capita e a classificação do IDH

MATERIAL COMPLEMENTAR PARA PROFESSORES RESOLUÇÃO DOS EXERCÍCIOS. Seção 1 (ex.1) a) PB b) PIM c) PI d) PIB e) PB f) PBM g) PIM. Seção 2 (ex.

Laboratório de Mecânica Aplicada I Estática: Roldanas e Equilíbrio de Momentos

Estatística I Licenciatura MAEG 2006/07

MÉTODOS ITERATIVOS PARA PROBLEMAS DE PROGRAMAÇÃO MATEMÁTICA COM INCERTEZAS

Prof. Lorí Viali, Dr.

MIP-heurísticas para um problema de dimensionamento e sequenciamento de lotes em linhas paralelas e relacionadas

5 Implementação Procedimento de segmentação

Prof. Lorí Viali, Dr.

DESENVOLVIMENTO DE UM PRÉ-PROCESSADOR PARA ANÁLISE ISOGEOMÉTRICA

METAHEURÍSTICA GRASP BI- OBJETIVO PARA UM PROBLEMA DE LOCALIZAÇÃO DE FACILIDADES

3.6. Análise descritiva com dados agrupados Dados agrupados com variáveis discretas

Flambagem. Cálculo da carga crítica via MDF

CADERNOS DO IME Série Estatística

Gráficos de Controle para Processos Autocorrelacionados

Laboratório de Mecânica Aplicada I Determinação de Centros de Gravidade

6 ALOCAÇÃO POR ÚLTIMA ADIÇÃO (UA)

Ao se calcular a média, moda e mediana, temos: Quanto mais os dados variam, menos representativa é a média.

Modelo de Programação Estocástica

8 - Medidas Descritivas

UMA HEURÍSTICA PARA O PROBLEMA DA ALOCAÇÃO DE SONDAS DE PRODUÇÃO EM POÇOS DE PETRÓLEO

ESTUDO DO MÉTODO DE FATORAÇÃO DE INTEIROS CRIVO QUADRÁTICO

Problema de Alocação de Berços em Terminais de Contêineres através de Algoritmos Genéticos

Modelo de Alocação de Vagas Docentes

SIMPÓSIO BRASILEIRO DE PESQUISA OPERACIONAL 8 a 11 de novembro de 2002, Rio de Janeiro/RJ A PESQUISA OPERACIONAL E AS CIDADES

Optimização com variáveis discretas

Modelo Heurístico para Otimização de Rotas nos Serviços de Leitura de Hidrômetros

Transcrição:

SIMULATED ANNEALING APLICADO A UM PROBLEMA DE ROTEIRIZAÇÃO E PROGRAMAÇÃO DE VEÍCULOS Geraldo Regs Maur Laboratóro Assocado de Computação e Matemátca Aplcada Insttuto Naconal de Pesqusas Espacas 12.227-010, São José dos Campos SP maur@lac.npe.br Luz Antono Noguera Lorena Laboratóro Assocado de Computação e Matemátca Aplcada Insttuto Naconal de Pesqusas Espacas 12.227-010, São José dos Campos SP lorena@lac.npe.br RESUMO Este trabalho apresenta um modelo matemátco geral e mult-objeto para o problema de roterzação e programação de eículos e uma aplcação do Smulated Annealng para resolêlo. O modelo trata a forma estátca do problema e abrange áros casos dstntos dos modelos mas comuns, tas como frota homogênea e heterogênea, garagens múltplas ou únca, e uma função de mnmzação mult-objeto que trata os custos de transporte e a nconenênca dos clentes atraés de penalzações. A aplcação do Smulated Annealng é smples, porém para a geração de noas soluções znhas, são utlzados três momentos de troca seleconados de forma aleatóra e unformemente dstrbuída, e as rotas são roterzadas e programadas separadamente por outros métodos heurístcos. Os resultados computaconas são obtdos atraés de nstâncas públcas dsponíes e comparados com outros métodos que apresentam o atual estado-da-arte em que o problema se encontra. PALAVRAS CHAVE. Roterzação e Programação de Veículos. Smulated Annealng. Modelo mult-objeto. LGT - Logístca e Transportes ABSTRACT Ths paper presents a general mult-objecte mathematcal model for dal-a-rde problem and an applcaton of Smulated Annealng to sole t. The model deals wth a statc mode of problem and comprehend seeral dstnct cases of the regular problem such as heterogeneous or homogeneous fleet of ehcles, mult or sngle depot and a mult-objecte mnmzng functon that treats transportaton costs and customer nconenences oer weghtng aganst each other. The Smulated Annealng applcaton s smple, but for the new neghbors' generaton, three types of moes are randomly used through a unform dstrbuton, and the routes are clustered and scheduled n a separate way for other heurstc methods. Computatonal results are performed oer publcly aalable data sets and the results are compared aganst current stateof-the-art methods. KEYWORDS. Dal-a-rde problem. Smulated Annealng. Mult-objecte model. LGT - Logstcs and Transportaton

1. Introdução De uma forma geral, o problema de roterzação e programação de eículos compartlha áras característcas de problemas com coleta e entrega, como por exemplo os serços de mensagens (correos). Porém, desde que é tdo a er com o transporte de pessoas, o níel do crtéro de serço (a qualdade do serço) se torna mas mportante e complexo. Assm, pontualdade, redução do tempo de espera e a duração das rotas são mas crítcas nesse caso do que em outros problemas correlatos (Cordeau e Laporte, 2003a). Esse problema é conhecdo por ser NP-dfícl, e áras metodologas êm sendo adotadas para resolê-lo. Como pode ser sto em Cordeau (2004), uma formulação matemátca exata para soluconar tal problema é muto complexa, e ncapaz de ser resolda em um tempo acetáel para problemas de tamanho real. O uso de heurístcas e metaheurístcas para soluconar esse problema em aumentando sgnfcatamente, pos tas métodos apesar de não garantrem a obtenção de soluções ótmas, permtem a nserção das númeras restrções de uma forma mas amena. Este trabalho apresenta uma alternata smples e efcaz para resoler o problema em questão. É proposto um modelo matemátco geral e mult-objeto para representar o problema, e a metaheurístca Smulated Annealng é utlzada juntamente com outras heurístcas para tratá-lo, ou seja, gerar roteros que sejam econômcos do ponto de sta operaconal e que satsfaçam à demanda dos clentes mantendo um bom níel de qualdade no serço prestado. O artgo está organzado como segue. A Seção 2 apresenta uma bree descrção do problema. O modelo é detalhado na Seção 3, enquanto a Seção 4 descree os métodos utlzados para resolê-lo. Os resultados computaconas obtdos são apresentados na Seção 5, e as conclusões são resumdas na Seção 6. 2. Descrção do Problema Dentre a classfcação dos problemas de roterzação e programação de eículos, aqueles que enolem o transporte de passageros de seus locas de orgem a seus destnos são conhecdos genercamente na lteratura como problemas do tpo dal-a-rde (Znamensy e Cunha, 1998). O Problema de Roterzação e Programação de Veículos ou Dal-a-Rde Problem DARP consste no desenolmento de rotas e escalas de eículos para transportar dersos usuáros, os quas especfcam requsções de embarque e desembarque (coleta e entrega) entre locas de orgem e destno específcos. O objeto desse processo é planejar um conjunto de rotas para alguns eículos, com custo mínmo, capaz de acomodar o maor número possíel de usuáros, e sempre obedecendo a um conjunto de restrções. Em se tratando especfcamente do caso de transporte de defcentes, um ponto de embarque (coleta) corresponde ao endereço onde um determnado defcente dee ser buscado, e o ponto de desembarque (entrega) assocado corresponde ao endereço onde o mesmo defcente dee ser entregue. Cada ponto de embarque e seu respecto ponto de desembarque, juntamente com suas respectas janelas de tempo, formam uma Requsção de Transporte de um clente. Uma tendênca comum nos modelos do DARP é dexar que os usuáros determnem uma janela de tempo (sto é, janelas ou nteralos de horáros para seu atendmento) para sua partda e sua chegada. Cada eículo possu uma capacdade, medda normalmente em número de assentos conenconas e número de caderas de rodas, por exemplo. Analogamente, a cada solctação de atendmento está assocada uma ocupação em termos de quantdade de assentos conenconas (eentuas acompanhantes) e em quantdade de caderas de rodas (Znamensy e Cunha, 1998). Segundo Cordeau e Laporte (2003a), e outros dersos autores, o DARP pode ser abordado de forma estátca ou dnâmca. No prmero caso, todas as requsções de transporte são conhecdas a pror, enquanto no segundo caso são consderadas requsções fetas ao longo do da (normalmente por telefone), e as rotas dos eículos são ajustadas em tempo real de acordo com a demanda. Porém, na prátca, raramente exstem DARPs dnâmcos puros, pos normalmente um subconjunto de requsções é conhecdo com antecedênca.

Normalmente, o crtéro de aalação utlzado na resolução do DARP nclu a dstânca total percorrda pelos eículos, a duração das rotas, o tempo médo de espera dos eículos nos locas de embarque e desembarque e o tempo médo de agem dos clentes (.e., tempo de permanênca dos clentes dentro dos eículos), sendo dado a cada um desses, um maor ou menor grau de mportânca em relação aos outros. 3. Modelagem proposta O modelo proposto neste trabalho trata o DARP de forma estátca (todas as requsções são conhecdas a pror), com múltplos eículos, com frota heterogênea (cada eículo possu sua uma capacdade dstnta) e garagens múltplas (cada eículo começa e termna sua rota em garagens específcas). Esta é uma abordagem que abrange dersas outras encontradas na lteratura (er Bergnsdottr et al. (2004), Cordeau e Laporte (2003a), Cordeau e Laporte (2003b), etc...), e é bem próxma às stuações reas do problema. Nesse modelo, assume-se ncalmente a exstênca de n clentes (requsções de transporte) a serem atenddos por m eículos. Cada requsção de transporte especfca um local de embarque e um de desembarque n+. Para representar o problema então, são defndos os seguntes conjuntos: K: conjunto dos eículos dsponíes ( K = m). G : conjunto de garagens de orgem. G + : conjunto de garagens de destno. P: conjunto dos locas de embarque. U: conjunto dos locas de desembarque. N = G P U G + : conjunto com todos os locas (pontos). Cada clente ( P) especfca a carga q necessára para seu transporte, ou seja, o número de assentos no eículo que ele rá ocupar, e também dos nteralos de horáros, um em que ele gostara de embarcar na sua orgem [e,l ], e outro que ele gostara de desembarcar no seu destno [e n+,l n+ ] (janelas de tempo). A carga q deerá ser um alor posto nos locas de embarque e o mesmo alor, porém negato, nos respectos locas de desembarque. Cada eículo ( K) tem uma capacdade conhecda Q (quantdade de assentos dsponíes), um tempo máxmo de duração assocado a sua rota T, e começa sua rota em uma garagem específca g e termna em uma outra g +, podendo ser a mesma ou não. Todas as garagens anda têm suas própras janelas de tempo para partda (garagem de orgem) e chegada (garagem de destno). A cada clente ( P) é assocado um tempo máxmo de agem R, ou seja, o tempo máxmo em que o clente poderá fcar dentro do eículo. A cada local ( {P U}) é assocado um tempo máxmo de espera W, ou seja, o tempo máxmo em que os eículos poderão fcar esperando até ncar o serço. Consdera-se como serço o embarque ou desembarque de um clente em um determnado local, sendo atrbuído um tempo s necessáro para sua completude. E por fm, dados os locas referentes às garagens e aos pontos pertencentes às requsções, têm-se as dstâncas d,j e as durações das agens t,j entre os pontos e j,,j N e j. O objeto então, é mnmzar os custos operaconas e a nsatsfação dos clentes, ou seja, mnmzar os requstos não-essencas do problema. Estes requstos estão relaconados à dstânca total percorrda pelos eículos, ao número de eículos utlzados na solução do problema, à duração das rotas, ao tempo de agem dos clentes e ao tempo de espera nos locas de embarque e desembarque. Exste anda um conjunto de requstos essencas que deem ser obedecdos, ou seja, requstos que obrgatoramente deem ser atenddos para que se obtenha uma solução álda (áel em termos prátcos) para o problema. Dentre esses requstos estão: a duração da rota executada pelo eículo ( K) não dee exceder o tempo máxmo permtdo T ; o tempo de agem do clente ( P) não dee exceder o tempo máxmo de agem permtdo R ; o

tempo de espera no local ( {P U}) não dee exceder o tempo máxmo de espera permtdo W ; a capacdade Q ( K) dos eículos não pode ser excedda em nenhum local; o níco do serço em todos os locas ( N) dee estar dentro dos nteralos préestabelecdos [e,l ]. De posse dessas nformações, pode-se defnr as aráes de decsão que rão fornecer toda a programação dos eículos. Consdera-se A como sendo o horáro de chegada no local ( N) pelo eículo que rá atender tal local, sendo A = 0 se G e A = D -1 + t -1, se {P U G + }; D ndca o horáro de partda do local ( N), noamente pelo eículo que rá atendêlo, sendo D = 0 se G + e D = B + s se {P U} e D = B se {G }; B representa o horáro de níco do serço no local ( N), sendo B = D se G e B = max{e,a } se {P U G + }; o tempo de espera antes do níco do serço no local ( N) é dado por W, sendo W = 0 se G e W = B A se {P U G + }; Q ndca a carga (número de assentos ocupados) do eículo que atende o local ( N), após o térmno do serço, sendo Q = 0 se {G G + } e Q = Q -1 + q se {P U}; e por fm, consdera-se R como sendo o tempo de agem do clente ( P), sendo R = B n+ D. A partr de então, consderando x,j = 1 caso o eículo á do local para o local j e x,j = 0 caso contráro, tem-se o segunte modelo matemátco: Mnmzar: ω + ) ω + + + 1 x ω 2 (B + D ) ω g, j g g 3 R ω 4 0 (d, j x, j W K N j N;j K j P K P {P U} + (1) β 0 max{0, (B + D ) T" } + β1 max{0, R R" } + β 2 max{0, W W" } + K g g P {P U} β 3 max{0, Q + ( + ) x, j Q ~ } β 4 max{0, e B} max{0, B l} (3) K {P U} U};j ; j n- N Sujeto à: x g, j + {g }} x +,g {U {g }} K = 1 = 1, j = 1 U}; j (2) K (4) K (5) x P (6) x, j x n+, j j {P U}; j + U {g }}; j ;j n+ x j, U {g }}; j ;j n+ x, j U}; j x j, x, j j {P U}; j + U {g }}; j ; j n, j = 0 = 0 = 0 K; P (7) K; P (8) K; U (9) B = (B + s + t + W ) x, j N; j (10) j, j j K Q = (Q + q ) x, j N; j (11) A j j K, j + = B W { P U G } (12) D = B + s { P U G } (13) R = B + D P (14) n

A = D + = Q = Q + = W = 0 K g g g g g, W, B, D, Q rresrtas N (15) A (16) R rresrta P (17) x j, {0,1} K;, j N; j (18) A função objeto é ddda em duas partes (equações (1) e equações (2) e (3)). A prmera (1) sa mnmzar os requstos não-essencas do problema, enquanto a segunda (2) e (3) sa à mnmzação das olações nos requstos essencas. Além dsso, os requstos nãoessencas são penalzados atraés de um etor de números nteros postos (pesos) ω = [ω 0,ω 1,ω 2,ω 3,ω 4 ], e os essencas com um etor semelhante β = [β 0,β 1,β 2,β 3,β 4 ]. As restrções (4) e (5) garantem, respectamente, que cada eículo saíra de sua garagem de orgem e chegará à sua garagem de destno uma únca ez, ou seja, cada rota será ncada em sua garagem de orgem e termnará em sua garagem de destno. A restrção (6) garante que cada clente será atenddo uma únca ez, ou seja, por apenas um eículo. A restrção (7) garante que um local de embarque estará sempre na mesma rota que seu respecto local de desembarque, enquanto que a contenção do fluxo, ou seja, tudo que entra é gual a tudo que sa, é garantda pelas restrções (8) e (9). A restrção (10) determna o horáro de níco do serço e o tempo de espera em cada local e também o eículo que o atenderá. Como mostrado em Cordeau (2004), essas restrções, em conjunto, garantem a elmnação de sub-rotas (sub-tours) no caso do DARP. A restrção (11) determna a carga dos eículos em cada local, enquanto as restrções (12), (13) e (14) garantem, respectamente, um cálculo correto dos horáros de chegada e partda nos locas e dos tempos de agem dos clentes. A restrção (15) ncalza algumas aráes referentes às garagens. Por fm, a restrção (18) apenas garante que as aráes de decsão x são bnáras, enquanto as restrções (16) e (17) garantem que as demas aráes sejam rrestrtas. 4. Smulated Annealng aplcado ao DARP O Smulated Annealng - SA é um método de busca local que aceta momentos de pora para escapar de ótmos locas. Ele fo proposto orgnalmente por Krpatrc et al. (1983), e se fundamenta em uma analoga com a termodnâmca, ao smular o resframento de um conjunto de átomos aquecdos. Para a utlzação do SA, dee-se defnr a pror, um método para geração de uma solução ncal S, um método para geração das soluções znhas S (estrutura de znhança), e uma função objeto f(s) a ser otmzada. 4.1. Solução ncal Neste trabalho, a solução ncal é gerada atraés de uma heurístca de dstrbução, que é responsáel pela roterzação dos eículos, ou seja, pela formação dos agrupamentos dos locas nas rotas e da seqüênca de atendmento destes. Essa heurístca é apresentada na Fgura 1. 1. CRIAR (m rotas azas, e atrbuí-las aos m eículos); 2. CRIAR (uma lsta L com todas as requsções de transporte dos clentes); 3. PARA (cada rota, = 1,2,...,m) FAÇA 4. SELECIONAR ( n/m requsções de L); 5. PARA (cada requsção seleconada) FAÇA 6. Pos1 posção qualquer da rota ; 7. Pos2 posção qualquer da rota, porém posteror a Pos1; 8. INSERIR (o ponto de embarque em Pos1); 9. INSERIR (o ponto de desembarque em Pos2); 10. FIM-PARA; 11. INSERIR (a garagem de orgem do eículo no níco da rota ); 12. INSERIR (a garagem de destno do eículo no fm da rota ); 13. REMOVER (as requsções seleconadas de L); 14. FIM-PARA; Fgura 1: Heurístca de dstrbução.

Nessa heurístca, são cradas ncalmente m rotas azas, sendo atrbuído, a cada uma delas, um eculo específco. Posterormente, todas as requsções de transporte dos clentes (pontos de embarque e seus respectos pontos de desembarque) são dstrbuídas aleatoramente, porém de forma unforme, a essas rotas, ou seja, as n requsções são dddas gualmente entre os m eículos. Obamente em alguns casos a dsão de n por m não será ntera, e nesses casos a últma rota deerá atender a um número superor de requsções. A seleção das requsções e das rotas que as atenderão também é aleatóra. As posções de nserção dos pontos (locas) na rota também são seleconadas de forma aleatóra, mas sempre atendendo a restrção de precedênca orunda da requsção de transporte do clente em questão, ou seja, o local de embarque sempre deerá ser anteror ao local de desembarque. Por fm, dedo ao fato de toda rota começar e termnar em garagens específcas (referentes ao eículo que rá executá-la), pode-se consderar que os locas referentes a estas garagens sempre serão alocados como prmero e últmo pontos em cada uma das rotas cradas. Como descrto anterormente, essa heurístca trata apenas da roterzação dos eículos, entretanto anda dee-se fazer a programação destes eículos, ou seja, determnar os horáros de chegada nos locas, os horáros de partda, etc. Para sso, é utlzada uma outra heurístca, denomnada heurístca de programação (Fgura 2), que é adaptada da apresentada em Cordeau e Laporte (2003b), e realza a programação de uma forma a tentar reduzr as olações nas janelas de tempo, a duração das rotas e os tempos de agem dos clentes. Nessa heurístca, é utlzado um conceto de atraso, proposto ncalmente por Saelsbergh (1992), que consste bascamente em atrasar, na medda do possíel, o horáro de partda da garagem de orgem e o níco do serço nos locas de embarque. 1. B 0 e 0 ; D 0 B 0 ; 2. CALCULAR (A,B,W,D,Q para cada ponto V e 0 ); 3. CALCULAR (F 0 ); 4. B 0 e 0 + mn F0, W p ; D 0 B 0 ; 0< p z 5. ATUALIZAR (A,B,W,D para cada ponto V e 0 ); 6. CALCULAR (R para cada ponto V e P); 7. PARA (cada ponto V e P) FAÇA 8. CALCULAR (F ); 9. B B + mn F, W p ; < p z 10. D B + s ; W B - A ; 11. ATUALIZAR (A j,b j,w j,d j para cada ponto j V e j posteror a ); 12. ATUALIZAR (R j para cada ponto j V, j P e n+j posteror a ); 13. FIM-PARA; Fgura 2: Heurístca de programação. Consderando então uma rota V = { 0,, j, n+j, n+,..., z }, executada pelo eículo ( K), tem-se que 0 e z representam, respectamente, as garagens de orgem e de destno de ( 0 G ; z G + ), e os demas pontos representam os pontos de embarque e desembarque, sempre lembrando que o ponto n+ representa o ponto de desembarque referente ao ponto de embarque, ou seja P e n+ U. Para uma rota V qualquer, o atraso é calculado da manera apresentada nas equações (19), (20) e (21), e sua programação é lustrada na Fgura 2. ( mn{l B, R ~ R ) + F = mn + j Wp j j j } se P (19) j z < p

F = mn Wp + ( l j B j ) j z < p j se G (20) F = 0 se {U G + } (21) 4.2. Estrutura de znhança Como estrutura de znhança, foram utlzados três dferentes momentos de troca: Re-ordenar rota, Re-alocar ponto e Trocar pontos. Esses momentos são baseados em outros encontrados freqüentemente nos trabalhos referentes ao DARP (er Bergnsdottr et al. (2004), Cordeau e Laporte (2003b), Saelsbergh (1992) e Hart (1996)). É nteressante destacar que nesses momentos não são consderadas as garagens, pos essas são fxas em todas as rotas, e conseqüentemente suas posções não poderão ser alteradas. (a) Fgura 3: Momento Re-ordenar rota. (b) O momento Re-ordenar rota consste bascamente em seleconar uma rota qualquer pertencente à solução, seleconar um ponto qualquer nessa rota, seleconar uma noa posção para esse ponto e trocar sua posção para a noa. Esse momento é lustrado na Fgura 3. Como é seleconado apenas um ponto na rota, este pode ser de embarque ou desembarque. No prmero caso (Fgura 3a), a noa posção deerá, obrgatoramente, ser anteror ao seu respecto ponto de desembarque. Já no segundo caso (Fgura 3b), a noa posção deerá ser posteror ao respecto ponto de embarque. Esses lmtes são apresentados atraés das lnhas pontlhadas na Fgura 3. Fgura 4: Momento Re-alocar pontos.

Já o momento Re-alocar pontos consste bascamente em também seleconar duas rotas quasquer pertencentes à solução, seleconar uma requsção qualquer em apenas uma das duas rotas, extraí-la (seus pontos de embarque e desembarque) de sua rota de orgem e adconála na outra rota, em posções quasquer. Esse momento é lustrado na Fgura 4. O ponto de embarque e seu respecto ponto de desembarque são extraídos smultaneamente, porém sua nserção na outra rota pode ser feta de forma separada, ou seja, esses pontos são alocados nddualmente em qualquer posção da rota, porém sempre mantendo a condção de que o ponto de embarque fque antes do ponto de desembarque (restrção de precedênca). V 1 1 2 n+1 n+2 V 2 3 n+3 4 5 n+5 n+4 V 1 1 2 n+1 n+2 V 2 3 n+3 4 5 n+5 n+4 V 1 ' 1 4 n+1 n+4 V 2 ' 3 n+3 2 5 n+5 n+2 Fgura 5: Momento Trocar pontos. 1. DADO (α, SAmax, T 0 e T C ) FAÇA 2. GERAR (uma solução S atraés da heurístca de dstrbução); 3. APLICAR (a heurístca de programação em todas as rotas de S); 4. S* S; {Melhor solução obtda até então} 5. IterT 0; {Número de terações na temperatura T} 6. T T 0 ; {Temperatura corrente} 7. ENQUANTO (T > T C ) FAÇA 8. ENQUANTO (IterT < SAmax) FAÇA 9. IterT IterT + 1; 10. GERAR (um znho qualquer S atraés de um dos mo. de troca); 11. APLICAR (a heurístca de programação em todas as rotas de S ); 12. f(s ) f(s); 13. SE ( < 0) S S ; 14. SE (f(s ) < f(s*)) S* S ; FIM-SE 15. SENÃO 16. TOMAR (x [0,1]); 17. SE (x < e - /T ) S S ; FIM-SE 18. FIM-SE 19. FIM-ENQUANTO 20. T α * T; IterT 0; 21. FIM-ENQUANTO 22. S S*; 23. RETORNAR (S); Fgura 6: Algortmo Smulated Annealng mplementado.

O momento Trocar pontos consste bascamente em seleconar duas rotas quasquer pertencentes à solução, seleconar uma requsção (ponto de embarque e seu respecto ponto de desembarque) qualquer em cada uma das duas rotas, e trocá-las. Esse momento é lustrado na Fgura 5. Nesse caso, como são trocadas requsções, ou seja, seus pontos de embarque e desembarque são trocados smultaneamente (trocados em pares), pode-se garantr que o ponto de embarque será sempre anteror ao seu respecto ponto de desembarque. A partr dessa estrutura de znhança, o SA fo mplementado de uma forma em que cada solução znha é gerada por apenas um desses momentos, sendo a sua escolha feta de forma aleatóra, porém unformemente dstrbuída, possbltando assm uma boa dersdade entre as soluções ntermedáras geradas, e conseqüentemente uma boa exploração do espaço de soluções. A função objeto f(s) utlzada para aalar as soluções é aquela descrta pelas equações (1), (2) e (3) (er Seção 3), e as restrções apresentadas no modelo proposto na Seção 3 ((4) a (18)) são atenddas mplctamente nas heurístcas de dstrbução e programação e nos momentos de troca aqu descrtos. Um pseudo-códgo do SA mplementado é apresentado na Fgura 6. 5. Resultados Computaconas Vsando aalar o potencal da abordagem apresentada neste trabalho, foram realzados áros expermentos nos quas foram utlzadas as nstâncas apresentadas por Cordeau e Laporte (2003b) (dsponíes em: <http://www.hec.ca/charedstrbutque/data/darp/>), que são referêncas em números trabalhos de consderáel mportânca para resolução do DARP (er Bergnsdottr et al. (2004), Cordeau e Laporte (2003b), etc.). Estão dsponíes 20 nstâncas, combnadas entre 24 a 144 requsções de transporte (48 a 288 pontos) e 3 a 13 eículos, sendo as prmeras nstâncas (R1a R10a) formadas por janelas de tempo largas e o restante (R1b R10b) formado por janelas de tempo mas estretas. Essas nstâncas representam problemas com garagem únca e frota homogênea, e não adotam o conceto de tempo máxmo de espera. Entretanto, o modelo aqu proposto (Seção 3) se adapta faclmente a elas. Para sso, basta tratar essa únca garagem como garagem de orgem e destno de todos os eículos, e um alor muto grande como tempo máxmo de espera (que rá elmnar a possbldade de ocorrer qualquer olação). Instânca Tabela 1: Resumo dos expermentos realzados. Nº de eículos Nº de requsções f(s) méda Melhor f(s) Deso (%) R1a 3 24 3721,57 3677,91 1,19 R2a 5 48 7101,87 7017,34 1,20 R3a 7 72 11982,18 11873,76 0,91 R4a 9 96 13982,52 13725,92 1,87 R5a 11 120 16006,82 15736,66 1,72 R6a 13 144 20607,77 20465,39 0,70 R7a 4 36 5718,46 5610,05 1,93 R8a 6 72 11554,71 11343,19 1,86 R9a 8 108 17345,60 15632,09 10,96 R10a 10 144 23104,61 22430,00 3,01 R1b 3 24 3407,87 3379,74 0,83 R2b 5 48 5925,35 5889,56 0,61 R3b 7 72 11045,26 11006,12 0,36 R4b 9 96 12856,75 12807,87 0,38 R5b 11 120 14874,48 14544,13 2,27 R6b 13 144 18795,79 18518,82 1,50 R7b 4 36 5202,93 5136,37 1,30 R8b 6 72 10791,67 10703,17 0,83 R9b 8 108 15180,91 15013,71 1,11 R10b 10 144 20492,56 19969,15 2,62

Os parâmetros utlzados pelo SA, em todos os expermentos foram T 0 = 20000, α = 0.975, Tc = 0.01 e SAmax = 1000. Já a escolha dos alores das penalzações (etores ω e β) aplcadas na função objeto ((1), (2) e (3)) fo baseada em uma análse apresentada por Bergnsdottr et al. (2004). Porém, neste trabalho, a penalzação para as olações nos requstos essencas fo mas pesada, sando etar a obtenção de soluções náldas para o problema. Os pesos utlzados foram: ω = [8,0,1,3,1] e β = [1500,1500,1500,1500,1500]. Para aldação do modelo proposto, e da aplcação do SA ao DARP, foram realzados 5 testes para cada nstânca. A Tabela 1 apresenta um resumo dos resultados obtdos nesses testes (f(s) é o alor da função objeto obtda). Nessa tabela, a coluna Melhor f(s) ndca o alor da função objeto da melhor solução encontrada nos 5 testes (para cada nstânca). A coluna f(s) méda apresenta a méda artmétca das 5 funções objeto encontradas, e a coluna Deso apresenta o deso obtdo entre esses testes (er equação (22)). f(s) méda Melhor Deso = Melhor f(s) f(s) *100 (22) Em todos esses testes, o número de eículos utlzados fo gual ao dsponíel, todas as requsções de transportes foram atenddas, e o mas mportante, todas as soluções obtdas foram áldas, ou seja, todas as restrções essencas foram satsfetas. Os melhores resultados obtdos (Tabela 2) anda são comparados aos obtdos por Cordeau e Laporte (2003b), atraés da metaheurístca Busca Tabu (Tabela 3), e por Bergnsdottr et al. (2004), atraés de um Algortmo Genétco (Tabela 4). Essas referêncas foram escolhdas dedo ao fato de representarem o atual estado-da-arte em que o problema se encontra. Apenas os resultados obtdos para algumas nstâncas são comparados a essas referêncas, pos Bergnsdottr et al. (2004) não apresenta os resultados para as demas. Instânca Tabela 2: Melhores soluções obtdas pelo Smulated Annealng. Dstânca percorrda Duração das rotas Tempo de espera (mn) Tempo de agem (mn) (mn) total médo total médo CPU (mn) R1a 252,79 831,3 ] 98,51 2,05 241,93 10,08 1,00 R2a 437,45 1992,34 594,9 6,2 310,17 6,46 1,20 R3a 831,74 2404,67 132,93 0,92 894,08 12,42 1,46 R5a 1085,45 3920,25 434,81 1,81 899,35 7,49 1,79 R9a 1064,23 3258,66 34,42 0,16 1275,06 11,81 2,28 R10a 1392,09 4475,42 203,33 0,71 2204,85 15,31 2,72 R1b 251,85 738,42 6,57 0,14 206,66 8,61 0,92 R2b 436,69 1428,44 31,75 0,33 311,95 6,5 1,30 R5b 1010,09 3654,02 243,94 1,02 855,16 7,13 1,95 R6b 1289,31 4318,33 149,02 0,52 1245,66 8,65 1,94 R7b 375,67 1095,67 0 0 345,1 9,59 1,05 R9b 1041,09 3315,28 114,19 0,53 1085,18 10,05 2,26 R10b 1414,65 4332,69 38,04 0,13 1427,08 9,91 2,77 TOTAL 10883,10 35765,49 2082,41 14,52 11302,23 124,01 22,64 Comparando os resultados obtdos com os apresentados por Cordeau e Laporte (2003b), pode-se notar que a abordagem proposta neste trabalho apresentou um aumento de 63,53% na dstânca total percorrda pelos eículos, porém no tempo de duração das rotas, houe um aumento de apenas 0,64%. Já no tempo médo de espera dos eículos, esta abordagem fo capaz de obter uma redução de 66,17%, no tempo médo de agem dos clentes 80,46%, e o mas nteressante, 95,45% no tempo de processamento necessáro para obter as soluções.

Em relação aos resultados obtdos por Bergnsdottr et al. (2004), a abordagem proposta neste trabalho fo capaz de reduzr 11,71% no tempo de duração das rotas, 48,53% no tempo médo de espera dos eículos, 75,33% no tempo médo de agem dos clentes, e 95,37% no tempo de processamento. Nesse caso, como as dstâncas percorrdas pelos eículos não são apresentadas em Bergnsdottr et al. (2004), não é feta nenhuma comparação. Já as dstâncas apresentadas em Cordeau e Laporte (2003b), e neste trabalho, são dstâncas Eucldanas entre os pontos, e conseqüentemente, não apresentam undade de medda. Todos os testes foram realzados em um laptop Toshba A10 S127 com processador Intel Celeron de 2.0 GHz e 256Mb de memóra RAM. Toda a mplementação fo desenolda na lnguagem C++. As soluções obtdas por Cordeau e Laporte (2003b) foram executadas em um PC Intel Pentum 4 de 2.0 GHz, e as obtdas por Bergnsdottr et al. (2004) em um PC Celeron de 2.0 GHz. Instânca Tabela 3: Melhores soluções obtdas por Cordeau e Laporte (2003b). Dstânca percorrda Duração das rotas Tempo de espera (mn) Tempo de agem (mn) (mn) total médo total médo CPU (mn) R1a 190,02 881,16 ] 211,15 4,40 1094,99 45,62 1,90 R2a 302,08 1985,94 723,87 7,54 1976,73 41,18 8,06 R3a 532,08 2579,35 607,27 4,22 3586,68 49,82 17,18 R5a 636,97 3869,95 832,98 3,47 6156,48 51,30 46,24 R9a 672,44 3155,49 323,05 1,50 5621,77 52,05 50,51 R10a 878,76 4480,10 721,33 2,50 7163,71 49,75 87,53 R1b 164,46 965,06 320,60 6,68 1041,50 43,40 1,93 R2b 296,06 1564,74 308,68 3,22 2393,18 49,86 8,29 R5b 589,74 3595,63 605,89 2,52 6104,72 50,87 54,33 R6b 743,60 4072,47 448,88 1,56 7347,39 51,02 73,70 R7b 248,21 1097,25 129,03 1,79 1761,99 48,94 4,23 R9b 601,96 3249,29 487,33 2,26 5581,02 51,68 51,28 R10b 798,63 4040,99 362,37 1,26 7072,29 49,11 92,41 TOTAL 6655,01 35537,42 6082,43 42,92 56902,45 634,60 497,59 Instânca Tabela 4: Melhores soluções obtdas por Bergnsdottr et al. (2004). Dstânca percorrda Duração das rotas Tempo de espera (mn) Tempo de agem (mn) (mn) total médo total médo CPU (mn) R1a - 1039 260 5,42 310 12,90 5,57 R2a - 1994 514 5,36 1330 27,72 11,43 R3a - 2781 301 2,09 2894 40,20 21,58 R5a - 4274 527 2,20 4837 40,30 58,23 R9a - 3526 32 0,15 6719 62,21 40,78 R10a - 5025 246 0,86 8341 57,92 65,98 R1b - 928 164 3,42 549 22,89 5,46 R2b - 1710 162 1,69 1300 27,07 11,72 R5b - 4336 568 2,37 4720 39,33 58,93 R6b - 5227 513 1,78 6397 44,42 81,23 R7b - 1316 128 1,78 784 21,76 8,29 R9b - 3676 177 0,82 5358 49,61 44,66 R10b - 4678 85 0,29 8119 56,38 66,41 TOTAL - 40508 3678 28,21 51657 502,72 488,61

6. Conclusões Este trabalho apresentou uma noa abordagem para resoler o problema de roterzação e programação de eículos. O modelo proposto fo capaz de representar o problema de uma forma generalzada, sendo faclmente adaptada a outros modelos já conhecdos. Os resultados obtdos (er Tabelas 1 e 2) mostram que o Smulated Annealng, juntamente com o modelo proposto (Seção 3) e as demas heurístcas descrtas na Seção 4, foram capazes de gerar soluções de boa qualdade para todas as nstâncas em tempos computaconas expressamente baxos. Esses resultados anda foram comparados com duas outras abordagens recentes encontradas na lteratura, e em todos os casos, a qualdade do serço fo expressamente maor, ou seja, a nconenênca dos clentes fo sgnfcatamente reduzda, o que na prátca, em se tratando da perspecta humana, reflete melhores soluções. Em relação ao trabalho de Cordeau e Laporte (2003b), a metodologa proposta apresentou um acréscmo na dstânca percorrda pelos eículos, apesar da duração das rotas terem sdo pratcamente guas. Isso é justfcado dedo ao fato de que nos resultados apresentados por Cordeau e Laporte (2003b) os eículos, apesar de andarem menos, gastam boa parte de seu tempo esperando, e conseqüentemente os clentes também. Já nos resultados obtdos pelo SA, essa espera é menor, pos os eículos prorzam (atraés das penalzações) o atendmento aos clentes, ou seja, a qualdade do serço prestado. Enfm, os resultados mostram claramente o potencal da abordagem apresentada, onde soluções de alta qualdade são obtdas, para problemas relatamente grandes, em tempos de processamento expressamente baxos. Agradecmentos Os autores agradecem à Fundação de Amparo à Pesqusa do Estado de São Paulo FAPESP (processo 04/11053-9) e ao Conselho Naconal de Pesqusas CNPq (processo 304598/2003-8) pelo apoo fnancero dado ao desenolmento deste trabalho. Referêncas Bergnsdottr, K. B., Larsen, J. e Jorgensen, R. M. (2004), Solng the dal-a-rde problem usng genetc algorthms. IMM-Techncal report-2004-202004. Techncal Unersty of Denmar. Cordeau, J. F. (2004), A branch-and-cut algorthm for the dal-a-rde problem. Techncal report 2004-23. Center for Research on Transportaton (CRT), Montreal. Cordeau, J. F. e Laporte, G. (2003a), The Dal-a-Rde Problem (DARP): Varants, modelng ssues and algorthms. 4OR - Quarterly Journal of the Belgan, French and Italan Operatons Research Socetes, 1: 89-101. Cordeau, J. F. e Laporte, G. (2003b), A tabu search heurstc for the statc mult-ehcle dal-arde problem. Transportaton Research B, 37: 579-594. Hart, S. M. (1996), The modelng and soluton of a class of dal-a-rde problems usng smulated annealng. Control and Cybernetcs Specal Issue on Smulated Annealng Appled to Combnatoral Optmzaton, 25(1): 131-157. Krpatrc, S., Gellat, D. C. e Vecch, M. P. (1983), Optmzaton by smulated annealng. Scence, 220: 671-680. Saelsbergh, M. W. P. (1992), The ehcle routng problem wth tme wndows: Mnmzng route duraton. ORSA Journal on Computng, 4:146-154. Xu, H., Chen, Z. L., Rajagopal, S. e Arunapuram, S. (2003), Solng a practcal pcup and delery problem. Transportaton Scence, 37(3): 347-364. Znamensy, A. e Cunha, C. B. (1998), Um modelo para o problema de roterzação e programação do transporte de defcentes. XIII Congresso de Pesqusa e Ensno em Transportes.