ALGORITMO GENÉTICO PARA O PROBLEMA DA ÁRVORE GERADORA MÍNIMA GENERALIZADO

Tamanho: px
Começar a partir da página:

Download "ALGORITMO GENÉTICO PARA O PROBLEMA DA ÁRVORE GERADORA MÍNIMA GENERALIZADO"

Transcrição

1 ! "#$ " %'&)(*&)+,.- C)D 5.,.5FE)5.G.+ &4- (IHJ&?,.+ /?<>=)5.KA:.+5MLN&OHJ5F&4E)2*EOHJ&)(IHJ/)G.- D - ;./);.& ALGORITMO GENÉTICO PARA O PROBLEMA DA ÁRVORE GERADORA MÍNIMA GENERALIZADO Luciano Ferreira (Unicruz) lferreira@unicruz.edu.br Fernando de Cristo (UFSM/PPGEP) fernandodecristo@yahoo.com.b Felipe Martins Muller (UFSM/PPGEP) felipe@inf.ufsm.br Denis Borenstein (UFRGS/PPGA) denisb@ea.ufrgs.br O problema da árvore geradora mínima generalizado está presente em várias situações do mundo real, tais como no contexto das telecomunicações, transportes e agrupamento de dados, onde uma rede de clusters precisa ser conectada utilizando umm nodo de cada cluster. Nesse trabalho é apresentado o projeto e a implementação de um algoritmo genético para o problema da GMST. O algoritmo genético foi testado com 36 instâncias da TSPLIB geradas através do método de agrupamento Center Clustering. O algoritmo genético proposto encontrou a solução ótima para todas as instâncias. Na seqüência desse trabalho outras instâncias serão testadas, especialmente as instâncias da TSPLIB geradas pela técnica de agrupamento Grid Clustering. Palavras-chaves: Arvore de cobertura mínima, Otimização em grafos, Meta-heurísticas

2 1. Introdução O problema da árvore geradora mínima generalizado (do inglês, Generalized Minimum Spanning Tree GMST) tem como finalidade, a partir de um dado grafo G com vértices divididos em grupos, encontrar uma árvore T que cubra ao menos um (ou exatamente um) vértice de cada grupo de G, de forma que a soma do custo das arestas de T seja mínima. Portanto, o problema é definido sobre um grafo ponderado G = G(V, E), onde V representa o conjunto de vértices e E = {(i, j): i, j Î V, i j} o conjunto de arestas. Neste problema, o conjunto V de vértices do grafo é particionado em k grupos Vi, i K = {g 1, g 2,..., g k }, conforme Feremans et al. (2001). Esse problema vem despertando o interesse de pesquisadores da área de pesquisa operacional por ser classificado como um problema NP Difícil e por apresentar inúmeras aplicações práticas na área de transportes, energia, telecomunicações, biologia molecular e agrupamento de dados (HAOUARI e CHAOUACHI, 2006), além de aplicações em problemas de localização de facilidades, em problemas de roteamento, em projeto de circuitos integrados e planejamento da produção (DROR et al., 2000). Para demonstrar que o GMST é NP-Difícil Muyng et al. (1995) utilizaram o node cover problem, que é conhecidamente NP-Completo, e demonstraram que ele pode ser polinomialmente reduzido para o GMST. Algumas soluções têm sido propostas para o problema, como por exemplo, Ferreira et al. (2006), Golden et al. (2005), Dror et al. (2000), Haouari e Chaouachi (2006). Porém, analisando a literatura da área, percebe-se que novas alternativas devem ser desenvolvidas e testadas para o contexto desse problema, principalmente para instancias de grande escala. Os algoritmos genéticos são membros da classe de algoritmos de busca inspirados na evolução natural. São métodos generalizados de busca e otimização que simulam os processos naturais de evolução, aplicando a idéia darwiniana de seleção natural de acordo com a aptidão e a combinação com outros operadores genéticos (DROR et al., 2000). A idéia de utilizar algoritmos genéticos para resolver o problema da GMST é motivada pela sua eficiência e robustez para resolver problemas de otimização combinatória de grande escala. Portanto, a principal contribuição desse trabalho é o desenvolvimento de um algoritmo genético para o problema da Arvore de Cobertura Mínima Generalizado. O restante desse trabalho está organizado da seguinte forma: a próxima seção apresenta uma breve revisão bibliográfica sobre os trabalhos que utilizam algoritmos genéticos para resolver o problema da GMST, destacando suas características principais, além de apresentar os demais trabalhos que serviram com base para a elaboração do algoritmo genético proposto; a seção 3 apresenta o algoritmo genético propriamente dito. Os resultados obtidos e o projeto dos experimentos são descritos na seção 4, enquanto que a seção 5 está reservada para as considerações finais e para os trabalhos futuros. 2. Revisão de literatura Um dos primeiro trabalhos analisados para o contexto desse trabalho foi apresentado por Golden et al. (2005). Os autores apresentam dois métodos de busca heurística para o problema GMST: busca local e algoritmos genéticos. O algoritmo genético emprega quatro diferentes operadores genéticos, dois reprodutivos e dois mutativos, crossover, tree separation, mutação randômica e busca local. Nesse algoritmo, cada cromossomo é representado como um vetor de números inteiros, onde cada posição do vetor armazena um vértice de um determinado cluster. Para gerar a população inicial, o autor utilizou duas heurísticas construtivas, uma aleatória, onde um nodo de cada cluster foi selecionado aleatoriamente, e outra que corresponde a uma adaptação do algoritmo Prim. A operação de crossover utilizada é o single-point, onde o ponto de crossover é selecionado aleatoriamente. O autor descreve também um outro operado reprodutivo, chamado tree separation, onde dois descendentes são gerados a partir de um mesmo pai, numa espécie de auto-reprodução. Os autores implementaram uma operação de mutação randomica, tanto o alelo quanto a escolha do novo nodo são feitas aleatoriamente com probabilidade uniforme. Uma heurística de busca local tambem é 2

