Algoritmo GenéticoDisciplina:   Inteligência Artificial Prof. Frederico Brito Fernandes        unipe@fredbf.com           ...
(1) Problema das oito rainhas     Objetivo: colocar 8 rainhas no tabuleiro, de forma que      elas não se ataquem    Idé...
(1) Problema das oito rainhas     Objetivo: colocar 8 rainhas no tabuleiro, de forma que      elas não se ataquem    Idé...
(1) Problema das oito rainhas     Objetivo: colocar 8 rainhas no tabuleiro, de forma que      elas não se ataquem    Idé...
(1) Problema das oito rainhas     Objetivo: colocar 8 rainhas no tabuleiro, de forma que      elas não se ataquem    Idé...
(1) Problema das oito rainhas       Espaço de estados muito grande e heurística fraca       Qual desses estados é o melh...
(1) Problema das oito rainhas     E se cruzássemos os melhores estados? (B e D)                                          ...
(1) Problema das oito rainhas     E se cruzássemos os melhores estados? (B e D)                                         B...
(2) Algoritmo Genético: definição   Publicados inicialmente em 1975 pelo professor Jonh    Holland, da Universidade de Mi...
(2) Algoritmo Genético: ciclo evolutivo   Simulação do Algoritmo Genético               (1) Definição de um indivíduo    ...
(3) Algoritmo Genético: 8 rainhas                                                                                      (1)...
(3) Algoritmo Genético: 8 rainhas                                                                                  (2)    ...
(3) Algoritmo Genético: 8 rainhas                                                                                      (3)...
(3) Algoritmo Genético: 8 rainhas                                                                                      (4)...
(3) Algoritmo Genético: 8 rainhas                                                                                    (5)  ...
(3) Algoritmo Genético: 8 rainhas                                                                                      (6)...
(3) Algoritmo Genético: 8 rainhas                                                                                      (7)...
(3) Algoritmo Genético: conclusões   Conclusões              Outros processos de seleção: Elitismo              Emprega...
(4) Exercício   Modele o problema de Coloração de Mapas com Algoritmo    Genético              Definição do Problema: Es...
Próximos SlideShares
Carregando em…5
×

algoritmo genetico

1.752 visualizações

Publicada em

AL -8 rainhas

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.752
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
36
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

