Otimização inteira: o problema do caixeiro viajante

Documentos relacionados
Teoria da Complexidade Computacional

Simulação de uma linha de produção em U com deslocamento de operadores

Teoria da Complexidade Computacional

Abordagens para Problemas Intratáveis

Ciclos hamiltonianos e o problema do caixeiro viajante

Estimação da função de transferência a partir do diagrama de Bode

BCC204 - Teoria dos Grafos

Aula 12: Programação Inteira

1_1 1_2 2_1 1_ _ _ Fonte: Autor

04 Grafos: caminhos e coloração SCC0503 Algoritmos e Estruturas de Dados II

Modelagem matemática do estimador de estados dos mínimos quadrados ponderados usando a ferramenta AMPL

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016

COMPARAÇÃO ENTRE FROTA HOMOGÊNEA E HETEROGÊNEA EM PROBLEMAS DE ROTEAMENTO DE VEÍCULOS CAPACITADOS

Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Departamento de Matemática Aplicada

PROBLEMA DO CAIXEIRO VIAJANTE APLICADO A UMA VAN ESCOLAR UTILIZANDO DUAS ABORDAGENS DE ELIMINAÇÃO DE SUB-ROTAS

UMA HEURISTICA APLICADA AO PROBLEMA DO CAIXEIRO VIAJANTE

BCC204 - Teoria dos Grafos

Redução de Cook-Levin e Considerações Finais

Prática 00. Total 04. Pré-requisitos. No. De Créditos 04

Problema do vendedor: uma abordagem via algoritmos genéticos

Teoria e Algoritmos em Grafos

Grafos: caminhos mínimos

Kit didático para controle de velocidade e posição de um motor de corrente contínua

Inconsistências sintáticas e semânticas no aplicativo Duolingo

Uma aplicação do teorema do ponto fixo de Banach

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste

Estruturas de Dados II. Caixeiro Viajante

Problema do Caminho Mais Curto. Problema do Caminho Mais Curto

PCC173 - Otimização em Redes

Algoritmo Genético: um experimento comparativo entre a execução paralela com troca de indivíduos de populações e a não paralela.

PROGRAMAÇÃO DA PRODUÇÃO EM SISTEMAS POR BATELADAS: UM ESTUDO PARA A OTIMIZAÇÃO DO MAKESPAN

Evolução Diferencial Aplicada na Estimação de Parâmetros de um Sistema Oscilatório

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.

n Professor n Duas Avaliações prático-teóricas: n Componente Teórico: 20 pontos n Componente Prático: 15 pontos

Otimização. Conceitos Fundamentais. Paulo Henrique Ribeiro Gabriel Faculdade de Computação Universidade Federal de Uberlândia 2016/2

Um Método Exato para o Problema do Caixeiro Viajante com Grupamentos Euclidiano e Simétrico

Coloração. Carolina Moraes e Lucas Glir

Projeto e Análise de Algoritmos

3. Resolução de problemas por meio de busca

Unidade de Matemática e Tecnologia, Universidade Federal de Goiás Regional Catalão

Parametrização de uma Prótese de Mão de Acionamento Mecânico

Comportamento do gel dosímetro polimérico com adição de fluoresceína

Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos

Problema do Caixeiro Viajante

Otimização Combinatória - Parte 3

Projeto e Análise de Algoritmos

João Paulo de Freitas Araujo. Algoritmos para acelerar a computação de Árvores de corte de Gomory e Hu. Dissertação de Mestrado

Resolução do problema do caixeiro viajante assimétrico (e uma variante) através da relaxação Lagrangeana

Algoritmos Branch e Bound para o problema de sequenciamento em uma única máquina

Caixeiro Viajante. Estruturas de Dados II. Prof. a Mariella Berger. 1. Objetivo

Relatividade Restrita e calculo da energia de ligação nuclear

Quinta-feira, 11 de abril

Teoria da Computação. Complexidade computacional classes de problemas

Prática 02. Total. Pré-requisitos 2 MTM112. N o

INFORMAÇÕES GERAIS DO TRABALHO

Complexidade Assintótica de Programas Letícia Rodrigues Bueno

RESOLUÇÃO DO PROBLEMA DE ROTEAMENTO DE VEÍCULOS UTILIZANDO A HEURÍSTICA DE SAVINGS

Palavras-chave: problema do corte de estoque, reaproveitamento das sobras, métodos heurísticos.

ALGORITMOS AVANÇADOS UNIDADE I Análise de Algoritmo - Notação O. Luiz Leão

Análise de Algoritmos

Calibração de porta amostra para o viscosímetro QUIMIS Q86M21

