Download - Algoritmos Genéticos
![Page 1: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/1.jpg)
Algoritmos Genéticos
Jorge H. C. Fernandes
Setembro de 1998
![Page 2: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/2.jpg)
Algoritmos Genéticos
• Modelo computacional de evolução biológica
• Abstrair o processo adaptativo de sistemas naturais
• Utilizações– métodos de busca– modelagem de sistemas evolucionários
• Baseado em genética de populações
![Page 3: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/3.jpg)
Algoritmos Genéticos
• Strings binárias são armazenadas na memória de um computador e modificadas durante um tempo de um modo análogo a populações de indivíduos que evoluem sujeitas à seleção natural
• Embora simples podem ser capazes de evoluir estruturas (indivíduos) altamente complexas e interessantes
![Page 4: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/4.jpg)
Indivíduos em um Algoritmo Genético
• soluções para problemas
• estratégias de jogos
• imagens visuais
• programas de computador
![Page 5: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/5.jpg)
Robustez de Algoritmos Genéticos
• Robustez de sistemas naturais versus sistemas artificiais
• Métodos de Busca Tradicionais versus GAS• Calculus based
– continuidade de valores– existência de derivadas– não modalidades
• Enumerativos e Aleatórios– Pouca eficiência
• Algoritmos Genéticos– Pouco conhecimento analítico da solução (complexo, ruidoso, dinâmico)– Exploração paralela do espaço de soluções– Soluções próximas ao ótimo
![Page 6: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/6.jpg)
Elementos de Algoritmos Genéticos
• Operadores Genéticos– Reprodução (based on fitness evaluation - diferencial)
– Crossover (combina blocos construtures - esquemas)
– Mutation (point, duplication, etc) - perturbação no ambiente para evitar mínimos locais
• População de indivíduos inicialmente aleatória• Paralelismo implícito através dos esquemas
![Page 7: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/7.jpg)
Aplicações
• Robótica– Com Redes Neurais
• Evolução– Estratégias de jogos– Ecossistemas– Sistemas sociais e políticos
• Otimização numérica e combinatória• Projeto de Circuitos• Escalonamento de tarefas
![Page 8: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/8.jpg)
Co-Evolução de Estratégias de Cooperação
00 = Sempre Denuncia (AllD)11 = Sempre Coopera (AllC)
01 = Dente por Dente (TfT)10 = Anti-Dente por Dente (ATfT)
![Page 9: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/9.jpg)
Terminologia
• String = cromossomo• Característica = gene• Valor da característica = alelo• Posição da String = locus• Estrutura = genótipo• Estrutura decodificada, conjunto de parâmetros,
alternativa de solução = fenótipo• Não linearidade = epistasia
![Page 10: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/10.jpg)
Algorithm GA is // start with an initial time t := 0; // initialize a usually random population of individuals initpopulation P (t); // evaluate fitness of all initial individuals of population evaluate P (t); // test for termination criterion (time, fitness, etc.) while not done do // increase the time counter t := t + 1; // select a sub-population for offspring production P' := selectparents P (t); // recombine the "genes" of selected parents recombine P' (t); // perturb the mated population stochastically mutate P' (t); // evaluate it's new fitness evaluate P' (t); // select the survivors from actual fitness P := survive P,P' (t); od end GA.
![Page 11: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/11.jpg)
Exemplo Maximizar função f(x) = x**2
• Intervalo de 0 a 31
• Genoma de 5 bits
• População com quatro indivíduos
![Page 12: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/12.jpg)
Strings e Valores de Fitness
Número
1234
01101110000100010011
String Fitness
16957664
361
% do Total
14.449.5
5.530.9
Total 1170 100.0
![Page 13: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/13.jpg)
Seleção dos SobreviventesPopulação de Casais
![Page 14: Algoritmos Genéticos](https://reader036.vdocuments.com.br/reader036/viewer/2022083010/56814fd1550346895dbd926e/html5/thumbnails/14.jpg)
Crossover
0 1 1 0 | 1
1 1 0 0 | 0
0 1 1 0 0
1 1 0 0 1