3 utilizada como uma espécie de mutação. O critério de sobrevivência dos cromossomos adotada pelos autores é o seguinte: 10% dos sobreviventes são eleitos pela função de fitness, enquanto que os demais 90% são selecionados baseado em uma função de destribuição probabilística. Golden et al (2005) demonstram que ambas as heurísticas propostas encontram rápidas soluções para a GMST. Para estes testes configurou-se uma população inicial de 500 cromossomos, operador de crossover com probabilidade 0.1, tree separation com probabilidade 0.1, operador de mutação randomica com probabilidade 0.7, busca local com probabilidade 0.1 e um ciclo de 500 gerações. Foram usadas 211 instâncias do problema para os testes. O segundo trabalho analisado para o contexto desse trabalho foi elaborado por Haouari e Chaouachi (2006), os autores propõem um algoritmo genético onde cada cromossomo é representado como uma string de números inteiros de tamanho s (s é o número de subgrupos) na qual o valor k- ésimo gene corresponde ao índice de um dos vértices que fazer parte do grupo k. A heurística PROGRES, detalhada em Haouari e Chaouachi (2002), é utilizada para gerar a população inicial. Os autores utilizam um operador de crossover de dois pontos, onde os dois pontos de crossover são selecionados aleatoriamente. Assim como em Golden et al. (2005), é utilizado um operador de mutação randômica. Para aumentar a velocidade computacional, o algoritmo utiliza uma restrição de busca para o subgrupo de arestas gerados através de um passo de processamento com a heurística PROGRES. A população inicial utilizada no algoritmo genético foi de 100 cromossomos, o número de gerações foi definido em 16, a probabilidade de realização do crossover foi 0.9, ao passo que a operação de mutação foi realizada com probabilidade 0.1. Com essa comfiguração o algoritmo genético atingiu o valor ótimo em 92.5% das instâncias testadas. Um terceiro algoritmo genético, proposto por Dror et al. (2000), foi analisado durante a revisão bibliográfica desse trabalho. Nesse algoritmo os autores utilizam uma representação binária para cada cromossomo (o valor 1 indica que o vértice faz parte da árvore de cobertura mínima; o valor 0 indica que o vértice não faz parte da árvore). A população inicial é criada através da Heurística de Inserção, similar ao método proposto por Prim, o operador de crossover utilizado é o single-point, enquanto que uma mutação randômica é realizada. Os parâmetros para o algoritmo são os seguintes: tamanho da população: 100, número total de gerações: 20, probabilidade de mutação: 0.01; somente os cromossomos mais aptos sobrevivem a gerações futuras. Por fim, outro trabalho bastante importante para o desenvolvido desse trabalho foi o apresentado por Ferreira et al. (2006). Nesse trabalho os autores desenvolveram uma heurística GRASP com memória adaptativa para o problema da GMST. Importante para o contexto desse trabalho foram as heurísticas construtivas descritas no trabalho (Construtivo C1, Construtivo C2, Construtivo C3 e Construtivo C4) e a idéia da utilização da Reconexão de Caminhos (do inglês Path Relinking) para o contexto do problema da árvore de cobertura mínima generalizado. A técnica de reconexão de caminhos apresentada em Glover et al. (2000) é uma forma de explorar as possíveis trajetórias (soluções intermediárias) existentes entre duas soluções que apresentam certo nível de qualidade. O algoritmo parte de uma determinada solução (base) e, passo-apasso, a transforma em outra (alvo). Nesse trajeto, entende-se que pode ser encontrada uma solução melhor que as duas soluções extremas (FERREIRA et al., 2006). Há diversas formas de se implementar a Reconexão de Caminhos, ver por exemplo, Andrade (2004) para maiores detalhes. 3. Algoritmo genético proposto Algoritmos genéticos são modelos computacionais que imitam os mecanismos de seleção natural para resolver problemas de otimização. Foram inicialmente desenvolvidos John Holland e sua equipe nos anos 60. Essa seção apresenta a descrição do algoritmo genético desenvolvido para o problema da árvore geradora mínima generalizado. 3

4 3.1 Representação dos cromossomos Algoritmos genéticos trabalham sobre uma população ou conjunto de soluções para um dado problema. Cada indivíduo na população é chamado de cromossomo. No presente trabalho o objetivo é determinar uma árvore de custo mínimo passando por pelo menos um vértice de cada grupo. Dessa forma, cada cromossomo foi representado como um vetor de números inteiros de mesmo tamanho do número de grupos de vértices. O alelo de um dado gene dever ser um dos vértices do grupo correspondente a sua posição no vetor. A Figura 1 apresenta um exemplo de GMST com quatro grupos de vértices. Figura 1 Exemplo de GMST Fonte: Ferreira et. al. (2006) Para essa árvore, podem-se representar os cromossomos da seguinte forma, por exemplo: ; ; e, Geração da população inicial Haouari e Chaouachi (2006) sugerem que a qualidade da população inicial é muito importante para a qualidade da solução final dos algoritmos genéticos. Dessa forma, diferentes alternativas para gerar a população inicial de cromossomos foram implementadas e estão disponíveis para uso: 1) Construtivo C1, conforme Ferreira et al. (2006); 2) Construtivo C2, conforme Ferreira et al. (2006); 3) Construtivo C3, conforme Ferreira et al. (2006); 4) Heurística de Inserção, conforme Dror et al. (2000); e, 5) Soluções randômicas, conforme Golden et al. (2005). Os cromossomos gerados nessa etapa constituem a população pai, pois serão submetidos a operações de reprodução para gerar novos descendentes, os cromossomos filhos. O tamanho da população inicial é um dos parâmetros do algoritmo e no decorrer desse trabalho será apresentado o valor que se mostrou mais apropriado durante os testes. 3.3 Avaliação e seleção dos cromossomos Cada cromossomo da população pai é avaliado através de uma função de fitness, o valor dessa função é dado pelo custo da GMST. A seleção dos cromossomos é feita de acordo com o método da roleta (do inglês roulette-wheel procedure), conforme Goldberg (1986 apud DANIEL e RAJENDRAN, 2005). De acordo com esse procedimento, a probabilidade de selecionar um cromossomo k é dada pela função: P k f k = n k ' = 1 f k ' A idéia desse método é selecionar cromossomos aleatoriamente, porém proporcionando maiores chances de reprodução aos mais aptos. Após várias gerações, os cromossomos menos aptos tendem a ser eliminados e os mais aptos a se reproduzir mais. Para exemplificar o procedimento de seleção, vamos considerar quatro cromossomos com f 1 =10, f 2 =20, f 3 =30 e f 4 =40, com valores para P 1 =0.1, P 1 =0.2, P 1 =0.3 e P 1 =0.4. A probabilidade acumulada de selecionar os cromossomos 1, 2, 3 e 4 4

5 será então: 0.1, 0.3, 0.6 e 1.0, respectivamente. Para escolher um cromossomo, portanto, gera-se um número randômico uniformemente distribuído entre 0 e 1, o cromossomo correspondente é selecionado. Vamos supor que o número 0.6 foi gerado aleatoriamente, isso significar dizer que o cromossomo 3 deve ser selecionado. 3.4 Crossover Duas alternativas para operações de crossover foram implementadas e testadas ao longo do desenvolvimento desse trabalho. A primeira foi o single-point crossover e a segunda opção foi o crossover uniforme. O primeiro tipo de crossover é ilustrado na Figura 2, deve-se gerar um número aleatório para determinar o ponto de crossover, após trocar os genes de um cromossomo com outro, com exceção daqueles que se localizam antes do ponto de crossover. Na Figura 2, o ponto de crossover foi o cromossomo 2, portanto, os dois primeiros genes de cada cromossomo permaneceram inalterados, enquanto que os demais são trocados. Pais Filhos Figura 2 Exemplo de single-point crossover O segundo tipo de crossover é ilustrado na Figura 3, nesse caso, os genes que os pais tem em comum são mantidos, formando um template para gerar os novos descendentes. Enquanto que os demais genes são trocados para completar o alelo dos filhos. Pais Filhos Mutação Figura 3 Exemplo de crossover uniforme Três operações de mutação foram implementadas e testadas: mutação randômica, busca local e tree separation. Na mutação randômica um gene é escolhido aleatoriamente e seu valor é trocado por outro vértice do mesmo cluster. O novo vértice também é escolhido de forma aleatória. Na busca local os clusters são visitados de acordo com uma ordem previamente estabelecida até que nenhuma melhoria de custo seja possível de ser realizada. Quando um cluster é visitado, o operador de busca local avalia todos os outros vértices do cluster e seleciona aquele que representa a melhor alternativa, ou seja, aquele que diminui o custo da GMST em maior grandeza. Outro operador de mutação avaliado foi o tree separation. Essa operação consiste em gerar dois descentes a partir de um único pai, fato que pode ser visto como um operador de auto-reprodução (GOLDEN et al., 2005). A idéia é remover um arco da árvore pai, aquele que possui o maior custo é removido primeiro, criando duas sub-árvores. Cada sub-árvore é então reconectada através de uma adaptação do algoritmo de Prim. Para garantir que cada filho tenha suficiente carga genética do pai, se a remoção do arco de maior custo gerar uma sub-árvore com um número de vértices menor que o mínimo pré-estabelecido, outro arco é escolhido. Esse procedimento é repetido até que essa restrição seja satisfeita. 3.6 Reconexão de Caminhos No algoritmo genético desenvolvido nesse trabalho utiliza-se a Reconexão de Caminhos do tipo mista a partir de uma geração inicial g. Se for encontrada uma solução melhor que a incumbente, então essa solução é adicionada a população de cromossomos. A geração inicial g, também serve como incremento para sua próxima execução, ou seja, a Reconexão de Caminhos é executada sempre de g em g gerações e a partir da geração g. 5

