Resolução Para o Problema n-rainhas Utilizando ACO

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

Download "Resolução Para o Problema n-rainhas Utilizando ACO"

Transcrição

1 Resolução Para o Problema n-rainhas Utilizando ACO Carolina Moreira Oliveira Programa de Pós-Graduação em Informática Universidade Federal do Paraná Curitiba, Brasil cmoliveira@inf.ufpr.pr Aurora Trinidad Ramirez Pozo Programa de Pós-Graduação em Informática Universidade Federal do Paraná Curitiba, Brasil aurora@inf.ufpr.br Resumo Este artigo estuda a utilização da meta-heurística de colônia de formigas para resolver problemas com restrições. Especificamente, neste artigo se analisa o problema das n- rainhas, que consiste em uma generalização do problema das 8- rainhas, intratável para grandes valores de n, e então pertencente à classe de complexidade NP. A abordagem consiste em utilizar formigas artificiais para controlar as áreas promissoras do espaço de busca, pelo depósito de feromônios em trilhas. Tal informação é usada para orientar a busca, como uma heurística para a escolha das posições no tabuleiro. Pesquisas anteriores apresentam particularidades difíceis de serem deduzidas em artigos científicos, principalmente quanto às características de implementação. Assim, a contribuição deste trabalho reside no detalhamento didático da abordagem do problema das n-rainhas pela Colônia de Formigas. As explicações e exemplos ao longo do texto são instanciados no problema das 8-rainhas. Palavras-chave n-rainhas, 8-rainhas, colônia de formigas, problemas de satisfação de restrições. I. INTRODUÇÃO Um Problema de Satisfação de Restrições (Constraint Satisfaction Problem, CSP) [4, 9] é constituído por um conjunto de variáveis que precisam assumir valores específicos, satisfazendo um conjunto de restrições estabelecidas. Nestes termos, existem inúmeros problemas complexos, nos âmbitos acadêmico e corporativo, que se resumem à satisfação de restrições. Assim, as principais técnicas, algoritmos e métodos resultantes do progresso nessa linha de pesquisa têm sido aplicados a problemas reais, com nível de complexidade crescente. Destaca-se que um obstáculo crítico na satisfação de restrições é o crescimento exponencial dos recursos computacionais exigidos para resolver problemas reais. Exemplos de aplicações são o agendamento de recursos, a otimização de mão-de-obra, a coloração de mapas, a elaboração de grades de horários, entre outros. O problema das n-rainhas [2] é um exemplo canônico na satisfação de restrições. Embora de caráter didático, os resultados de pesquisa nele apresentados são extensíveis a problemas reais. Trata-se do desafio de posicionar n rainhas em um tabuleiro de xadrez, com dimensão n x n, de maneira que nenhuma delas ataque qualquer outra. O ataque é determinado pelos movimentos possíveis à rainha, ou seja, em linha, coluna e diagonais, sendo a peça mais poderosa do jogo de xadrez. O problema é intratável para grandes valores de n e não pode ser resolvido em tempo polinomial. Assumindo o problema das 8-rainhas, isto é, de alocar oito rainhas em um tabuleiro comum de xadrez, tem-se arranjos possíveis. Destes, apenas 92 atendem às restrições do problema, sendo soluções corretas. Recentemente, a meta-heurística da colônia de formigas tem sido explorada para resolver o problema das n-rainhas [1]. Os resultados promissores tidos até então motivaram o estudo mais detalhado por este estudo. O presente artigo estuda o emprego da meta-heurística de colônia de formigas para resolver problemas com restrições. O enfoque é dado no problema das n-rainhas, sendo que as explicações e exemplos ao longo do texto são instanciados no problema das 8-rainhas. Os experimentos documentam a abordagem para até 200 rainhas. Na sequência desta introdução, revisam- se os trabalhos correlatos à pesquisa (Seção I). Depois, na Seção II, a meta-heurística da Colônia de Formigas é introduzida. A Seção III aborda aspectos da solução proposta. Cabe à Seção IV apresentar os resultados das simulações realizadas. As considerações finais e a perspectiva de trabalhos futuros (Seção V) encerram o artigo. II. TRABALHOS CORRELATOS Inúmeras pesquisas já abordaram, com diferentes escopos, o problema das n-rainhas. Com foco mais próximo a esta pesquisa, o problema foi tratado inicialmente por Gambardella e M. Dorigo [5]. Mais recentemente, Solnon [3] emprega a otimização por colônia de formigas para resolver problemas de satisfação de restrições. A avaliação da abordagem de Solnon utiliza o problema das n-rainhas. Convém ressaltar que este último estudo ainda se encontra em andamento. Gonzales-Pardo e Camacho [1], também trataram da resolução de problemas de satisfação de restrições utilizando A C O (Ant Colony Optimization). No estudo citado, propuseram uma nova heurística, denominada taxa de esquecimento (oblivion rate), com a intenção de contribuir para o estado da arte da aplicação de ACOs para problemas com tais características. A nova heurística é utilizada para reduzir a quantidade de feromônios no sistema, além da conhecida taxa de evaporação. O estudo de caso foi feito sobre o problema das n-rainhas.

