• Nenhum resultado encontrado

Alan Robert Resende de Freitas Universidade Federal de Ouro Preto

N/A
N/A
Protected

Academic year: 2021

Share "Alan Robert Resende de Freitas Universidade Federal de Ouro Preto"

Copied!
80
0
0

Texto

(1)

Resolvendo o Problema do Caixeiro

Viajante via Procedimento de Busca

Adaptativa Aleat´

oria Gulosa com

Constru¸

ao Baseada em Redes Neurais

Auto-Organiz´

aveis

Alan Robert Resende de Freitas

Universidade Federal de Ouro Preto

Monografia submetida ao Departamento de Computa¸c˜ao da Universidade Federal de Ouro Preto para obten¸c˜ao do t´ıtulo de bacharel em Ciˆencia da Computa¸c˜ao

(2)
(3)

Dedico este trabalho a meus pais, que tanto contribu´ıram para minha forma¸c˜ao.

(4)
(5)

Resolvendo o Problema do Caixeiro Viajante via

Procedimento de Busca Adaptativa Aleat´

oria Gulosa

com Constru¸

ao Baseada em Redes Neurais

Auto-Organiz´

aveis

Resumo

Problemas da classe N˜ao-Polinomial (NP) s˜ao muito dif´ıceis de se resolver com m´etodos enumerativos pois o tempo de processamento ´e absolutamente invi´avel a n˜ao ser quando instˆancias muito pequenas de problemas est˜ao sendo resolvidas, j´a que o aumento do tempo do processamento ´e exponencial.

Para contornar este problema, podem ser usadas heur´ısticas que em v´arios casos podem encontrar solu¸c˜oes de boa rela¸c˜ao custo(ou tempo de processamento)/benef´ıcio, considerando-se os tamanhos da instˆancias.

Neste trabalho, ´e proposta uma abordagem para o Problema do Caixeiro Viajante (PCV) atrav´es de um procedimento de busca adaptativa gulosa (GRASP) que usa redes neurais baseadas em mapas auto-organiz´aveis (SOM) em sua fase construtiva e busca Tabu para o refinamento das solu¸c˜oes.

Experimentos para a dedu¸c˜ao dos melhores parˆametros para as redes neurais e busca Tabu tamb´em s˜ao apresentados neste trabalho. Entre os parˆametros que podem mudar o comportamento do m´etodo est˜ao o numero de neurˆonios em rela¸c˜ao ao n´umero de cidades, o modo como ´e selecionado o neurˆonio vencedor na fase de competi¸c˜ao e o n´umero de neurˆonios que s˜ao influenciados na fase de coopera¸c˜ao.

(6)

Outra preocupa¸c˜ao ´e tamb´em fazer com que as redes neurais gerem solu¸c˜oes com alta diversidade, o que ´e fundamental para o GRASP. Ap´os todas as defini¸c˜oes b´asicas, um estudo de abordagens para o Problema de Roteamento de Ve´ıculos ´e apresentado.

Palavras-chave: Problema do Caixeiro Viajante, redes auto-organiz´aveis, otimiza¸c˜ao combinat´oria, Metaheur´ısticas, Problema de Roteamento de Ve´ıculos, Busca Tabu, GRASP

(7)

Solving the Travelling Salesman Problem via a Greedy

Randomized Adaptive Search Procedure with a

constructive heuristic based on Self-Organizing Maps

Abstract

Problems of the Non-Polinomial (NP) class are very hard to solve with enumeration methods since the processing time is absolutely impracticable unless the instances being solved are very small, since the growth of the processing time is exponential.

To deal with this problem, it is possible to use some heuristics that are able to find solutions with a good relation between processing time and quality, regarding the size of the instances.

This work proposes an approach for the Travelling Salesman Problem (TSP) through an Greedy Randomized Adaptive Search Procedure (GRASP) that uses Artificial Neural Networks (ANN) based on Self-organizing Maps (SOM) for the construction phase and a Tabu Search for the local search phase.

Experiments for the deduction of the best parameters for the ANN and the Tabu Search are also shown in this work. The number of neurons according to the number of cities, the way the winner neuron is selected in the competition phase and the number of neurons influenced by the winner in the cooperation phase are some of the parameters that may change the behavior of the method.

Another concern is also to make the ANN create high diversity solutions, which is fundamental for the GRASP to work appropriately. Apart from all of the basic definitions, a study of approaches for the Vehicle Routing Problem is presented.

(8)

Keywords: Travelling Salesman Problem, Self-organizing Maps, Combinatorial Op-timization, Meta heuristics, Vehicle Routing Problem, Tabu Search, GRASP

(9)

Declara¸

ao

Esta monografia ´e resultado de meu pr´oprio trabalho, exceto onde referˆencia expl´ıcita ´e feita ao trabalho de outros, e n˜ao foi submetida para obten¸c˜ao de t´ıtulo nesta nem em outra universidade.

(10)
(11)

Agradecimentos

Agrade¸co a todos que direta ou indiretamente contribu´ıram para o desenvolvimento deste trabalho.

A meus pais, pelo apoio em todos os momentos de dificuldade.

A meu orientador, Frederico Gadelha Guimar˜aes, por todo o conhecimento passado durante a produ¸c˜ao deste trabalho e por toda a paciˆencia e dedica¸c˜ao.

`

As tias Consola¸c˜ao e Aparecida pela ajuda e abrigo quando necess´arios. Ao DECOM e UFOP pelo ensino gratuito de qualidade.

(12)
(13)

Sum´

ario

Lista de Figuras xvii

Lista de Tabelas xix

Nomenclatura 1 1 Preliminares 3 1.1 Introdu¸c˜ao . . . 3 1.2 Objetivos . . . 5 1.2.1 Objetivos Gerais . . . 5 1.2.2 Objetivos Espec´ıficos . . . 5

1.3 Revis˜ao Bibliogr´afica . . . 5

1.4 Organiza¸c˜ao do Trabalho . . . 7

2 PCV E PRV 9 2.1 Problema do Caixeiro Viajante . . . 9

2.1.1 Modelagem . . . 9

2.1.2 Computando uma solu¸c˜ao . . . 11

2.1.3 Instˆancias do problema . . . 14

(14)

3 Redes Neurais Auto-Organiz´aveis 17

3.1 Conceitos b´asicos . . . 17

3.2 Redes SOM para resolu¸c˜ao do PCV . . . 17

3.3 Algoritmo . . . 19 3.3.1 Inicializa¸c˜ao da Rede . . . 19 3.3.2 Competi¸c˜ao . . . 20 3.3.3 Coopera¸c˜ao . . . 20 3.3.4 Adapta¸c˜ao . . . 21 3.4 Exemplo de Execu¸c˜ao . . . 23

4 Metaheur´ısticas GRASP e Busca TABU 27 4.1 GRASP . . . 27 4.2 Busca TABU . . . 29 4.3 GRASP reativo . . . 31 5 Resultados 33 5.1 PCV . . . 33 5.2 PRV . . . 34 5.3 Gera¸c˜ao de Diversidade . . . 35

5.3.1 Pela taxa de aprendizado . . . 37

5.3.2 Pelo n´umero de neurˆonios em rela¸c˜ao `as cidades . . . 37

5.3.3 Pelo n´umero de neurˆonios influenciados pelo neurˆonio vencedor . 38 5.3.4 Pela escolha do neurˆonio vencedor . . . 40

6 Conclus˜oes e Trabalhos Futuros 47

A Artigo Publicado 49

(15)
(16)
(17)

Lista de Figuras

1.1 Ciclo Hamiltoniano . . . 6

2.1 Representa¸c˜ao de um PCV . . . 10

2.2 Representa¸c˜ao de um PRV com 1 dep´osito e 3 p´etalas. . . 15

3.1 Estrutura de uma rede SOM bi-dimensional . . . 18

3.2 Estrutura de uma rede SOM unidimensional . . . 18

3.3 Estrutura de uma rede SOM toroidal . . . 19

3.4 Fun¸c˜ao de vizinhan¸ca . . . 21

3.5 Rela¸c˜ao entre a taxa de aprendizado e o n´umero de itera¸c˜oes . . . 23

3.6 Rela¸c˜ao entre a fun¸c˜ao de vizinhan¸ca e o n´umero de itera¸c˜oes . . . 24

3.7 Aplica¸c˜ao de redes SOM (25 itera¸c˜oes) a um PCV de 70 cidades . . . 25

4.1 Representa¸c˜ao de dois m´ınimos locais . . . 30

5.1 Custo m´edio das solu¸c˜oes para diferentes valores da taxa de aprendizado 38 5.2 Tempo m´edio consumido para diferentes valores da taxa de aprendizado . 39 5.3 Distribui¸c˜ao das solu¸c˜oes geradas pela rede SOM variando-se o n´umero de neurˆonios . . . 39 5.4 Custo m´edio das solu¸c˜oes para diferentes valores de propor¸c˜ao de neurˆonios 40 5.5 Tempo m´edio consumido para diferentes valores de propor¸c˜ao de neurˆonios 41

(18)

5.6 Distribui¸c˜ao das solu¸c˜oes geradas pela rede SOM variando-se o n´umero de neurˆonios influenciados pelo vencedor . . . 42 5.7 Custo m´edio das solu¸c˜oes para diferentes n´umeros de neurˆonios

influen-ciados pelo vencedor . . . 42 5.8 Tempo m´edio consumido para diferentes valores de neurˆonios

influencia-dos pelo vencedor . . . 43 5.9 N´umero de neurˆonios disputando o trof´eu (k) em rela¸c˜ao ao tempo (t) . . 44 5.10 Qualidade das solu¸c˜oes geradas por redes SOM com diferentes valores de ψ 45 5.11 Qualidade das solu¸c˜oes geradas pelo GRASP com diferentes valores de ψ 45 5.12 Qualidade das solu¸c˜oes para diferentes valores de ψ . . . 46

(19)

Lista de Tabelas

5.1 Erro m´edio dos resultados obtidos . . . 34 5.2 Erro m´edio dos resultados obtidos com 3 p´etalas . . . 35 5.3 Erro m´edio dos resultados obtidos com 5 p´etalas . . . 36

(20)
(21)

Lista de Algoritmos

4.1 GRASP . . . 28 4.2 Busca TABU . . . 31 4.3 GRASP Reativo . . . 32

(22)
(23)

Nomenclatura

ACO Otimiza¸c˜ao por Colˆonia de Formigas (Ant Colony Optimization)

BT Busca Tabu

