View
26
Download
0
Category
Preview:
DESCRIPTION
Computação Evolucionária. Aurora Pozo. Motivação. - PowerPoint PPT Presentation
Citation preview
Computação Evolucionária
Aurora Pozo
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
ModeloComputa-
cional
Natureza
ModeloBiológico
Teoria de Darwin
Teoria de Computação Evolucionária
Sumário Computação Evolucionária
Conceitos básicos Visão geral baseada em Algoritmos
Genéticos Programação Genética
Diferenças fundamentais Grupo de Pesquisa em
Computação Evolucionária – DInf
Computação Evolucionária Á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 Estratégias Evolucionárias:
ênfase na auto-adaptação. O papel da reocmbinação é aceito, mas como operador secundário.
Programação Evolutiva: Previsão do comportamento de máquinas de estado
finitas. Algoritmos Genéticos:
Indivíduos contém um genótipo formado por cromossomos
Programação Genética Evolução de programas
Evolução Natural Embora tenham origens bastante
diversas, todas essa abordagens têm em comum o modelo conceitual inicial
Aplicações Grande variedade de aplicações
Otimização Indústria, solução de problemas: máquinas x
processos, alocação de recursos, rota de veiculos.
Busca 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 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 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 doAlgoritmo Evolucionário
população depais
população defilhos
solução
seleção
recombinação
Visão Geral doAlgoritmo Evolucionário
1. Gerar uma população inicial aleatoriamente
2. Fazer até um critério de parada: selecionar indivíduos para pais (fitness) produzir filhos selecionar indivíduos para morrer
(fitness)
3. Retornar um resultado
Algoritmo população inicial
pais selecionados
filhos gerados
nova população
seleção (fitness)
operadoresgenéticos
cruz repr mut
nova popcompleta?
não
sim
satisfeito c/a solução?
não
início
soluçãofim
sim
Algorithmos Geneticos 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 Apesar de aleatorios, AG não
funcionam unicamente com este conceito.
Eles explotam informação historica para experimentar novos pontos de busca.
Terminologia Biologica 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 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 Conjunto de individuos que estão
sendo cogitados como solução 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 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 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 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.
Figura 1 - Estrutura básica de um Algoritmo Genético
População
Avaliação de Aptidão
Seleção
Cruzamento
Mutação
Operadores genéticos
Critério de Parada ?
Retornar Melhor Indivíduo
Não
Sim
Seleção O operador escolhe quais
indivíduos participarão na criação da próxima geração
Exemplo
Indivíduos Fitness % Fitness10101010110101010111
12 23,08
00001001010101110010
8 15,38
00001100001011011101
9 17,31
00000110010010000010
6 11,54
11100011100010011111
12 23,08
00010101001000010000
5 9,62
Total 52 100,00
Roleta
23%
15%
17%12%
23%
10%
Roleta
InicioT = soma dos valores de aptidão de todos os indivíduos da populaçãoRepita N vezes para selecionar n indivíduos
r = valor aleatório entre 0 e TPercorra 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 correnteFim se
Fim RepitaFim
TorneioInicio
k = 0.75Repita N vezes
Escolha 2 indivíduos da população aleatoriamenter = valor aleatório entre 0 e 1Se r < k
O melhor indivíduo é escolhidoSenão
O pior indivíduo é escolhidoFim se
Fim RepitaFim
Pressão de Seleção
M pais Kfilhos
Sem sobreposição
Com sobreposição
Pressão de Seleção Generações com sobreposição
Mais pressão que sem sobreposição M moderado, K=M, GA tradicionais M grande, K pequeno “steady state” GA
Estrategias de seleção (pressão decrecente) Truncação Torneio e ranking Proporcional a fitness Uniforme
Estocastica vs deterministica
Problemas da Roleta Tecnicamente resulta numa
distribuição proporcional de indivíduos
Convergência muito rápida Variância quase nula
Seleção por Ranking 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 Preserva caracteristicas uteis Introduz variedade e novedades Estrategias
Parentes unicos: clonar + mutuação Parentes multiplos: recombinação +
mutuação
Metodos de Recombinação 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 Pai 1: 10101010110101010111 Pai 2: 00001001010101110010 Cruzamento em um ponto
10101010110101110010, 00001001010101010111
Cruzamento uniforme: os filhos são formados a partir dos bits dos pais (sorteado)
Cruzamento em dois pontos
1 1 1 0 0 1 0 1
1 0 0 0 0 0 0 1
1 1 1 0
0 1 0
1
1 0 0 0
0 0 0
1
Individuo 1
Individuo 2
Descendente 1
Descendente 2
Mutação 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 Pressão de seleção: explotação
Reduz o espaço de busca Reprodução: exploração
Expande o espaço de busca Balance
Seleção forte + taxas de mutução altas Seleçao fraca + taxas de mutução
baixas
Recommended