6 3.7 Sobrevivência A sobrevivência a formação das gerações futuras é um importante passo do algoritmo genético. Se o índice de sobrevivência for muito alto, somente os mais aptos são selecionados para sobreviver, nesse caso, é possível que os mais aptos irão dominar o processo de busca levando a solução para um ótimo local. Por outro lado, se o índice de sobrevivência for muito baixo, muitos indivíduos com fitness baixo sobreviverão, podendo fazer com que o algoritmo percorra todo o espaço de soluções (GOLDEN et al., 2005). A abordagem de sobrevivência utilizada nesse trabalho é a similar às utilizadas no trabalho de Golden et al. (2005) e no trabalho de Daniel e Rajendran (2005), onde um número de cromossomos é selecionado pelo melhor fitness e os restantes são selecionados por critérios probabilísticos e pelo fitness, conforme seção Algoritmo passo-a-passo Passo 1: Inicializar o número de gerações, alfa (taxa de crossover), gama (taxa de mutação), delta (taxa de busca local), beta (taxa de tree separation) e a geração inicial do path relinking; Passo 2: Gerar a população inicial; Passo 3: Gerar alfa descentes por crossover; Passo 4: Gerar gama descentes por mutação; Passo 5: Gerar delta descentes por busca local; Passo 6: Gerar beta descentes por tree sepation; Passo 7: Executar path relinking, ser for o caso; Passo 8: Selecionar cromossomos; Passo 9: Se critério de parada atingido, FIM, caso contrário voltar ao passo 3. Há três tipos de critérios de parada que são utilizados no algoritmo: quando atingir o número máximo de gerações estipulado, quando a solução ótima encontrada não mudar por 500 gerações ou quanto a melhor solução para uma da instância for atingida. 4. Resultados O algoritmo genético apresentado na seção anterior foi desenvolvido na Linguagem de Programa Java e os testes foram realizados num computador Pentium IV 3.06 MHz com 512 de memória principal. As instancias selecionadas para testes são semelhantes àquelas utilizadas por Ferreira et al. (2006), Feremans (2001) e Golden et al. (2005). Desse modo, pode-se utilizar tais trabalhos como referência para avaliar a qualidade das soluções geradas pelo algoritmo genético proposto nesse trabalho. Conforme pôde ser notado, a execução do algoritmo genético desenvolvido requer a configuração de uma série de parâmetros, entre os quais: taxa de mutação, crossover, tree separtion e busca local; tamanho da população inicial; número de descendentes; percentual de sobrevivência da população; geração inicial e intervalo para execução da Reconexão de Caminhos. Para determinar o valor de cada um desses parâmetros, foi realizado uma etapa inicial de calibragem dos parâmetros, através da execução do algoritmo diante de um subconjunto das instâncias selecionadas. Após essa etapa chegou-se aos seguintes parâmetros para instancias com até 100 vértices: 6

7 Tamanho da população inicial: 200; Número de descendentes: 100; Taxa de crossover: 0.8; Taxa de mutação: 0.4; Taxa de tree separation: 0; Taxa de busca local: 0.3; Reconexão de caminhos não necessária; Essa configuração se mostrou adequada apenas para instâncias com até 100 vértices, para instancias maiores a solução ótima foi encontrada em poucos casos. Desse modo, várias alternativas para melhorar o desempenho do algoritmo foram avaliadas, desde novas heurísticas construtivas, até alterações no próprio funcionamento do algoritmo genético (operações de reprodução, forma de seleção dos cromossomos, taxa de sobrevivência, entre outros). Porém, a alternativa que apresentou melhores resultados durante a etapa de testes foi a combinação do algoritmo genético com a Reconexão de Caminhos. Passou-se então a utilizar a Reconexão de Caminhos a cada 100 gerações (esse valor também foi determinado através de testes), além de aumentar o número de descentes para 200. Os demais parâmetros permaneceram os mesmos. Vale destacar que esta última configuração apresentou melhores resultados (tanto em relação a velocidade computacional quanto em relação ao número de gerações para encontrar a solução ótima), quando a população inicial foi gerada de apenas de forma aleatória, sem a utilização das demais heurísticas construtivas descritas na seção 3.2. Uma das justificativas para essa melhora de desempenho se deve ao fato de que a Reconexão de Caminhos apresentou melhores resultados quando as soluções eram mais diferentes entre si. A operação de mutação tree separation e o operador de crossover single-point foram testados, porém, durante a etapa de calibragem dos parâmetros, não apresentaram resultados que justificassem sua utilização na versão final do algoritmo. Portanto, a etapa inicial de calibragem do algoritmo genético, embora bastante exaustiva, foi de grande importância para ajustar o algoritmo implementado para o problema da GMST. Além de selecionar as melhores taxas para as operações de mutação e crossover, foi possível simplificar o algoritmo genético, torná-lo mais rápido computacionalmente e deixá-lo com maior grau de convergência em relação a solução ótima, conforme demonstram os resultados exibidos na Tabela 1, os tempos são dados em segundos. Instância Ótimo N o médio de gerações Tempo médio de execução* V1 V2 V1 V2 27europ ,60 101,00 71,09 16,92 15spain ,60 99,60 12,12 7,09 10att ,60 141,00 21,20 7,79 10gr ,00 161,00 27,80 9,01 10hk ,00 181,00 17,40 9,78 11eil ,60 121,00 23,84 7,34 12brazil ,20 481,00 43,02 13,63 14st ,00 141,00 63,48 12,76 16eil ,40 176,00 71,46 21,07 16pr ,80 261,00 96,85 29,17 20gr ,20 241,00 161,04 34,68 20rat ,40 261,00 256,96 48,26 7