EA Algoritmos Evolucion´arios (Evolutionary Algorithms) GRASP Procedimento de Busca Adaptativa Aleat´oria Gulosa

(Greedy Randomized Adaptive Search Procedure)

FI First Improvement

MTS Match Twice and Stitch

NN Vizinho mais pr´oximo (Nearest Neighbor)

NP N˜ao-Polinomial

PCV Problema do Caixeiro Viajante

RNA Redes Neurais Artificiais (Artificial Neural Networks)

PRV Problema do Roteamento de Ve´ıculos

SA Recozimento Simulado (Simulated Annealing)

SOM Mapas Auto-Organiz´aveis (Self-Organizing Maps)

TS Busca Tabu (Tabu Search)

(24)
(25)

Cap´ıtulo 1

Preliminares

1.1

Introdu¸

ao

Problemas combinat´orios podem ser encontrados em v´arias situa¸c˜oes pr´aticas em que se deve procurar uma combina¸c˜ao de valores ´otimos em um conjunto finito de solu¸c˜oes. Estes problemas s˜ao normalmente NP-completo ou NP-dif´ıcil, ou seja, n˜ao existe um m´etodo matem´atico que encontre a solu¸c˜ao ´otima em um tempo polinomial.

Para contornar este problema, ´e interessante fazer o uso de heur´ısticas, que ape-sar de nem sempre encontrarem o ´otimo global do dado problema, podem encontrar solu¸c˜oes aceit´aveis com um tempo de processamento polinomial em rela¸c˜ao ao tamanho da instˆancia de entrada.

Neste trabalho, ser´a abordado em princ´ıpio o problema do caixeiro viajante (PCV) com um procedimento de busca adaptativa aleat´oria gulosa (Greedy Randomized Adap-tive Search Procedure - GRASP). O GRASP ´e um procedimento que gera solu¸c˜oes iniciais e refina estas solu¸c˜oes um dado n´umero de vezes sem considerar a solu¸c˜ao das itera¸c˜oes anteriores, atingindo resultados que n˜ao tˆem necessariamente rela¸c˜ao com o resultado da itera¸c˜ao anterior. Isto faz com que o procedimento seja n˜ao-determin´ıstico e possa assim percorrer melhor o espa¸co de busca das solu¸c˜oes.

O PCV ´e tamb´em muito interessante pois ´e um caso particular do problema de roteamento de ve´ıculos (PRV) e ´e utilizado para testar novas t´ecnicas de otimiza¸c˜ao combinat´oria. A defini¸c˜ao do problema ´e basicamente achar a menor rota poss´ıvel que passe por todas as cidades de um conjunto, visitando cada cidade uma ´unica vez. Para um conjunto de n cidades, existem (n− 1)!/2 rotas poss´ıveis, o que torna invi´avel o

(26)

4 Preliminares

c´alculo da melhor solu¸c˜ao poss´ıvel atrav´es de um m´etodo de for¸ca bruta pois o n´umero de rotas cresce fatorialmente em rela¸c˜ao ao n´umero de cidades. Atualmente, o PCV n˜ao tem ainda uma solu¸c˜ao matem´atica que possa ser calculada em tempo polinomial.

Neste trabalho, uma Rede Neural Artificial Auto-Organiz´avel (Self-Organizing Maps - SOM) ´e utilizada na gera¸c˜ao de solu¸c˜oes iniciais do GRASP, gerando solu¸c˜oes iniciais relativamente boas, j´a a princ´ıpio. Na fase de refinamento do GRASP, o m´etodo de Busca Tabu (BT) ´e utilizado, levando a solu¸c˜ao a um ´otimo local. Ap´os algumas execu¸c˜oes do GRASP temos uma boa rela¸c˜ao entre o custo de processamento e a qualidade da solu¸c˜ao.

J´a existem trabalhos que prop˜oem solu¸c˜oes para o PCV, como o k-opt (Lin & Ker-nighan, 1973), em que k sub-rotas da rota corrente s˜ao substitu´ıdas por outras k sub-rotas de modo que uma rota menor seja produzida. Baseada neste m´etodo, foi proposta a heur´ıstica de Lin-Kernighan onde o valor ideal de k ´e determinado a cada itera¸c˜ao.

Quando redes SOM s˜ao aplicadas ao PCV temos um m´etodo eficiente pois n˜ao existe a necessidade de avalia¸c˜ao das solu¸c˜oes a cada itera¸c˜ao. Este ´e um fator que pode representar uma economia de tempo de processamento relativamente grande em alguns casos com um grande n´umero de cidades. Al´em disto, redes SOM geralmente encontram solu¸c˜oes boas o suficiente para que possam ser usadas como solu¸c˜oes finais em v´arias situa¸c˜oes pr´aticas.

Assim, ser´a proposta aqui uma solu¸c˜ao do PCV utilizando o GRASP, sendo que ser´a utilizada uma rede SOM para a defini¸c˜ao da solu¸c˜ao inicial do procedimento e uma busca Tabu para o refinamento da mesma.

As redes SOM produzem solu¸c˜oes para o PCV que s˜ao normalmente de relativa qualidade por´em n˜ao s˜ao localmente ´otimas. Assim, o procedimento GRASP usar´a as redes SOM para gera¸c˜ao de uma solu¸c˜ao inicial e uma busca Tabu ser´a usada para que se chegue a uma solu¸c˜ao que seja ent˜ao um ´otimo local.

Para que o GRASP ache boas solu¸c˜oes, ´e fundamental que as solu¸c˜oes iniciais tenham uma diversidade elevada (Feo & Resende, 1995), podendo assim convergir para diferentes ´

otimos locais no processo de refinamento. Ser´a objeto de estudo deste trabalho, ent˜ao, os parˆametros convenientes para que se controle a diversidade das solu¸c˜oes iniciais geradas.

(27)

Preliminares 5

1.2

Objetivos

1.2.1

Objetivos Gerais

Neste trabalho ser´a apresentada uma solu¸c˜ao para o Problema do Caixeiro Viajante (PCV) e Problema do Roteamento de Ve´ıculos (PRV). Ambos s˜ao bastante estudados na literatura e ´e proposta neste trabalho uma solu¸c˜ao baseada em Redes Neurais Artificiais Auto-Organiz´aveis, usadas juntamente com o refinamento de buscas locais de primeira melhora (First Improvement - FI) e Busca Tabu (BT). Para uma maior explora¸c˜ao do espa¸co de busca ´e tamb´em usado o Procedimento de Busca Adaptativa Aleat´oria Gulosa (GRASP) com a inten¸c˜ao de se gerar diversidade para as solu¸c˜oes estudadas.

1.2.2

Objetivos Espec´ıficos

Al´em dos testes com as Redes Neurais e seus resultados, ´e tamb´em estudada neste trabalho a rela¸c˜ao entre os valores de configura¸c˜ao das Redes Neurais que geram maior diversidade nas solu¸c˜oes encontradas, mesmo que esta diversidade penalize de certo modo a qualidade das solu¸c˜oes geradas. Isso ´e extremamente importante j´a que as Redes Neurais ser˜ao usadas como ferramenta de cria¸c˜ao de solu¸c˜oes iniciais para o GRASP, procedimento em que a diversidade de suas solu¸c˜oes iniciais ´e primordial para que ap´os o refinamento o mesmo tenha uma convergˆencia para diferentes ´otimos locais, o que aumenta a probabilidade de se encontrar uma melhor solu¸c˜ao entre as solu¸c˜oes refinadas geradas.

1.3

Revis˜

ao Bibliogr´

afica

Definir quais foram os primeiros estudos sobre o PCV ´e uma tarefa complicada j´a que existem estudos antigos de matem´aticos sobre o assunto do s´eculo XIX, como por exem-plo, os estudos de W.R. Hamilton e Thomas Kirkman, que deram origem ao conceito de ciclo hamiltoniano (Hankins, 1980). Em 1857, Hamilton criou um jogo matem´atico denominado Jogo Icosiano, onde o objetivo era encontrar o ciclo hamiltoniano de um dodecaedro em que cada v´ertice ´e visitado uma e apenas uma vez, sendo o ponto de partida tamb´em o ponto final.

Na d´ecada de 1930, a forma geral do problema parece surgir de estudos novos, destacando-se Karl Menger (Schrijver, 2005), que define o problema considerando um algoritmo que o resolve por for¸ca-bruta e observando que o algoritmo guloso de procura pela vizinhan¸ca mais pr´oxima a cada passo n˜ao ´e ´otimo. Logo depois, Hassler

(28)

Whit-6 Preliminares

Figura 1.1: Ciclo Hamiltoniano

ney (Schrijver, 2005), da Universidade de Princeton, come¸ca a usar o termo Travelling Salesman Problem (TSP) ou Problema do Caixeiro Viajante (PCV).

Nas d´ecadas de 1950 e 1960, surgiram importantes contribui¸c˜oes de George Dantzig, Delbert Ray Fulkerson e Selmer M. Johnson da RAND Corporation em Santa Mˆonica. Eles expressaram o PCV como uma problema de programa¸c˜ao linear e desenvolveram o m´etodo de plano de cortes para solucion´a-lo (Dantzig, 1959). O m´etodo se baseia em refinar um conjunto de solu¸c˜oes fact´ıveis por meio de express˜oes de desigualdade lineares, chamados de cortes. Assim, conseguiram uma solu¸c˜ao ´otima para uma instˆancia de 49 cidades construindo uma rota e provando que nenhuma outra rota poderia ser menor.

Nas d´ecadas seguintes, o problema foi estudado por v´arios pesquisadores, sendo que em 1972, Richard M. Karp mostrou que o ciclo hamiltoniano era NP-completo (Apple-gate, 2006), o que implica na complexidade n˜ao-polinomial do PCV. Deste estudo surge explica¸c˜ao para a dificuldade computacional de se achar rotas ´otimas. Nas d´ecadas de 1970 e 1980, foi feito progresso quando Gr¨otschel, Padberg, Rinaldi e outros consegui-ram encontrar solu¸c˜oes para instˆancias de at´e 2392 cidades, usando o m´etodo de plano de cortes e o m´etodo de ramifica¸c˜ao e podas (Gr¨otschel, 1980); (Gr¨otschel & Holland, 1991); (Padberg & Rinaldi, 1987); (Padberg & Rinaldi, 1991).

