APLICAÇÃO DE ALGORITMOS GENÉTICOS EM ALOCAÇÃO DE PARADAS DE ÔNIBUS

Documentos relacionados
Algoritmos Genéticos aplicados à otimização de áreas

3 Algoritmos Genéticos

Técnicas de Inteligência Artificial

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO

Max Pereira. Inteligência Artificial

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto

Técnicas de Inteligência Artificial

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

Algoritmos Genéticos

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA

Inteligência Artificial

Algoritmos Genéticos. Princípio de Seleção Natural. Sub-áreas da Computação Evolutiva. Idéias básicas da CE. Computação Evolutiva

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural

Algoritmos Genéticos

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante:

Aplicação de algoritmos genéticos. Problema da Mochila (knapsack problem)

IMPLEMENTAÇÃO DE UM ALGORITMO GENÉTICO PARA DETERMINAÇÃO DO PONTO DE MÁXIMO E/OU MÍNIMO DA FUNÇÃO DO 2 e 3 GRAU

Algoritmos Genéticos

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008

Aluno do Curso de Graduação em Ciência da computação da UNIJUÍ, bolsista PROBIC/FAPERGS, 3

Introdução aos Algoritmos Genéticos

Codificação das variáveis: binária Iniciação da população: aleatória Avaliação: função aptidão Operadores. Critério de parada: número de gerações

Introdução a Algoritmos Genéticos

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato:

ESTUDO DOS PARAMETROS DE UM ALGORITMO GENÉTICO PARA POSTERIOR USO NA SOLUÇÃO DE PROBLEMAS DO TIPO JOB-SHOP

1. Computação Evolutiva

ALGORITMOS GENÉTICOS. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

Implementação De Um Algoritmo Genético Codificado Para A Solução do Problema do Caixeiro Viajante

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO

Inteligência Artificial

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid

Uso de Algoritmo Genético para a otimização do ponto de corte da probabilidade de sucesso estimada do modelo de Regressão Logística

Figura 3.1: Fluxograma do algoritmo da Programação Genética.

3 Algoritmos Genéticos

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial

4 Implementação Computacional

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 06 Prof. Vitor Hugo Ferreira

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

Otimização com Algoritmos Genéticos no MATLAB. Prof. Rafael Saraiva Campos CEFET-RJ

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO

Algoritmos Genéticos Fundamentos e Aplicações. Prof. Juan Moisés Mauricio Villanueva

Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo

Aplicação da Metaheurística Algoritmos Genéticos na solução do problema das n Rainhas

Assim, no algoritmo BIOCLIM, qualquer ponto do espaço pode ser classificado como:

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO

Roteirização de veículo para realização de coleta utilizando algoritmo evolucionários

Métodos de pesquisa e Optimização

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng.

Figura 4.1: Módulos que compõe o sistema de otimização do OCTOPUS

Inteligência Computacional Aplicada. O que é Inteligência Computacional? Áreas de Aplicação Algoritmos Genéticos

4 Otimização de parâmetros dos arranjos gerados

Otimização. Unidade 6: Algoritmo Genético. Jaime Arturo Ramírez. 7. Teoria do processo evolutivo num GA. 8. Aspectos avançados

INF 1771 Inteligência Artificial

3 Computação Evolucionária

Créditos. Introdução a Sistemas Inteligentes. Agenda Introdução Breve Histórico. Introdução. Introdução aos Algoritmos Evolutivos

Extracção de Conhecimento

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

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples

Tópicos Especiais em Informática Fatec Indaiatuba

SOLUÇÕES HEURÍSTICAS PARA O JOGO DE DAMAS

4 Métodos Existentes. 4.1 Algoritmo Genético

Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos

Algoritmos Evolutivos para Otimização

Introdução ao Algoritmo Genético

INF 1771 Inteligência Artificial

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho)

1 Introdução 1.1 Motivação

Motivação Computação Evolucionária e Algoritmos Genéticos. Teoria da Evolução. Teoria da Evolução. Otimização. Algoritmos Genéticos AG

GT-JeDi - Curso de Desenv. de Jogos IA para Jogos. Gustavo Pessin 2007

Algoritmos Genéticos. 1 Semestre de Cleber Zanchettin UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática

ELABORAÇÃO DE UMA HEURÍSTICA PARA O PROBLEMA DE QUADRO DE HORÁRIOS DOS PROFESSORES DA UNIVERSIDADE ESTADUAL DO PARANÁ CAMPUS CAMPO MOURÃO

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

