Professional Documents
Culture Documents
Gisele L. Pappa Tcnica mais dissiminada em EA Introduzida por Holland em 1975, e desenvolvida por um de seus estudantes, Goldberg
Algoritmos Genticos
Indivduos so strings binrias Cromossomo (indivduo) tem tamanho fixo
Genes normalmente tem tamanho fixo
78 64 30 21 127
Espao de Solues
Algoritmos Genticos
Operadores so aplicados sobre o gentipo O espao do problema conhecido como espao de busca, e engloba todas as solues possveis para um determinado problema
Algoritmos Genticos
Gera uma populao inicial de N strings, cada string codificando uma soluo Decodifica essas strings em solues e avalia a fitness de cada uma delas Seleciona 2 pais dentre os indivduos da populao Aplica operadores de mutao e cruzamento para criar novos filhos Repita at N filhos serem criados
Repita at condio de parada satisfeita Substitui os indivduos da populao atual por seus filhos
Exemplo
OneMax
Maximizar o nmero de 1s em um string de bits de tamanho n Definio de parmetros
N = 8 e tamanho da populao = 4
Algoritmos Genticos
Gera uma populao inicial de N strings, cada string codificando uma soluo Decodifica essas strings em solues e avalia a fitness de cada uma delas Seleciona 2 pais dentre os indivduos da populao Aplica operadores de mutao e cruzamento para criar novos filhos Repita at N filhos serem criados
Repita at condio de parada satisfeita Substitui os indivduos da populao atual por seus filhos
12
Algoritmos Genticos
Gera uma populao inicial de N strings, cada string codificando uma soluo Decodifica essas strings em solues e avalia a fitness de cada uma delas Seleciona 2 pais dentre os indivduos da populao Aplica operadores de mutao e cruzamento para criar novos filhos Repita at N filhos serem criados
11 0 9
Repita at condio de parada satisfeita Substitui os indivduos da populao atual por seus filhos
Operadores Genticos
Cruzamento de um ponto (de acordo com probabilidade definidas pelo usurio)
Padro para GAs Probabilidades altas (70-99%) Ponto de cruzamento escolhido aleatoriamente
Operadores Genticos
Outro tipo de crossover: Crossover Uniforme
Cada gene trocado de acordo com uma probabilidade pc
Pais X1 X2 X3 X4 X5 X6 Y1 Y2 Y3 Y4 Y5 Y6
No exite bias posicional
Filhos X1 Y2 X3 Y4 Y5 X6 Y1 X2 Y3 X4 X5 Y6
Em crossover de um ponto a probabilidade de genes vizinhos serem trocados ao mesmo tempo muito maior do que a de genes distantes serem trocados ao mesmo tempo
Operadores Genticos
Mutao uniforme
Baixa probabilidade em sistemas naturais os efeitos da mutao podem ser destruidores Calcula a probabilidade de trocar cada um dos genes (bits) do cromossomo
Algoritmos Genticos
Gera uma populao inicial de N strings, cada string codificando uma soluo Decodifica essas strings em solues e avalia a fitness de cada uma delas Seleciona 2 pais dentre os indivduos da populao Aplica operadores de mutao e cruzamento para criar novos filhos Repita at N filhos serem criados
Repita at condio de parada satisfeita Substitui os indivduos da populao atual por seus filhos
Crossover
Muda o contexto de informao til j disponvel
Mutao
Nova populao Introduz inovao
Resolve a maioria dos problemas da seleo da roleta, mas ainda depende de estatsticas globais
Avaliando a Performance de um GA
Nunca tire concluses a partir de uma execuo
Rode o GA vrias vezes
Para problemas simples idealmente pelo menos 30
Utilize medidas estatstica (mdias, medianas, devio padro, etc) Salve o maior nmero de informaes possveis sobre sua populao
Mdia, Melhor e Pior fitness a cada gerao Diversidade, etc
Sem elitismo
Com elitismo
Desenhe grficos para acompanahar o progresso dessas variveis Compare com um algoritmo de busca aleatria
Gerao
Gerao
Agradecimentos
Alguns desses slides foram retirados das notas de aula de Alex A. Freitas e Michael ONeil
Tpicos avanados
Leitura Recomendada