Na d´ecada de 1990, Applegate, Bixby, Chv´atal e Cook desenvolveram um programa chamado Concorde que tem sido usado em muitas solu¸c˜oes atuais que s˜ao recordes (Ap-plegate, 2006). Em 1991, foi publicada uma biblioteca chamada TSPLib (Reinelt, 1991): uma cole¸c˜ao de instˆancias de variadas dificuldades que tem sido usada por diferentes gru-pos de pesquisa para comparar resultados. Essa ´e a biblioteca de instˆancias que ser´a usada neste trabalho.

(29)

Preliminares 7

Em 2005, Cook e outros calcularam uma rota ´otima para uma instˆancia de 33,810 cidades que resolvia um problema relacionado ao desenvolvimento de um micro-chip (Applegate, 2006). Atualmente, esta ´e a maior instˆancia da biblioteca TSPLib. Para outras instˆancias com milh˜oes de cidades, solu¸c˜oes que provavelmente variam em 1% do ´

otimo podem ser encontradas.

O GRASP (Feo & Resende, 1995) foi um algoritmo primeiramente usado para o problema da cobertura de conjuntos (Feo & Resende, 1989). ´E um algoritmo que consiste basicamente de duas fases: de constru¸c˜ao e de busca local. Ap´os v´arias itera¸c˜oes no GRASP, a melhor solu¸c˜ao encontrada ´e tida como resultado.

A Busca Tabu (BT) (Glover & Laguna, 1997) foi uma solu¸c˜ao inicialmente usada para problemas de programa¸c˜ao inteira e teve depois seu algoritmo descrito de maneira generalizada para uso em outros problemas de otimiza¸c˜ao combinat´oria (Adams et al., 1988). A principal caracter´ıstica deste m´etodo ´e que ele permite solu¸c˜oes de piora em rela¸c˜ao `a solu¸c˜ao atual para tentar fugir de um ´otimo local. Para que n˜ao se retorne a solu¸c˜oes anteriores, estruturas de mem´oria s˜ao usadas. As redes SOM podem ser usadas para resolver PCVs, por´em elas n˜ao levam a um ´otimo local sem a ajuda de uma outra heur´ıstica de refinamento (Veira et al., 2003). Em algumas instˆancias da biblioteca TSPLib, o uso de redes SOM apenas levam a resultados que, na m´edia, divergem em apenas 3,7% das rotas ´otimas conhecidas. Foram tamb´em estudados parˆametros que fazem as redes SOM levarem a melhores solu¸c˜oes para PVC por´em estes parˆametros podem n˜ao ser v´alidos caso haja a inten¸c˜ao de se refinar a solu¸c˜ao obtida com um outro m´etodo, como o GRASP.

1.4

Organiza¸

ao do Trabalho

Este ´e um trabalho dividido em sete cap´ıtulos, incluindo a introdu¸c˜ao, onde s˜ao contextualizados os problemas, a solu¸c˜ao proposta, objetivos, suas aplica¸c˜oes e estudos pr´evios.

No Cap´ıtulo 2 s˜ao explicados em detalhes quais s˜ao os problemas e o que os tornam aplic´aveis a v´arias situa¸c˜oes pr´aticas. O PCV ´e explicado em detalhes, assim como sua transforma¸c˜ao em um PRV.

No Cap´ıtulo 3 h´a uma breve explica¸c˜ao sobre Redes Neurais seguida de uma apre-senta¸c˜ao das Redes Neurais Auto-Organiz´aveis, que s˜ao usadas no trabalho para a gera¸c˜ao de solu¸c˜oes iniciais para o procedimento GRASP.

(30)

8 Preliminares

No Cap´ıtulo 4, as metaheur´ısticas GRASP e busca Tabu s˜ao detalhadas. S˜ao defini-dos os parˆametros que podem ser configurados e suas consequˆencias.

No Cap´ıtulo 5 s˜ao apresentados os resultados da aplica¸c˜ao do m´etodo proposto a instˆancias padr˜ao dos problemas propostos. S˜ao inclu´ıdos neste cap´ıtulo, compara¸c˜oes com outros resultados obtidos com diferentes m´etodos.

No Cap´ıtulo 6 s˜ao apresentadas as conclus˜oes sobre o trabalho desenvolvido e ideias de trabalhos futuros que podem ser desenvolvidos, baseando-se nestas conclus˜oes.

(31)

Cap´ıtulo 2

PCV E PRV

2.1

Problema do Caixeiro Viajante

Apesar de parecer modesto, o PCV ´e muito estudado por cientistas. A defini¸c˜ao do problema ´e basicamente encontrar a menor rota que passa por todas as cidades de um mapa sendo que nenhuma cidade pode ser visitada mais de uma vez.

O PCV foi inicialmente formulado como um problema matem´atico e ´e um dos pro-blemas mais estudados em otimiza¸c˜ao como um padr˜ao para testar a eficiˆencia de me-taheur´ısticas. Assim, v´arios m´etodos para a solu¸c˜ao do problema s˜ao conhecidos.

Este ´e um problema que tem v´arias aplica¸c˜oes desde planejamento e log´ıstica at´e o desenvolvimento de micro-chips. Podem tamb´em ser usadas met´aforas, onde as cidades do PCV podem representar clientes, pontos de solda ou fragmentos de DNA e o con-ceito de distˆancia pode representar o tempo de viagem, o custo ou a similaridade entre fragmentos de DNA.

Partimos do pressuposto de que n˜ao existe algoritmo eficiente que resolve o PCV em tempo polinomial pois o mesmo pertence a classe NP-completo (Applegate, 2006). O pior caso de execu¸c˜ao de pequenas instˆancias de apenas centenas de cidades do PCV pode demorar anos para ser conclu´ıdo.

2.1.1

Modelagem

O PCV pode ser modelado como um grafo em que cidades s˜ao representadas por v´ertices e as liga¸c˜oes s˜ao as arestas. Assim, a distˆancia entre as cidades fica sendo representada pelo comprimento das arestas. Com esta representa¸c˜ao, a rota do PCV se

(32)

10 PCV E PRV

Figura 2.1: Representa¸c˜ao de um PCV

torna um ciclo hamiltoniano e o ´otimo global do problema ´e tamb´em o ciclo hamiltoniano mais curto poss´ıvel.

Em problemas sim´etricos, a distˆancia de ida e de volta entre duas cidades ´e a mesma, o que forma um grafo n˜ao direcionado. Esta simetria faz com que o n´umero de rotas poss´ıveis caia pela metade. J´a em um PCV assim´etrico, podem n˜ao existir caminhos entre duas cidades ou as distˆancias podem ser diferentes, o que gera um grafo direcionado. Acidentes de autom´oveis, ruas de m˜ao-´unica ou pre¸cos de passagem que podem ser diferentes de acordo com a cidade de partida e chegada s˜ao exemplos que podem fazer o uso de PCV assim´etricos necess´ario.

No PCV m´etrico, o comprimento da aresta define a m´etrica do c´alculo da distˆancia entre as cidades. Quando as cidades s˜ao vistas como pontos no plano, muitas fun¸c˜oes de distˆancia naturais s˜ao m´etricas. No PCV Euclidiano, a distˆancia entre duas cidades ´e a distˆancia Euclidiana entre dois pontos correspondentes e ´e essa a m´etrica considerada neste trabalho. Al´em deste, existem tamb´em o PCV retil´ıneo, onde a distˆancia entre

(33)

PCV E PRV 11

duas cidades ´e a soma da diferen¸ca entre suas coordenadas x e y, e a m´etrica m´axima, onde a distˆancia ´e o m´aximo entre as diferen¸cas das coordenadas x e y. Estas duas ´

ultimas podem ser ´uteis para definir a opera¸c˜ao de uma m´aquina que perfura circuitos. As medidas de distˆancia n˜ao satisfazem apenas com estas m´etricas em v´arios proble-mas em que se deve definir rotas pois para alguns modos de transporte, como o avi˜ao, viagens podem ser mais r´apidas mesmo cobrindo uma distˆancia maior, por exemplo. Em sua defini¸c˜ao, o PCV n˜ao permite que cidades sejam visitadas mais de uma vez, por´em v´arias aplica¸c˜oes pr´aticas precisam desta constante. Nestes casos, uma instˆancia n˜ ao-m´etrica sim´etrica pode ser reduzida em uma m´etrica. Isso substitui o grafo original com um grafo completo no qual a distˆancia ´e trocada pela menor distˆancia entre as cidades no grafo original.

´

E importante citar que o fato de ser necess´ario retornar `a cidade inicial do problema n˜ao aumenta a complexidade computacional do problema.

2.1.2

Computando uma solu¸

ao

Os m´etodos mais comuns para tratar estes problemas consistem em desenvolver algo-ritmos para procurar solu¸c˜oes exatas, o que vai ser relativamente r´apido para instˆancias pequenas, ou desenvolver heur´ısticas, que calculam solu¸c˜oes boas que n˜ao podem ser confirmadas como ´otimas.

O problema tem se mostrado ser NP-dif´ıcil mesmo para o caso onde as cidades est˜ao em um plano com distˆancias Euclidianas ou para outros casos mais restritivos. Retirar a condi¸c˜ao de que cada cidade seja visitada apenas uma vez n˜ao remove a dificuldade do problema pois pode ser facilmente percebido que neste caso a melhor rota ainda seria uma que visitaria cada cidade apenas uma vez desde que pela desigualdade triangular, um atalho que pula a cidade j´a visitada era o que diminuiria o comprimento total da rota (Applegate, 2006).

Geralmente, se a medida de distˆancia ´e m´etrica e sim´etrica, o problema se torna um problema APX-completo (Lawler, 1985), o que quer dizer que se pode conseguir boas aproxima¸c˜oes com o uso de heur´ısticas. Existe tamb´em o problema de maximiza¸c˜ao, que ´e o de encontrar a rota mais comprida poss´ıvel.

A solu¸c˜ao exata mais intuitiva para o problema ´e a de tentar todas as permuta¸c˜oes, o que caracteriza o m´etodo de for¸ca bruta. A ordem de complexidade deste tipo de abordagem ´e de O(n!), ou seja, o fatorial do n´umero de cidades, o que pode tornar

(34)

12 PCV E PRV

esta solu¸c˜ao impr´atica mesmo para 20 cidades. Uma solu¸c˜ao baseada em programa¸c˜ao dinˆamica pode resolver o problema em um tempo O(n22n) (Bellman, 1962), por´em a solu¸c˜ao de programa¸c˜ao dinˆamica requer um espa¸co exponencial, pois s˜ao necess´arios m´etodos de inclus˜ao e exclus˜ao.