2 A pesquisa de Khan et. al [8], que também propôs uma abordagem para o problema das n-rainhas, utilizando ACO, teve especial contribuição para o presente artigo. A preocupação maior dessa pesquisa foi tratar grandes valores de n, partindo do princípio que problema das n-rainhas é uma generalização daquele de 8-rainhas. Assim, há relato de uma quantidade considerável de experimentos, que auxiliaram na decisão de parâmetros como: número de iterações, tamanho da colônia, valores de α e β. Tais parâmetros serão abordados na Seção III. Portanto, frente aos trabalhos correlatos, enfatiza-se que não há originalidade na aplicação de ACO ao problema das n- rainhas. Todavia, foi observado que essas pesquisas apresentam particularidades difíceis de serem deduzidas, principalmente quanto à implementação. Assim, buscou-se, como contribuição, desenvolver uma abordagem mais detalhada e didática para o referido problema. Tomando a ACO como meta-heurística para resolver o pr o b l e m a da s n-rainhas, primeiramente foi necessário organizar o espaço de busca e analisar possíveis modificações em alguns parâmetros. O detalhamento da implementação é fornecido nas seções subsequentes. III. ALGORITMO BÁSICO DE COLÔNIA DE FORMIGAS A otimização por colônia de formigas (ACO, do inglês Ant Colony Optimization) é uma meta-heurística inspirada no comportamento inteligente das formigas. O primeiro algoritmo utilizando as colônias de formigas foi desenvolvido por Marco Dorigo, em sua tese de doutorado [7]. Melhorias no algoritmo foram feitas em [5, 6]. O ACO consiste em uma heurística baseada em probabilidades, criada para solução de problemas de otimização. Nesse sentido, trata-se de um sistema multiagente, onde o comportamento das formigas descreve o comportamento dos agentes no sistema. Na natureza, inicialmente as formigas andam sem rumo até encontrarem comida, após o encontro, retornam às suas colônias deixando um rastro de feromônio. Se outras formigas encontram um desses rastros, elas deixam de seguir caminhos aleatórios, e passam a seguir as trilhas de feromônio encontradas, se acharem alimentos, também enfatizam a trilha. Com o passar do tempo, as trilhas de feromônio começam a evaporar, reduzindo assim sua força atrativa. Quanto mais formigas passarem por um caminho predeterminado, mais tempo será necessário para o feromônio da trilha evaporar. As formigas tendem a escolher os caminhos mais curtos, o que implica no aumento da densidade do feromônio depositado, antes que ele comece a evaporar. A evaporação do feromônio agrega a vantagem de evitar a convergência para uma solução ótima local. Caso não ocorresse a evaporação, todos os caminhos escolhidos pelas primeiras formigas tornariam-se excessivamente atrativos para as outras, e assim, a exploração do espaço de solução seria limitado. O feromônio é usado na comunicação indireta entre as formigas, a fim de orientá-las a encontrar o caminho mais curto do seu ninho para um lugar que possua alimentos. Com o tempo, se existirem vários caminhos para um lugar com alimentos, as formigas tendem a escolher aquele com maior concentração de feromônio. Na Figura 1, apresenta-se um exemplo de como um caminho mais curto terá maior concentração de feromônio. Assim, a maioria das formigas que utilizam esse caminho voltarão rapidamente. Fig. 1. Formigas encontrando o caminho mais curto. a) Nenhum obstáculo. b) Com um obstáculo colocado. c) A maioria das formigas no caminho mais curto e algumas sobre o mais longo. d) As formigas descobriram o caminho mais curto [7]. A meta-heurística colônia de formigas pode ser usada para encontrar o caminho mais curto entre um nó de origem V s e um nó destino V d em um grafo G. Sendo G = (V, E) um grafo conexo, onde V mostra o número total de vértices e E número de arestas no grafo [9]. O comprimento do percurso é dado pelo número de nós no caminho, ou a soma dos valores de custo nas bordas que compõem o caminho. Cada aresta (i,j) E do grafo ligando os nós V i e V j tem uma quantidade de feromônio, que é modificada pelas formigas, quando elas visitam os vértices [8]. Quando uma formiga decide se mover de um vértice para outro, ela utiliza dois parâmetros para calcular a probabilidade de se movimentar para um vértice particular. Primeiro, a heurística que influencia na escolha do próximo vértice e, segundo, a quantidade de feromônio na ponta da ligação. A probabilidade de que a formiga escolha j como o próximo vértice depois de chegar ao vértice i, é calculada pela Equação 1: [ τ i, j ] α.[ η i, j ] β p i, j = (1) k S[ τ i, j ] α.[ η i, j ] β Onde τ i,j é o valor de feromônios na aresta (i, j) e η i,j é um valor heurístico. Os parâmetros α e β são fatores de influência dos valores de feromônio e heurístico. Apenas a melhor solução das formigas da colônia alterará os valores de feromônio. IV. COLÔNIA DE FORMIGAS APLICADA AO PROBLEMA DAS N-RAINHAS O objetivo do problema das n-rainhas é posicionar n rainhas em um tabuleiro de xadrez de tal forma que nenhuma rainha ataque qualquer outra. Uma rainha ataca quando situada na mesma linha, coluna ou diagonal. A Figura 2 mostra uma tentativa de solução que falhou, pois a rainha na coluna mais à direita é atacada pela rainha do canto superior esquerdo.

3 (linha e coluna). À direita, na mesma figura, propõe-se, como critério de implementação, uma alternativa para a representação interna do grafo citado, simplificada a uma matriz inteira de n 2 linhas por n colunas. Evidencia-se que, a partir do espaço de busca detalhado, a modelagem é facilmente extensível ao problema das n-rainhas. Fig. 2. Uma quase solução para o problema das 8- rainhas [9] A. Espaço de Busca Algumas restrições foram adicionadas ao ACO básico, a fim de resolver o problema das n-rainhas. Além disso, as equações utilizadas também tiveram alterações. Os núcleos dessas soluções incluem a formação do espaço de busca e o cálculo do valor heurístico. Na Figura 3, a formação do espaço de busca é detalhada, procurando tornar a busca mais eficiente e rápida: Fig. 3. Espaço de busca Os vértices no espaço de busca são organizados como um grafo disposto em n 2 linhas por n colunas. Cada vértice de uma coluna está ligada a todos os vértices da coluna ao lado através de arestas orientadas (exceto aqueles da última coluna). O rótulo de cada vértice corresponde à posição no tabuleiro de xadrez, sequencialmente. Assim, o rótulo 1 representa a célula [0, 0] do tabuleiro; o rótulo 2 equivale à célula [0, 1]; e, analogamente, o rótulo n 2 denota a célula [n-1, n-1]. Considerando, em caráter de exemplo, o problema das 8- rainhas, ou seja, um tabuleiro de xadrez 8 x 8, n será 8 e o grafo será composto por 512 vértices e arestas. O vértice de rótulo 64, isto é, n 2, representa a célula [7, 7]. Figura 4 apresenta, à esquerda, as posições sequenciais do tabuleiro em correspondência ao sistema de coordenadas B. Restrições Adicionadas Fig. 4. Representação interna do tabuleiro Uma formiga só pode se mover da esquerda para a direita. Uma vez que vértice selecionado determina a coluna, o movimento entre as colunas é incremental, começando da coluna 0 e indo até a coluna n. Na construção de um caminho (solução), uma formiga pode escolher um vértice da próxima coluna, a partir da coluna corrente, para se mover. A construção de um caminho completo, pela formiga, termina com a escolha de um vértice da última coluna. Dessa forma, durante a construção de um caminho, uma formiga visita apenas n vértices, ou seja, 8, em se tratando do problema das 8-rainhas. Cada vértice possui um rótulo, sequencializado a partir da primeira posição do tabuleiro, conforme anteriormente explicado. Embora a sequência de rótulos se repita em cada coluna do grafo, não se permite, na construção de um caminho por uma formiga, a reincidência de um mesmo rótulo. A restrição é necessária porque, se o número sequencial do rótulo representa uma célula do tabuleiro de xadrez, a repetição de rótulos em um mesmo caminho indicaria a tentativa de alocar duas rainhas em uma mesma casa do tabuleiro. Uma formiga durante uma solução visita apenas n nós, por exemplo 8 quando forem 8-rainhas. Cada nó possui um rótulo, e em uma solução não pode existir um rótulo mais de uma vez. O nó em uma solução representa uma célula de tabuleiro de xadrez, onde uma rainha deve ser colocada. Essa restrição é adicionada, a fim de evitar que dois nós tenham o mesmo rótulo, pois é como se duas rainhas estivessem na mesma casa do tabuleiro, o que seria ilegal. Significando que não existem dois nós em uma mesma solução, não estando em uma mesma linha do espaço de busca. C. Inicialização de Parâmetros e Equações Inicialmente, o mesmo pequeno valor de feromônio é atribuído a todas as arestas. O número arbitrário de formigas

