algoritmo genetico

  • View
    1.062

  • Download
    3

Embed Size (px)

DESCRIPTION

AL -8 rainhas

Transcript

  • 1. Algoritmo GenticoDisciplina: Inteligncia Artificial Prof. Frederico Brito Fernandesunipe@fredbf.comCONTEDO(1) Problema das 8 Rainhas(2) Algoritmo Gentico(3) AG aplicado nas 8 rainhas(4) Exerccio: Colorao de Mapas

2. (1) Problema das oito rainhas Objetivo: colocar 8 rainhas no tabuleiro, de forma queelas no se ataquem Idia 1: colocar uma rainha12 3 em cada coluna45 678Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 2/19 3. (1) Problema das oito rainhas Objetivo: colocar 8 rainhas no tabuleiro, de forma queelas no se ataquem Idia 1: colocar uma rainha12 3 4 5 6 7 8 em cada coluna Idia 2: tentar livrar a rainha 1 de ataque Impossvel!Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 3/19 4. (1) Problema das oito rainhas Objetivo: colocar 8 rainhas no tabuleiro, de forma queelas no se ataquem Idia 1: colocar uma rainha 2 3 4 5 6 7 8 em cada coluna Idia 2: tentar livrar a rainha 1 de ataque Impossvel! Retroceder (estado raiz) Idia 3: tentar livrar a rainha 2 do ataque das anteriores Tcnica conhecida comorelaxamento do problema(heurstica)1Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 4/19 5. (1) Problema das oito rainhas Objetivo: colocar 8 rainhas no tabuleiro, de forma queelas no se ataquem Idia 1: colocar uma rainha13 4 5 6 7 8 em cada coluna Idia 2: tentar livrar a rainha 1 de ataque 2 Impossvel! ERRO Retroceder (estado raiz) Idia 3: tentar livrar a rainha 2 do ataque das anteriores Tcnica conhecida comorelaxamento do problema(heurstica) Idia 4: repetir para o restoDisciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 5/19 6. (1) Problema das oito rainhas Espao de estados muito grande e heurstica fraca Qual desses estados o melhor? (menor n de pares de rainhas queno se atacam)A BC D 2324 21 26 Funo do melhor estado (funo fitness):tenta encontrarum estado mais prximo do finalF(A) = 23 F(B) = 24 F(C) = 21F(D) = 26Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 6/19 7. (1) Problema das oito rainhas E se cruzssemos os melhores estados? (B e D)BD Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 7/19 8. (1) Problema das oito rainhas E se cruzssemos os melhores estados? (B e D) B Filho(BD) D F(Filho(BD)) = 56 (mximo, estado timo)Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 8/19 9. (2) Algoritmo Gentico: definio Publicados inicialmente em 1975 pelo professor JonhHolland, da Universidade de Michigam OBJETIVO So algoritmos de busca e otimizao baseados em mecanismos de seleo natural e estruturas genticas TERMINOLOGIAIndivduo ou Cromossomo EstadoP Conjunto de estadosSeleo Escolha probabilstica de alguns estadosDisciplina: Inteligncia ArtificialProfessor: Frederico Brito Fernandes9/19 10. (2) Algoritmo Gentico: ciclo evolutivo Simulao do Algoritmo Gentico (1) Definio de um indivduo (2) Gerao aleatria da populao Funo Objetivo (3)Seleo (7) NovaPopulao(4) Pareamento(6) Mutao (5) CrossoverDisciplina: Inteligncia ArtificialProfessor: Frederico Brito Fernandes 10/19 11. (3) Algoritmo Gentico: 8 rainhas(1)Definio de um indivduo Simulao do Algoritmo Gentico O indivduo (ou cromossomo) deve ser codificado em uma string de(1) Definio de um indivduotamanho fixo e um conjunto finito de gene A A (2) Gerao aleatria7 Ex: 6 da populao Gene={B,C}5 Tam = 8Funo Objetivo 4 BC C B3 2 (3)Seleo CC B B1(7) Nova0Populao Ex1: (4) PareamentoA= 7 5 2 0 Gene={0,..,7}(6) Mutao 4 6 1 3 Tam=8 Ex2: A = 111 101 010 000(5) CrossoverGene={0,1} 100 110 001 011 Tam=8Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes11/19 12. (3) Algoritmo Gentico: 8 rainhas(2)Gerao da Populao Simulao do Algoritmo Gentico Devemos produzir um conjunto de indivduos de forma aleatria(1) Definio de um indivduo Ex:Por motivos didticos, essa a representao dos estados do slide 7 dessa (2) Gerao aleatria apresentao da populaoA= 7 2 0 5 3150Funo ObjetivoB= 6 4 1 3 5 7 03 (3)Seleo (7) Nova C= 6 4 0 6 1 7 05 PopulaoD= 7 5 2 0 4613Cuidado ao gerar uma populao que (4) Pareamento A= 111 010 000 101 011 001 101000 (6) Mutaos tenha 0s ou 1s B= 110 100 001 011 101 111 000011 Soluo: gerar metade da populao e depois pegar essa metade, inverter os bits para gerar aC= 110 100 000 110 001 111 000101 (5) Crossover segunda metade (processo de diversificao)D= 111 101 010 000 100 110 001011Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 12/19 13. (3) Algoritmo Gentico: 8 rainhas(3) Seleo Simulao do Algoritmo Gentico(a) Funo Objetivo (~%) F(A) = 2324,4%(1) Definio de um indivduo F(B) = 2425,5% F(C) = 2122,3% (2) Gerao aleatria F(D) = 2627,7% da populao(b) Seleo AFuno Objetivo D24% 28% (3)Seleo (7) NovaDuas abordagens:Populao (1) Seleo Probabilstica Simples: um ponteiro (2) Amostragem Universal Estocstica: n ponteiros (4) Pareamento(6) Mutao B C22%26%Escolhidos:(5) CrossoverA, D, B, ADisciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 13/19 14. (3) Algoritmo Gentico: 8 rainhas(4)Pareamento Simulao do Algoritmo Gentico Os indivduos escolhidos so dispostos aleatoriamente dois a dois,(1) Definio de um indivduopara se reproduzirem (2) Gerao aleatriaA= 111 010 000 101 011 001 101 000 da populaoB= 110 100 001 011 101 111 000 011Funo Objetivo (3)Seleo A= 111 010 000 101 011 001 101 000(7) NovaPopulao D= 111 101 010 000 100 110 001 011 (4) Pareamento Observe que o indivduo C no foi(6) Mutao escolhido no processo de SELEO anterior(5) CrossoverDisciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 14/19 15. (3) Algoritmo Gentico: 8 rainhas(5)Crossover Simulao do Algoritmo Gentico Processo pelo qual os filhos gerados possuem partes do cromossomo dos(1) Definio de um indivduopais Em geral, um filho tem 50% dos cromossomos de cada pai (2) Gerao aleatria da populao A= 111 010 000 101 011001 101 000Funo ObjetivoB=110 100 001 011 101111 000 011 AB1 = 111 010 000 101 101111 000 011 (3)Seleo110 100 001 011 011001 101 000(7) Nova AB2 =Populao Espera-se que os filhos gerados tenham A= 111 010 000 101 011001 101 000 maior capacidade de adaptao ao (4) Pareamento D= 111 101 010 000 100110 001 011 (6) Mutao ambiente (melhor Funo Objetivo) 111 010 000 101 100110 001 011 AD1 = 111 101 010 000 011001 101 000(5) CrossoverAD2 =Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes15/19 16. (3) Algoritmo Gentico: 8 rainhas(6)Mutao Simulao do Algoritmo Gentico Processo pelo qual os bits dos filhos (em pequena probabilidade) so(1) Definio de um indivduoinvertidos Objetivos: Acelerar a busca (2) Gerao aleatria Recuperar parte do cdigo da populao gentico perdidoFuno Objetivo AB1 = 111 010 000 101 101 111 000 011 (3)Seleo110 100 001 011 011 001 101 000(7) Nova AB2 =Populao AB2=110 100 001 011 111 001 101 000 (4) Pareamento(6) Mutao 111 010 000 101 100 110 001 011 AD1 = 111 101 010 000 011 001 101 000(5) CrossoverAD2 =Disciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 16/19 17. (3) Algoritmo Gentico: 8 rainhas(7)Nova Populao Simulao do Algoritmo Gentico Uma nova populao gerada(1) Definio de um indivduoAB1 =111 010 000101 101 111 000011 110 100 001011 111 001 101000 (2) Gerao aleatriaAB2 = da populao111 010 000101 100 110 001011AD1 = 111 101 010000 011 001 101000Funo Objetivo AD2 = (3)Seleo Verifica-se se o indivduo de maior(7) Nova adaptabilidade possvel se encontra,Populaoou seja, que possua a Funo Objetivo mxima (4) Pareamento Caso contrrio,continua-se(6) Mutao executandoociclo at um determinado nmero de voltas(5) CrossoverDisciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes17/19 18. (3) Algoritmo Gentico: concluses Concluses Outros processos de seleo: Elitismo Empregado com Redes Neurais, para selecionar a topologia ideal til quando empregado em um problema com um grande espao de soluesDisciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 18/19 19. (4) Exerccio Modele o problema de Colorao de Mapas com AlgoritmoGentico Definio do Problema: Esse problema requer que voc pinte a figura com o menor nmero de cores possvel. Blocos adjacentes devem ter cores diferentesABCEF DDisciplina: Inteligncia Artificial Professor: Frederico Brito Fernandes 19/19