8 Tabela 1 Comparação de tempo de execução do GA Após essa etapa inicial, cada instancia foi executada cinco vezes com a nova versão do algoritmo genético. Os resultados estão apresentados na Tabela 2. A tabela está dividida em cinco colunas, a saber: nome da instância, número de cluster, número de vértices, solução ótima conhecida para a instância, número médio de gerações para encontrar o resultado ótimo e tempo médio de execução para encontrar o valor ótimo. Instância K Vértices Ótimo Tempo Feremans Média de Gerações Tempo Médio spain ,60 7,09 europ ,00 16,92 gr ,00 116,33 gr ,00 94,15 gr ,00 137,80 att ,00 7,79 gr ,00 9,01 hk ,00 9,78 eil ,00 7,34 brazil ,00 13,63 st ,00 12,76 eil ,00 25,36 pr ,00 29,17 gr ,00 34,68 rat ,00 48,26 kroa ,00 65,28 krob ,00 62,87 kroc ,00 86,48 krod ,00 56,42 kroe ,00 30,53 rd ,00 45,16 eil ,00 31,98 lin ,00 45,94 pr ,00 151,95 gr ,00 82,00 pr ,00 201,88 bier ,00 256,03 pr ,00 224,27 gr ,00 227,39 pr ,80 371,89 kroa ,00 338,67 krob ,00 485,54 pr ,00 165,88 u ,00 272,77 rat ,33 392,87 kroa ,20 870,33 krob ,00 613,32 Tabela 2 Resultados obtidos com o algoritmo genético A partir dos resultados apresentados na Tabela 2, pode-se verificar que o algoritmo genético desenvolvido nesse trabalho se mostrou bastante eficiente no que diz respeito a qualidade das soluções encontradas, uma vez que atingiu o valor ótimo para instâncias clássicas elaboradas para o problema 8

9 da GMST e utilizadas para avaliação de heurísticas meta-heurísticas em outros trabalhos, tais como em Ferreira et al. (2006), Feremans (2001) e Golden et al. (2005). O principal ponto do algoritmo a ser aprimorado no algoritmo genético, quando comparado a outros trabalhos, diz respeito a sua velocidade e convergência para encontrar a solução ótima. No entanto, como foi demonstrado no inicio dessa seção, novos refinamentos nos parâmetros para e execução do algoritmo podem ser feitos para melhorar o desempenho do algoritmo nesse quesito. 5. Conclusões Esse trabalho apresentou a elaboração e testes de um algoritmo genético para o problema da GMST. Por se tratar de um problema NP-Difícil e por ainda ser pouco explorado por pesquisadores da área de pesquisa operacional, principalmente no Brasil, pode-se dizer que o trabalho será bastante válido para futuros pesquisadores que venham a explorar esse tema através de algoritmos genéticos ou mesmo através de outras heurísticas e meta-heuristicas. A qualidade das soluções obtidas com o algoritmo genético para instâncias que foram geradas pela técnica de agrupamento Center Clustering é o ponto forte do trabalho desenvolvido, as quais são comparáveis àquelas obtidas em trabalhos publicados em eventos científicos da área. O algoritmo genético foi submetido a 36 instâncias clássicas para o problema da GMST e obteve a solução ótima conhecida para todas as instâncias testadas. Vale destacar que o algoritmo genético proposto em Golden et al. (2005) não encontrou a solução ótima para a instância rat195. A continuidade desse trabalho prevê uma nova etapa de testes direcionados para o refinamento do algoritmo, especialmente no ajuste dos seus parâmetros para melhorar sua velocidade de processamento. Além disso, pretende-se submeter o algoritmo às outras instâncias disponíveis para o problema da GMST, especialmente aquelas geradas pela técnica de agrupamento Grid Clustering. Referências ANDRADE, M., R. Q., Um GRASP com Reconexão de Caminhos para a Solução do Problema da Maximização da Diversidade. Niterói: Universidade Federal Fluminense, (Dissertação de Mestrado). DANIEL, J. S. R.; RAJENDRAN, C., A simulation-based genetic algorithm for inventory optimization in a serial supply chain. International Transactions in Operational Research, v. 12, p , DROR, M., HAOUARI, M., CHAOUACHI, J., Generalized spanning trees. European Journal of Operational Research, v. 120, p , FEREMANS, C., Generalized Spanning Trees and Extensions. Brussels: Université Libre de Bruxelles, Institut de Statistique et de Recherche Opérationnelle, (Tese de Doutorado). FEREMANS, C., LABBÉ, M., LAPORTE, G., On Generalized Minimum Spanning Trees, European Journal of Operational Research, v. 134, p , FERREIRA, C. M. S., OCHI, L. S., MACAMBIRA, E. L., Grasp com memória adaptativa para o problema da árvore de cobertura mínima generalizado. In: Simpósio Brasileiro de Pesquisa Operacional, 2006, Goiânia. Anais... Goiânia, GLOVER, F., LAGUNA, M. e MARTÍ, R, Fundamentals of scatter search and path relinking, Control and Cybernetics, v. 29, pp , GOLDEN, B., RAGHAVAN, S., STANOJEVIC, D., Heuristic Search for the Generalized Minimum Spanning Tree Problem. INFORMS Journal on Computing, v. 17, n. 3, p ,

10 HAOUARI, M., CHAOUACHI, J. S., Upper and lower bounding strategies for the generalized minimum spanning tree problem. European Journal of Operational Research, v. 171, p , MYUNG, Y.S., LEE, C.H.,, TCHA, D. W., On the Generalized Minimum Spanning Tree Problem, Networks, v. 26, p ,

METAHEURÍSTICAS PARA A SOLUÇÃO DO PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO

METAHEURÍSTICAS PARA A SOLUÇÃO DO PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO METAHEURÍSTICAS PARA A SOLUÇÃO DO PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO Fernando de Cristo, Felipe Martins Muller Universidade Federal de Santa Maria UFSM Programa de Pós-Graduação em Engenharia

Leia mais

ALGORITMO DE BUSCA TABU PARA O PROBLEMA DA ÁRVORE GERADORA MÍNIMA GENERALIZADO

ALGORITMO DE BUSCA TABU PARA O PROBLEMA DA ÁRVORE GERADORA MÍNIMA GENERALIZADO ! "#$ " %'&)(*&)+,.- /10.2*&4365879&4/1:.+58;.2*=?5.@A2*3B;.- C)D 5.,.5FE)5.G.+ &4- (IHJ&?,.+ /?=)5.KA:.+5MLN&OHJ5F&4E)2*EOHJ&)(IHJ/)G.- D - ;./);.& ALGORITMO DE BUSCA TABU PARA O PROBLEMA DA ÁRVORE

Leia mais

GRASP COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO

GRASP COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO GRASP COM MEMÓRIA ADAPTATIVA PARA O PROBLEMA DA ÁRVORE DE COBERTURA MÍNIMA GENERALIZADO Cristiane Maria Santos Ferreira Instituto de Computação - Universidade Federal Fluminense Rua Passo da Pátria 156

Leia mais

Introdução aos Algoritmos Genéticos

Introdução aos Algoritmos Genéticos Introdução aos Algoritmos Genéticos Prof. Matheus Giovanni Pires EXA 868 Inteligência Artificial Não-Simbólica B Universidade Estadual de Feira de Santana 2 Algoritmos Genéticos: Introdução Introduzidos