4 (tamanho da colônia) é criado como um sistema multiagente. O valor do feromônio é modificado com base na aptidão de um caminho (solução) encontrado por uma formiga. O valor de fitness representa o número de posições no tabuleiro de xadrez que satisfazem a restrição do problema, ou seja, a quantidade de rainhas colocadas sem que uma ataque outra. Assim, a solução do problema das 8-rainhas é avaliada com fitness 8. Os valores possíveis de fitness, para 8 rainhas, são os inteiros do intervalo [0, 8]. A equação de probabilidade adotada foi descrita na Seção III, entretanto o cálculo do valor heurístico foi alterado. Agora, conforme a Equação 1, o valor heurístico é o número de contradições se o vértice j for selecionado como o próximo vértice. Contradições representam as posições no tabuleiro de xadrez onde há ataque se as rainhas forem colocadas. Observa-se que o nó j é uma posição de xadrez em que uma rainha pode ser colocada. A equação de probabilidade para a seleção de um nó é: [ τ i, j ] α.[ η i, j ] β p i, j = (1) k S[ τ i, j ] α.[ η i, j ] β Além disso, o valor de α e β é inicializado com um número real aleatório gerado no intervalo [0, 2]. A evaporação é feita em velocidade constante, deteriorando o valor de feromônios em todas as arestas, ao término de uma iteração. A iteração é concluída quando todas as formigas completarem a construção dos seus respectivos caminhos. A evaporação é feita subtraindo, do valor atual de cada feromônio, uma pequena constante. V. RESULTADOS DA SIMULAÇÃO / EXPERIMENTO Sendo o ACO um algoritmo baseado em probabilidades, geram-se resultados diferentes a cada execução para uma mesma instância de um problema. Os experimentos conduzidos tiveram como base os parâmetros de [1], que constam na Figura 5. Foi assumido o problema das n-rainhas tal como descrito na introdução (Seção I) deste artigo. Com caráter didático, a execução foi inteiramente monitorada pela impressão de representações externas, textuais, incluindo o tabuleiro a cada rainha colocada, a matriz de probabilidades e a matriz de feromônios. Tais representações externas têm correspondência bastante fiel às internas, ou seja, às estruturas de dados utilizadas na implementação. A Figura 6, inicialmente, apresenta o tabuleiro sem nenhuma rainha e, em contraste, o tabuleiro com uma rainha. Formiga (Tabuleiro) [00][01][02][03][04][05][06][07] [08][09][10][11][12][13][14][15] [16][17][18][19][20][21][22][23] [24][25][26][27][28][29][30][31] [32][33][34][35][36][37][38][39] [40][41][42][43][44][45][46][47] [48][49][50][51][52][53][54][55] [56][57][58][59][60][61][62][63] Fig. 6. Representação do tabuleiro O detalhamento, neste artigo, é conduzido sobre a instância de 8-rainhas. Os parâmetros foram baseados em [8], sendo o número de iterações e o tamanho da colônia, respectivamente, 20 e 15. Assim, cada formiga da colônia precisava formar um tabuleiro completo com o máximo de rainhas que conseguisse. A matriz de feromônios é inicializada conforme a Figura 7. O valor inicial atribuído a cada feromônio é 0,2. Emprega-se uma taxa de evaporação de 10% e de incremento de 20%, ambos relativos ao valor inicial de feromônios, ficando, respectivamente, 0,02 e 0,04. Matriz de feromônios Fig. 7. Matriz de feromônios inicializada A matriz de probabilidades se baseia nos valores da matriz de feromônios, garantindo proporcionalidade. A cada rainha colocada, atualiza-se a matriz de probabilidades, descartando as posições do tabuleiro que violam as restrições do problema. A escolha da posição ocupada pela próxima rainha é feita pelo método da roleta, com a geração de um número aleatório frente a matriz de probabilidades. A Figura 8 apresenta esse processo. Fig. 5. Resumo dos resultados experimentais utilizadas como base, traduzida de [1]

5 Matriz de Probabilidade 00 [0,0156] 01 [0,0313] 02 [0,0469] 03 [0,0625] 04 [0,0781] 05 [0,0938] 59 [0,9375] 60 [0,9531] 61 [0,9688] 62 [0,9844] 63 [1,0000] Soma dos feromônios: Número sorteado: Posição Sorteada: 59 Fig. 8. Matriz de probabilidades e sorteio Sorteada a posição da rainha, o algoritmo trata de alocá-la, invalidando as posições restringidas pelo seu ataque. Essa representação é mostrada na Figura 9. Formiga (Tabuleiro) [00][01][02][..][04][05][06][07] [08][09][10][..][12][13][14][15] [16][17][18][..][20][21][22][23] [24][25][26][..][28][29][30][..] [..][33][34][..][36][37][..][39] [40][..][42][..][44][..][46][47] [48][49][..][..][..][53][54][55] [..][..][..][ w][..][..][..][..] Fig. 9. Tabuleiro com uma rainha posicionada A construção de um caminho por uma formiga prossegue até que não seja mais possível alocar rainhas no tabuleiro. Isso ocorre ou pela quantidade de posições restritas, ou pela solução ótima ter sido encontrada. O algoritmo é interrompido nesse último caso. Uma iteração é finalizada quando todas as formigas percorrem um caminho completo (esgotam as tentativas de alocar rainhas no tabuleiro). Das 15 formigas (soluções candidatas) de cada iteração, seleciona-se aquela de maior aptidão para que a matriz de feromônios seja atualizada. Para isso, é feita a evaporação dos feromônios (decrementando de toda a matriz a taxa de evaporação) e, em seguida, o reforço dos feromônios (taxa de incremento) de acordo com a melhor formiga da iteração. A Figura 10 mostra a matriz de feromônios atualizada. Matriz de feromônios [0,180][0,180][0,180][0,180][0,180][0,180][0,220][0,180] [0,180][0,180][0,180][0,180][0,180][0,180][0,180][0,180] [0,180][0,180][0,180][0,220][0,180][0,180][0,180][0,180] [0,180][0,180][0,180][0,180][0,180][0,180][0,180][0,220] [0,220][0,180][0,180][0,180][0,180][0,180][0,180][0,180] [0,180][0,180][0,220][0,180][0,180][0,180][0,180][0,180] [0,180][0,180][0,180][0,180][0,180][0,220][0,180][0,180] [0,180][0,220][0,180][0,180][0,180][0,180][0,180][0,180] Fig. 10. Matriz de feromônios inicializada Ao final do algoritmo, vide Figura 11, é possível saber se a solução ótima foi encontrada. Exibe-se, então, a solução ótima ou a melhor solução obtida no decorrer do algoritmo. Também se apresenta o saldo de quantas formigas e gerações foram criadas, além do tempo de execução. Fig. 11. Fim da execução Conforme descrito, para a realização dos experimentos, foram utilizados os valores de parâmetros presentes no artigo [1] e obteve-se os resultados abaixo, Figura 12. Embora os resultados de ambas as pesquisas se aproximem, convém ressaltar que cada pesquisa usou critérios distintos de implementação. Em particular, a contribuição desta pesquisa reside no detalhamento didático da abordagem do problema das n-rainhas pela ACO. Fig. 12. Resultados dos testes VI. CONSIDERAÇÕES FINAIS Foi estudada, pela corrente pesquisa, a resolução do problema das n-rainhas pela meta-heurística da colônia de formigas. No decorrer do artigo, a ideia foi detalhada para o problema das 8-rainhas, sendo facilmente estendida para grandes valores de n. A estruturação do espaço de busca, considerando as restrições a cada instante, foi considerada um diferencial. Ainda que se tenha alcançado resultados próximos daqueles de pesquisas anteriores, foram discorridos sobre aspectos de implementação distintos. Destaca-se, além disso,

