1 / 38

Computação Evolutiva : Um Novo Paradigma Para a Resolução de Problemas Complexos

Computação Evolutiva : Um Novo Paradigma Para a Resolução de Problemas Complexos. Aurora Pozo Pós-graduação em Informática, Pós-graduação em Métodos Numéricos para Engenharia . Grupo EsCeL, www.inf.ufpr.br/escel. Motivação.

hina
Download Presentation

Computação Evolutiva : Um Novo Paradigma Para a Resolução de Problemas Complexos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computação Evolutiva : Um Novo Paradigma Para a Resolução de Problemas Complexos Aurora Pozo Pós-graduação em Informática, Pós-graduação em Métodos Numéricos para Engenharia. Grupo EsCeL, www.inf.ufpr.br/escel

  2. Motivação Algoritmos Genéticos e Evolutivos são eficientes métodos de otimização e planejamento inspirados na natureza baseados nos princípios da evolução natural e genética. Devido a sua eficiência e simples princípios, estes métodos são usados em uma variedade de problemas de otimização e aprendizado de maquina.

  3. Ambientação Teoria de Computação Evolucionária Modelo Biológico Natureza Modelo Computa- cional Teoria de Darwin

  4. Projeto de Antenas Projeto de Drogas Classificação Química Circuitos Elétricos Escalonamento de Fabricas (Volvo, Deere, outras) Projeto de Turbina Projeto de Carros “Crashworthy” Projeto de Redes Projeto de Sistemas de Controle Parâmetros de Produção Projeto de Satélite Stock/commodity/ analises/ tendências Ajuste de Celulares Data Mining Exemplos de Aplicações Reais

  5. Sumário • Computação Evolutiva • Conceitos básicos • Algoritmos Genéticos • Projetos

  6. 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

  7. Ramos • Estratégias Evolucionárias: • ênfase na auto-adaptação. O papel da recombinaçã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 • Estimativa de Distribuição • AG competentes

  8. Historia • Estratégias Evolutivas: • Desenvolvida por Rechenberg, Schwefel, etc. em 1960. • Foco: Otimização de parâmetros de valores reais • Individuo: vetor de parâmetros de valores reais • Reprodução: Mutação Gaussiana dos parâmetros • M pais, K>>M filhos

  9. Historia • Programação Evolutiva: • Desenvolvida por Fogel in 1960 • Objetivo: evoluir comportamento inteligente • Indivíduos: Maquina de estado finita • Filhos via mutação das MEF • M pais, M filhos

  10. Historia • Algoritmos Genéticos: • Desenvolvidos por Holland em 1960s • Objetivo: robustos, sistemas adaptativos • Utiliza uma codificação “genética” de pontos • Reprodução via mutação e recombinação do código genético. • M pais, M filhos

  11. Historia • Programação Genética • Desenvolvidos por Koza em 1990s • Objetivo: Evolução de programas • Reprodução via recombinação do código genético. • M pais, M filhos

  12. Historia • Alg. de Estimativa de Distribuição • Inicia com os trabalhos de Baluja 1994 • AG competentes ??? • Modelam os relacionamentos entre as variáveis do indivíduos. • Evoluem o modelo • Alguns utilizam redes bayesianas para isto

  13. Estado Atual • Grande variedade de Algoritmos Evolutivos • Grande variedade de aplicações • Otimização, busca, aprendizado, adaptação • Analise • teórico • experimental

  14. Características Comuns • Uso de um processo de evolução pseudo-Darwinian para solucionar problemas difíceis. • Computação Evolutiva

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

  16. 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

  17. Elementos Chaves de Algoritmos Evolucionários • Uma população de indivíduos • A noção de fitness • Um ciclo de nascimento e morte baseados na fitness • A noção de herança

  18. Visão Geral doAlgoritmo Evolucionário população de pais seleção recombinação população de filhos solução

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

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

  21. AG • Apesar de aleatórios, AG não funcionam unicamente com este conceito. • Eles exploram informação histórica para experimentar novos pontos de busca.

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

  23. Terminologia Biológica • Em AG são utilizados termos biológicos como analogia com a biologia. • Cromossomo: codificação de uma possível solução – individuo • Genes: Codifica uma característica particular • Genótipo x Fenótipo

  24. Indivíduos • Material genético • Conjunto de atributos da solução • Cada atributo uma seqüência de bits e o individuo como a concatenação das seqüências de bits • Codificação binária, códigos

  25. População • Conjunto de indivíduos que estão sendo cogitados como solução • Relacionado a dimensão do espaço de busca. • 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

  26. Reprodução • Reprodução sexual, genes são trocados entre dois pais – crossover • Os filhos são sujeitos a modificações, na qual bits elementares são mudados - mutação

  27. 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á. • Heurística de busca no espaço de estado • Cuidados com o custo computacional.

  28. 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.

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

  30. Exemplo

  31. Reprodução • Preserva características úteis • Introduz variedade e novidades • Estratégias • Parentes únicos: clonar + mutação • Parentes múltiplos: recombinação + mutação

  32. Métodos 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

  33. 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)

  34. Mutação • Esta operação inverte aleatoriamente alguma característica do indivíduo • Cria novas características que não existiam • Mantém diversidade na população

  35. 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 mutação altas • Seleção fraca + taxas de mutação baixas

  36. Quando AG é bom ? • Funções multímodas • Funções discretas ou continuas • Funções altamente dimensionais, incluindo combinatórias • Dependência não linear dos parâmetros • Usada freqüentemente para obter solução a problemas NP completos • Não usar quando outro método como hill-climbing, etc., funciona bem

  37. Técnicas Avançadas em AGs • AGs são apropriados para problemas complexos, mas algumas melhorias devem ser feitas

More Related