Inteligência Artificial

ESTUDO DO EFEITO DOS PARÂMETROS GENÉTICOS DE UM ALGORITMO GENÉTICO NA SOLUÇÃO OTIMIZADA E NO TEMPO DE CONVERGÊNCIA EM UMA FUNÇÃO DE DUAS VARIÁVEIS

OTIMIZAÇÃO DA LIMPEZA DE REDES DE TROCADORES DE CALOR EMPREGANDO OS ALGORITMOS GENÉTICOS

3 Otimização Evolucionária de Problemas com Restrição

2.1. Construção da Pista

11/1/2012. Agenda. Classe de problemas de interesse. Busca Local. Busca Local. Exemplo de Espaço de Estados

Pesquisa Operacional Aplicada à Mineração

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro

Método de Hardy-Cross Capitulo 13- Algoritmo genético engenheiro Plínio Tomaz 24 dezembro de Algoritmo genético 13-1

Estratégias Evolutivas EEs. Prof. Juan Moisés Mauricio Villanueva

4 Metáforas de Optimização

O USO DE ALGORITMOS GENÉTICOS NA RESOLUÇÃO DE PROBLEMAS DE PROGRAMAÇÃO LINEAR RESUMO INTRODUÇÃO

5 Estudo de Caso e Resultados

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

Agentes Adaptativos. Introdução

Gerador de grade de horários com Algoritmos Genéticos

Planejamento Hidrotérmico Utilizando Algoritmos Genéticos

COMPOSIÇÃO DE UMA CARTEIRA DE AÇÕES COM RISCO MÍNIMO E RETORNO ESPECIFICADO: UM ESTUDO UTILIZANDO ALGORITMO GENÉTICO E A FUNÇÃO SOLVER

Problema de Satisfação de Restrições

Problema de Satisfação de Restrições. Problema de Satisfação de Restrições. Grafo de restrições. Exemplo: 4 Rainhas como um PSR

GAs são indicados em problemas complexos de otimização- onde se busca uma solução melhor:

SISTEMA DE INFORMAÇÃO GEOGRÁFICA APLICADO AO GERENCIAMENTO DE INFORMAÇÃO DE TRANSPORTE URBANO

Algoritmos Genéticos e Evolucionários

Transcrição:

APLICAÇÃO DE ALGORITMOS GENÉTICOS EM ALOCAÇÃO DE PARADAS DE ÔNIBUS Franciele Leal Farias (UFVJM) franleal09@hotmail.com Jhieson Luiz Seles (UFVJM) jhiesonx@hotmail.com LORENA SOPHIA CAMPOS DE OLIVEIRA (UFVJM) lorena.oliveira@ufvjm.edu.br A otimização de processos tem cada vez mais se destacado na sociedade atual. Procurando solucionar este problema, juntamente com a questão do transporte urbano de qualidade nas cidades brasileira, escolheram-se os Algoritmos Genéticos como método de aplicação para buscar a solução mais viável. O algoritmo criado foi desenvolvido na linguagem Java e implementado no ambiente NetBeans. O algoritmo foi capaz de encontrar uma solução satisfatória para a alocação de paradas de ônibus em uma cidade de médio porte do nordeste mineiro. Porém, é importante destacar o fato de que o mesmo pode ser utilizado em qualquer cidade, sem restrições de tamanho, e para qualquer percurso desde que este possa ter seu comprimento identificado. Palavras-chave: Algoritmos Genéticos, paradas de ônibus, otimização, percurso

