Apresentação Introdução à Programação Genética Título : Aluno : Gustavo Henrique Flores Caldas Profa. : Inês Dutra
Objetivo Apresentar a Programação Genética como um algoritmo capaz de produzir programas de computador com um mínimo de intervenção humana.
Conteúdo Introdução Descrição do Problema Breve Histórico Programação Genética A Representação O Algoritmo Fitness Operadores Genéticos Parâmetros Comuns Aplicações Conclusão
Descrição do Problema Busca do melhor programa... ... no espaço de todos os programas.
Metáfora Biológica da PG
Breve Histórico
Requisitos para Adaptação Reprodução entre indivíduos dentro da população Variações que afetam as condições de sobrevivência dos indivíduos Hereditariedade na reprodução Recursos limitados causando competição
Representação dos “Indivíduos” (+ (* (+ 1 2) (- (+ 3 4) 5)) (- (* 6 7) 8)) Ou (+ (* (+ 1 2) (- (+ 3 4) 5)) (- (* 6 7) 8)) + * 8 7 6 1 2 5 4 3 Ou
Avaliar o Desempenho de Cada Indivíduo na População Algoritmo de Programação Genética G := 0 Criar População Inicial Avaliar o Desempenho de Cada Indivíduo na População Critério de Término foi Satisfeito? Designar Resultado Fim G := G + 1 Sim Não Aplicação de Operadores Genéticos
População Inicial Funções : F = {+, *, , } Terminais : T = {0, 1, 2, 3, 4} + * 1 4 – 3 2 = -3 Funções : F = {Se, E, Ou} Terminais : T = {L1, L2, Verdadeiro, Falso} Se Ou E L2 L1 Verdadeiro Falso
Cuidados com os Indivíduos + Ou Verdadeiro Completude Funções : F = {+, Ou} Terminais : T = {Verdadeiro, 0} + Suficiência Funções : F = {+} Terminais : T = {0}
Fitness & Casos Fitness Aproximação de y = x3 no intervalo [0, 1] Casos Fitness
Indivíduos Selecionados Seleção População Indivíduos Selecionados da População 4 6 5 7 9 8 1 3 2
Indivíduos Selecionados Reprodução Indivíduos Selecionados da População 1 1 1 2 4 3 2 4 4 9 Próxima Geração
Indivíduos Selecionados Crossover Indivíduos Selecionados da População 1 1 1’ 1 2 3 2 3’ 4 4 9 Próxima Geração
Crossover + * + * 8 * 3 1 2 + 5 6 7 1 2 3 4 + * * + 3 * 8
Indivíduos Selecionados Mutação Indivíduos Selecionados da População 1 1 1 2 9’ 3 2 4 4 9 Próxima Geração
Mutação * 3 * + 1 2 1 2 * 4 1 + 2 3
Avaliar o Desempenho de Cada Indivíduo na População Finalização G := 0 Criar População Inicial Sim Critério de Término foi Satisfeito? Designar Resultado Não Avaliar o Desempenho de Cada Indivíduo na População Fim G := G + 1 Aplicação de Operadores Genéticos
Parâmetros Comuns População = 500 Gerações = 50 Seleção = Proporcional a Fitness Crossover = 80 % Mutação = 10 % Reprodução = 10 %
Aplicações da PG
Conclusão A Programação Genética encontra-se ainda em estágio de desenvolvimento, mas já é possível aplicá-la satisfatoriamente em várias áreas diferentes do conhecimento. Tudo isso com quase nenhuma intervenção humana.