Leia mais

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

Inteligência Artificial. Algoritmos Genéticos. Aula I Introdução Universidade Estadual do Oeste do Paraná Curso de Bacharelado em Ciência da Computação Inteligência Artificial Algoritmos Genéticos Aula I Introdução Roteiro Introdução Computação Evolutiva Algoritmos

Leia mais

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

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 Algoritmos Genéticos A computação evolutiva (CE) é uma área da ciência da computação que abrange modelos computacionais inspirados na Teoria da Evolução das Espécies, essencialmente

Leia mais

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

Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP 1 Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 2 Introdução http://www.formula-um.com/ Como

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Técnicas de Inteligência Computacional 33 3 Algoritmos Genéticos Este capítulo resume os principais conceitos sobre o algoritmo evolucionário empregado nesta dissertação. É apresentada uma breve explicação

Leia mais

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

Computação Evolutiva. Computação Evolutiva. Principais Tópicos. Evolução natural. Introdução. Evolução natural Computação Evolutiva Eduardo do Valle Simões Renato Tinós ICMC - USP Principais Tópicos Introdução Evolução Natural Algoritmos Genéticos Aplicações Conclusão 1 2 Introdução Evolução natural http://www.formula-um.com/

Leia mais

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

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

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

Algoritmos Genéticos. Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Estéfane G. M. de Lacerda DCA/UFRN Outubro/2008 Introdução São técnicas de busca e otimização. É a metáfora da teoria da evolução das espécies iniciada pelo Fisiologista e Naturalista inglês Charles Darwin.

Leia mais

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

Algoritmo Genético. Inteligência Artificial. Professor: Rosalvo Ferreira de Oliveira Neto Algoritmo Genético Inteligência Artificial Professor: Rosalvo Ferreira de Oliveira Neto Estrutura 1. Introdução 2. Conceitos Básicos 3. Aplicações 4. Algoritmo 5. Exemplo Introdução São técnicas de busca

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Algoritmos Genéticos Roteiro Introdução Algoritmos Genéticos Otimização Representação Seleção Operadores Genéticos Aplicação Caixeiro Viajante Introdução Algoritmos Genéticos (AGs), são métodos de otimização

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Aula 6 Algoritmos Genéticos M.e Guylerme Velasco Roteiro Introdução Otimização Algoritmos Genéticos Representação Seleção Operadores Geneticos Aplicação Caixeiro Viajante Introdução

Leia mais

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

Metahuerísticas: Algoritmos Genéticos. Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. Metahuerísticas: Algoritmos Genéticos Sistemas de Informação/Ciências da Computação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 8) Meta-heurísticas Classificação de métodos heurísticos: os métodos

Leia mais

Max Pereira. Inteligência Artificial

Max Pereira. Inteligência Artificial Max Pereira Inteligência Artificial Algoritmos Genéticos Algoritmos Genéticos São técnicas de busca e otimização. Uma metáfora da teoria da evolução das espécies iniciada pelo Naturalista inglês Charles

Leia mais

Problemas de otimização

Problemas de otimização Problemas de otimização Problemas de decisão: Existe uma solução satisfazendo certa propriedade? Resultado: sim ou não Problemas de otimização: Entre todas as soluções satisfazendo determinada propriedade,

Leia mais

4 Métodos Existentes. 4.1 Algoritmo Genético

4 Métodos Existentes. 4.1 Algoritmo Genético 61 4 Métodos Existentes A hibridização de diferentes métodos é em geral utilizada para resolver problemas de escalonamento, por fornecer empiricamente maior eficiência na busca de soluções. Ela pode ser

Leia mais

Fabiano Vieira de Alvarenga, Marcelo Lisboa Rocha

Fabiano Vieira de Alvarenga, Marcelo Lisboa Rocha Melhorando o Desempenho da Metaheurística GRASP Utilizando a Técnica Path-Relinking: Uma Aplicação para o Problema da Árvore Geradora de Custo Mínimo com Grupamentos Fabiano Vieira de Alvarenga, Marcelo

Leia mais

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

Algoritmos Genéticos. Pontos fracos dos métodos tradicionais. Características de alguns problemas. Tamanho do espaço de busca- Ex. caixeiro viajante: Algoritmos Genéticos Prof. Luis Otavio Alvares INE/UFSC Características de alguns problemas Tamanho do espaço de busca- Ex. caixeiro viajante: 10 cidades: 181.000 soluções 20 cidades: 10.000.000.000.000

Leia mais

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

Otimização com Algoritmos Genéticos no MATLAB. Prof. Rafael Saraiva Campos CEFET-RJ Otimização com Algoritmos Genéticos no MATLAB Prof. Rafael Saraiva Campos CEFET-RJ Conteúdo do Mini-Curso PARTE 1 Teoria PARTE 2 Prática Conteúdo do Mini-Curso PARTE 1 Teoria 1.1. Conceitos Básicos de

Leia mais

Pesquisa Operacional Aplicada à Mineração

Pesquisa Operacional Aplicada à Mineração Pesquisa Operacional Aplicada à Mineração Módulo de Otimização Parte II-b Prof. Marcone J. F. Souza Prof. Túlio A. M. Toffolo marcone.freitas@yahoo.com.br tulio@toffolo.com.br Departamento de Computação

Leia mais

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

Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO Pós-Graduação em Engenharia de Automação Industrial SISTEMAS INTELIGENTES PARA AUTOMAÇÃO AULA 06 Algoritmos Genéticos Sumário Introdução Inteligência Artificial (IA) Algoritmos Genéticos Aplicações de

Leia mais

Técnicas de Inteligência Artificial

Técnicas de Inteligência Artificial Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 9 Algoritmos Genéticos Max Pereira Algoritmos Genéticos São técnicas de busca e otimização. Uma metáfora

Leia mais

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

INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO INSTITUTO DE PÓS GRADUAÇÃO ICPG GESTÃO DA TECNOLOGIA DA INFORMAÇÃO Prof. Msc. Saulo Popov Zambiasi (saulopz@gmail.com) Informação - ICPG - Criciuma - SC 1 Características Gerais, operadores, algoritmo.

Leia mais

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

Figura 3.1: Fluxograma do algoritmo da Programação Genética. 3 Programação Genética O termo Programação Genética passou a ser utilizado em 1990 nos trabalhos publicados por Koza [30] e De Garis [31]. A definição de Koza para este termo passou a predominar após a

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Programa de Pós-Graduação Em Computação Aplicada Depto. de Computação e Matemática (FFCLRP/USP) 2 Computação Bioinspirada

Leia mais

Um Estudo Empírico de Hiper-Heurísticas

Um Estudo Empírico de Hiper-Heurísticas Flávio Soares Corrêa da Silva (Orientador) Instituto de Matemática e Estatística Universidade de São Paulo Julho de 2007 Definição de Hiper-Heurística Para Que Servem Dois Exemplos Definição Uma hiper-heurística

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Algoritmos Genéticos Aluno: Fabricio Aparecido Breve Prof.: Dr. André Ponce de Leon F. de Carvalho São Carlos São Paulo Maio

Leia mais

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

ALGORITMOS GENÉTICOS. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR ALGORITMOS GENÉTICOS Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2018 Introdução Algoritmos Genéticos são algoritmos heurísticos de busca, que utilizam regras

