Computao Evolucionria Aurora Pozo Motivao Se variaes teis

  • Slides: 37
Download presentation
Computação Evolucionária Aurora Pozo

Computação Evolucionária Aurora Pozo

Motivação “. . . Se variações úteis para qualquer organismo devam ocorrer para que

Motivação “. . . Se variações úteis para qualquer organismo devam ocorrer para que ele venha a existir, certamente indivíduos assim caracterizados terão a melhor chance de serem preservados na luta por sobrevivência; e do forte princípio de hereditariedade, eles tenderão a produzir gerações com características similares. Este princípio de preservação, eu batizei, para ser sucinto, de Seleção Natural. ” (Darwin, 1859)

Ambientação Teoria de Computação Evolucionária Modelo Biológico Natureza Modelo Computacional Teoria de Darwin

Ambientação Teoria de Computação Evolucionária Modelo Biológico Natureza Modelo Computacional Teoria de Darwin

Sumário n Computação Evolucionária n n n Programação Genética n n Conceitos básicos Visão

Sumário n Computação Evolucionária n n n Programação Genética n n Conceitos básicos Visão geral baseada em Algoritmos Genéticos Diferenças fundamentais Grupo de Pesquisa em Computação Evolucionária – DInf

Computação Evolucionária n n Área da Inteligência Artificial que engloba um conjunto de métodos

Computação Evolucionária n n Área da Inteligência Artificial que engloba um conjunto de métodos computacionais inspirados na Teoria da Evolução das Espécies. auto-organização e o comportamento adaptativo

Ramos n Estratégias Evolucionárias: n n Programação Evolutiva: n n Previsão do comportamento de

Ramos n Estratégias Evolucionárias: n n Programação Evolutiva: n n Previsão do comportamento de máquinas de estado finitas. Algoritmos Genéticos: n n ênfase na auto-adaptação. O papel da reocmbinação é aceito, mas como operador secundário. Indivíduos contém um genótipo formado por cromossomos Programação Genética n Evolução de programas

Evolução Natural n Embora tenham origens bastante diversas, todas essa abordagens têm em comum

Evolução Natural n Embora tenham origens bastante diversas, todas essa abordagens têm em comum o modelo conceitual inicial

Aplicações n Grande variedade de aplicações n Otimização n n Busca n n Indústria,

Aplicações n Grande variedade de aplicações n Otimização n n Busca n n Indústria, solução de problemas: máquinas x processos, alocação de recursos, rota de veiculos. Mineração de Dados, descoberta de conhecimento em bases de dados, indução de classificadores (caracteristicas x doenças, estrutura de proteinas) Aprendizado e adaptação

Características Comuns n n Usam um processo de evolução baseado em Darwin para resolver

Características Comuns n n Usam um processo de evolução baseado em Darwin para resolver problemas computacionais de IA Inspirados na Teoria da Evolução: os indivíduos mais adaptados sobrevivem

Elementos Chaves de Algoritmos Evolucionarios n n Uma população de individuos A noção de

Elementos Chaves de Algoritmos Evolucionarios n n Uma população de individuos A noção de fitness Um ciclo de nascimento e morte baseados na fitness A noção de herança

Visão Geral do Algoritmo Evolucionário população de pais seleção recombinação população de filhos solução

Visão Geral do Algoritmo Evolucionário população de pais seleção recombinação população de filhos solução

Visão Geral do Algoritmo Evolucionário 1. 2. Gerar uma população inicial aleatoriamente Fazer até

Visão Geral do Algoritmo Evolucionário 1. 2. Gerar uma população inicial aleatoriamente Fazer até um critério de parada: n n n 3. selecionar indivíduos para pais (fitness) produzir filhos selecionar indivíduos para morrer (fitness) Retornar um resultado

início população inicial Algoritmo seleção (fitness) pais selecionados operadores genéticos cruz repr mut filhos

início população inicial Algoritmo seleção (fitness) pais selecionados operadores genéticos cruz repr mut filhos gerados não fim solução sim satisfeito c/ a solução? nova pop completa? sim nova população não

Algorithmos Geneticos n n Holland 1960 São algoritmos de busca Objetivo: robusto, sistema adaptativo

Algorithmos Geneticos n n Holland 1960 São algoritmos de busca Objetivo: robusto, sistema adaptativo Combinam: Sobrevivência do mais ajustado com um estruturado, aleatorio intercâmbio de informações

AG n n Apesar de aleatorios, AG não funcionam unicamente com este conceito. Eles

AG n n Apesar de aleatorios, AG não funcionam unicamente com este conceito. Eles explotam informação historica para experimentar novos pontos de busca.

Terminologia Biologica n n Em AG são utilizados termos biologicos como analogia com a

Terminologia Biologica n n Em AG são utilizados termos biologicos como analogia com a biologia. Cromossoma: codificação de uma possivel solução – individuo Genes: Codifica uma caracteristica particular Genotipo x Fenotipo

Indivíduos n n Material genético Conjunto de atributos da solução Cada atributo uma sequência

Indivíduos n n Material genético Conjunto de atributos da solução Cada atributo uma sequência de bits e o individuo como a concatenação das sequências de bits Codificação binaria, real, códigos

População n Conjunto de individuos que estão sendo cogitados como solução n n Populações

População n Conjunto de individuos que estão sendo cogitados como solução n n Populações pequenas têm grandes chances de perder a diversidade necessária (exploração de todo o espaço de soluções) Populações grandes perderá grande parte de sua eficiência pela demora em avaliar a função de fitness

Reprodução n n Reprodução sexual, genes são intercambiados entre dois pais – crossover Os

