algoritmos gen©ticos teresa b. ludermir. algoritmos gen©ticos contedo...

Download Algoritmos Gen©ticos Teresa B. Ludermir. Algoritmos Gen©ticos Contedo Introdu§£o O Algoritmo Gen©tico Binrio No§µes de Otimiza§£o O Algoritmo Gen©tico

Post on 16-Apr-2015

111 views

Category:

Documents

5 download

Embed Size (px)

TRANSCRIPT

  • Slide 1
  • Algoritmos Genticos Teresa B. Ludermir
  • Slide 2
  • Algoritmos Genticos Contedo Introduo O Algoritmo Gentico Binrio Noes de Otimizao O Algoritmo Gentico com Parmetros Contnuos Aspectos Prticos e Avanados Aplicaes
  • Slide 3
  • Algoritmos Genticos Introduo
  • Slide 4
  • Algoritmos Genticos So tcnicas de busca e otimizao. a metfora da teoria da evoluo das espcies iniciada pelo Fisiologista e Naturalista ingls Charles Darwin. Desenvolvido por John Holland (1975) e seus alunos. Popularizado por David Goldberg (1989).
  • Slide 5
  • Algoritmos Genticos Teoria da Evoluo 1859 - Charles Darwin publica o livro A Origem das Espcies:. Charles Darwin As espcies evoluem pelo principio da seleo natural e sobrevivncia do mais apto.
  • Slide 6
  • Algoritmos Genticos Otimizao a busca da melhor soluo para um dado problema. Consiste em tentar vrios solues e usar a informao obtida para conseguir solues cada vez melhores. Exemplo de otimizao: Telespectador atravs de ajuste na antena da televiso otimiza a imagem buscando vrias solues at alcanar uma boa imagem.
  • Slide 7
  • Algoritmos Genticos Otimizao As tcnicas de otimizao, geralmente, apresentam: Espao de busca: onde esto todas as possveis solues do problema; Funo objetivo: utilizada para avaliar as solues produzidas, associando a cada uma delas uma nota.
  • Slide 8
  • Algoritmos Genticos Caractersticas dos Algoritmos Genticos um algoritmo estocstico (no determinstico). Trabalha com uma populao de solues simultaneamente. Utiliza apenas informaes de custo e recompensa. No requer nenhuma outra informao auxiliar (como por exemplo o gradiente).
  • Slide 9
  • Algoritmos Genticos Caractersticas dos Algoritmos Genticos (II) So fceis de serem implementados em computadores. Adaptam-se bem a computadores paralelos. So facilmente hibridizados com outras tcnicas. Funcionam com parmetros contnuos ou discretos.
  • Slide 10
  • Algoritmos Genticos Algoritmos Genticos (Conceitos Bsicos) AG manipula uma populao de indivduos. Individuos so possveis solues do problema. Os indivduos so combinados (crossover) uns com os outros, produzindo filhos que podem sofrer ou no mutao. As populaes evoluem atravs de sucessivas geraes at encontrar a soluo tima.
  • Slide 11
  • Algoritmos Genticos Aplicaes Em problemas dficeis de otimizao, quando no existe nenhuma outra tcnica especifica para resolver o problema. Otimizao de funes numricas em geral Otimizao combinatria Problema do caixeiro viajante Alocao de recursos Aprendizado de Mquina
  • Slide 12
  • Algoritmos Genticos O Algoritmo Gentico Binrio
  • Slide 13
  • Algoritmos Genticos Algoritmo Gentico Tradicional 1. Gerar a populao inicial. 2. Avaliar cada indivduo da populao. 3. Enquanto critrio de parada no for satisfeito faa 3.1 Selecionar os indivduos mais aptos. 3.2 Criar novos indivduos aplicando os operadores crossover e mutao. 3.3 Armazenar os novos indivduos em uma nova populao. 3.4 Avaliar cada cromossomo da nova populao.
  • Slide 14
  • Algoritmos Genticos Problema 1 0 200 400 600 800 1000 051015202530 Problema: Use um AG para encontrar o ponto mximo da funo: x inteiro com x sujeito as seguintes restries:
  • Slide 15
  • Algoritmos Genticos Indivduo Cromossomo Estrutura de dados que representa uma possvel soluo para o problema. Os parmetros do problema de otimizao so representados por cadeias de valores. Exemplos: Vetores de reais, (2.345, 4.3454, 5.1, 3.4) Cadeias de bits, (111011011) Vetores de inteiros, (1,4,2,5,2,8) ou outra estrutura de dados.
  • Slide 16
  • Algoritmos Genticos Individuo (II) Aptido Nota associada ao indviduo que avalia quo boa a soluo por ele representada. Aptido pode ser: Igual a funo objetivo (raramente usado na prtica). Resultado do escalonamento da funo objetivo. Baseado no ranking do indviduo da populao.
  • Slide 17
  • Algoritmos Genticos Cromossomo do Problema 1 Cromossomos binrios com 5 bits: 0 = 00000 31 = 11111 Aptido Neste problema, a aptido pode ser a prpria funo objetivo. Exemplo: aptido(00011) = f(3) = 9
  • Slide 18
  • Algoritmos Genticos Seleo Imitao da seleo natural. Os melhores indivduos (maior aptido) so selecionados para gerar filhos atravs de crossover e mutao. Dirige o AG para as melhores regies do espao de busca. Tipos mais comuns de seleo Proporcional a aptido. Torneio.
  • Slide 19
  • Algoritmos Genticos Populao Inicial do Problema 1 Probabilidade de seleo proporcional a aptido Prob. de seleo x f(x) A 1 =1 1 0 0 12562554,5% A 2 =0 1 1 1 11522519,6% A 3 =0 1 1 1 01419617,1% A 4 =0 1 0 1 0101008,7% cromossomos aleatria (mas quando possvel, o conhecimento da aplicao pode ser utilizado para definir a populao inicial) Pop. inicial
  • Slide 20
  • Algoritmos Genticos Seleo proporcional a aptido (Roleta) A1 = 1 1 0 0 1 A2 = 0 1 1 1 1 A1 = 1 1 0 0 1 Pais selecionados
  • Slide 21
  • Algoritmos Genticos Seleo por Torneio Escolhe-se n (tipicamente 2) indivduos aleatoriamente da populao e o melhor selecionado.
  • Slide 22
  • Algoritmos Genticos Crossover e Mutao Combinam pais selecionados para produo de filhos. Principais mecanismos de busca do AG. Permite explorar reas desconhecidas do espao de busca.
  • Slide 23
  • Algoritmos Genticos Crossover de 1 ponto 1 1 0 0 1 0 1 1 1 1 1 1 0 1 1 0 1 1 0 1 Pais Filhos O Ponto de corte escolhido aleatriamente O crossover aplicado com uma dada probabilidade denominada taxa de crossover (60% a 90%) Se o crossover aplicado os pais trocam suas caldas gerando dois filhos, caso contrrio os dois filhos sero cpias exatas dos pais.
  • Slide 24
  • Algoritmos Genticos Mutao A mutao aplicada com dada probabilidade, denominada taxa de mutao (~1%), em cada um dos bits do cromossomo. Mutao inverte os valores dos bits. A taxa de mutao no deve ser nem alta nem baixa, mas o suficiente para assegurar a diversidade de cromossomos na populao. 0 1 1 0 1 0 0 1 0 1 Antes da mutao Depois Aqui, apenas o 2o.bit passou no teste de probabilidade
  • Slide 25
  • Algoritmos Genticos A primeira gerao do Problema 1 A1 = 1 1 0 0 1 A2 = 0 1 1 1 1 1 1 0 1 1 0 1 1 0 1 Pais crossover mutao 1 1 0 1 1 0 0 1 0 1 Filhos A2 = 0 1 1 1 1 A1 = 1 1 0 0 1 0 1 1 1 1 1 1 0 0 1 crossover mutao 1 0 1 1 1 1 1 0 0 1 Nova pop.
  • Slide 26
  • Algoritmos Genticos A primeira gerao do Problema 1 (II) cromossomos
  • Slide 27
  • Algoritmos Genticos As demais geraes do Problema 1 Segunda Gerao Terceira Gerao
  • Slide 28
  • Algoritmos Genticos As demais geraes do Problema 1 (II) Quarta Gerao Quinta Gerao
  • Slide 29
  • Algoritmos Genticos Outros Crossovers Crossover de 2-pontos Considerado melhor que o crossover de 1 ponto.
  • Slide 30
  • Algoritmos Genticos Crossover de n-Pontos Crossover de 4-pontos
  • Slide 31
  • Algoritmos Genticos Crossover Uniforme O filho1 tem 50% de chance de levar um bit do pai1 e 50% de chance de levar um bit de pai2 1 1 0 1 0 1 1 0 1 0 1 1 1 0 1 1 0 1 1 0 1 1 1 0 0 1 0 1 1 0 0 1 1 0 0 0 1 1 0 0 pai 1 2 filho 1 Mscara de bits aleatria O filho2 leva o que sobra de pai1 e pai2
  • Slide 32
  • Algoritmos Genticos Problema 2 Achar o mximo da funo utilizando Algoritmos Genticos, Restrita ao intervalo:
  • Slide 33
  • Algoritmos Genticos Problema 2 (II) Mximo global: x = 1,85055 f(x) = 2,85027
  • Slide 34
  • Algoritmos Genticos Problema 2 (III) Funo multimodal com vrios pontos de mximo. um problema de otimizao global (encontrar o mximo global) No pode ser resolvido pela grande maioria dos mtodos de otimizao convencional. H muitos mtodos de otimizao local, mas para otimizao global so poucos.
  • Slide 35
  • Algoritmos Genticos O Cromossomo Problema 2 Representar o nico parmetro deste problema (a varivel x) na forma de um cromossomo: Quantos bits dever ter o cromossomo? Quanto Mais bits melhor preciso nmerica. Longos cromossomos so difceis de manipular. Para cada decimal necessrio 3,3 bits Cromossomo com 22 bits 1000101110110101000111
  • Slide 36
  • Algoritmos Genticos O Cromossomo Problema 2 (II) Decodificao cromossomo = 1000101110110101000111 b 10 = (1000101110110101000111) 2 = 2288967 Valor de x precisa estar no intervalo [-1,0; 2,0]
  • Slide 37
  • Algoritmos Genticos As Geraes do Problema 2 Populao gerada aleatriamente
  • Slide 38
  • Algoritmos Genticos As Geraes do Problema 2 (II) Pouca melhoria
  • Slide 39
  • Algoritmos Genticos As Geraes do Problema 2 (III) x f ( x ) = x sen(10 x ) + 1.0 -1,0 -0,5 0,0 0,5 1,0 1,5 2,0 2,5 3,0 -1,0-0,50,00,51,01,52,0 Gerao 25 A maioria dos indivduos encontraram o mximo global
  • Slide 40
  • Algoritmos Genticos As Geraes do Problema 2 (IV) Na gerao 15 o AG j encontrou o ponto mximo
  • Slide 41
  • Algoritmos Genticos Elitismo O crossover ou mutao podem destruir a melhor indivduo. Por que perder a melhor soluo encontrada? Elitismo transfere a cpia do melhor indviduo para a gerao seguinte.
  • Slide 42
  • Algoritmos Genticos Elitismo no Problema 2 AG com elitismo melhor ?

Recommended

View more >