Leia mais

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

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS. Metaheurísticas de Buscas PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ ALGORITMOS GENÉTICOS Metaheurísticas de Buscas ALGORITMOS GENÉTICOS (AG) Popularizados por John Holland podem ser considerados os primeiros modelos algorítmicos

Leia mais

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

GT-JeDi - Curso de Desenv. de Jogos IA para Jogos. Gustavo Pessin 2007 GT-JeDi - Curso de Desenv. de Jogos IA para Jogos Gustavo Pessin 2007 Cronograma Base conceitual Exemplo: Achando o máximo de uma função... Como criar uma pequena aplicação: Exercício-Exemplo [Animal selvagem...]

Leia mais

5 Estudo de Caso e Resultados

5 Estudo de Caso e Resultados 5 Estudo de Caso e Resultados 5.1. Introdução Finalizado o desenvolvimento da ferramenta, é indispensável testar suas funcionalidades e a eficácia da aplicação conjunta dos seus módulos de geração de experimentos

Leia mais

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

Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid 1 Um Algoritmo Genético com Aprendizado por Reforço Simples aplicado ao problema do Mundo de Grid Luciana Conceição Dias Campos Resumo Este trabalho consiste da aplicação de um algoritmo genético ao método

Leia mais

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

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 AG Simples/Canônico (AGS) AG introduzido por Holland Funciona bem para problemas de otimização simples e/ou de pequenas dimensões A maior parte da teoria dos AGs está baseada no AGS Utilidade didática

Leia mais

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

ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA Patrocínio, MG, outubro de 2016 ENCONTRO DE PESQUISA & EXTENSÃO, 3., 2016, Patrocínio. Anais... Patrocínio: IFTM, 2016. ALGORITMO GENÉTICO COMO REPRESENTAÇÃO DAS MUTAÇÕES NA BIOLOGIA Igor Acassio Melo

Leia mais

Uma Introdução à Busca Tabu André Gomes

Uma Introdução à Busca Tabu André Gomes Uma Introdução à Busca Tabu André Gomes Departamento de Ciência da Computação, Instituto de Matemática e Estatística, Universidade de São Paulo, SP, Brasil Novembro de 2009 INTRODUÇÃO Método de Busca Local

Leia mais

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

Exemplo de Aplicação de Algoritmos Genéticos. Prof. Juan Moisés Mauricio Villanueva cear.ufpb.br/juan Exemplo de Aplicação de Algoritmos Genéticos Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br cear.ufpb.br/juan Estrutura do Algoritmo Genético Algoritmo genético Inicio t = 0 inicializar P(t)

Leia mais

3 Algoritmos Genéticos

3 Algoritmos Genéticos Algoritmos Genéticos Algoritmos Genéticos (AGs) constituem um mecanismo de busca adaptativa que se baseia no princípio Darwiniano de seleção natural e reprodução genética [101]. AGs são tipicamente empregados

Leia mais

4 Implementação Computacional

4 Implementação Computacional 4 Implementação Computacional 4.1. Introdução Neste capítulo é apresentada a formulação matemática do problema de otimização da disposição das linhas de ancoragem para minimizar os deslocamentos (offsets)

Leia mais

Tópicos Especiais em Informática Fatec Indaiatuba

Tópicos Especiais em Informática Fatec Indaiatuba Prof. Dilermando Piva Jr. ((Compilação de diversas fontes na Internet)) Principal motivação para o estudo da computação evolutiva Otimização de processos complexo e que possuem um grande número de variáveis

Leia mais

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples

Algoritmos genéticos Abordagem unificada de algoritmos evolutivos simples Introdução Inspiração biológica Histórico da computação evolutiva Algoritmo evolutivo simples Programação evolutiva Estratégias evolutivas Algoritmos genéticos Abordagem unificada de algoritmos evolutivos

Leia mais

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

Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos Aprendizado Evolutivo: Introdução aos Algoritmos Genéticos SCC-230 Inteligência Artificial Thiago A. S. Pardo Solange O. Rezende 1 Computação Evolutiva (CE) Trata de sistemas para a resolução de problemas

Leia mais

Algoritmos Evolutivos para Otimização

Algoritmos Evolutivos para Otimização Algoritmos Evolutivos para Otimização A área de aplicação que tem recebido mais atenção é a otimização. Uma das razões é que existem uma variedade de problemas de otimização e a maioria deles sem solução

Leia mais

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

Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo Um Algoritmo Genético para o Problema de Roteamento de Veículos com Janelas de Tempo Francisco Henrique de Freitas Viana Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento de Informática

Leia mais

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

Estratégias Evolutivas EEs. Prof. Juan Moisés Mauricio Villanueva Estratégias Evolutivas EEs Prof. Juan Moisés Mauricio Villanueva jmauricio@cear.ufpb.br www.cear.ufpb.br/juan Estratégias Evolutivas Desenvolvidas por Rechenberg e Schwefel, e estendida por Herdy, Kursawe

Leia mais

Introdução a Algoritmos Genéticos

Introdução a Algoritmos Genéticos Introdução a Algoritmos Genéticos Tiago da Conceição Mota Laboratório de Inteligência Computacional Núcleo de Computação Eletrônica Universidade Federal do Rio de Janeiro Outubro de 2007 O Que São? Busca

Leia mais

Métodos de pesquisa e Optimização

Métodos de pesquisa e Optimização Métodos de pesquisa e Optimização Victor Lobo Importância para os SAD Definir o caminho a tomar depois de se ter trabalhado os dados 1ª Fase: Analisar os dados disponíveis Visualização OLAP, relatórios

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Algoritmos Genéticos Introdução Um Algoritmo Genético (AG), conceitualmente, segue passos inspirados no processo biológico de evolução natural segundo a teoria de Darwin Algoritmos Genéticos seguem a idéia

Leia mais

Algoritmo Genético para o Problema da Árvore Geradora Generalizada de Custo Mínimo

Algoritmo Genético para o Problema da Árvore Geradora Generalizada de Custo Mínimo Algoritmo Genético para o Problema da Árvore Geradora Generalizada de Custo Mínimo Ernando Gomes de Sousa Instituto Federal de Educação, Ciência e Tecnologia do Maranhão - Campus S. R. das Mangabeiras

Leia mais

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos 46 4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos Para definir a representação de um modelo para problemas de planejamento

Leia mais

Algoritmos Evolutivos Canônicos

Algoritmos Evolutivos Canônicos Algoritmos Evolutivos Canônicos Como representar os indivíduos Vetor de comprimento fixo com L características escolhidas previamente. Ex.: Definição

Leia mais

3 Extensões dos modelos matemáticos

3 Extensões dos modelos matemáticos 3 Extensões dos modelos matemáticos Os modelos matemáticos definidos por (2-1) (2-6) e (2-7) (2-13), propostos por Achuthan e Caccetta e apresentados no Capítulo 2, são reforçados neste trabalho através

Leia mais

Buscas Informadas ou Heurísticas - Parte III