Algumas outras abordagens tamb´em s˜ao poss´ıveis, como algoritmos de ramifica¸c˜ao e poda que podem ser usados para instˆancias de 40 a 60 cidades, algoritmos de melhora progressiva que usam t´ecnicas rememorativas da programa¸c˜ao linear e funcionam bem para instˆancias de at´e 200 cidades ou implementa¸c˜oes de algoritmos de ramifica¸c˜ao e poda com poda de gera¸c˜oes espec´ıficas para o problema (Applegate, 2006).

Uma solu¸c˜ao exata para 15.112 cidades na Alemanha do TSPLib foi descoberta em 2001 usando o m´etodo de planos de corte j´a proposto na d´ecada de 50 (Dantzig et al., 1954), baseado em programa¸c˜ao linear. O processamento foi feito em uma rede de 110 processadores na Universidade de Rice e na Universidade de Princeton. O processamento total foi de 22,6 anos para um ´unico processador de 500MHz. Em maio de 2004, o problema de se visitar todas as 24.978 cidades da Su´ecia foi resolvido. Uma rota de aproximadamente 72.500 kilometros foi descoberta e foi-se provado que n˜ao existe uma rota menor (Applegate et al., 2004).

Em mar¸co de 2005, o PCV de se passar por todos os 33.810 pontos em um circuito foi resolvido usando o Concorde TSP Solver. Uma rota de tamanho 66.048.945 unidades foi encontrada e foi provado que n˜ao existe rota mais curta. O processamento levou aproximadamente 15,7 anos de CPU (Applegate et al. 2006). Em abril de 2006, uma instˆancia com 85.900 pontos foi resolvida com o Concorde TSP Solver, levando mais de 136 anos de CPU (Applegate et al., 2006).

V´arias heur´ısticas e algoritmos de aproxima¸c˜ao que levam a boas solu¸c˜oes em pouco tempo foram desenvolvidas. M´etodos modernos podem encontrar solu¸c˜oes para proble-mas de at´e milh˜oes de cidades em um tempo razo´avel e uma grande probabilidade de estarem apenas 3% pr´oximas do ´otimo.

Existem heur´ısticas construtivas, como o algoritmo do vizinho mais pr´oximo (Nea-rest Neighbour - NN), uma solu¸c˜ao gulosa onde deixamos o caixeiro decidir a cidade mais pr´oxima ainda n˜ao visitada no seu pr´oximo movimento. Este algoritmo leva rapi-damente a uma rota efetivamente pequena. Para n cidades distribu´ıdas em um plano aleatoriamente, o algoritmo leva a uma solu¸c˜ao 25% maior do que a melhor rota na m´edia (Rosenkrantz, 1977).

(35)

PCV E PRV 13

Contudo, existem v´arias distribui¸c˜oes arranjadas de cidades que fazem o NN retor-nar a pior rota (Gutin et al., 2002) tanto para PCVs sim´etricos quanto assim´etricos. Existe tamb´em um fator de aproxima¸c˜ao θ(log|V |) para instˆancias que satisfazem a desigualdade triangular (Rosenkrantz et al., 1977).

Existe uma nova heur´ıstica construtiva chamada Match Twice and Stitch (MTS) (Kahng & Reda, 2004) que empiricamente tem desempenho superior a todas as ou-tras heur´ısticas construtivas existentes. MTS faz duas combina¸c˜oes sequenciais, onde a segunda combina¸c˜ao ´e executada depois de se deletar todas as arestas da primeira combina¸c˜ao para que se produza uma cole¸c˜ao de ciclos. Os ciclos s˜ao ent˜ao costurados para produzir a rota final.

Outra classe de heur´ısticas que pode ser utilizada para a resolu¸c˜ao deste tipo de problema ´e a da Melhora Iterativa. Como o m´etodo de Pairwise Exchange ou t´ecnica 2-opt que se baseia em remover duas arestas e substitu´ı-las por outras duas (Lin & Kernighan, 1973). Depois, se reconectam os fragmentos criados pela remo¸c˜ao das arestas iterativamente para se encontrar uma rota nova e menor. Este ´e um caso particular do m´etodo k-opt.

Existe tamb´em a heur´ıstica k-opt, que tem um comportamento semelhante, sendo o m´etodo mais popular o 3-opt. O k-opt ´e na verdade um caso espec´ıfico da heur´ıstica V-opt, que ´e um m´etodo mais generalizado.

Al´em de todas j´a citadas, ainda existem as heur´ısticas de melhora aleat´oria, que podem ser melhorias de algoritmos baseados em cadeias de Markov (Kemeny, 1959) que usam algoritmos heur´ısticos de busca local e podem chegar a rotas extremamente pr´oximas do ´otimo para instˆancias de 850 cidades facilmente ou algoritmos de mudan¸ca aleat´oria de rotas que s˜ao atualmente os mais sofisticados algoritmos de busca e funcio-nam com at´e 100.000 cidades.

Escolhendo-se uma rota e alguns pontos pr´oximos, troca-se os caminhos entre eles para se criar um novo caminho aleat´orio `a medida que diminu´ımos o valor da menor rota conhecida o que leva ap´os certo tempo a um m´ınimo local.

Assim, o PCV ´e um crit´erio de avalia¸c˜ao para v´arias heur´ısticas desenvolvidas para otimiza¸c˜ao combinat´oria como Algoritmos Gen´eticos (AG) (Banzhaf et al., 1998), onde cada indiv´ıduo pode representar um rota e ap´os v´arias itera¸c˜oes temos uma evolu¸c˜ao da popula¸c˜ao por processos de muta¸c˜ao e/ou cruzamento, Recozimento Simulado (Si-mulated Annealing - SA) (Kirkpatrick et al., 1983), onde usa-se uma analogia com a

(36)

14 PCV E PRV

termodinˆamica para que se fuja de ´otimos locais e se encontre um ´otimo global, Busca Tabu (Glover & Laguna, 1997), m´etodo de otimiza¸c˜ao com estruturas de mem´oria que evitam o retorno para um ´otimo local j´a pesquisado, o m´etodo de colˆonia de formigas (Dorigo, 1992) e o de entropia cruzada (De Boer et al., 2005) entre outros.

2.1.3

Instˆ

ancias do problema

Para medida de padroniza¸c˜ao dos problemas e ter-se assim confiabilidade nas com-para¸c˜oes entre os m´etodos propostos, existe a biblioteca TSPLIB (Reinelt, 1991) que cont´em v´arios modelos de instˆancias. Os problemas relacionados s˜ao mantidos e v´arias instˆancias representam cidades que realmente existem ou disposi¸c˜oes de circuitos im-pressos reais.

2.2

Problema de Roteamento de Ve´ıculos

Um problema que deriva do PCV ´e o Problema do Roteamento de Ve´ıculos (PRV). O problema b´asico ´e o de atender um dado n´umero de clientes com ve´ıculos que partem de dados dep´ositos. Uma de suas restri¸c˜oes ´e que cada ve´ıculo tem uma capacidade m´axima e n˜ao pode atender aos clientes se a demanda for maior que esta capacidade. O problema foi inicialmente formulado (Dantzig & Ramser, 1959), para a aplica¸c˜ao no problema de distribui¸c˜ao de gasolina para esta¸c˜oes de venda.

A partir desta defini¸c˜ao inicial podemos ter diferentes fun¸c˜oes objetivos a serem mini-mizadas, como o custo da opera¸c˜ao, o tempo total de transporte, a distˆancia percorrida, tempo de espera, benef´ıcio, servi¸co ao cliente, utiliza¸c˜ao dos ve´ıculos ou utiliza¸c˜ao dos recursos.

O PRV tem sido foco de v´arios estudos devido `a necessidade de redu¸c˜ao com custos de transporte, que alteram significantemente o custo final de um produto ao consumidor. Com solu¸c˜oes mais eficientes para o PRV podemos reduzir o valor final destes produtos. Existem variantes do PRV, como o Problema do Roteamento de ve´ıculos com Janela de Tempo (PRVJT), que considera o tempo gasto para atender os clientes. No PRVJT, cada consumidor tem uma janela de tempo para que possa ter um tempo de atendimento (Oliveira, 2007).

Outras variantes que valem a pena serem citadas s˜ao o PRV com Coleta e Entrega (Psaraftis, 1988), onde um certo n´umero de bens devem ser movidos de alguns locais de coleta para outros locais de entrega, ou o PRV com Coleta e Entrega First in First Out,

(37)

PCV E PRV 15

Figura 2.2: Representa¸c˜ao de um PRV com 1 dep´osito e 3 p´etalas.

onde o item que est´a sendo entregue deve ser necessariamente o ´ultimo que foi coletado. Apesar destes, podemos considerar v´arios outros fatores relacionados ao transporte que aumentam o pre¸co final de produto: o pre¸co dos combust´ıveis em diferentes locais, ped´agios, manuten¸c˜ao de ve´ıculos e a conserva¸c˜ao das vias.

(38)
(39)

Cap´ıtulo 3

Redes Neurais Auto-Organiz´

aveis

3.1

Conceitos b´

asicos