1. Introdução A crescente procura por maneiras de potencializar processos em diversas áreas do conhecimento e o aumento da competitividade no mercado atual, levaram a otimização de processos a um espaço de destaque no cenário mundial. O tema otimização remete a uma busca por meios de maximizar lucros e minimizar perdas, obtendo vantagens competitivas sobre as empresas concorrentes (MUNDIM; DELAVY, 2008). Através dessa corrida estimulada pelo avanço cientifico atual e pelo desenvolvimento de novos métodos de gestão empresarial, diversos estudiosos tem se dedicado a encontrar métodos computacionais genéricos que se adaptem a diversos problemas da sociedade moderna e auxiliem a gestores de todas as áreas (MUNDIM; DELAVY, 2008). Segundo Linden (2012), na atividade de busca pelos melhores desempenhos, os Algoritmos Genéticos são uma classe de procedimentos que compõe uma das técnicas de Inteligência Artificial que se destaca pelo desempenho adequado em otimização de processos nas mais diversas áreas de conhecimento. Outro problema que tem tido destaque nas cidades mais desenvolvidas do cenário brasileiro é a questão da mobilidade urbana. Os sistemas de transporte público disponibilizados nessas cidades operam em nível adequado de oferta e qualidade de serviço. Porém, analisando as cidades de menor porte é possível perceber que não existe um planejamento urbano e de transportes que seja eficaz. Portanto, se torna necessário o desenvolvimento desse planejamento nas cidades menores, visando minimizar os problemas de mobilidade nas cidades do curto ao longo prazo (ANDRADE, 2004). Assim, considerando os dois problemas apresentados e levando em conta o desempenho dos Algoritmos Genéticos para lidar com o problema da otimização, este trabalho tem por intuito a criação de um algoritmo capaz de determinar a distribuição de circunferências em áreas retangulares, podendo ser utilizado em diversas situações. Ainda 2

neste trabalho, o algoritmo criado é utilizado para a alocação de paradas de ônibus ao longo de uma avenida de uma cidade de médio porte do nordeste mineiro. 2. Metodologia Os Algoritmos Genéticos (AGs) são um modelo heurístico computacional criado por John Holland que, ao ser implementado, poderia oferecer boas soluções para problemas até então considerados computacionalmente insolúveis (LINDEN, 2012). Este modelo foi inspirado no processo de modificação natural das populações, segundo os princípios da seleção natural proposto por Charles Darwin, em 1859, no seu livro intitulado A Origem das Espécies (FILITTO, 2008). Estes algoritmos estão baseados nos processos genéticos dos organismos biológicos que codificam possíveis soluções a uma situação/problema descrita em seus cromossomos. Os cromossomos representam um conjunto de indivíduos denominados população. Estes indivíduos são reproduzidos e selecionados ao longo de várias gerações seguindo os princípios de seleção natural e sobrevivência dos mais aptos, segundo a teoria de Darwin. Seguindo cada passo desse processo, os Algoritmos Genéticos são capazes de gerar soluções para problemas do mundo real (MAIA; MICHELAN, 2014). A ferramenta utilizada para implementação do AG proposto é o NetBeans. Essa ferramenta é um ambiente de desenvolvimento integrado (IDE) para desenvolvimento de softwares em diversas linguagens. Ele oferece aos usuários os instrumentos necessários para criar aplicativos profissionais de desktop, empresariais, web e multiplataformas. O NetBeans fornece uma base sólida para a criação de projetos e módulos, possuindo um grande conjunto de bibliotecas, módulos e uma documentação vasta bem organizada (NETBEANS, n.p.d.). O NetBeans ainda possui um framework baseado em Java para implementação de Algoritmos Genéticos, o JGAP (Java Genetic Algorithms Package). Essa ferramenta 3

proporciona mecanismos genéticos básicos de fácil utilização para solucionar problemas aplicando os princípios evolutivos (MEFFERT; ROTSTAN, 2012). Outras ferramentas utilizadas foram o Google Maps e o Google Earth Pro, ambas gratuitas e fornecidas pela empresa Google Inc. O Google Maps se trata de um aplicativo de serviço de pesquisa e visualização de mapas e imagens de satélites (GOOGLE, n.p.d.). Esse aplicativo fornece mapas e rotas em qualquer ponto do Brasil, por isso, foi utilizado nesse trabalho para demonstrar a avenida em que serão implementados os pontos de ônibus. O Google Earth Pro também é um aplicativo para visualização de imagens de satélite, mas, nele é possível gerar mapas bidimensionais para identificar lugares, paisagens, construções, entre outros (GOOGLE, n.p.d.). O programa é similar, porém mais complexo do que o Google Maps. Este aplicativo foi utilizado para demonstrar a localização exata dos raios de influência na avenida. O algoritmo utilizado neste trabalho tem por finalidade definir a posição de paradas de ônibus na Avenida Luiz Boali em Teófilo Otoni, Minas Gerais. A determinação da posição exata é baseada nos raios de influência. Cada ponto de ônibus abrange uma área especifica, recebendo as pessoas que se encontram dentro dela. Essa área é conhecida como raio de influência, pois ela tem o formato de uma circunferência e mostra a distância máxima que aquele ponto de ônibus pode atingir a população. 2.1 Topologia Para a realização deste trabalho foi construído um Algoritmo Genético com a utilização da codificação binária, que se adéqua facilmente ao problema em questão. Cada indivíduo é gerado aleatoriamente, possuindo um conjunto de bits que representam a quantidade de pontos a serem alocados dentro da área pré-definida, sendo que a cada oito bits é representada uma coordenada (x,y) de um ponto (FILITTO, 2008). Nesse trabalho serão alocados 6 pontos de ônibus, gerando um individuo de 48 bits. 4