Buscas Informadas ou Heurísticas - Parte III Buscas Informadas ou Heurísticas - Parte III Prof. Cedric Luiz de Carvalho Instituto de Informática - UFG Mestrado em Ciência da Computação / 2006 BUSCA SMA* (Simplified Memory-Bounded A*) BUSCA SMA* (Simplified

Leia mais

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

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 UNIVERSIDADE DE SÃO PAULO ESCOLA DE ARTES, CIÊNCIAS E HUMANIDADES SISTEMAS DE INFORMAÇÃO COMPOSIÇÃO DE UMA CARTEIRA DE AÇÕES COM RISCO MÍNIMO E RETORNO ESPECIFICADO: UM ESTUDO UTILIZANDO ALGORITMO GENÉTICO

Leia mais

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

APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO APLICAÇÃO DE ALGORITMOS BIO-INSPIRADOS EM CONTROLE ÓTIMO Profa. Mariana Cavalca Baseado em: Material didático do Prof. Dr. Carlos Henrique V. Moraes da UNIFEI Curso de verão da Profa. Gisele L. Pappa Material

Leia mais

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

Problema de Satisfação de Restrições. Problema de Satisfação de Restrições. Grafo de restrições. Exemplo: 4 Rainhas como um PSR Problema de Satisfação de Restrições Problema de Satisfação de Restrições Exemplos de PSR (CSP, Constraint Satisfaction Problem) Busca genérica aplicada a PSRs Backtracking Verificação forward Heurísticas

Leia mais

Problema de Satisfação de Restrições

Problema de Satisfação de Restrições Problema de Satisfação de Restrições Exemplos de PSR (CSP, Constraint Satisfaction Problem) Busca genérica aplicada a PSRs Backtracking Verificação forward Heurísticas para PSRs Problema de Satisfação

Leia mais

Algoritmos Genéticos Fernando Lobo

Algoritmos Genéticos Fernando Lobo Algoritmos Genéticos Fernando Lobo Grupo de Análise de Sistemas Ambientais Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa Sumário O que é um algoritmo genético? Para que serve? Como funciona?

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 06 Algoritmos Genéticos Edirlei Soares de Lima Algoritmos Genéticos Método de busca local. Boa abordagem para lidar com espaços de busca muito

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial Prof. Kléber de Oliveira Andrade pdjkleber@gmail.com Algoritmos Genéticos Conteúdo Introdução O Algoritmo Genético Binário Noções de Otimização O Algoritmo Genético com Parâmetros

Leia mais

4 Algoritmo Genético com Chaves Aleatórias

4 Algoritmo Genético com Chaves Aleatórias 4 Algoritmo Genético com Chaves Aleatórias Neste capítulo é apresentado um algoritmo genético com chaves aleatórias [9] para o problema min-rwa. A opção por esta classe de algoritmos genéticos é motivada

Leia mais

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

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 Metaheurística: São técnicas de soluções que gerenciam uma interação entre técnicas de busca local e as estratégias de nível superior para criar um processo de

Leia mais

INTRODUÇÃO À. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

INTRODUÇÃO À. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR INTRODUÇÃO À COMPUTAÇÃO EVOLUTIVA Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2018 Computação Evolutiva Ramo da ciência da computação que propõe um paradigma

Leia mais

3 Métodos de Otimização

3 Métodos de Otimização 3 Métodos de Otimização Problemas de otimização são relacionados a minimização ou maximização de função de uma ou mais variáveis num determinado domínio, possivelmente com a existência de um conjunto de

Leia mais

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

Métodos de Busca. Inteligência Artificial. Algoritmos Genéticos. Algoritmos Evolucionários. Prof. Ms. Luiz Alberto Contato: Inteligência Artificial Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Métodos de Busca Busca Cega ou Exaustiva: Não sabe qual o melhor nó da fronteira a ser expandido. Apenas distingue o estado objetivo

Leia mais

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

OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL RESUMO INTRODUÇÃO OTIMIZAÇÃO FUNÇÕES UTILIZANDO ALGORITMOS GENÉTICOS NO APLICATIVO MS EXCEL Miquéias Augusto Ferreira Nantes 1, Douglas Peixoto de Carvalho 1 (Alunos do Curso de Matemática da Universidade Anhanguera - Uniderp)

Leia mais

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

CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa. Prof. Paulo André Castro CTC-17 Inteligência Artificial Busca Competitiva e Busca Iterativa Prof. Paulo André Castro pauloac@ita.br www.comp.ita.br/~pauloac Sala 110, IEC-ITA Sumário Busca Competitiva Para Ambientes multiagentes...

Leia mais

6 Estudos de Casos Porta Lógica OU de 4 Entradas

6 Estudos de Casos Porta Lógica OU de 4 Entradas 6 Estudos de Casos Com o objetivo de avaliar a síntese automática de circuitos de QCA usando técnicas de Hardware Evolucionário (EHW), alguns circuitos foram sintetizados e serão apresentados a seguir.

Leia mais

Otimização por Colônia de Formigas (Ant Colony Optimization - ACO)

Otimização por Colônia de Formigas (Ant Colony Optimization - ACO) Otimização por Colônia de Formigas (Ant Colony Optimization - ACO) Eros Moreira de Carvalho Gabriel Silva Ramos CI209 - Inteligência Artificial BCC - Bacharelado em Ciência da Computação DInf - Departamento

Leia mais

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

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 06 Prof. Vitor Hugo Ferreira Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia Elétrica INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL Aula 06 Prof. Vitor Hugo Ferreira Representação por cromossomos Codificação

Leia mais

GA Conceitos Básicos. Capítulo 3 Prof. Ricardo Linden

GA Conceitos Básicos. Capítulo 3 Prof. Ricardo Linden GA Conceitos Básicos Capítulo 3 Prof. Ricardo Linden Algoritmos Evolucionários Algoritmos evolucionários usam modelos computacionais dos processos naturais de evolução como uma ferramenta para resolver

Leia mais

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

SOLUÇÕES HEURÍSTICAS PARA O JOGO DE DAMAS Universidade Federal do Tocantins SOLUÇÕES HEURÍSTICAS PARA O JOGO DE DAMAS Diogo Rigo de Brito Guimarães Alexandre Tadeu Rossini da Silva Objetivo Implementar soluções heurísticas para o Jogo de Damas

Leia mais

Relatório Técnico: Busca Tabu Aplicada ao Problema do Caixeiro Viajante

Relatório Técnico: Busca Tabu Aplicada ao Problema do Caixeiro Viajante Relatório Técnico: Busca Tabu Aplicada ao Problema do Caixeiro Viajante André Britto de Carvalho, Rodolfo Barriveira, Carlos Tavares, Kelly Rodrigues, Frederico Losco Resumo. Este relatório apresenta uma

Leia mais

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

COMPARAÇÃO ENTRE FROTA HOMOGÊNEA E HETEROGÊNEA EM PROBLEMAS DE ROTEAMENTO DE VEÍCULOS CAPACITADOS COMPARAÇÃO ENTRE FROTA HOMOGÊNEA E HETEROGÊNEA EM PROBLEMAS DE ROTEAMENTO DE VEÍCULOS CAPACITADOS Rosiana da Silva Lopes Danilo César Rodrigues Azevedo rosianalopes16@gmail.com danilo.azevedo@ufpi.edu.br.com

Leia mais

Universidade Federal Fluminense

Universidade Federal Fluminense Universidade Federal Fluminense Um GRASP com Reconexão de Caminhos para a Solução do Problema da Maximização da Diversidade Marcos Ribeiro Quinet de Andrade Niterói, RJ BRASIL Dezembro de 2004 Marcos Ribeiro

Leia mais

1 Introdução 1.1 Motivação

1 Introdução 1.1 Motivação 13 1 Introdução 1.1 Motivação O planejamento de tarefas é um trabalho de resultados economicamente importantes mas de uma dificuldade computacional muito grande. Os problemas de planejamento podem ser

Leia mais

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

Aplicação de algoritmos genéticos. Problema da Mochila (knapsack problem) Aplicação de algoritmos genéticos Problema da Mochila (knapsack problem) Algoritmos genéticos Passos inspirados no processo biológico de evolução Ideia de sobrevivência dos mais adaptados Soluções cada

Leia mais

1. Computação Evolutiva

1. Computação Evolutiva Computação Bioinspirada - 5955010-1 1. Computação Evolutiva Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 1.7. Outras Metaheurísticas Populacionais 1.7.1. Metaheurísticas Populacionais

Leia mais

Algoritmos Genéticos. Indivíduos em uma população competem por recursos e parceiros. Os indivíduos mais bem sucedidos em cada competição vão produzir

Algoritmos Genéticos. Indivíduos em uma população competem por recursos e parceiros. Os indivíduos mais bem sucedidos em cada competição vão produzir Algoritmos Genéticos Algoritmos Genéticos (GA) são algoritmos de busca heurística baseados em ideias de seleção natural e genética. Dessa forma, eles representam uma forma inteligente de se fazer uma busca

Leia mais

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

3 Otimização Evolucionária de Problemas com Restrição 3 Otimização Evolucionária de Problemas com Restrição 3.1. Introdução Este capítulo resume os principais conceitos sobre os algoritmos evolucionários empregados nesta dissertação. Primeiramente, se fornece

Leia mais

4 Metáforas de Optimização

4 Metáforas de Optimização 4 Metáforas de Optimização O gigantesco avanço tecnológico que vem sofrendo os sistemas de computação, mais precisamente as unidades de processamento, criou a base para o uso efetivo da Inteligência Computacional,

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 04 Algoritmos Genéticos Introdução Algoritmos genéticos são bons para abordar espaços de buscas muito grandes e navegálos

Leia mais

Ciclos hamiltonianos e o problema do caixeiro viajante

Ciclos hamiltonianos e o problema do caixeiro viajante Ciclos hamiltonianos e o problema do caixeiro viajante Algoritmos em Grafos Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional.

Leia mais

Otimização com Algoritmos Evolutivos

Otimização com Algoritmos Evolutivos Otimização com Algoritmos Evolutivos Francisco Pereira (xico@dei.uc.pt) ELBCE 2016 (Setembro 2016) Resumo Problem Optimization Method Solution } Algoritmos Evolutivos } Propriedades e funcionamento } Exemplos