algoritmo genetico

  1. 1. Algoritmo GenéticoDisciplina: Inteligência Artificial Prof. Frederico Brito Fernandes unipe@fredbf.com 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. 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 1 2 3 em cada coluna 4 5 6 7 8Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 2/19
  3. 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 1 2 3 4 5 6 7 8 em cada coluna  Idéia 2: tentar livrar a rainha 1 de ataque  Impossível!Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 3/19
  4. 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 2 3 4 5 6 7 8 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) 1Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 4/19
  5. 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 1 3 4 5 6 7 8 em cada coluna  Idéia 2: tentar livrar a rainha 1 de ataque 2  Impossível! ER RO  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 restoDisciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 5/19
  6. 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) = 26Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 6/19
  7. 7. (1) Problema das oito rainhas  E se cruzássemos os melhores estados? (B e D) B D                Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 7/19
  8. 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)Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 8/19
  9. 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 Indivíduo ou Cromossomo Estado P Conjunto de estados Seleção Escolha probabilística de alguns estadosDisciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 9/19
  10. 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) CrossoverDisciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 10/19
  11. 11. (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 (1) Definição de um indivíduo tamanho fixo e um conjunto finito de gene A A (2) Geração aleatória 7  Ex: 6  da população Gene={B,C} 5  Tam = 8 Função Objetivo 4  B C C B 3  2  (3)Seleção C C B B 1  (7) Nova 0  População Ex1: (4) Pareamento A= 7 5 2 0 Gene={0,..,7} (6) Mutação 4 6 1 3 Tam=8 Ex2: A = 111 101 010 000 (5) Crossover Gene={0,1} 100 110 001 011 Tam=8Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 11/19
  12. 12. (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 (2) Geração aleatória apresentação da população A= 7 2 0 5 3 1 5 0 Função Objetivo B= 6 4 1 3 5 7 0 3 (3)Seleção (7) Nova C= 6 4 0 6 1 7 0 5 População D= 7 5 2 0 4 6 1 3 Cuidado ao gerar uma população que (4) Pareamento A= 111 010 000 101 011 001 101 000 (6) Mutação só tenha 0’s ou 1’s B= 110 100 001 011 101 111 000 011 Solução: gerar metade da população e depois pegar essa metade, inverter os bits para gerar a C= 110 100 000 110 001 111 000 101 (5) Crossover segunda metade (processo de diversificação) D= 111 101 010 000 100 110 001 011Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 12/19
  13. 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% (1) Definição de um indivíduo F(B) = 24 25,5% F(C) = 21 22,3% (2) Geração aleatória F(D) = 26 27,7% da população (b) Seleção A Função Objetivo D 24% 28% (3)Seleção (7) Nova Duas abordagens: População (1) Seleção Probabilística Simples: um ponteiro (2) Amostragem Universal Estocástica: n ponteiros (4) Pareamento (6) Mutação B C 22% 26% Escolhidos: (5) Crossover A, D, B, ADisciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 13/19
  14. 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, (1) Definição de um indivíduo para se reproduzirem (2) Geração aleatória A= 111 010 000 101 011 001 101 000 da população B= 110 100 001 011 101 111 000 011 Função Objetivo (3)Seleção A= 111 010 000 101 011 001 101 000 (7) Nova População D= 111 101 010 000 100 110 001 011 (4) Pareamento • Observe que o indivíduo C não foi (6) Mutação escolhido no processo de SELEÇÃO anterior (5) CrossoverDisciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 14/19
  15. 15. (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 (1) Definição de um indivíduo pais  Em geral, um filho tem 50% dos cromossomos de cada pai (2) Geração aleatória da população A= 111 010 000 101 011 001 101 000 Função Objetivo B= 110 100 001 011 101 111 000 011 AB1 = 111 010 000 101 101 111 000 011 (3)Seleção 110 100 001 011 011 001 101 000 (7) Nova AB2 = População • Espera-se que os filhos gerados tenham A= 111 010 000 101 011 001 101 000 maior capacidade de adaptação ao (4) Pareamento D= 111 101 010 000 100 110 001 011 (6) Mutação ambiente (melhor Função Objetivo) 111 010 000 101 100 110 001 011 AD1 = 111 101 010 000 011 001 101 000 (5) Crossover AD2 =Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 15/19
  16. 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 (1) Definição de um indivíduo invertidos • Objetivos: • Acelerar a busca (2) Geração aleatória • Recuperar parte do código da população genético perdido Função Objetivo AB1 = 111 010 000 101 101 111 000 011 (3)Seleção 110 100 001 011 011 001 101 000 (7) Nova AB2 = População AB2= 110 100 001 011 111 001 101 000 (4) Pareamento (6) Mutação 111 010 000 101 100 110 001 011 AD1 = 111 101 010 000 011 001 101 000 (5) Crossover AD2 =Disciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 16/19
  17. 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 = 111 010 000 101 101 111 000 011 110 100 001 011 111 001 101 000 (2) Geração aleatória AB2 = da população 111 010 000 101 100 110 001 011 AD1 = 111 101 010 000 011 001 101 000 Função Objetivo AD2 = (3)Seleção • Verifica-se se o indivíduo de maior (7) Nova adaptabilidade possível se encontra, População ou seja, que possua a Função Objetivo máxima (4) Pareamento • Caso contrário, continua-se (6) Mutação executando o ciclo até um determinado número de voltas (5) CrossoverDisciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 17/19
  18. 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çõesDisciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 18/19
  19. 19. (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 A B C E F DDisciplina: Inteligência Artificial Professor: Frederico Brito Fernandes 19/19

×