Durante a simulação ocorreram testes com populações de diversos tamanhos, porém o melhor resultado foi encontrado na simulação que ocorreu com uma população contendo um grupo de trinta e cinco indivíduos. Nesta simulação foram utilizadas 150 gerações. O operador de seleção é um componente fundamental no algoritmo e é classificado pela sua intensidade de seleção (FILITTO, 2008). O operador de seleção deste trabalho é a roleta viciada. Um importante fator no processo de seleção é a função de avaliação que consiste em um elo entre o Algoritmo Genético e o meio ao qual ele está inserido. A avaliação é feita através de uma função inserida no AG que traduz o problema analisado, e retorna o nível de aptidão de cada individuo da população (FILITTO, 2008). Neste algoritmo, foi implantada uma função que determinasse a melhor posição para as circunferências na área determinada. O operador de cruzamento tem por função combinar partes dos cromossomos dos pais, para criar o cromossomo dos filhos (FILITTO, 2008). O operador escolhido para este algoritmo foi o crossover uniforme, e a taxa de cruzamento utilizada está na faixa de 80 a 95%. O operador de mutação é responsável pela introdução de pequenas mudanças que podem ocorrer nos cromossomos dos descendentes (FILITTO, 2008). O operador de mutação utilizado foi a inversão de bits e a taxa de mutação aplicada está na faixa de 1 a 10%. No decorrer do processo de gerações, o individuo perfeito pode ser encontrado e perdido no desenvolvimento do algoritmo, durante o cruzamento ou na mutação. Para evitar sua perda, foi inserido o elitismo que armazena esse individuo quando ele é encontrado e impede que ele seja modificado (FILITTO, 2008). Nesse algoritmo também foi o utilizado o método da adaptação dinâmica que é responsável por determinar a ocorrência do crossover e da mutação. Esse método possui grande importância, pois ele é capaz de determinar se a população utilizada está homogênea ou diversificada. Nele é quantificado o valor de avaliação de cada um dos indivíduos da população e determinado o valor médio do grupo. Através desses valores é possível 5

determinar a condição da população do algoritmo. Se esta for considerada homogênea, a probabilidade de ocorrência da mutação aumenta e a probabilidade do crossover diminui. Se considerada diversificada, a probabilidade de ocorrência do crossover aumenta e a da mutação diminui (SOARES, 1997). O algoritmo criado possui uma característica importante que deve ser levada em consideração que é a sua generalidade. Por se tratar de um problema que abrange muitas cidades, o mesmo foi construído de maneira que possibilitasse a sua adaptação a diversas situações. Nas Figuras 1 e 2 são apresentadas as caixas de entradas de dados onde o usuário final pode escolher o comprimento do percurso e o tamanho do raio de influência que será utilizado, ambas as informações em metros, tornando o algoritmo compatível com as mais variadas situações que podem ser encontradas. Figura 1 - Caixa de entrada do tamanho do raio de influência do ponto de parada Fonte: Adaptado do NetBeans Figura 2 - Caixa de entrada do tamanho do trecho analisado 6

Fonte: Adaptado do NetBeans 3. Resultados e Discussões A Figura 3 apresenta o percurso analisado neste trabalho, tendo este 1800 metros de comprimento. Porém, é necessário ressaltar que o percurso possui curvas e para realizar a alocação dos pontos foi necessário considerá-lo como uma reta para que o algoritmo pudesse obter um resultado satisfatório. Para realizar a locação das paradas de ônibus é necessário analisar as normas que regulamentam a distância mínima entre estes. Segundo Andrade (2004), o distanciamento recomendado entre as paradas está em torno de 500 metros que é considerada uma distância normal para o passageiro percorrer caminhando. Porém, é comum se utilizar o espaçamento de 300 metros entre as paradas. É importante ressaltar que essa distância é o recomendado para paradas nas áreas centrais e que esse valor aumenta nas áreas periféricas das cidades. Utilizando a distância de 300 metros entre as paradas, foi determinado um raio de influência de 150 metros em torno de cada uma delas. Figura 3- Percurso analisado no trabalho Fonte: Adaptado do Google Maps 7