Redes Neurais baseadas em mapas auto-organiz´aveis (redes SOM) (Kohonen, 2007) pertencem `a uma classe de Redes Neurais chamadas Redes Neurais Competitivas, na qual os neurˆonios competem entre si para serem ativados. Assim, a princ´ıpio, s´o acontece a ativa¸c˜ao de um neurˆonio.

Em um mapa auto-organiz´avel, os neurˆonios s˜ao dispostos em forma de uma grade normalmente uni ou bidimensional. Apesar de outras dimens˜oes serem poss´ıveis, elas n˜ao s˜ao comuns. Os neurˆonios s˜ao ent˜ao atualizados de maneira seletiva de acordo com o valores de entrada que constituem o processo competitivo de aprendizagem. Assim, cria-se um mapa a partir de valores de entrada onde a posi¸c˜ao espacial de cada neurˆonio guarda propriedades estat´ısticas dos dados de entrada.

S˜ao trˆes os processos b´asicos do Algoritmo do SOM, o competitivo, onde ´e definido o neurˆonio vencedor baseando em c´alculos de distˆancia Euclidiana, o adaptativo, onde ´

e feita a devida atualiza¸c˜ao nos neurˆonios de acordo com um parˆametro, e o processo cooperativo, que determina a influˆencia do neurˆonio vencedor em sua vizinhan¸ca.

3.2

Redes SOM para resolu¸

ao do PCV

Pode ser desenvolvida uma topologia unidimensional para redes SOM que ´e apresen-tada como a seguir.

(40)

18 Redes Neurais Auto-Organiz´aveis

Figura 3.1: Estrutura de uma rede SOM bi-dimensional

Figura 3.2: Estrutura de uma rede SOM unidimensional

estrutura adotada. Quando os neurˆonios s˜ao atra´ıdos pelas cidades, pode ser percebido que a configura¸c˜ao final dos neurˆonios ser´a um mapa topol´ogico conectando todas as cidades. Contudo, como a solu¸c˜ao do PCV ´e o menor caminho que percorra todas as cidades e retorne ao ponto inicial, pode ser observado que a solu¸c˜ao unidimensional n˜ao ´

(41)

Redes Neurais Auto-Organiz´aveis 19

que a ´ultima cidade visitada ´e o ponto de partida.

Para resolver esta restri¸c˜ao, ´e necess´ario adotar uma estrutura em forma de anel (Vieira, 2003), o que garante que come¸cando de qualquer ponto, o ponto final ap´os todas as cidades tendo sido visitadas ser´a o ponto de partida.

Figura 3.3: Estrutura de uma rede SOM toroidal

Esta nova estrutura faz com que o vencedor possa influenciar homogeneamente seus vizinhos. A implementa¸c˜ao desta modifica¸c˜ao pode ser feita a partir de um vetor onde ficam os valores dos neurˆonios em cada posi¸c˜ao. Assim, a fun¸c˜ao de vizinhan¸ca pode ser feita a partir das posi¸c˜oes deste vetor.

3.3

Algoritmo

3.3.1

Inicializa¸

ao da Rede

O modo como o m´etodo ser´a inicializado tem grande influˆencia nos resultados do algoritmo, como o tempo de convergˆencia para uma solu¸c˜ao.

Para efeitos de estudos de gera¸c˜ao de diversidade nas redes SOM, como ser˜ao expli-cadas mais adiante, foram estudados modos diferentes de inicializa¸c˜ao da rede.

A primeira maneira foi uma inicializa¸c˜ao dos neurˆonios em posi¸c˜oes aleat´orias do espa¸co. A desvantagem deste m´etodo foi que os neurˆonios estavam inicialmente

(42)

emba-20 Redes Neurais Auto-Organiz´aveis

ralhados, o que faz com que haja um maior tempo de processamento gasto no processo de atingir uma configura¸c˜ao topol´ogica que assegure a vizinhan¸ca entre os neurˆonios.

Outro m´etodo implementado foi a inicializa¸c˜ao dos neurˆonios em volta do centro do mapa definido pela m´edia das coordenadas das cidades. Era esperado que assim se resultasse em uma distribui¸c˜ao mais homogˆenea dos neurˆonios no mapa, por´em esta abordagem tamb´em resultou em um alto custo computacional devido `a desorganiza¸c˜ao dos neurˆonios em seu estado inicial.

Para redu¸c˜ao dos efeitos colaterais mencionados, a simples abordagem adotada foi a da inicializa¸c˜ao dos neurˆonios em um retˆangulo envolvendo todas as cidades. A partir das cidades, s˜ao determinados os limites do mapa e os neurˆonios s˜ao dispostos homoge-neamente como um quadro retangular em volta das cidades. Ent˜ao o retˆangulo funciona como um anel que converge para as cidades `a medida que o processo de aprendizagem acontece, mantendo a vizinhan¸ca dos neurˆonios e resultando em uma convergˆencia mais r´apida.

3.3.2

Competi¸

ao

Neste processo, ´e definido um neurˆonio vencedor em rela¸c˜ao a uma dada cidade. Esse neurˆonio vencedor ser´a o que tem a menor distˆancia Euclidiana at´e esta cidade, como sugere a equa¸c˜ao 3.1. Para este neurˆonio, o algoritmo segue `a fase de coopera¸c˜ao e adapta¸c˜ao. Depois, uma nova cidade ´e selecionada e o algoritmo volta `a fase de competi¸c˜ao.

J = arg min

j ||Xi− Wj||∀j (3.1)

As cidades s˜ao escolhidas de forma aleat´oria, o que d´a o car´ater n˜ao-determin´ıstico do algoritmo.

3.3.3

Coopera¸

ao

Antes do processo de adapta¸c˜ao se inicializar, ´e necess´ario estabelecer o parˆametro que definir´a qu˜ao ajudados ser˜ao os vizinhos dos neurˆonios vencedor. A fun¸c˜ao de vizinhan¸ca ´e respons´avel por determinar isto e ´e normalmente definida por uma fun¸c˜ao gaussiana com uma vari´avel de variˆancia.

(43)

Redes Neurais Auto-Organiz´aveis 21

Figura 3.4: Fun¸c˜ao de vizinhan¸ca

por valores cada vez menores, reduzindo a influˆencia do neurˆonio vencedor nos outros. Contudo, todos os neurˆonios s˜ao atualizados mesmo quando a influˆencia do neurˆonio vencedor ´e muito baixa.

Desta maneira, uma atualiza¸c˜ao seletiva ´e implementada de modo em que temos um ponto de corte para a fun¸c˜ao de vizinhan¸ca onde apenas vizinhos at´e este ponto de corte s˜ao atualizados. Assim, com o passar do tempo, o n´umero de neurˆonios at´e o ponto de corte decresce, o que leva a um menor tempo de processamento.

3.3.4

Adapta¸

ao

O algoritmo SOM tem 2 parˆametros de adapta¸c˜ao, a taxa de aprendizado ?n e a fun¸c˜ao de vizinhan¸ca ?n, onde uma fun¸c˜ao gaussiana ´e adotada. Foi convencionada (Haykin, 1998) uma evolu¸c˜ao exponencial destes parˆametros como a das equa¸c˜oes 3.2 e 3.3 para que seja atingida uma convergˆencia mais rapidamente.

αn=α0× exp  −n τ1  (3.2)

(44)

22 Redes Neurais Auto-Organiz´aveis σn=σ0× exp  −n τ2  (3.3)

Onde n = 0, 1, 2, . . . , representa o n´umero de itera¸c˜oes e τ1 e τ2 s˜ao constantes de

tempo exponenciais. Contudo, estas equa¸c˜oes s˜ao heur´ısticas e outros m´etodos podem ser adotados. Deve ser lembrado que os parˆametros de adapta¸c˜ao s˜ao fundamentais para a convergˆencia do algoritmo.

Em experimentos existentes de aplica¸c˜ao de redes SOM para solu¸c˜oes de PCV (Vieira et al., 2003), foram identificadas as equa¸c˜oes 3.4 e 3.5 de adapta¸c˜ao de parˆametros que levaram a uma convergˆencia mais r´apida. Isto ´e muito importante, pois o objetivo deste trabalho ´e conciliar um sub-´otimo de uma problema de PCV com um tempo de processamento m´ınimo. αn = 1 3 √ n (3.4) σnn−1× (1 − 0.01 × n) (3.5)

A equa¸c˜ao 3.4 determina a evolu¸c˜ao da taxa de aprendizado, que neste caso n˜ao precisa de um valor inicial, j´a que depende apenas do n´umero de itera¸c˜oes.

J´a a equa¸c˜ao 3.5 determina a evolu¸c˜ao da fun¸c˜ao de vizinhan¸ca. Este parˆametro requer uma inicializa¸c˜ao adequada, j´a que o seu valor em uma dada itera¸c˜ao depende de seu valor na itera¸c˜ao passada.

Uma sugest˜ao da literatura ´e que todos os neurˆonios sofram influˆencia do neurˆonio vencedor nas primeira itera¸c˜oes. J´a que a inicializa¸c˜ao do m´etodo dos neurˆonios consiste de um quadro retangular envolvendo todas as cidades, outros experimentos (Vieira et al., 2003) tamb´em demonstraram que a inicializa¸c˜ao do parˆametro ? deve promover ao menos uma influˆencia do neurˆonio vencedor em 14 dos outros neurˆonios. Uma formula¸c˜ao inicial desta maneira demandaria um ? inicial de acordo com a equa¸c˜ao 3.6:

(45)

Redes Neurais Auto-Organiz´aveis 23

Figura 3.5: Rela¸c˜ao entre a taxa de aprendizado e o n´umero de itera¸c˜oes

σ0 =

l

4× c (3.6)

onde l ´e o n´umero de neurˆonios e c ´e uma constante (sendo c = 8 o valor adotado). Assim, pode ser visto que a inicializa¸c˜ao da variˆancia ´e diretamente relacionada ao n´umero de neurˆonios de entrada.

3.4

Exemplo de Execu¸

ao

A Figura 3.7 apresenta a representa¸c˜ao de estados de execu¸c˜ao de uma rede auto-organiz´avel para a resolu¸c˜ao de um PCV de 70 cidades pertencente `a biblioteca TSPLib. Os pontos representam as cidades e o la¸co representa o estado dos neurˆonios. Na Figura 3.7 se percebe a situa¸c˜ao dos neurˆonios nas itera¸c˜oes 0, 5, 10, 15, 20 e 25, respectivamente.

(46)

24 Redes Neurais Auto-Organiz´aveis

(47)

Redes Neurais Auto-Organiz´aveis 25

(48)
(49)

Cap´ıtulo 4

Metaheur´ısticas GRASP e Busca

TABU

4.1

GRASP

O GRASP (Greedy Randomized Adaptive Search Procedure), ´e um algoritmo comu-mente usado para problemas de otimiza¸c˜ao combinat´oria. Podendo ser usado de v´arias maneiras, no GRASP se tem a constru¸c˜ao de uma solu¸c˜ao inicial e esta ´e refinada a partir de uma busca local (Feo & Resende, 1995).

Em outros m´etodos, temos simplesmente o foco na busca local, para que se possa encontrar solu¸c˜oes melhores a medida que percorremos o espa¸co de busca. J´a no GRASP, ´

e privilegiada a constru¸c˜ao de uma solu¸c˜ao inicial j´a boa para que depois se fa¸ca o uso de uma busca local apenas para o refinamento desta solu¸c˜ao no ˆambito de pequenas melhorias.

