1 / 19

Algoritmo Genético

Algoritmo Genético. Disciplina : Inteligência Artificial. CONTEÚDO (1) Problema das 8 Rainhas (2) Algoritmo Genético (3) AG aplicado nas 8 rainhas (4) Exercício: Coloração de Mapas. (1) Problema das oito rainhas. Objetivo: colocar 8 rainhas no tabuleiro, de forma que elas não se ataquem.

cherie
Download Presentation

Algoritmo Genético

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algoritmo Genético Disciplina: Inteligência Artificial CONTEÚDO (1) Problema das 8 Rainhas (2) Algoritmo Genético (3) AG aplicado nas 8 rainhas (4) Exercício: Coloração de Mapas

  2. (1) Problema das oito rainhas • Objetivo: colocar 8 rainhas no tabuleiro, de forma que elas não se ataquem • Idéia 1: colocar uma rainha em cada coluna 1 2 3 4 5 6 7 8

  3. (1) Problema das oito rainhas • Objetivo: colocar 8 rainhas no tabuleiro, de forma que elas não se ataquem • Idéia 1: colocar uma rainha em cada coluna • Idéia 2: tentar livrar a rainha 1 de ataque • Impossível! 1 2 3 4 5 6 7 8

  4. (1) Problema das oito rainhas • Objetivo: colocar 8 rainhas no tabuleiro, de forma que elas não se ataquem • Idéia 1: colocar uma rainha em cada coluna • Idéia 2: tentar livrar a rainha 1 de ataque • Impossível! • Retroceder (estado raiz) • Idéia 3: tentar livrar a rainha 2 do ataque das anteriores • Técnica conhecida como relaxamento do problema (heurística) 2 3 8 4 5 7 6 1

  5. (1) Problema das oito rainhas • Objetivo: colocar 8 rainhas no tabuleiro, de forma que elas não se ataquem • Idéia 1: colocar uma rainha em cada coluna • Idéia 2: tentar livrar a rainha 1 de ataque • Impossível! • Retroceder (estado raiz) • Idéia 3: tentar livrar a rainha 2 do ataque das anteriores • Técnica conhecida como relaxamento do problema (heurística) • Idéia 4: repetir para o resto 1 3 4 5 7 8 6 2 ERRO

  6. (1) Problema das oito rainhas • Espaço de estados muito grande e heurística fraca • Qual desses estados é o melhor? (menor nº de pares de rainhas que não se atacam) A B C D 23 24 21 26 • Função do melhor estado (função fitness): tenta encontrar um estado mais próximo do final F(A) = 23 F(B) = 24 F(C) = 21 F(D) = 26

  7. (1) Problema das oito rainhas • E se cruzássemos os melhores estados? (B e D) B D

  8. (1) Problema das oito rainhas • E se cruzássemos os melhores estados? (B e D) B Filho(BD) D F(Filho(BD)) = 56 (máximo, estado ótimo)

  9. (2) Algoritmo Genético: definição • Publicados inicialmente em 1975 pelo professor Jonh Holland, da Universidade de Michigam • OBJETIVO • São algoritmos de busca e otimização baseados em mecanismos de seleção natural e estruturas genéticas • TERMINOLOGIA

  10. (2) Algoritmo Genético: ciclo evolutivo • Simulação do Algoritmo Genético (1) Definição de um indivíduo (2) Geração aleatória da população Função Objetivo (3)Seleção (7) Nova População (4) Pareamento (6) Mutação (5) Crossover

  11. Ex1: Gene={0,..,7} Tam=8 A =7 5 2 0 4 6 1 3 Ex2: Gene={0,1} Tam=8 A = 111 101 010 000 100 110 001 011 (3) Algoritmo Genético: 8 rainhas (1) Definição de um indivíduo • Simulação do Algoritmo Genético • O indivíduo (ou cromossomo) deve ser codificado em uma string de tamanho fixo e um conjunto finito de gene (1) Definição de um indivíduo A 7 6 5 4 3 2 1 0 (2) Geração aleatória da população Ex: Gene={B,C} Tam = 8 Função Objetivo (3)Seleção (7) Nova População (4) Pareamento (6) Mutação (5) Crossover

  12. Cuidado ao gerar uma população que só tenha 0’s ou 1’s Solução: gerar metade da população e depois pegar essa metade, inverter os bits para gerar a segunda metade (processo de diversificação) (3) Algoritmo Genético: 8 rainhas (2) Geração da População • Simulação do Algoritmo Genético • Devemos produzir um conjunto de indivíduos de forma aleatória (1) Definição de um indivíduo Ex: Por motivos didáticos, essa é a representação dos estados do slide 7 dessa apresentação (2) Geração aleatória da população A = B = C = D = Função Objetivo (3)Seleção (7) Nova População A = B = C = D = (4) Pareamento (6) Mutação (5) Crossover

  13. (3) Algoritmo Genético: 8 rainhas (3) Seleção • Simulação do Algoritmo Genético (a) Função Objetivo (~%) F(A) = 23 24,4% F(B) = 24 25,5% F(C) = 21 22,3% F(D) = 26 27,7% (b) Seleção (1) Definição de um indivíduo (2) Geração aleatória da população Função Objetivo (3)Seleção (7) Nova População Duas abordagens: (1) Seleção Probabilística Simples: um ponteiro (2) Amostragem Universal Estocástica: n ponteiros (4) Pareamento (6) Mutação Escolhidos: A, D, B, A (5) Crossover

  14. (3) Algoritmo Genético: 8 rainhas (4) Pareamento • Simulação do Algoritmo Genético • Os indivíduos escolhidos são dispostos aleatoriamente dois a dois, para se reproduzirem (1) Definição de um indivíduo (2) Geração aleatória da população A = B = A = D = Função Objetivo (3)Seleção (7) Nova População (4) Pareamento (6) Mutação • Observe que o indivíduo C não foi escolhido no processo de SELEÇÃO anterior (5) Crossover

  15. Espera-se que os filhos gerados tenham maior capacidade de adaptação ao ambiente (melhor Função Objetivo) (3) Algoritmo Genético: 8 rainhas (5) Crossover • Simulação do Algoritmo Genético • Processo pelo qual os filhos gerados possuem partes do cromossomo dos pais • Em geral, um filho tem 50% dos cromossomos de cada pai (1) Definição de um indivíduo (2) Geração aleatória da população A = B = A = D = Função Objetivo AB1 = AB2 = AD1 = AD2 = (3)Seleção (7) Nova População (4) Pareamento (6) Mutação (5) Crossover

  16. (3) Algoritmo Genético: 8 rainhas (6) Mutação • Simulação do Algoritmo Genético • Processo pelo qual os bits dos filhos (em pequena probabilidade) são invertidos • Objetivos: • Acelerar a busca • Recuperar parte do código genético perdido (1) Definição de um indivíduo (2) Geração aleatória da população Função Objetivo AB1 = AB2 = AD1 = AD2 = (3)Seleção (7) Nova População AB2= (4) Pareamento (6) Mutação (5) Crossover

  17. (3) Algoritmo Genético: 8 rainhas (7) Nova População • Simulação do Algoritmo Genético • Uma nova população é gerada (1) Definição de um indivíduo AB1 = AB2 = AD1 = AD2 = (2) Geração aleatória da população Função Objetivo (3)Seleção • Verifica-se se o indivíduo de maior adaptabilidade possível se encontra, ou seja, que possua a Função Objetivo máxima • Caso contrário, continua-se executando o ciclo até um determinado número de voltas (7) Nova População (4) Pareamento (6) Mutação (5) Crossover

  18. (3) Algoritmo Genético: conclusões • Conclusões • Outros processos de seleção: Elitismo • Empregado com Redes Neurais, para selecionar a topologia ideal • Útil quando empregado em um problema com um grande espaço de soluções

  19. B A C E F D (4) Exercício • Modele o problema de Coloração de Mapas com Algoritmo Genético • Definição do Problema: Esse problema requer que você pinte a figura com o menor número de cores possível. Blocos adjacentes devem ter cores diferentes

More Related