Assim, o algoritmo foi capaz de determinar a posição de cada uma das seis paradas de ônibus na avenida, como pode ser visto na Tabela 1 e na Figura 4. Na Figura 4 é possível perceber que algumas circunferências se sobrescrevem em pequenos espaços do percurso. Este acontecimento é atribuído ao fato de o percurso ter sido considerado como reto para a alocação das paradas e quando ocorre o posicionamento no percurso de fato, as curvas acabam concentrando uma quantidade de espaço maior do que uma reta. Por isso, as circunferências que se sobrescrevem são exatamente as que possuem curvas no seu interior. Tabela 1 - Posição dos pontos de parada na avenida a partir da posição inicial de análise Parada Posição na avenida (m) 1 150 2 450 3 750 4 1050 5 1350 6 1650 Fonte: Autor Próprio Figura 4 - Posição das paradas de ônibus no percurso 8

Fonte: Adaptado do Google Earth Pro 4. Conclusão A busca por novas técnicas que resolvam problemas relacionados à otimização de processos, levou os pesquisadores aos Algoritmos Genéticos. Estes mostraram que são capazes de gerar soluções satisfatórias para diversos problemas do cenário atual. Assim, foi escolhido um problema relacionado ao transporte urbano para que o algoritmo fosse aplicado e gerasse soluções, sendo estas consideradas satisfatórias. É importante ressaltar que este algoritmo empregado é extremamente generalista, podendo ser utilizado desde cidades pequenas até grandes metrópoles, não importando o tamanho do município, e em qualquer percurso que possa ter seu comprimento mensurado. Também pode-se destacar o fato do algoritmo criado ter a funcionalidade de se aplicar a outros problemas que não envolvam a questão do transporte urbano, desde que o usuário possua conhecimento na área de AGs e que saiba manusear a ferramenta onde o mesmo foi implementado. 9

Analisando apenas o percurso utilizado neste trabalho, o resultado encontrado foi considerado satisfatório. Porém, pretende-se futuramente implementar a análise da população que circula pela área considerada e que utiliza o transporte público, de maneira que o algoritmo também leve essas informações em consideração quando for realizar a alocação das paradas de ônibus no percurso. Referências ANDRADE, Karoline; PAULA, Victor; MESQUITA, Adailson; VILLELA, Patrícia. Problemas relacionados aos pontos de parada do transporte público nas cidades de porte médio. IV Seminário Internacional da Lares, 2004. Disponível em:<http://www.lares.org.br/sl4g_andrade.pdf> Acesso em 15 de dezembro de 2016. FILITTO, Danilo. Algoritmos Genéticos: uma visão explanatória. Revista multidisciplinar da UNIESP, Saber Acadêmico - nº 06 - Dezembro 2008/ ISSN 1980-5950. Págs. 136-137. GOOGLE [Internet]. Visão geral do Google Earth Pro. [S.d.] Disponível em: <https://www.google.com.br/intl/pt-pt/earth/> Acesso em: 15 de abril de 2017. GOOGLE [Internet]. Visão geral do Google Maps. [S.d.] Disponível em: <https://www.google.com.br/maps/> Acesso em: 15 de abril de 2017. LINDEN, Ricardo. Algoritmos Genéticos. 3ª ed. Rio de Janeiro: Editora Ciência Moderna Ltda, 2012. 475p. MAIA, Alexandra Carniel Perdigão; MICHELAN, Roberto. Algoritmos Genéticos. Universidade Estadual de Maringá. Disponível em: < http://www.din.uem.br/ia/geneticos/> Acesso em: 06 de set. 2016. MEFFERT, Klaus; ROTSTAN, Neil. 2002-2012. Disponível em:< http://jgap.sourceforge.net> Acesso em 07 de jul. 2016. MUNDIM, Kleber; DELAVY, Vilma. Otimização Global de Processos Usando o Método Generalized Simulated Annealing. Revista Processos Químicos Pag 09-23. Julho Dezembro, 2008. NETBEANS [Internet]. Visão geral do NetBeans IDE. [S.d.] Disponível em: <https://netbeans.org/features/index_pt_br.html>. Acesso em: 07 de jul. 2016. 10

SOARES, Gustavo L. Algoritmos Genéticos: Estudo, Novas Técnicas e Aplicações. Dissertação de Mestrado, Programa de Pós-Graduação em Engenharia Elétrica Universidade Federal de Minas Gerais (UFMG), 1997 11