Programa de Pós-Graduação em Modelagem e Otimização, Regional Catalão / UFG

Reciclagem em Curitiba e Porto Alegre: uma análise comparativa pós-política Nacional de Resíduos Sólidos

Projeto e Análise de Algoritmos NP Completude. Prof. Humberto Brandão

Algoritmos Combinatórios: Introdução

Problemas de otimização

Análise de Desempenho da Paralelização do Problema de Caixeiro Viajante

Paulo Guilherme Inça. 7 de dezembro de 2016

PROBLEMA DE ROTEAMENTO DE VEÍCULO UNIVERSIDADE PRESIDENTE ANTONIO CARLOS

Pesquisa Operacional aplicada ao Planejamento e Controle da Produção e de Materiais Programação Linear

Pedro Tiago Barbosa do Couto. Resolução de problemas de transporte rodoviário de cargas utilizando programação inteira DISSERTAÇÃO DE MESTRADO

Obtenção da curva de solubilidade de sistemas relacionados com a produção de biodiesel

Otimização. Otimização em Redes. Paulo Henrique Ribeiro Gabriel Faculdade de Computação Universidade Federal de Uberlândia 2016/2

Problema de Roteamento de Veículos (VRP)

Estruturas de Dados Grafos

ANÁLISE DE DEFEITOS TOPOLÓGICOS EM UMA AMOSTRA DE CRISTAL LÍQUIDO NEMÁTICO

Aula 13: Branch-and-bound

ANÁLISE DE RESULTADOS NA CONSTRUÇÃO DE ROTA PARA O PROBLEMA DO CAIXEIRO VIAJANTE

Exemplos de modelos de PL ou PI

Programação Linear/Inteira

Fundamentos de Inteligência Artificial [5COP099]

Introdução Paradigmas

Problema de Roteamento com Janelas de Tempo: Uma Abordagem via Geração de Colunas

Estudo da influência de elitismo e mutação em algoritmos genéticos

Tópicos Especiais em Otimização

INVESTIGANDO O PROBLEMA DA MOCHILA IRRESTRITA EM SUA VERSÃO BIDIMENSIONAL

Automatização de experimentos didáticos utilizando arduino

Unidade de Matemática e Tecnologia, Universidade Federal de Goiás Regional Catalão

Implementação Paralela do Algoritmo de Roteamento de Veículos com Janelas de Tempo sob a Plataforma CUDA

Palavras-chaves: Problema do Caixeiro Viajante. Rota Ótima. Heurísticas. Coleta de Resíduos.

P, NP e NP-Completo. André Vignatti DINF- UFPR

Resolvedo problemas de despacho econômico com dados incertos usando enfoque paramétrico dual

Ricardo Fukasawa. Resolução de problemas de logística ferroviária utilizando programação inteira DISSERTAÇÃO DE MESTRADO

Algoritmo heurístico para agrupamento de ordens de serviço em concessionárias de distribuição de energia elétrica considerando priorização

Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Departamento de Matemática Aplicada

Algoritmos Genéticos e Evolucionários

Otimização Combinatória - Parte 4

UM ALGORITMO BRANCH-AND-CUT PARA O PROBLEMA DO CICLO DOMINANTE

Coloração total distinta na vizinhança em grafos 4-partidos completos

Transcrição:

https://eventos.utfpr.edu.br//sicite/sicite2017/index Otimização inteira: o problema do caixeiro viajante RESUMO André Luiz Atarasi andre.atarasi@hotmail.com Universidade Tecnológica Federal do Paraná, UTFPR, Londrina, PR, Brasil Alireza Mohebi Ashtiani ashtiani@utfpr.edu.br Universidade Tecnológica Federal do Paraná, UTFPR, Londrina, PR, Brasil O Problema do Caixeiro Viajante (PCV) é um dos problemas mais estudados de Matemática que tem uma série de aplicações interessantes, pois muitos problemas reais podem ser modelados como um PCV ou como uma das suas variações. Devido à sua grande complexidade por ser um problema NP-completo, vários métodos aproximados como, por exemplo, heurísticas têm sido desenvolvidos ao longo das últimas décadas. A proposta deste trabalho é apresentar, modelar e resolver o problema do caixeiro viajante através de algum método heurística; buscar algumas aplicações do problema e, além disso, como uma aplicação bastante prática do dia a dia dos campi da UTFPR, resolver o problema para a distância percorrida pelos motoristas da UTFPR que isso traz economia do tempo e do recurso para a nossa instituição nesta época de crise do governo federal e em sequência para todas as instituições brasileiras como a UTFPR. PALAVRAS-CHAVE: Otimização inteira. Problema do caixeiro viajante. Heurísticas. NPcompleto. Página 1

