Computação Evolucionária

Slides:



Advertisements
Apresentações semelhantes
Computação Evolutiva Oderson Dias de Mello
Advertisements

Unidade VII Algoritmos Genéticos
Algoritmos Genéticos Teresa B. Ludermir.
Busca Informada Parte 3 – Algoritmos Genéticos
Algoritmos Genéticos Adriano Joaquim de O Cruz ©2003 NCE/UFRJ
Algoritmos Genéticos Alex F. V. Machado. Algoritmos Genéticos Quanto melhor um indivíduo se adaptar ao seu meio ambiente, maior será sua chance de sobreviver.
Algoritmos Genéticos Problema das 8 Rainhas Algoritmo Genético
Optimization and Decision Support Techniques FUNDAMENTOS DE ALGORITMOS GENÉTICOS Pedro Miguel A. S. Melo FEUP – Fevereiro de 2008.
Fundamentos dos Algoritmos Genéticos Alex F. V. Machado.
Algoritmos Genéticos Alex F. V. Machado. Algoritmos Genéticos Quanto melhor um indivíduo se adaptar ao seu meio ambiente, maior será sua chance de sobreviver.
I Iterated Local Search Helena R. Lorenço, Olivier Martinz
Adriano Joaquim de O Cruz
ÉLDMAN DE OLIVEIRA NUNES E AURA CONCI INSTITUTO DE COMPUTAÇÃO UFF
Implementação de AG no Balanceamento Interativo de Linhas de Montagem
Reconhecimento de Padrões Computação Evolutiva
Algoritmos Genéticos Marcone Jamilson Freitas Souza
Computação Evolutiva: Programação Genética
Computação Evolutiva: Estratégias Evolutivas
Otimização de Funções Contínuas via Algoritmos Genéticos Adaptado do trabalho realizado por: Frederico Heitor Mônica do Amaral.
Reconhecimento de Padrões Computação Evolutiva
Seleção Natural Evolução.
Algoritmos Genéticos Jorge H. C. Fernandes Setembro de 1998.
Inteligência Artificial
Algoritmo Genético.
Algoritmos Genéticos Prof. Luis Otavio Alvares II/UFRGS
Inteligência Artificial Câmpus de Uruguaiana - PUCRS
Algoritmos Genéticos Rômulo Ferreira Douro.
Apresentação Introdução à Programação Genética Título :
Algoritmos Genéticos – Capítulo 11
Algoritmos Genéticos - Capítulo 10 Representação Numérica
Eduardo do Valle Simões Renato Tinós ICMC - USP
INF 1771 – Inteligência Artificial
Métodos Populacionais
Controle de parâmetros em algoritmos evolucionários
Otimização Prof. Benedito C. Silva IRN UNIFEI
Otimização por Colônia de Formigas (ACO)
I Iterated Local Search Helena R. Lorenço, Olivier Martinz
Inteligência Artificial I
Algoritmos Culturais.
Conceitos Dr Anderson Dias Cezar
Métodos Populacionais
Sistemas Inteligentes
O PROBLEMA DE SCHEDULING EM JOB-SHOP
Evolução Profa. Daniela.
Anne Magály de PaulaCanuto DIMAp/UFRN
Algoritmos de Busca Local
Algoritmos Evolutivos Algoritmos Genéticos Introdução
Algoritmos Genéticos Ricardo Prudêncio.
INF 1771 – Inteligência Artificial
EVOLUÇÃO DOS SERES VIVOS
O PROBLEMA DE SCHEDULING EM JOB-SHOP
Inteligência Artificial
Algoritmos Genéticos Fernando Lobo
Artigo: Berth allocation planning in the public berth system by genetic algorithms Akio Imai, Etsuko Nishimura, Stratos Papadimitriou, Heurística.
Resolução de problemas por meio de busca
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.
Inteligência Artificial I
Optimização Os problemas de optimização têm como objetivo maximizar ou minimizar uma função definida sobre um certo domínio Optimizar (max ou min)
Projeto de um Algoritmo Genético Híbrido para Planejamento Operacional de Curto Prazo de Minerações a Céu Aberto Robert Fabricio Subtil.
Algoritmos Genéticos Ricardo Prudêncio.
Inteligência Artificial
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.
Computação Evolutiva Nome dado ao estudo de algoritmos cuja inspiração é o processo de evolução natural das espécies. Origem: trabalho de um pesquisador.
Algoritmos Genéticos ÝIntrodução ÝHistórico ÝAlgoritmo Genético Básico: 3Representação de um indivíduo 3Função de aptidão 3Operadores genéticos 3Critério.
Algoritmos Genéticos Uma visão geral do método Cláudio M. N. A. Pereira.
Taís Sineiro Herig Laboratório de Genômica e Expressão / UNICAMP
1 Algoritmos Genéticos em Otimização de Planejamento l Planejamento ocorre em todas as atividades e envolve: PLANEJAMENTO Recursos Tarefas Tempo Objetivos.
Métodos Populacionais. Mantém um conjunto de soluções candidatas e não só uma solução Cada solução será modificada e avaliada Hill-Climbing paralelos.
1 Problemas Numéricos com Representação por Números Reais Prof. Marco Aurélio C. Pacheco.
Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 10 Algoritmos Genéticos Max Pereira.
Transcrição da apresentação:

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 Modelo Biológico Natureza Modelo Computa- cional Teoria de Computação Evolucionária Modelo Biológico Natureza Modelo Computa- cional Teoria de Darwin

Sumário Computação Evolucionária Algoritmos Genéticos Conceitos básicos Algoritmos Genéticos Programação Genética Diferenças fundamentais

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: Programação Evolutiva: ê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

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 Busca 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 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 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

Algoritmo início 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

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.

Retornar Melhor Indivíduo 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 % Fitness 12 23,08 8 15,38 9 17,31 6 11,54 10101010110101010111 12 23,08 00001001010101110010 8 15,38 00001100001011011101 9 17,31 00000110010010000010 6 11,54 11100011100010011111 00010101001000010000 5 9,62 Total 52 100,00

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 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 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 + mutaçã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   Cruzamento em dois pontos  

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