6 que o enfoque de contribuição desta pesquisa se encontra no detalhamento didático na abordagem do problema das n- rainhas pela ACO. Os experimentos conduzidos pela pesquisa, somados aos trabalhos anteriores, são evidências de que a ACO tem se mostrado uma abordagem promissora para resolver problemas de satisfação de restrições. Trabalhos futuros podem explorar a aplicabilidade em problemas semelhantes de domínios reais, como também comparar a parametrização desses algoritmos em prol do tempo de resolução e qualidade das soluções desses problemas. REFERÊNCIAS [1] A. G. Pardo e D. Camacho, A new CSP graph-based representation for Ant Colony Optimization, In IEEE Congress on Evolutionary Computation, Junho 2013, páginas [2] A. Levitin e M. Levitin, Algorithmic Puzzles. Oxford University Press, vol 1, páginas 257, [3] C. Solnon, Ants Can Solve Constraint Satisfaction Problems, In IEEE Transactions on Evolutionary Computation, Agosto 2002, páginas [4] I. Martinjak e M. Golub, Comparison of Heuristic Algorithms for the N-Queen Problem, Proceedings of the ITI th Int. Conf. on Information Technology Interfaces, Junho 25-28, [5] L. M. Gambardella e M. Dorigo, Ant-Q: A Reinforcement Learning Approach to the TSP, In Proceedings of Twelfth International Conference on Machine Learning, 1995, páginas [6] L. M. Gambardella e M. Dorigo, Solving Symmetric and Asymmetric TSPs by Ant Colonies, In Proceedings of IEEE International Conference on Evolutionary Computation, Maio 1996, páginas [7] M. Dorigo. "Optimization, Learning and Natural Algorithms, tese doutorado, Politecnico di Milano, [8] S. Khan, M. Bilal, M. Sharif, M. Sajid, e R. Baig, Solution of n-queen Problem Using ACO, In IEEE Congress on Evolutionary Computation, Dezembro 2009, páginas 1-5. [9] S. Russell e P. Norvig, Inteligencia Artificial, Elsevier Editora, 3a Ed., 2013.

Fundamentos de Inteligência Artificial [5COP099]

Fundamentos de Inteligência Artificial [5COP099] Fundamentos de Inteligência Artificial [5COP099] Dr. Sylvio Barbon Junior Departamento de Computação - UEL Disciplina Anual Assunto Aula 19 ACO - Ant Colony Optimization 2 de 15 Sumário Problema do Caixeiro

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

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

Otimização por Colônia de Formigas (ACO)

Otimização por Colônia de Formigas (ACO) Otimização por Colônia de Formigas (ACO) Inspiração Biológica Proposto por Dorigo e Gambardella em 1997 ACO (Ant Colony Optimization) Principal aplicação no PCV Programação do algoritmo Inspiração Biológica

Leia mais

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves CAP 254 CAP 254 Otimização Combinatória Professor: Dr. L.A.N. Lorena Assunto: Metaheurísticas Antonio Augusto Chaves Conteúdo C01 Simulated Annealing (20/11/07). C02 Busca Tabu (22/11/07). C03 Colônia

Leia mais

Tópicos Especiais em Otimização

Tópicos Especiais em Otimização Tópicos Especiais em Otimização ivo.junior@ufjf.edu.br Juiz de Fora, 05 de Maio de 2016 Introdução Qual a diferença entre inteligência: ARTIFICIAL E COMPUTACIONAL? ARTIFICIAL: É a ciência que tenta compreender

Leia mais

Ant Colony Optimization

Ant Colony Optimization Ant Colony Optimization por Fabricio Breve Fabricio Breve fabricio@rc.unesp.br 02/06/2016 Fabricio Breve 1 Ant Colony Optimization Origem na tese de doutorado de Marco Dorigo, em 1992 Ant Systems Algoritmo

Leia mais

2 Modelos Baseados no Comportamento de Formigas

2 Modelos Baseados no Comportamento de Formigas 2 Modelos Baseados no Comportamento de Formigas Formigas são seres vivos relativamente simples. Entretanto, é interessante reparar que suas colônias costumam apresentar um nível de sofisticação estrutural

Leia mais

Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante (TSP)

Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante (TSP) Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Otimização por Enxame de Partículas (PSO) e Otimização por Colônias de Formigas (ASO) aplicadas ao Problema do Caixeiro Viajante

Leia mais

Metaheurísticas de Otimização Bio-Inspiradas

Metaheurísticas de Otimização Bio-Inspiradas * Aula baseada nas notas de aula do prof. Fernando Von Zuben, da UNICAMP UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Metaheurísticas de Otimização Bio-Inspiradas Aula 14 Otimização por Colônia de Formigas*

Leia mais

Inteligência de enxame e o algoritmo das abelhas

Inteligência de enxame e o algoritmo das abelhas Inteligência de enxame e o algoritmo das abelhas (Swarm intelligence and bee s algorithm) Glaucus Augustus, 6219168 O que é: Cooperação: é o processo de agir junto, em união(ex: grupo de tcc) Colaboração:

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