Leia mais

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

Computação Evolutiva. Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Computação Evolutiva Prof. Eduardo R. Hruschka (Slides baseados nos originais do Prof. André C. P. L. F. de Carvalho) Principais Tópicos Computação Evolutiva Algoritmos Genéticos Codificação Função de

Leia mais

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

OTIMIZAÇÃO DA LIMPEZA DE REDES DE TROCADORES DE CALOR EMPREGANDO OS ALGORITMOS GENÉTICOS OTIMIZAÇÃO DA LIMPEZA DE REDES DE TROCADORES DE CALOR EMPREGANDO OS ALGORITMOS GENÉTICOS C. de O. GONÇALVES 1, E. M. QUEIROZ 2, F. L. P. PESSOA 2, F. S. LIPORACE 3, S. G. OLIVEIRA 3 e A. L. H. COSTA 1

Leia mais

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

Otimização. Unidade 6: Algoritmo Genético. Jaime Arturo Ramírez. 7. Teoria do processo evolutivo num GA. 8. Aspectos avançados Otimização Jaime Arturo Ramírez Conteúdo 1. Introdução 2. Analogia de mecanismos de seleção natural com sistemas artificiais 3. Algoritmo genético modelo 4. Um GA simples 5. Representação, genes e cromossomos

Leia mais

Inteligência Artificial

Inteligência Artificial Figura: Capa do Livro Hamburger, H., Richards, D. Logic and Language Models for Computer Science, Prentice Hall. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Pós-Graduação

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos Universidade Federal do Paraná (UFPR) Bacharelado em Informática Biomédica Algoritmos Genéticos David Menotti www.inf.ufpr.br/menotti/ci171-182 Hoje Algoritmos Genéticos 2 Objetivos Introduzir os principais

Leia mais

Universidade Federal do Paraná UFPR Curso de Ciência da Computação CI801 Tópicos em Inteligência Artificial. Algoritmo Memético

Universidade Federal do Paraná UFPR Curso de Ciência da Computação CI801 Tópicos em Inteligência Artificial. Algoritmo Memético Universidade Federal do Paraná UFPR Curso de Ciência da Computação CI801 Tópicos em Inteligência Artificial Algoritmo Memético aplicação para o problema do caixeiro viajante Kelly Rodrigues Abreu Federico

Leia mais

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

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste material e a resolução (por parte do aluno) de todos os

Leia mais

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

Créditos. Introdução a Sistemas Inteligentes. Agenda Introdução Breve Histórico. Introdução. Introdução aos Algoritmos Evolutivos Introdução a Sistemas Inteligentes Introdução aos Algoritmos Evolutivos Créditos Este material consiste de adaptações e extensões dos originais gentilmente cedidos: pelo Prof. Dr. Eduardo Raul Hruschka

Leia mais

Problema do vendedor: uma abordagem via algoritmos genéticos

Problema do vendedor: uma abordagem via algoritmos genéticos Problema do vendedor: uma abordagem via algoritmos genéticos Dandara de Almeida Machado 1, Juliana Verga Shirabayashi 1 1 Universidade Federal do Paraná (UFPR) Campus Jandaia do Sul dandaraalmeidaa@gmail.com;

Leia mais

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

Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos https://eventos.utfpr.edu.br//sicite/sicite17/index Breve Avaliação de Parâmetros básicos de Algoritmos Genéticos RESUMO Stéfanie Caroline Pereira Dekker stefanie.c.dekker@gmail.com Universidade Tecnológica

Leia mais

Computação Evolutiva. Aula 4 Usando AEs Prof. Tiago A. E. Ferreira

Computação Evolutiva. Aula 4 Usando AEs Prof. Tiago A. E. Ferreira Computação Evolutiva Aula 4 Usando AEs Prof. Tiago A. E. Ferreira Roteiro Exemplos: Problema das 8 rainhas Comportamentos Típicos dos AE CE no contexto da Otimização Global Relembrando Na Aula Passada,

Leia mais

Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora

Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora Modelo de Algoritmo Genético para o Escalonamento de Tarefas em uma Arquitetura Multiprocessadora Autor: Adilmar Coelho Dantas 1, Orientador: Márcia Aparecida Fernandes 1 1 Programa de Pós-Graduação em

Leia mais