Para se usar o m´etodo GRASP, ´e preciso uma solu¸c˜ao inicial aleat´oria que j´a atenda a todas as restri¸c˜oes do problema. No caso do PCV, isto seria uma rota qualquer no conjunto de cidades que mesmo sendo uma solu¸c˜ao boa j´a atendesse `as restri¸c˜oes que definem o PCV. Pode-se partir de uma solu¸c˜ao vazia e se fazer inser¸c˜oes nesta solu¸c˜ao at´e que se tenha uma solu¸c˜ao vi´avel para o problema. Nesta fase, ´e fundamental que se trabalhe o car´ater n˜ao-determin´ıstico do problema.

Para a constru¸c˜ao de uma solu¸c˜ao inicial, se utiliza algum m´etodo semi-guloso, que gere uma solu¸c˜ao relativamente boa, tendo em vista a fun¸c˜ao que pretende-se otimizar, por´em n˜ao totalmente guloso de modo a tornar o m´etodo determin´ıstico. Neste trabalho,

(50)

28 Metaheur´ısticas GRASP e Busca TABU

para a fase de constru¸c˜ao de uma solu¸c˜ao inicial vi´avel para o problema, ser˜ao usadas redes SOM, do modo como est˜ao apresentadas no cap´ıtulo III.

A partir desta solu¸c˜ao inicial, a solu¸c˜ao ´e ent˜ao refinada a partir de um m´etodo de busca local, que neste trabalho ser´a a busca Tabu. Na implementa¸c˜ao desta abordagem, ´

e importante que se leve em considera¸c˜ao qu˜ao determin´ıstica ´e a solu¸c˜ao inicial e quais parˆametros levam a melhores resultados ap´os o processo de busca local.

Isso acontece porque, em determinados casos, podem se desenvolver solu¸c˜oes boas, no processo de constru¸c˜ao de solu¸c˜ao inicial, que levam sempre para um conjunto restrito de ´otimos locais e n˜ao encontram assim solu¸c˜oes novas que poderiam ser melhores do que as antigas `a medida que as itera¸c˜oes do GRASP v˜ao ocorrendo e o espa¸co de busca vai sendo percorrido. O contr´ario tamb´em pode ocorrer, quando se deixa o processo de constru¸c˜ao de solu¸c˜ao inicial muito aleat´orio, o que incentiva a cria¸c˜ao de solu¸c˜oes de baixa qualidade que n˜ao chegam a se tornar solu¸c˜oes boas ou melhores que seriam sem o GRASP ap´os o processo de refinamento.

Pode se fazer varia¸c˜oes do m´etodo com fun¸c˜oes de probabilidade para a escolha de uma melhor solu¸c˜ao inicial ou mesmo para a adapta¸c˜ao dos parˆametros. V´arios autores aplicaram o modelo do GRASP para diferentes problemas de otimiza¸c˜ao desde que o modelo foi descrito por Feo e Resende em 1989 (Festa & Resende, 2002). O Algoritmo 4.1 ilustra o funcionamento do m´etodo:

Algoritmo 4.1: GRASP

enquanto uma condi¸c˜ao de parada n˜ao for atingida fa¸ca

1

solu¸c˜ao← criar solu¸c˜ao inicial();

2

solu¸c˜ao← busca local(solu¸c˜ao);

3

se solu¸c˜ao ´e a melhor todas as solu¸c˜oes j´a conhecidas ent˜ao

4 gravar(solu¸c˜ao); 5 fim 6 fim 7

Neste trabalho, o m´etodo que cria uma solu¸c˜ao inicial ser´a baseado em redes neurais e o m´etodo que faz a busca local ser´a uma busca Tabu, como a que ´e apresentada logo a seguir.

(51)

Metaheur´ısticas GRASP e Busca TABU 29

4.2

Busca TABU

A busca Tabu (Fred Glover, 1997) ´e um m´etodo pertencente `as t´ecnicas de busca local, sendo que estruturas de mem´oria s˜ao usadas para aprimorar a qualidade das solu¸c˜oes encontradas. Quando certa solu¸c˜ao ´e testada, esta ´e marcada como tabu e n˜ao ´

e examinada novamente. Assim, mais solu¸c˜oes do espa¸co de busca s˜ao examinadas. O nome do m´etodo vem das listas tabu, que s˜ao as listas com as solu¸c˜oes n˜ao per-mitidas. Na forma mais b´asica do problema, estas listas s˜ao basicamente formadas pelos ´ultimos elementos visitados. De acordo com problemas espec´ıficos, as listas po-dem conter mais solu¸c˜oes proibidas devido a restri¸c˜oes do problema que resultariam em movimentos ilegais em certos contextos.

A busca Tabu usa inicialmente um m´etodo de busca local, que leva at´e um ´otimo local. O m´etodo de busca local implementado foi o m´etodo FI (First Improvement). Nesta abordagem, tem-se uma solu¸c˜ao inicial de uma dada qualidade que ocupa inicialmente o lugar da melhor solu¸c˜ao atual. A partir disto, s˜ao estudados todos os vizinhos poss´ıveis desta solu¸c˜ao. Se ao percorrer as solu¸c˜oes vizinhas ocorre alguma solu¸c˜ao de maior qualidade do que a melhor solu¸c˜ao atual, esta solu¸c˜ao vizinha ocupa o lugar da melhor solu¸c˜ao atual e o processo ´e iniciado novamente. Caso contr´ario, se n˜ao ´e encontrada melhor solu¸c˜ao do que a atual, esta ´e declarada um ´otimo local e o processo finaliza.

Este ´e um m´etodo para refinamento simples e relativamente eficiente para alguns casos. Este m´etodo, por´em, p´ara sempre em um ´otimo local e n˜ao tem uma grande preocupa¸c˜ao em fugir deste ´otimo.

Para a representa¸c˜ao do problema neste m´etodo de descida, matrizes n× 2 foram usadas para a representa¸c˜ao das rotas, sendo n o n´umero de cidades e em cada linha se representando as coordenadas x e y que definem a posi¸c˜ao de uma cidade no espa¸co Euclidiano. Cada solu¸c˜ao com n cidades tem (n(n− 1))/2 poss´ıveis solu¸c˜oes vizinhas, se estudarmos as solu¸c˜oes que s˜ao geradas pela troca de duas cidades de posi¸c˜ao na rota inicial. Quando todos os vizinhos s˜ao piores do que a solu¸c˜ao atual, a declaramos como um ´otimo local.

Grande parte dos m´etodos de busca local terminam ao encontrar um ´otimo local. Para explorar melhor o espa¸co de busca com regi˜oes que n˜ao seriam exploradas por um m´etodo convencional FI, a busca Tabu modifica a estrutura de vizinhan¸ca de acordo com estruturas de mem´oria. Isso faz com que uma solu¸c˜ao pior do que a atual seja permitida, desde que esteja pesquisando por uma ´area do espa¸co de busca ainda n˜ao explorada.

(52)

30 Metaheur´ısticas GRASP e Busca TABU

Figura 4.1: Representa¸c˜ao de dois m´ınimos locais

Para guardar a solu¸c˜oes que seriam uma volta a uma solu¸c˜ao j´a visitada, ´e criada uma lista Tabu, que define movimentos que s˜ao proibidos pois retornam a alguma condi¸c˜ao anterior. Inicialmente, para casos mais simples, uma busca Tabu poderia ser apenas todas as ´ultimas solu¸c˜oes visitadas e a cada nova itera¸c˜ao ocorreria uma compara¸c˜ao com todas as solu¸c˜oes j´a visitadas para que se evitasse o retorno a uma solu¸c˜ao j´a visitada. O problema com este tipo de abordagem ´e o alto custo computacional para comparar todas as solu¸c˜oes Tabu com a solu¸c˜ao atual e o gasto de mem´oria que isso poderia ter para instˆancias maiores, o que poderia fazer o processo n˜ao valer a pena.

Uma solu¸c˜ao para este problema ´e criar uma lista de movimentos Tabu, sendo que solu¸c˜oes que precisam de um movimento Tabu para serem atingidas s˜ao consideradas tamb´em solu¸c˜oes Tabu pois possivelmente ´e uma solu¸c˜ao que j´a foi visitada. Contudo, isso levanta um novo problema: quando apenas um atributo ´e marcado como Tabu, um conjunto de solu¸c˜oes (dentro dele a solu¸c˜ao que j´a foi visitada) ´e marcado como Tabu. Algumas destas solu¸c˜oes que s˜ao evitadas poderiam ser de excelente qualidade e podem n˜ao serem visitadas. Para reduzir este problema, ´e criado um crit´erio que faz com que solu¸c˜oes Tabu sejam aceitas em determinados casos. Um crit´erio normalmente usado ´e que uma solu¸c˜ao pode ser aceita se melhorar a melhor solu¸c˜ao at´e ent˜ao conhecida.

(53)

Metaheur´ısticas GRASP e Busca TABU 31

justamente o PCV. Uma busca Tabu pode ser usada para encontrar solu¸c˜oes muito satisfat´orias para um PCV, ainda mais quando se est´a partindo de uma solu¸c˜ao inicial de qualidade, como as que ser˜ao geradas neste trabalho atrav´es de redes SOM e refinadas por uma busca local. Novamente na busca Tabu usa-se a troca entre duas cidades para a procura de cidades vizinhas e a distˆancia para percorrer toda a rota para determinar a qualidade das solu¸c˜oes. Novas solu¸c˜oes v˜ao sendo criadas at´e que um crit´erio de parada seja atingido, como por exemplo o n´umero de itera¸c˜oes, e a rota de maior qualidade conhecida ´e retornada.

Desta maneira descrita, pode-se descrever a busca Tabu como no Algoritmo 4.2: Algoritmo 4.2: Busca TABU

S ← S0; // solu¸c~ao atual = solu¸c~ao inicial

1

S∗ ← S; // melhor solu¸c~ao j´a vista = solu¸c~ao atual

2

listaTabu← {}; // lista inicialmente vazia

3

enquanto crit´erio de parada n˜ao for satisfeito fa¸ca

4

S0 = Melhor solu¸c˜ao n˜ao tabu entre os vizinhos de (S);

5

se custo(S0) <custo(S∗) ent˜ao

6

S∗ ← S0;

7

sen˜ao

8

se custo(S0) >custo(S) ent˜ao

9 listaTabu ← listaTabu ∪ {S} ; 10 fim 11 fim 12 S ← S0; 13 fim 14

4.3

GRASP reativo

O GRASP reativo (Feo & Resende, 1995), ´e uma modifica¸c˜ao do GRASP convencio-nal, no qual o parˆametro de aleatoriedade utilizado na fase de constru¸c˜ao ´e auto-ajustado de acordo com as solu¸c˜oes previamente encontradas. Este ´e um m´etodo que tem v´arias possibilidades de partida para a fase construtiva, etapa inicial de cada itera¸c˜ao.

Um diferente parˆametro de aleatoriedade pode ser usado na fase construtiva de cada itera¸c˜ao. Inicialmente, todos os parˆametros tˆem a mesma probabilidade de serem es-colhidos. A qualidade das solu¸c˜oes encontradas com cada parˆametro ´e guardada e de

(54)

32 Metaheur´ısticas GRASP e Busca TABU

tempos em tempos as probabilidades de um parˆametro ser usado s˜ao atualizadas de acordo.

Pode-se descrever o GRASP reativo como no Algoritmo 4.3. Algoritmo 4.3: GRASP Reativo

fmin ← valor maior que qualquer solu¸c˜ao poss´ıvel do algoritmo; 1

iter ← 1;

2

A ← {a1, a2, a3, . . . , av};

3

para todo k = 1 at´e v fa¸ca

4 count[k] ← 0; 5 score[k] ← 0; 6 p[k] ← 1/v; 7 fim 8

enquanto crit´erio de parada n˜ao for satisfeito fa¸ca

9

Selecione a[k] com probabilidade de escolha p[k];

10

s1 ← Fase construtiva(a[k]);

11

s2 ← Busca local(s1); se f(s2) <fmin ent˜ao 12 s ← s2; 13 fmin ← f(s2); 14 fim 15 count[k] ← count[k] + 1; 16 score[k] ← score[k] + f(s2); 17

se iter mod (frequˆencia de atualiza¸c˜ao) = 0 ent˜ao

18

avg[k] ← score[k]/count[k] para todo k poss´ıvel;

19

Q[k] ← (fmin/avg[k]) para todo k poss´ıvel;

20

sigma ← somat´orio de todos os elementos de Q;

21

p[k] ← Q[k]/sigma para todo k poss´ıvel;

22 fim 23 fim 24 retorna s; 25

(55)

Cap´ıtulo 5

Resultados

5.1

PCV

Inicialmente, foram feitos testes com a biblioteca TSPLib, que fornece PCVs para que exista crit´erio de compara¸c˜ao entre os diferentes m´etodos que solucionam o problema.

Para as resolu¸c˜oes dos problemas que s˜ao apresentadas a seguir, sendo m o n´umero de cidades de cada instˆancia, foram usados os seguintes parˆametros:

Taxa de aprendizado inicial da rede: a0 = 1, 5

N´umero de neurˆonios para uma instˆancia de m cidades: n = [1.4m, 1.8m, 2.0m, 2.2m] Variˆancia inicial da fun¸c˜ao de vizinhan¸ca: σ0 = n/10

Variˆancia de escolha do neurˆonio vencedor: ψ = [0.2, 0.5, 0.8]

Um maior detalhamento sobre a justificativa destes valores est´a na se¸c˜ao 5.3, onde est˜ao definidos os m´etodos usados para gera¸c˜ao de uma maior diversidade nas redes neurais e assim, se percorrer mais o espa¸co poss´ıvel de busca.

Apesar dos estudos para se descobrir os valores convenientes para os parˆametros, os valores de ψ e n n˜ao reduzem de acordo com o n´umero atual de itera¸c˜oes. Como os valores convenientes para diferentes instˆancias podem ser diferentes, foram feitos testes de eficiˆencia do algoritmo usando-se mais de um valor poss´ıvel para ψ e n utilizando-se de um GRASP reativo.

Com estes parˆametros, e executando o GRASP com 100 itera¸c˜oes, foram obtidos os resultados apresentados na Tabela 5.1.

(56)

34 Resultados

Fase Construtiva Busca Local GRASP

Instˆancia erro (%) std (%) min (%) erro (%) std (%) min (%) tempo(m)

bier127 16,68 7,98 5,72 8,08 2,80 3,29 1,19 eil51 8,69 3,94 3,45 5,37 1,68 2,58 0,06 eil76 12,49 5,62 4,12 6,93 1,54 3,78 0,22 kroA200 23,12 15,54 5,75 7,99 2,74 1,20 4,07 lin105 15,21 9,96 2,34 6,57 4,18 0,02 0,36 pcb442 39,64 33,61 19,33 10,98 3,08 7,16 15,25 pr107 9,33 6,60 1,00 2,63 2,73 0,17 0,35 pr136 16,67 7,87 5,89 5,92 2,16 2,46 0,50 pr152 15,536 9,65 4,06 4,62 2,93 1,00 0,65 rat195 25,60 14,49 11,36 11,63 2,47 7,57 2,16 rd100 14,31 7,58 3,09 6,72 2,94 1,23 0,79 st70 10,03 5,69 1,95 5,00 2,72 1,12 0,29

Tabela 5.1: Erro m´edio dos resultados obtidos

Todas as instˆancias testadas pertencem `a biblioteca TSPLib. Nas tabelas deste trabalho, “erro”indica o erro m´edio das solu¸c˜oes geradas em cada itera¸c˜ao, “std”indica o desvio padr˜ao das solu¸c˜oes geradas pelo m´etodo, “min”indica o erro m´edio da solu¸c˜ao que teve o menor erro m´edio em todas as 100 itera¸c˜oes e “tempo”´e o tempo em minutos gasto para que ocorra uma itera¸c˜ao. O erro m´edio m´ınimo da busca local ´e tamb´em o resultado do GRASP, j´a que este foi executado apenas uma vez para cada instˆancia.