INTRODUÇÃO O Problema do Caixeiro Viajante (Travelling Salesman Problem - TSP) é um dos problemas mais estudados da Otimização Combinatória e da Teoria dos Grafos que tem uma série de aplicações interessantes, pois muitos problemas reais podem ser modelados como um PCV ou como uma das suas variações, como, por exemplo, Redes de autocarros (vans escolares), movimento de pessoas, materiais e veículos, reposicionamento de satélites, turismo, correios, empresas de valores, fabricação de placas de circuito eletrônico, raio-x cristalográfico (estudo de cristais), problema de ordem de recolhimento no depósito, sequenciamento do genoma, otimização da cadeia de digitalização, estudo de DNA, problema de rotas minimias entre os aeroportos, redes de fibras óticas, distribuição de cabos de força e entre outros (veja DALEM, 2004). O PCV foi formulado matematicamente pela primeira vez em 1932 por Karl Menger (MENGER, 1932), mas foi a partir dos anos 50 que começou a ser fortemente estudado. A um caixeiro viajante é informado um conjunto de cidades. Ele deve partir de uma cidade (inicial), passar por todas as demais cidades uma única vez e retornar à cidade inicial de tal forma que esta trajetória tenha o menor caminho possível (Figura 1). Figura 1 Exemplo de um PCV e a sua solução. Se fossem poucas cidades, por exemplo, se o caixeiro tivesse que passar por apenas 3 capitais Rio de Janeiro, São Paulo e Curitiba (saindo do Rio de Janeiro), seria fácil descobri, pois teria 2 possíveis ordenações para percorrê-las. Porém se o caixeiro tivesse que passar por todas as 26 capitais nacionais, saindo, por exemplo, do Rio de Janeiro ele teria 25! escolhas. Se tiver um computador super-veloz e levar apenas um segundo para calcular a distância total de cada um desses 25! percursos, gastaríamos 491.857.243.890.505.660 anos e como o universo tem aproximadamente 13 bilhões de anos, portanto, gastaríamos 37.835.172,61 vezes a idade do universo se for usar o método da força bruta! Observamos que apesar do seu simples enunciado, o PCV é um problema extremamente complexo. Na verdade, o PCV é um problema NP-Completo, isto é, não pode ser resolvido em tempo polinomial (GAREY; JOHSON, 1979). Os poucos métodos exatos, baseados na técnica de enumeração, que encontram a solução ótima de um PCV são computacionalmente muito caros (BACH, 1996). Pelos testes realizados no MATLAB, estima-se que o tempo computacional para cidades será aproximadamente igual a vezes o tempo ) cidades. O tempo computacional de execução do problema para ( estimado é dado por: ( ) ( ) Página 2

onde é um valor para o qual o tempo de execução exata, ( ), é conhecido. Portanto, o aumento no valor de provoca um aumento muito significativo no tempo computacional. MODELAGEM DO PROBLEMA DO CAIXEIRO VIAJANTE A construção do modelo matemático que representa a problema real em estudo, isto é, transformar um problema real e complexo, em forma de texto, em um problema matemática, onde possa ser resolvido de forma quantitativa é a parte de um problema de otimização. Considerando-se que a distância da cidade à cidade é igual da cidade à cidade, isto é, (PCV simétrico), o PCV pode ser formulado matematicamente através do seguinte modelo de programação linear inteira binária (zero-um): ( ) { { } onde a função objetivo representa a distância total a ser minimizada, as duas primeiras restrições garantem que todas as cidades têm apenas uma antecessora e uma sucessora, a terceira restrição evita a formação de ciclos ou circuitos desconexos da origem (cidade inicial) para qualquer subconjunto do conjunto de todas as cidades (Figura 2) e pela última restrição se o caixeiro sair da cidade e for diretamente para ou vice e versa. Por exemplo, no exemplo da Figura 1, enquanto. Para iniciar a resolução, deve-se fazer para com o objetivo de eliminar as soluções sem sentido. Figura 2 A funcionalidade da terceira restrição no Problema (1). RESULTADOS E DISCUSSÕES Página 3 O problema foi implementado no solver Xpress (IVE Versão 1.24.16), Free Academic Use, uma linguagem de programação super poderosa na área de otimização combinatória. Infelizmente, o solver Xpress não é gratuito, e a versão estudante é aplicável apenas a problemas com poucas variáveis (até 20)! O computador utilizado foi um Intel Core Core2Duo 2,00 GB 2,00 GHz.

Problema 1 (20 Maiores Cidades do Paraná): como um exemplo prático considere o PCV para um caixeiro que deve passar pelas 20 maiores cidades paranaenses partindo de Curitiba. A Figura 3 representa a sequência das soluções geradas ao longo do processo. Em cada iteração, o método tenta eliminar os possíveis ciclos ou circuitos desconexos da origem (Curitiba). Figura 3. A sequência de soluções geradas na resolução do Problema 1. O último gráfico da Figura 3 (canto direito) representa a solução ótima indicando a sequência ótima de cidades (Figura 4). O tempo computacional necessário, CPU Time, para resolver o problema foi 5,47 segundos e o caminho ótimo com a menor distância (1850 km) foi dado por Figura 4. A solução ótima encontrada para o Problema 1. Página 4

Problema 2 (O Problema do Zé O motorista da UTFPR-LD): como um segundo exemplo bastante prático, vamos supor que o Zé (o motorsita da UTFPR-LD) queira sair de Londrina (com a van do campus), passando em cada campus da UTFPR uma única vez pegando um aluno em cada um. Neste tempo de crise é muito importante que ele economize tanto no tempo quanto no recurso utilizado (gasolina, pedágio, diária e etc.). A solução ótima (caminho ótimo) é dada na Figura 5. O tempo computacional, CPU Time, para resolver o problema foi 2,31 segundos e o caminho ótimo com a menor distância (1800 km) foi dado por: Figura 5. Solução ótima para o Problema do Zé O Motorista da UTFPR-LD. CONCLUSÕES O PCV, apesar do seu simples enunciado, é bastante complexo e importante para a indústria e quem encontrar um método eficiente para resolvêlo pode ganhar uma verdadeira fortuna! O obstáculo à resolução do problema é o crescimento exponencial do seu tempo computacional que isso torna inviável o uso das técnicas de enumerações das trajetórias. O PCV é um problema NPcompleto e devido à sua complexidade computacional devemos buscar métodos alternativos que sejam viáveis computacionalmente e que gerem soluções próximas da solução ótima. Página 5

Integer optimization: the travelling salesman problem ABSTRACT The Travelling Salesman Problem (TSP) is one of most studied problems in Mathematics that has a number of interesting applications since many real problems can be modeled as a TSP or one of its variations. Due e to its NP-complete nature several approximate techniques, such as heuristics algorithms, have been developed during the last decades. The purpose of this work is to present, model and solve the TSP by using some heuristic algorithm, to look for some applications of the problem and, in addition, as a very practical of the day-to-day of the campuses of UTFPR, solve the problem for the distance traveled by the drivers of UTFPR that the solution saves the time and the resource for our institution in this time of crisis of the Brazilian Federal Government and in the sequence for all the Brazilian institutions like UTFPR. KEYWORDS: Integer optimization. The travelling salesman problem. Heuristics. NPcomplete. Página 6

AGRADECIMENTOS O primeiro autor (André Luiz Atarasi) gostaria de agradecer a Fundação Araucária pela bolsa concedida e o Programa de Iniciação Cientifica da UTFPR pelo incentivo. REFERÊNCIAS BACH, T. Evolutionary algorithms in theory and practice. Oxford University Press, New York, 1996. DELEM, K. Os Problemas do Milênio Sete Grandes Enigmas Matemáticos de Nosso Tempo. Editora Record, 2004. GAREY, M. R.; JOHNSON, D. S. (1979). Computers and intractability: a Guide to the Theory of NP-Completeness, Freeman, San Francisco, 1979. MENGER, K. Das Botenproblem, Ergebnisse Eines Mathematischen Kolloquiums, V. 2, 1932, pp. 11-12, 1932. Página 7

Recebido: 31 ago. 2017. Aprovado: 02 out. 2017. Como citar: ATARASI, A. L.; ASHTIANI, A. M. Otimização Inteira: O Problema do Caixeiro Viajante. In: SEMINÁRIO DE INICIAÇÃO CIENTÍFICA E TECNOLÓGICA DA UTFPR, 22., 2017, Londrina. Anais eletrônicos... Londrina: UTFPR, 2017. Disponível em: <https://eventos.utfpr.edu.br//sicite/sicite2017/index. Acesso em: XXX. Correspondência: André Luiz Atarasi Departamento de Engenharia de Materias, Estrada dos Pioneiros, 3131 - Centro, Londrina - PR, 86020-430, PR, Brasil. Direito autoral: Este resumo expandido está licenciado sob os termos da Licença Creative Commons-Atribuição-Não Comercial 4.0 Internacional. Página 8