Otimização em Colônias de Formigas. Prof. Eduardo R. Hruschka (Slides adaptados dos originais elaborados pelo Prof. André C. P. L. F.

Otimização em Colônias de Formigas. Prof. Eduardo R. Hruschka (Slides adaptados dos originais elaborados pelo Prof. André C. P. L. F. Otimização em Colônias de Formigas Prof. Eduardo R. Hruschka (Slides adaptados dos originais elaborados pelo Prof. André C. P. L. F. de Carvalho) Principais tópicos Introdução Colônias de Formigas Formação

Leia mais

Resolução de Problemas. Hugo Barros

Resolução de Problemas. Hugo Barros Resolução de Problemas Hugo Barros Resolução de Problemas Tópicos Conceitos Básicos Espaço de Estados Resolução de Problemas Dedica-se ao estudo e elaboração de algoritmos, capazes de resolver, por exemplo,

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

Implementação da metaheurística Colônia de formigas em Java para o problema do Caixeiro Viajante Simétrico.

Implementação da metaheurística Colônia de formigas em Java para o problema do Caixeiro Viajante Simétrico. Implementação da metaheurística Colônia de formigas em Java para o problema do Caixeiro Viajante Simétrico. Davi A. Magalhães 1, Marlos Antônio dos S. Lima 1. 1 Departamento de Informática Universidade

Leia mais

Buscas Informadas ou Heurísticas - Parte II

Buscas Informadas ou Heurísticas - Parte II Buscas Informadas ou Heurísticas - Parte II Prof. Cedric Luiz de Carvalho Instituto de Informática - UFG Graduação em Ciência da Computação / 2006 FUNÇÕES HEURÍSTICAS - 1/7 FUNÇÕES HEURÍSTICAS - 2/7 Solução

Leia mais

Exemplos. Jogo dos oito :-) Mundo dos blocos (ex: torre de Hanoi) Poblema das rainhas. Criptoaritmética. Missionários e Canibais.

Exemplos. Jogo dos oito :-) Mundo dos blocos (ex: torre de Hanoi) Poblema das rainhas. Criptoaritmética. Missionários e Canibais. istemas Inteligentes, 10-11 1 Exemplos Jogo dos oito :-) Mundo dos blocos (ex: torre de Hanoi) Poblema das rainhas Criptoaritmética Missionários e Canibais Resta-um e muitos outros... istemas Inteligentes,

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

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

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

Aplicação do Algoritmo ACO-HH para o problema de cobertura de conjuntos

Aplicação do Algoritmo ACO-HH para o problema de cobertura de conjuntos Aplicação do Algoritmo ACO-HH para o problema de cobertura de conjuntos Alexandre Silvestre Ferreira Departamento de Informática. Universidade Federal do Paraná Curitiba, Brasil alexandresf@inf.ufpr.br

Leia mais

Problemas e Estratégias. March 31, 2016

Problemas e Estratégias. March 31, 2016 Problemas e Estratégias March 31, 2016 Exemplos de Aplicações Jogo dos oito :-) Mundo dos blocos (ex: torre de Hanoi) Problema das n-rainhas Criptoaritmética Missionários e Canibais Resta-um e muitos outros...

Leia mais

Colônia Evolucionária de Formigas: Uma Proposta Inicial Aplicada ao Problema do Caixeiro Viajante

Colônia Evolucionária de Formigas: Uma Proposta Inicial Aplicada ao Problema do Caixeiro Viajante Colônia Evolucionária de Formigas: Uma Proposta Inicial Aplicada ao Problema do Caixeiro Viajante Fábio dos Santos Ferreira 2,3, Glauber Duarte Monteiro 2,3, Otávio Noura Teixeira 1,2,3 1 Programa de Pós-Graduação

Leia mais

ALOCAÇÃO ÓTIMA DE BANCOS DE CAPACITORES UTILIZANDO A META- HEURÍSTICA COLÔNIA DE FORMIGAS

ALOCAÇÃO ÓTIMA DE BANCOS DE CAPACITORES UTILIZANDO A META- HEURÍSTICA COLÔNIA DE FORMIGAS ALOCAÇÃO ÓTIMA DE BANCOS DE CAPACITORES UTILIZANDO A META- HEURÍSTICA COLÔNIA DE FORMIGAS Luís Miguel Magalhães Torres 1, Helton Nascimento Alves 2 1Aluno do Curso de Engenharia Elétrica Industrial IFMA.

Leia mais

Sistemas Inteligentes / Inteligência Artificial, Outros Métodos de Procura