No geral, o erro m´edio ap´os a busca local foi de 6,87% e ap´os o GRASP foi de 2,63%.

5.2

PRV

O maior benef´ıcio que se pode obter na utiliza¸c˜ao de redes SOM para solu¸c˜oes de PRV ´e a divis˜ao da rota em p´etalas, j´a que redes SOM com menos neurˆonios que cidades podem classificar estas cidades em grupos de acordo com suas caracter´ısticas, neste caso, a posi¸c˜ao no plano Euclidiano.

Foram tamb´em feitos experimentos com 50 execu¸c˜oes de GRASP para as mesmas instˆancias, dividindo as cidades em 3 e 5 p´etalas e analisando as rotas geradas. As redes SOM tˆem a tarefa de dividir as cidades em p´etalas e criar um dep´osito central, onde todas as p´etalas se encontram. A Tabela 5.2 e Tabela 5.3 mostram o erro m´edio das

(57)

Resultados 35

Fase Construtiva Busca Local GRASP

Instˆancia erro (%) std (%) min (%) erro (%) std (%) min (%) tempo(m)

bier127 15,84 4,99 7,88 13,57 4,54 6,36 0,27 eil51 15,96 4,86 9,84 14,17 4,36 9,47 0,05 eil76 14,22 3,75 9,20 12,41 2,97 8,44 0,09 kroA200 19,42 7,60 8,96 13,45 3,45 8,34 0,60 lin105 19,64 5,73 11,49 17,13 4,72 10,69 0,19 pcb442 25,87 10,73 16,56 14,34 2,12 10,41 4,15 pr107 23,64 10,15 10,78 21,16 9,74 9,97 0,26 pr136 19,57 4,35 13,34 16,07 3,28 10,90 0,35 pr152 23,55 11,32 11,55 20,43 10,17 9,14 0,41 rat195 19,53 5,67 12,46 14,57 2,09 10,92 0,46 rd100 19,31 5,09 10,45 15,87 4,25 8,80 0,15 st70 19,05 6,05 9,71 17,13 5,69 8,67 0,11

Tabela 5.2: Erro m´edio dos resultados obtidos com 3 p´etalas

solu¸c˜oes geradas com p´etalas em rela¸c˜ao `as solu¸c˜oes de apenas uma p´etala.

Claramente, as solu¸c˜oes geradas tˆem um erro m´edio maior que as solu¸c˜oes de apenas uma p´etala. Isso se justifica pelo fato de haver uma cidade a mais para cada p´etala e pela condi¸c˜ao de que as p´etalas ser˜ao bem divididas, o que elimina a possibilidade de um ve´ıculo fazer a rota ´otima enquanto os outros ficam parados.

No geral, o erro m´edio ap´os a busca local foi de 15,85% para o problema de 3 p´etalas e de 25,93% para o problema de 5 p´etalas. J´a o erro m´edio das solu¸c˜oes encontradas ap´os 50 itera¸c˜oes de GRASP foi de 9,34% para o problema de 3 p´etalas e de 16,57% para o problema de 5 p´etalas.

5.3

Gera¸

ao de Diversidade

Em estudo pr´evio sobre a aplica¸c˜ao de redes SOM a PCVs (Vieira et al., 2003), foram feitos estudos sobre valores para os parˆametros que seriam convenientes para que houvesse a gera¸c˜ao de solu¸c˜oes de maior qualidade.

(58)

36 Resultados

Fase Construtiva Busca Local GRASP

Instˆancia erro (%) std (%) min (%) erro (%) std (%) min (%) tempo(m)

bier127 21,45 4,95 17,22 18,88 4,30 15,53 0,12 eil51 24,85 5,07 17,39 23,13 4,42 16,07 0,05 eil76 22,65 3,71 17,91 20,79 3,82 16,60 0,08 kroA200 23,97 4,49 17,07 21,29 3,48 16,59 0,45 lin105 29,43 7,49 18,18 28,02 7,37 16,04 0,15 pcb442 22,93 6,96 15,42 16,96 2,25 13,72 1,90 pr107 31,33 13,01 19,39 29,38 11,98 16,48 0,19 pr136 25,33 6,15 15,87 23,07 5,24 15,17 0,14 pr152 32,21 12,47 18,15 30,19 11,91 16,59 0,18 rat195 22,49 3,93 16,28 19,79 3,23 15,65 0,35 rd100 26,39 5,13 20,66 24,52 4,67 19,56 0,10 st70 28,18 5,88 22,44 26,05 5,12 20,90 0,06

Tabela 5.3: Erro m´edio dos resultados obtidos com 5 p´etalas

solu¸c˜oes n˜ao s´o de qualidade mas tamb´em de diversidade na fase construtiva. Isso faz com que o espa¸co de busca seja mais bem percorrido e aumenta a possibilidade de se achar melhores solu¸c˜oes mesmo que as solu¸c˜oes iniciais que ser˜ao refinadas sejam normalmente piores do que seriam com outros parˆametros que n˜ao valorizam a diversidade.

Assim, ´e clara a necessidade de se definir novos parˆametros para o funcionamento do m´etodo que valorizem a diversidade das solu¸c˜oes geradas e n˜ao s´o a qualidade inicial das solu¸c˜oes que saem da fase construtiva.

Para avaliar a capacidade de diversidade das solu¸c˜oes geradas pelas redes SOM, os principais parˆametros do algoritmo foram estudados (Batista et al., 2009) para que se tivesse maior diversidade na m´edia das solu¸c˜oes geradas . Para o estudo foi utilizada uma instˆancia aleat´oria de 30 cidades e os parˆametros foram variados a cada 100 itera¸c˜oes do GRASP.

Durante os testes foi observada uma relevante independˆencia dos parˆametros, que tiveram comportamento muito semelhante com pequeno desvio padr˜ao mesmo com a varia¸c˜ao dos outros parˆametros.

(59)

Resultados 37

a das equa¸c˜oes 5.1, 5.2 e 5.3 para que seja atingida uma convergˆencia mais rapidamente. As equa¸c˜oes 5.1 e 5.2 representam respectivamente como as taxas de aprendizado e n´umero de neurˆonios influenciados pelo neurˆonio vencedor mudam de acordo as itera¸c˜oes. Nestas equa¸c˜oes t representa a quantidade de itera¸c˜oes j´a realizadas. A equa¸c˜ao 5.3 re-presenta que existir˜ao n neurˆonios para m cidades e a equa¸c˜ao 5.4 faz com que o neurˆonio vencedor passe sua condi¸c˜ao de vencedor para outro neurˆonio, como ser´a explicado mais adiante. αn=α0×  − t τ1  (5.1) σn=σ0× exp  − t τ2  (5.2) n = βm (5.3) γ = ψ exp  −τt 3  (5.4)

As constantes usadas foram τ1 = 10, τ2 = 10/ log10(σ0) e τ3 = 10.

5.3.1

Pela taxa de aprendizado

A taxa de aprendizado inicial α0 foi variada no intervalo de 0,5 a 2,0 e pelos

expe-rimentos foi poss´ıvel observar que o mapa de Kohonen foi capaz de gerar solu¸c˜oes para a faixa de valores de 1,0 a 1,5 e teve um custo computacional bem semelhante para os diferentes valores, como o esperado.

5.3.2

Pelo n´

umero de neurˆ

onios em rela¸

ao `