Reprodução n n Reprodução sexual, genes são intercambiados entre dois pais – crossover Os filhos são sujeitos a modificações, na qual bits elementares são mudados mutação

Função de fitness n n Mede a adaptação do indivíduo ou quão boa é

Função de fitness n n Mede a adaptação do indivíduo ou quão boa é a solução dada por este indivíduo. Representativa do problema: diferencie uma solução boa de uma má. Heuristica de busca no espaço de estado Cuidados com o custo computacional.

Requisitos para usar AG n n n · Representações das possíveis soluções do problema

Requisitos para usar AG n n n · Representações das possíveis soluções do problema no formato de um código genético; · População inicial que contenha diversidade suficiente para permitir ao algoritmo combinar características e produzir novas soluções; · Existência de um método para medir a qualidade de uma solução potencial; · Um procedimento de combinação de soluções para gerar novos indivíduos na população; · Um critério de escolha das soluções que permanecerão na população ou que serão retirados desta; · Um procedimento para introduzir periodicamente alterações em algumas soluções da população. Desse modo mantém-se a diversidade da população e a possibilidade de se produzir soluções inovadoras para serem avaliadas pelo critério de seleção dos mais aptos.

População Avaliação de Aptidão Seleção Cruzamento Mutação Não Operadores genéticos Critério de Parada ?

População Avaliação de Aptidão Seleção Cruzamento Mutação Não Operadores genéticos Critério de Parada ? Sim Retornar Melhor Indivíduo Figura 1 - Estrutura básica de um Algoritmo Genético

Seleção n O operador escolhe quais indivíduos participarão na criação da próxima geração

Seleção n O operador escolhe quais indivíduos participarão na criação da próxima geração

Exemplo Indivíduos Fitness % Fitness 1010101011 12 1 23, 08 000010010111001 8 0 15,

Exemplo Indivíduos Fitness % Fitness 1010101011 12 1 23, 08 000010010111001 8 0 15, 38 0000110000101101110 9 1 17, 31 0000011001001000001 6 0 11, 54 1110001001111 12 1 23, 08 00010101001000 5 0 9, 62 Total 52 100, 00

Roleta Inicio T = soma dos valores de aptidão de todos os indivíduos da

Roleta Inicio T = soma dos valores de aptidão de todos os indivíduos da população Repita N vezes para selecionar n indivíduos r = valor aleatório entre 0 e T Percorra sequencialmente os indivíduos da população, acumulando em S o valor de aptidão dos indivíduos já percorridos Se S >= r então Selecione o indivíduo corrente Fim se Fim Repita Fim

Torneio Inicio k = 0. 75 Repita N vezes Escolha 2 indivíduos da população

Torneio Inicio k = 0. 75 Repita N vezes Escolha 2 indivíduos da população aleatoriamente r = valor aleatório entre 0 e 1 Se r < k O melhor indivíduo é escolhido Senão O pior indivíduo é escolhido Fim se Fim Repita Fim

Pressão de Seleção K filhos M pais Com sobreposição Sem sobreposição

Pressão de Seleção K filhos M pais Com sobreposição Sem sobreposição

Pressão de Seleção n Generações com sobreposição n n Estrategias de seleção (pressão decrecente)

Pressão de Seleção n Generações com sobreposição n n Estrategias de seleção (pressão decrecente) n n n Mais pressão que sem sobreposição M moderado, K=M, GA tradicionais M grande, K pequeno “steady state” GA Truncação Torneio e ranking Proporcional a fitness Uniforme Estocastica vs deterministica

Problemas da Roleta n n n Tecnicamente resulta numa distribuição proporcional de indivíduos Convergência

Problemas da Roleta n n n Tecnicamente resulta numa distribuição proporcional de indivíduos Convergência muito rápida Variância quase nula

Seleção por Ranking n n n Não parametrica Os indivíduos são ordenados de acordo

Seleção por Ranking n n n Não parametrica Os indivíduos são ordenados de acordo com sua fitness Os offspring são alocados de acordo ao ranking (pode ser linearmente)

Reprodução n n n Preserva caracteristicas uteis Introduz variedade e novedades Estrategias n n

Reprodução n n n Preserva caracteristicas uteis Introduz variedade e novedades Estrategias n n Parentes unicos: clonar + mutuação Parentes multiplos: recombinação + mutuação

Metodos de Recombinação n n n Cruzamento: cria novos indivíduos misturando características de dois

Metodos de Recombinação n n n Cruzamento: cria novos indivíduos misturando características de dois indivíduos pais (crossover) Copia de segmentos entre os pais Crossovers multi-ponto, dois pontos, um ponto, uniforme e inversão

Cruzamento n n n Pai 1: 10101010111 Pai 2: 0000100101110010 Cruzamento em um ponto

Cruzamento n n n Pai 1: 10101010111 Pai 2: 0000100101110010 Cruzamento em um ponto n n 1010110101110010, 00001001010111 Cruzamento uniforme: os filhos são formados a partir dos bits dos pais (sorteado)

Cruzamento em dois pontos

Cruzamento em dois pontos

Mutação n n n Esta operação inverte aleatoriamente alguma característica do indivíduo Cria novas

Mutação n n n Esta operação inverte aleatoriamente alguma característica do indivíduo Cria novas características que não existiam Mantem diversidade na população

Balance Explotação-Exploração n Pressão de seleção: explotação n n Reprodução: exploração n n Reduz

Balance Explotação-Exploração n Pressão de seleção: explotação n n Reprodução: exploração n n Reduz o espaço de busca Expande o espaço de busca Balance n n Seleção forte + taxas de mutução altas Seleçao fraca + taxas de mutução baixas