Sistemas Inteligentes / Inteligência Artificial, Outros Métodos de Procura Sistemas Inteligentes / Inteligência Artificial, 14-15 1 Outros Métodos de Procura Sistemas Inteligentes / Inteligência Artificial, 14-15 2 Exemplos de Aplicações Jogo dos oito :-) Mundo dos blocos (ex:

Leia mais

Problema do Caminho Mínimo

Problema do Caminho Mínimo Departamento de Engenharia de Produção UFPR 63 Problema do Caminho Mínimo O problema do caminho mínimo ou caminho mais curto, shortest path problem, consiste em encontrar o melhor caminho entre dois nós.

Leia mais

Computação Evolucionária

Computação Evolucionária UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ UTFPR Programa de Pós-Graduação em Engenharia e Informática CPGEI Laboratório de Bioinformática e Inteligência Computacional Câmpus Curitiba (PR) Computação Evolucionária

Leia mais

Teoria da Complexidade Computacional

Teoria da Complexidade Computacional Teoria da Complexidade Computacional Letícia Rodrigues Bueno UFABC Motivação Motivação I can t find an efficient algorithm, I guess I m just too dumb. Fonte: GAREY, M. R. e JOHNSON, D. S. Computers and

Leia mais

Técnica de Busca Local para Melhorar a Meta-heurística de Otimização por Colônia de Formigas no Agrupamento de Instâncias em Bases de Dados

Técnica de Busca Local para Melhorar a Meta-heurística de Otimização por Colônia de Formigas no Agrupamento de Instâncias em Bases de Dados Técnica de Busca Local para Melhorar a Meta-heurística de Otimização por Colônia de Formigas no Agrupamento de Instâncias em Bases de Dados Ana Cristina B. Kochem Vendramin 1,2, Diogo Augusto B. Pereira

Leia mais

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

Teoria da Computação. Complexidade computacional classes de problemas Teoria da Computação Complexidade computacional classes de problemas 1 Universo de problemas Problemas indecidíveis ou não-computáveis Não admitem algoritmos Problemas intratáveis Não admitem algoritmos

Leia mais

Resolução de Problemas. Resolução de Problemas. Primeiros problemas por computador: prova automática de teoremas e jogos.

Resolução de Problemas. Resolução de Problemas. Primeiros problemas por computador: prova automática de teoremas e jogos. 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 Bacharelado

Leia mais

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves CAP 254 CAP 254 Otimização Combinatória Professor: Dr. L.A.N. Lorena Assunto: Metaheurísticas Antonio Augusto Chaves Conteúdo C Simulated Annealing (2//7). C2 Busca Tabu (22//7). C3 Colônia de Formigas

Leia mais

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

INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL. Aula 04 Prof. Vitor Hugo Ferreira Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia Elétrica INTRODUÇÃO À INTELIGÊNCIA COMPUTACIONAL Aula 04 Prof. Vitor Hugo Ferreira Busca em espaço de estados Estratégias

Leia mais

Inteligência de Enxame

Inteligência de Enxame Inteligência de Enxame! Inteligência de enxames é a denominação aplicada a tentativa de desenvolvimento de algoritmos para a solução distribuída de problemas inspirando-se no comportamento coletivo de

Leia mais

Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers. Jhonny Moreira

Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers. Jhonny Moreira Implementação e Avaliação do Algoritmo MCTS-UCT para o jogo Chinese Checkers Jhonny Moreira Introdução Introdução Na área da inteligência artificial (IA), a motivação é conseguir colocar os computadores

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

GUI Ant-Miner: Uma versão atualizada do minerador de dados baseado em colônias de formigas

GUI Ant-Miner: Uma versão atualizada do minerador de dados baseado em colônias de formigas GUI Ant-Miner: Uma versão atualizada do minerador de dados baseado em colônias de formigas Fernando Meyer 1, Rafael Stubs Parpinelli 1 1 Departamento de Ciência da Computação Universidade do Estado de

Leia mais

4. MÉTODO DO FORMIGUEIRO (ANT COLONY OPTIMIZATION ACO)

4. MÉTODO DO FORMIGUEIRO (ANT COLONY OPTIMIZATION ACO) 4. MÉTODO DO FORMIGUEIRO (ANT COLONY OPTIMIZATION ACO) 4.. Analogia Comportamental: a busca de alimentos em um migueiro 4.2. A Tradução Matemática: o algoritmo básico ( versão discreta) 4.3. A Programação

Leia mais

Algoritmos Tentativa e Erro (Backtracking) Prof.: Jonas Potros

Algoritmos Tentativa e Erro (Backtracking) Prof.: Jonas Potros 1 Algoritmos Tentativa e Erro (Backtracking) Prof.: Jonas Potros Tentativa e Erro 2 Tentativa e erro: decompor o processo em um número finito de subtarefas parciais que devem ser exploradas exaustivamente.

Leia mais

Aprendizado por Reforço usando Aproximação

Aprendizado por Reforço usando Aproximação Aprendizado por Reforço usando Aproximação de Funções Fabrício Olivetti de França Universidade Federal do ABC Tópicos 1. Aproximação de Funções 2. Do the evolution 1 Aproximação de Funções Função Utilidade

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 {emc06,gsr04}@c3sl.ufpr.br 11 de Junho de 2007 Resumo Neste artigo, apresentamos a metaheurística

Leia mais

OTIMIZAÇÃO POR COLÔNIA DE FORMIGAS PARA O ROTEAMENTO EM REDES DE COMPUTADORES.

OTIMIZAÇÃO POR COLÔNIA DE FORMIGAS PARA O ROTEAMENTO EM REDES DE COMPUTADORES. OTIMIZAÇÃO POR COLÔNIA DE FORMIGAS PARA O ROTEAMENTO EM REDES DE COMPUTADORES. Renato Guilherme Martins Junior (ICV-UNICENTRO), Richard Aderbal Gonçalves (Co-orientador), Carolina Paula de Almeida (Orientadora)

Leia mais

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

Otimização. Otimização em Redes. Paulo Henrique Ribeiro Gabriel Faculdade de Computação Universidade Federal de Uberlândia 2016/2 Otimização Otimização em Redes Paulo Henrique Ribeiro Gabriel phrg@ufu.br Faculdade de Computação Universidade Federal de Uberlândia 2016/2 Paulo H. R. Gabriel (FACOM/UFU) GSI027 2016/2 1 / 51 Conteúdo

Leia mais

Inteligência Artificial. Estratégias de Busca Outros. Huei Diana Lee

Inteligência Artificial. Estratégias de Busca Outros. Huei Diana Lee Inteligência Artificial Estratégias de Busca Outros Huei Diana Lee Redução de Problemas Até então consideramos estratégias para as quais o espaço de busca é representado por meio de Grafos OU Objetivo:

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

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

CTC-17 Inteligência Artificial Problema de Satisfação de Restrições. Prof. Paulo André Castro

CTC-17 Inteligência Artificial Problema de Satisfação de Restrições. Prof. Paulo André Castro CTC-17 Inteligência Artificial Problema de Satisfação de Restrições Prof. Paulo André Castro pauloac@ita.br www.comp.ita.br/~pauloac Sala 110, IEC-ITA Sumário Conceituação Aplicando busca genérica a PSRs

Leia mais

Thiago Christiano Silva

Thiago Christiano Silva Thiago Christiano Silva Conteúdo Conceitos Relevantes Problemas de Otimização Conceitos de Estabilidade e Convergência Teoremas de Lyapunov Rede Neural de Hopfield Aplicações do modelo de Hopfield Clusterização

Leia mais

Inteligência Computacional Aplicada a Engenharia de Software

Inteligência Computacional Aplicada a Engenharia de Software Inteligência Computacional Aplicada a Engenharia de Software Estudo de caso III Prof. Ricardo de Sousa Britto rbritto@ufpi.edu.br Introdução Em alguns ambientes industriais, pode ser necessário priorizar

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

7 Estudo de Casos: Obtenção de uma Regra de Decisão Ótima por Aproximação com Algoritmos Genéticos

7 Estudo de Casos: Obtenção de uma Regra de Decisão Ótima por Aproximação com Algoritmos Genéticos 7 Estudo de Casos: Obtenção de uma Regra de Decisão Ótima por Aproximação com Algoritmos Genéticos 7.. Introdução Este capítulo analisa o problema de decisão de investimento num projeto sujeito a incertezas

Leia mais

2 Definição do Problema

2 Definição do Problema Definição do Problema. Formulação Matemática O problema do Fluxo Máximo entre todos os pares de nós surge no contexto de redes, estas representadas por grafos, e deriva-se do problema singular de fluxo

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

Inteligência Artificial Busca

Inteligência Artificial Busca Inteligência Artificial Busca Professora Sheila Cáceres Ja vimos: Agentes simples que baseiam ações em um mapeamento direto de estados. Porém: Y se o conjunto de estados e ações for muito grande? Daria

Leia mais

3 Aprendizado por reforço

3 Aprendizado por reforço 3 Aprendizado por reforço Aprendizado por reforço é um ramo estudado em estatística, psicologia, neurociência e ciência da computação. Atraiu o interesse de pesquisadores ligados a aprendizado de máquina

Leia mais

Aplicando o Algoritmo Ant-Q na Priorização de Requisitos de Software com Precedência

Aplicando o Algoritmo Ant-Q na Priorização de Requisitos de Software com Precedência Aplicando o Algoritmo Ant-Q na Priorização de Requisitos de Software com Precedência Matheus Henrique Esteves Paixão 1, Márcia Maria Albuquerque Brasil 1, Thiago Gomes Nepomuceno da Silva 1, Jerffeson

Leia mais

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

1_1 1_2 2_1 1_ _ _ Fonte: Autor 75 7. Resultados Os resultados aqui apresentados utilizam o modelo proposto na Seção 6.2, resolvido através do software de otimização AIMMS para os problemas com Datas prometidas. Já para o problema sem

Leia mais

4 Metodologia de solução do problema

4 Metodologia de solução do problema 4 Metodologia de solução do problema A direção é mais importante que a velocidade. ROBERTO SCARINGELLA Este capítulo apresenta uma visão geral da modelagem e método de solução proposto para resolver o

Leia mais

5COP096 TeoriadaComputação

5COP096 TeoriadaComputação Sylvio 1 Barbon Jr barbon@uel.br 5COP096 TeoriadaComputação Aula 13 Prof. Dr. Sylvio Barbon Junior Sumário - Problemas NP-Completo Algoritmos Não-deterministas; Classes NP-Completo e NP-Dificil; Teorema

Leia mais

Algoritmo Aproximado. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

Algoritmo Aproximado. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Algoritmo Aproximado Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Heurísticas para Problemas N P- Completo Heurística: algoritmo que pode produzir um bom resultado (ou até a solução ótima),

Leia mais

DETERMINAÇÃO DE FUNÇÕES DE TRANSFERÊNCIA DE PROCESSOS QUÍMICOS ATRAVÉS DO MÉTODO DE EVOLUÇÃO DIFERENCIAL UTILIZANDO O SCILAB

DETERMINAÇÃO DE FUNÇÕES DE TRANSFERÊNCIA DE PROCESSOS QUÍMICOS ATRAVÉS DO MÉTODO DE EVOLUÇÃO DIFERENCIAL UTILIZANDO O SCILAB DETERMINAÇÃO DE FUNÇÕES DE TRANSFERÊNCIA DE PROCESSOS QUÍMICOS ATRAVÉS DO MÉTODO DE EVOLUÇÃO DIFERENCIAL UTILIZANDO O SCILAB A. H. R. REZENDE 1, D. L. SOUZA 1 1 Universidade Federal do Triângulo Mineiro,

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

Introdução à Resolução de Problemas por meio de Busca

Introdução à Resolução de Problemas por meio de Busca Introdução à Resolução de Problemas por meio de Busca Huei Diana Lee huei@unioeste.br 2006 Conteúdo Introdução Exemplos Descrição formal Os Vasilhames com Água Estratégias de Controle Problemas Exercício!!

Leia mais

Paulo Roberto Quícoli - Raul Peres de Góes - Faculdade de Tecnologia de Taquaritinga (FATEC) SP Brasil

Paulo Roberto Quícoli - Raul Peres de Góes - Faculdade de Tecnologia de Taquaritinga (FATEC) SP Brasil 1 ESTUDO COMPARATIVO DOS MÉTODOS DE BUSCA POR LARGURA, PROFUNDIDADE, A* HAMMING E MANHATTAN PARA SOLUÇÃO DO 8-PUZZLE COMPARATIVE STUDY OF THE METHODS BFS, DFS, A* HAMMING AND MANHATTAN FOR THE 8-PUZZLE

Leia mais

BCC204 - Teoria dos Grafos

BCC204 - Teoria dos Grafos BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal

Leia mais

ANÁLISE DE ALGORITMOS (INF 1721)

ANÁLISE DE ALGORITMOS (INF 1721) PUC-Rio Departamento de Informática Prof. Marcus Vinicius S. Poggi de Aragão (3WA) Horário: 2as. e 4as. 9-11hs (3WA) 3 de dezembro de 2016 Período: 2016.2 ANÁLISE DE ALGORITMOS (INF 1721) 3 a Lista de

Leia mais

Um algoritmo pseudo-periférico genérico para a heurística de Snay

Um algoritmo pseudo-periférico genérico para a heurística de Snay Trabalho apresentado no CNMAC, Gramado - RS, 2016. Proceeding Series of the Brazilian Society of Computational and Applied Mathematics Um algoritmo pseudo-periférico genérico para a heurística de Snay

Leia mais

Implementação de Otimização Colônia de Formigas

Implementação de Otimização Colônia de Formigas Implementação de Otimização Colônia de Formigas Estéfane G. M. de Lacerda Departamento de Engenharia da Computação e Automação UFRN Introdução Apresentaremos o Pseudo-Código do Ant System. O código pode

Leia mais

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Algoritmo Aproximação Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Heurísticas para Problemas NP- Completo Heurística: algoritmo que pode produzir um bom resultado (ou até a solução ótima),

Leia mais

ALOCAÇÃO DE CAPACITORES USANDO COLÔNIA DE FORMIGAS E O GRADIENTE

ALOCAÇÃO DE CAPACITORES USANDO COLÔNIA DE FORMIGAS E O GRADIENTE ALOCAÇÃO DE CAPACITORES USANDO COLÔNIA DE FORMIGAS E O GRADIENTE Pimentel Filho, M. C. maxchianca@hotmail.com Lacerda, E. G. M. estefane@dca.ufrn.br Medeiros Junior, M. F. firmino@dca.ufrn.br Resumo Este

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

Especificação do TP3

Especificação do TP3 Especificação do TP3 Data de Entrega: 21/05/2008 1 Descrição do Problema O problema a ser resolvido neste trabalho é conhecido na literatura como o problema de isomorfismo de sub-grafos Uma definição formal

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

Busca com informação e exploração. Inteligência Artificial. Revisão da aula passada: Heurística Admissível. Revisão da aula passada: Busca A *

Busca com informação e exploração. Inteligência Artificial. Revisão da aula passada: Heurística Admissível. Revisão da aula passada: Busca A * Inteligência Artificial Aula 6 Profª Bianca Zadrozny http://www.ic.uff.br/~bianca/ia Busca com informação e exploração Capítulo 4 Russell & Norvig Seção 4.2 e 4.3 Revisão da aula passada: Busca A * Idéia:

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

Resolução de problemas por meio de busca. Prof. Pedro Luiz Santos Serra

Resolução de problemas por meio de busca. Prof. Pedro Luiz Santos Serra Resolução de problemas por meio de busca Prof. Pedro Luiz Santos Serra Agentes de resolução de problemas Agente: É um elemento qualquer capaz de perceber seu ambiente por meio de sensores e de agir sobre

Leia mais

Optimização através de colónias de formigas. Guy Theraulaz

Optimização através de colónias de formigas. Guy Theraulaz Optimização através de colónias de formigas Guy Theraulaz Insectos, Insectos Sociais e Formigas ~10 18 insectos vivos ~2% de todos os insectos são sociais Os insectos sociais: Todas as formigas Todas as

Leia mais

UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS

UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS UMA INTRODUÇÃO AOS ALGORITMOS GENETICOS Uma visão geral dos GAs Um algoritmo genético é uma classe de algoritmo de busca. O algoritmo procura uma solução dentro de um espaço para um problema de otimização.

Leia mais

TREND STRIPS E NÍVEIS DE RUÍDO ADICIONADOS A UM MAPA SENOIDAL

TREND STRIPS E NÍVEIS DE RUÍDO ADICIONADOS A UM MAPA SENOIDAL 167 TREND STRIPS E NÍVEIS DE RUÍDO ADICIONADOS A UM MAPA SENOIDAL Antônio Carlos da Silva Filho Uni-FACEF Introdução Trend Strips (TS) são uma nova técnica de análise da dinâmica de um sistema, quando

Leia mais

INTRODUÇÃO À ROBÓTICA MÓVEL

INTRODUÇÃO À ROBÓTICA MÓVEL INTRODUÇÃO À ROBÓTICA MÓVEL Aula 19 Edson Prestes Departamento de Informática Teórica http://www.inf.ufrgs.br/~prestes prestes@inf.ufrgs.br Campos Potenciais Harmônicos É um metodo proposto por Connolly

Leia mais

Grafos: caminhos mínimos

Grafos: caminhos mínimos quando o grafo é sem pesos, a determinação de um caminho mais curto pode ser feita através de uma busca em largura caminho mais curto é aquele que apresenta o menor número de arestas quando o grafo tem

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

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

Algoritmos Genéticos. Texto base: Stuart Russel e Peter Norving - Inteligência Artificial Algoritmos Genéticos Texto base: Stuart Russel e Peter Norving - Inteligência Artificial junho/2007 Algoritmo Genético Uma variante da busca em feixe estocástica Estado sucessor gerado pela combinação

Leia mais

apenas os caminhos que passam só por vértices em C, exceto, talvez, o próprio v A Figura 1 a seguir ilustra o significado do conjunto C edovalordist.

apenas os caminhos que passam só por vértices em C, exceto, talvez, o próprio v A Figura 1 a seguir ilustra o significado do conjunto C edovalordist. CAMINHO DE CUSTO MÍNIMO Dados dois pontos A e B, em muitos problemas práticos fazemos 2 perguntas: 1. existe um caminho de A para B? ou 2. se existe mais de um caminho de A para B, qual deles é o mais

Leia mais

Pesquisa Operacional. Teoria dos Grafos

Pesquisa Operacional. Teoria dos Grafos Pesquisa Operacional Teoria dos Grafos 1 Sumário Introdução Histórico Aplicações de modelos em grafos Conceitos e Notação Representações de um grafo G Tipos de grafos Algoritmos Algoritmo de Djisktra Algoritmo

Leia mais

Inteligência Artificial - IA. Resolução de problemas por meio de busca

Inteligência Artificial - IA. Resolução de problemas por meio de busca Resolução de problemas por meio de busca 1 Agente reativo - definido por ação reação Agente de resolução de problemas (ou baseado em objetivos) encontra sequencias de ações que leva ao estado desejável.

Leia mais

Otimização de Sistemas Hidrotérmicos por Enxame de Partículas: Uma Abordagem Orientada a Objetos

Otimização de Sistemas Hidrotérmicos por Enxame de Partículas: Uma Abordagem Orientada a Objetos Otimização de Sistemas Hidrotérmicos por Enxame de Partículas: Uma Abordagem Orientada a Objetos Gelson da Cruz JUNIOR 2, Cassio Dener Noronha VINHAL 3 Lauro Ramon GOMIDES 1, Gelson da Cruz JUNIOR 2, Cassio

Leia mais

3 Trabalhos Relacionados

3 Trabalhos Relacionados 3 Trabalhos Relacionados Este capítulo apresenta, em linhas gerais, dois trabalhos relacionados que contribuíram de alguma forma para a concepção e desenvolvimento do método de verificação de sistemas

Leia mais

Inteligência Artificial

Inteligência Artificial Inteligência Artificial CTC15 Aula 3b CTC15 Aula 3b 1 Sumário Exemplos de PSR Busca genérica aplicada à PSRs Backtracking Verificação forward Heurísticas para PSRs CTC15 Aula 3b 2 Problemas de satisfação

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

Computação Bioinspirada PROF. PAULO SALGADO

Computação Bioinspirada PROF. PAULO SALGADO Computação Bioinspirada AULA 1 APRESENTAÇÃO DA DISCIPLINA PROF. PAULO SALGADO Aula de hoje Falar sobre Objetivos Ementa Avaliação Roteiro Proposto (Cronograma) Referências Periódicos da Área Objetivos

Leia mais

Resumo. Como um agente busca de seqüência de ações para alcançar seus objetivos.

Resumo. Como um agente busca de seqüência de ações para alcançar seus objetivos. Resumo Inteligência Artificial Russel e Norvig Capítulos 3,4 e 5 Prof. MsC Ly Freitas UEG Resolução de problemas por meio de busca Como um agente busca de seqüência de ações para alcançar seus objetivos.

Leia mais

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

Projeto e Análise de Algoritmos NP Completude. Prof. Humberto Brandão Projeto e Análise de Algoritmos NP Completude Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Universidade Federal de Alfenas versão da aula: 0.4 Introdução Problemas intratáveis ou difíceis são comuns

Leia mais

Problemas de Fluxo em Redes

Problemas de Fluxo em Redes CAPÍTULO 7 1. Conceitos fundamentais de grafos Em muitos problemas que nos surgem, a forma mais simples de o descrever, é representá-lo em forma de grafo, uma vez que um grafo oferece uma representação

Leia mais

Análise e Complexidade de Algoritmos

Análise e Complexidade de Algoritmos Análise e Complexidade de Algoritmos Principais paradigmas do projeto de algoritmos - Recursividade - Tentativa e erro - Divisão e Conquista - Programação dinâmica - Algoritmos Gulosos e de Aproximação

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

Grafos Hamiltonianos e o Problema do Caixeiro Viajante. Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá

Grafos Hamiltonianos e o Problema do Caixeiro Viajante. Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá Grafos Hamiltonianos e o Problema do Caixeiro Viajante Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá Grafo Hamiltoniano Definição: Um circuito hamiltoniano em um

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

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