ISBN 978-85-62830-10-5 VII CONNEPI©2012 Um algoritmo memético para a solução do TSP Tayná Costa Gonçalves 1 , Roberto Leite de M. R. Filho 1 , Omar Andres Carmona Cortez 2 1 Alunos do Curso de Sistemas de Informação - IFMA e-mail: fulanodetal@ifto.edu.br 2 . e-mail: omar@ifma.edu.br Resumo: O problema do caixeiro viajante é um problema clássico de otimização combinatorial, cuja resolução por busca exaustiva é inviável em alguns casos, como por exemplo, se considerarmos um número grande de cidades. Por ser aplicável a muitos problemas da vida real, o TSP é amplamente estudado, buscando-se abordagens mais eficiente para solucioná-lo. Neste trabalho é proposto um algoritmo memético para solução do TSP. O objetivo é mostrar que o uso de tal algoritmo possibilita encontrar uma solução satisfatório para uma instância do TSP em um tempo aceitável. O algoritmo memético se mostra adequado nessa circunstância pois combina operadores genéticos tradicionais e operadores de busca local, aumentando assim a qualidade das soluções. Serão apresentadas comparações entre diferentes combinações de representações de indivíduos e operadores. Ainda, no intuito de comprovar a eficiência do algoritmo proposto, serão apresentados resultados de testes que utilizam uma função de benchmark da conhecida biblioteca TSPLIB. Palavraschave: Algoritmo Memetico, Busca Local, Operadores Genéticos, TSP 1. INTRODUÇÃO Algoritmos evolutivos são bastante difundidos e estudados, e geralmente são aplicados a problemas difíceis de solucionar utilizando outras abordagens. As aplicações são muitas, pois, apesar de contarem com uma estrutura básica definida na teoria, em geral é possível adaptar um algoritmo evolutivo às necessidades de um problema específico, variando apenas os operadores e representações utilizados. Um exemplo de problema que exige atenção especial é o problema do caixeiro viajante (TSP), onde dado um número n de cidades, um caixeiro precisa visitar cada uma delas uma única vez e retornar à cidade de origem. Trata-se de um problema simples de definir, porém de difícil solução, dada a explosão combinatorial gerada pelo aumento do número de cidades a serem visitadas. O TSP é, portanto, um importante problema de otimização combinatorial. Sua aplicabilidade em problemas da vida real estimula as pesquisas no sentido de encontrar melhores abordagens para solucioná-lo. Em diversos trabalhos a computação evolutiva tem sido aplicada à resolução de problemas de otimização discreta. Rabak & Sichman (2001) modelaram o problema da inserção automática de componentes eletrônicos em placas de circuito impresso como um problema de otimização combinatorial, e propuseram um arranjo de algoritmos que utiliza os conceitos de agentes e memórias, conceitos pertencentes ao mundo dos Algoritmos Meméticos. Becceneri (2012) utiliza uma metaheurística, no caso a colônia de formigas aplicada ao TSP. Merz & Freisleben (1997) revisaram a aplicação ao TSP de heurísticas de busca local associadas a algoritmos genéticos, no intuito de melhorar alguns aspectos dessa combinação. As heurísticas de busca local associadas a outras técnicas melhoram a qualidade das soluções, porém podem aumentar significativamente o tempo de execução para problemas de maior escala (Arshad 2009). O algoritmo memético proposto busca encontrar o equilíbrio entre soluções próximas ao ótimo e tempo de execução aceitáveis 2. MATERIAL E MÉTODOS 2.1. ALGORITMOS GENÉTICOS