as cidades

O n´umero de neurˆonios empregados em rela¸c˜ao ao n´umero de cidades pode tamb´em mudar a qualidade e diversidade das solu¸c˜oes geradas. Para um conjunto de m cidades

(60)

38 Resultados

Figura 5.1: Custo m´edio das solu¸c˜oes para diferentes valores da taxa de apren-dizado

e n neurˆonios, foram feitos testes para determinar qual fator de proporcionalidade β levaria a melhores resultados para um dado n´umero de cidades sendo n = βm.

Este parˆametro em quest˜ao foi avaliado entre os valores 1 e 2:

De acordo com os histogramas e as curvas de custo m´edio das solu¸c˜oes, ´e observado que o parˆametro tem uma influˆencia no grau de diversidade das solu¸c˜oes geradas. Para menores valores de β, se observa melhores solu¸c˜oes ap´os a busca local apesar de piores solu¸c˜oes na fase construtiva, o que ´e o foco deste trabalho. Considerando-se tamb´em que com um menor n´umero de neurˆonios o tempo m´edio gasto para se obter as solu¸c˜oes ´

e menor, para se obter solu¸c˜oes com certa diversidade em um tempo aceit´avel, sugere-se uma valor de β entre 1,2 e 1,6.

5.3.3

Pelo n´

umero de neurˆ

onios influenciados pelo neurˆ

onio

vence-dor

Para que na primeira itera¸c˜ao das redes SOM, cerca de 25 a 100% dos neurˆonios sejam influenciados pelo neurˆonio vencedor, o valor de dever´a variar entre 0,05n e 0,30n.

(61)

Resultados 39

Figura 5.2: Tempo m´edio consumido para diferentes valores da taxa de apren-dizado

Figura 5.3: Distribui¸c˜ao das solu¸c˜oes geradas pela rede SOM variando-se o n´umero de neurˆonios

Como se pode observar no histograma e no custo m´edio das solu¸c˜oes para diferentes n´umeros de neurˆonios influenciados pelo neurˆonio vencedor, ´e obtida maior diversidade

(62)

40 Resultados

Figura 5.4: Custo m´edio das solu¸c˜oes para diferentes valores de propor¸c˜ao de neurˆonios

nas solu¸c˜oes geradas para valores menores de neurˆonios influenciados. Por´em, neste caso, o custo computacional aumenta a medida que o n´umero de neurˆonios influenciados decresce. Assim, para uma melhor rela¸c˜ao entre tempo/diversidade, sugere-se valores entre 0,08n e 0,15n neste trabalho.

5.3.4

Pela escolha do neurˆ

onio vencedor

No processo simples de competi¸c˜ao das redes SOM, o neurˆonio que tem a menor distˆancia Euclidiana em rela¸c˜ao `a cidade em quest˜ao ´e declarado o neurˆonio vencedor. Assim o neurˆonio vencedor seria sempre o que atendesse a condi¸c˜ao J = arg minj||Xi−

Wj||∀j.

Contudo, j´a que os neurˆonios neste caso espec´ıfico s˜ao organizados de forma toroidal, foi feita a proposta de que o neurˆonio vencedor passasse a sua condi¸c˜ao para um de seus vizinhos. Isso criaria mais diversidade nas solu¸c˜oes geradas sem comprometer muito a qualidade das solu¸c˜oes geradas.

(63)

Resultados 41

Figura 5.5: Tempo m´edio consumido para diferentes valores de propor¸c˜ao de neurˆonios

ψ exp(−t/τ) que vai definir a probabilidade de que o neurˆonio vencedor passar o trof´eu. Assim, pode-se definir o n´umero de neurˆonios que tˆem chance de pegar o trof´eu pela equa¸c˜ao k(t) = max 1,d0.1n ∗ γ(t)eque vai sempre retornar um n´umero inteiro. Ap´os algumas itera¸c˜oes, o valor de k sempre ser´a 1, como est´a representado na Figura 5.9.

Do modo como est˜ao organizadas as equa¸c˜oes, podemos variar o valor de ? entre 0 e 1, onde um valor pr´oximo de 0 indica uma constru¸c˜ao mais gulosa (onde sempre um neurˆonio apenas tem o trof´eu) e um valor pr´oximo de 1 indica uma constru¸c˜ao mais aleat´oria, com uma maior disputa pelo trof´eu. Fazendo o histograma dos dois extremos de ? em rela¸c˜ao `a qualidade das solu¸c˜oes apos a fase de constru¸c˜ao, tem-se os seguintes resultados representados na Figura 5.10.

De acordo com o histograma da Figura 5.10, percebe-se que para solu¸c˜oes gulosas em rela¸c˜ao ao neurˆonio vencedor, tem-se uma maior qualidade nas solu¸c˜oes geradas. Por´em, ap´os um refinamento feito por uma busca FI no mesmo conjunto de solu¸c˜oes, temos o histograma representado na Figura 5.11.

(64)

42 Resultados

Figura 5.6: Distribui¸c˜ao das solu¸c˜oes geradas pela rede SOM variando-se o n´umero de neurˆonios influenciados pelo vencedor

Figura 5.7: Custo m´edio das solu¸c˜oes para diferentes n´umeros de neurˆonios influenciados pelo vencedor

de solu¸c˜oes de uma m´edia de qualidade mais alta com ψ = 0.0. Por´em, o conjunto que cont´em a solu¸c˜ao de melhor qualidade est´a no grupo que usou ψ = 1.0, pois a

(65)

aleatorie-Resultados 43

Figura 5.8: Tempo m´edio consumido para diferentes valores de neurˆonios in-fluenciados pelo vencedor

dade possibilitou que o GRASP percorresse melhor o espa¸co de busca das solu¸c˜oes. Um estudo do comportamento do algoritmo para diferentes valores de ψ est´a representado na Figura 5.12.

Na Figura 5.12, est˜ao representados tanto o erro m´edio (pelos quadrados, com valores mais altos) das solu¸c˜oes ap´os as duas fases do GRASP quanto o erro m´edio da melhor das solu¸c˜oes ap´os as diferentes fases do GRASP (pelas riscas, com valores mais baixos). Na fase construtiva, o erro m´edio das solu¸c˜oes geradas e da melhor solu¸c˜ao s˜ao maiores para condi¸c˜oes mais aleat´orias de teste, ou seja, maiores valores de 5.12.

J´a ap´os a busca local, mesmo com o erro m´edio das solu¸c˜oes crescendo `a medida que se aumenta o valor de ψ, o erro m´edio da melhor das solu¸c˜oes ´e menor para valores maiores de ψ, devido `a possibilidade dada ao GRASP de percorrer melhor o espa¸co de busca.

Assim, maiores valores de aleatoriedade podem gerar piores resultados para as Redes Neurais, isoladamente, por´em melhores resultados para o GRASP.

(66)

44 Resultados

Figura 5.9: N´umero de neurˆonios disputando o trof´eu (k) em rela¸c˜ao ao tempo (t)

podem atrapalhar o desempenho do GRASP, como est´a claro da Figura 5.12. Assim, a partir dos experimentos e resultados apresentados, sugere-se um valor de ψ = 0.8, evitando-se tamb´em desta maneira valores extremos de aleatoriedade.

(67)

Resultados 45

Figura 5.10: Qualidade das solu¸c˜oes geradas por redes SOM com diferentes valores de ψ

Figura 5.11: Qualidade das solu¸c˜oes geradas pelo GRASP com diferentes va-lores de ψ

(68)

46 Resultados

Referências

Documentos relacionados

Os testes de desequilíbrio de resistência DC dentro de um par e de desequilíbrio de resistência DC entre pares se tornarão uma preocupação ainda maior à medida que mais

In this work, improved curves are the head versus flow curves predicted based on the correlations presented in Table 2 and improved by a shut-off head prediction

A presente dissertação é desenvolvida no âmbito do Mestrado Profissional em Gestão e Avaliação da Educação (PPGP) do Centro de Políticas Públicas e Avaliação

da quem praticasse tais assaltos às igrejas e mosteiros ou outros bens da Igreja, 29 medida que foi igualmente ineficaz, como decorre das deliberações tomadas por D. João I, quan-

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

O Documento Orientador da CGEB de 2014 ressalta a importância do Professor Coordenador e sua atuação como forma- dor dos professores e que, para isso, o tempo e

3259 21 Animação e dinamização de actividades lúdico-expressivas - expressão musical 50 3260 22 Animação e dinamização de actividades lúdico-expressivas -

Foram analisados a relação peso-comprimento e o fator de condição de Brycon opalinus, em três rios do Parque Estadual da Serra do Mar-Núcleo Santa Virgínia, Estado de São