Pontifcia Universidade Catlica do Paran PUCPR Programa de

  • Slides: 15
Download presentation
Pontifícia Universidade Católica do Paraná (PUCPR) Programa de Pós-Graduação em Informática (PPGIA) Reconhecimento de

Pontifícia Universidade Católica do Paraná (PUCPR) Programa de Pós-Graduação em Informática (PPGIA) Reconhecimento de Padrões Computação Evolutiva Luiz Eduardo S. Oliveira, Ph. D. www. lesoliveira. net Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira

Princípios da CE • Algoritmos baseados em populações, as quais são reproduzidas a cada

Princípios da CE • Algoritmos baseados em populações, as quais são reproduzidas a cada geração do algoritmo. – Várias regiões de buscas podem ser exploradas simultaneamente, ao contrário de algoritmos determinísticos. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 2

O que é Evolução? • O termo evolução têm sido bastante utilizados em propagandas

O que é Evolução? • O termo evolução têm sido bastante utilizados em propagandas – Ex: Carros, políticas, teorias evolucionárias ou evolutivas. • A palavra evolução NÃO significa melhor, melhoria, adaptação, manipulação de genes. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 3

O que é Evolução • Porém, evolução normalmente produz melhorias significativas, faz com que

O que é Evolução • Porém, evolução normalmente produz melhorias significativas, faz com que indivíduos se adaptem a certo nichos. • Evolução: – Processo gradual de mudanças. – Três papeis devem estar presentes: • O Bom, O Mau e o Estranho Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 4

O Bom • A parte boa do processo de evolução é a reprodução. •

O Bom • A parte boa do processo de evolução é a reprodução. • Uma “coisa” pode ser resultante de um processo de evolução se e somente ela é capaz de se reproduzir. • Por exemplo, pedras não são resultados de evolução. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 5

O Mau • A parte má do processo de evolução é a seleção •

O Mau • A parte má do processo de evolução é a seleção • A seleção determina vencedores e perdedores. • Os melhores tem mais chances de reproduzir, enquanto os piores morrem antes – Lei da selva! • Sem seleção as coisas se reproduziriam e morreriam aleatoriamente. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 6

O Estranho • Mutações podem ser consideradas como uma coisa estranha. • Entretanto, a

O Estranho • Mutações podem ser consideradas como uma coisa estranha. • Entretanto, a mutação é o terceiro componente vital do processo evolutivo, pois insere diversidade. • Geralmente causam pequenas mudanças – Ex: Um dente a mais na arcada dentária. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 7

Evolução • Em resumo, o processo evolutivo deve contar com – Reprodução – Seleção

Evolução • Em resumo, o processo evolutivo deve contar com – Reprodução – Seleção – Mutação (Diversidade, Variedade) Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 8

Procedimento Básico 1. 2. 3. 4. Inicializar a população. Calcular a fitness de cada

Procedimento Básico 1. 2. 3. 4. Inicializar a população. Calcular a fitness de cada indivíduo. Reproduzir os indivíduos selecionados. Submeter a população a operações genéticas (ex cruzamento, mutação). 5. Voltar ao item 2 até que alguma condição seja satisfeita. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 9

Solução Ótima • Geralmente existe um ótimo global. • O ponto ótimo de um

Solução Ótima • Geralmente existe um ótimo global. • O ponto ótimo de um problema pode mudar dinamicamente. • Vários pontos quase-ótimos podem existir. • Não é sensato esperar que um algoritmo de otimização encontre o ponto ótimo em um tempo finito. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 10

Terminologia Valor do ótimo global f(X) Vizinhança do solução ( ) Y Ótimo local

Terminologia Valor do ótimo global f(X) Vizinhança do solução ( ) Y Ótimo local X Ótimo Global Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 11

Lei da Suficiência • O melhor que pode-se esperar é que o algoritmo encontre

Lei da Suficiência • O melhor que pode-se esperar é que o algoritmo encontre uma solução próxima a ótima. • Lei da SUFICIÊNCIA – Se uma solução é suficientemente boa e rápida, então ela é suficiente. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 12

O Melhor Algoritmo • Não existe o melhor algoritmo, e sim o algoritmo que

O Melhor Algoritmo • Não existe o melhor algoritmo, e sim o algoritmo que é mais eficiente para um determinado tipo de problema. – No free lunch theorem. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 13

Como Isso Funciona nos Computadores? • Universos digitais – Definir leis que governem nossos

Como Isso Funciona nos Computadores? • Universos digitais – Definir leis que governem nossos universos digitais (reprodução, seleção e mutação). • Não podemos provar que a evolução produz bons resultados – Mas invariavelmente produz. – Não existem provas matemáticas. Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 14

Referências • P. J. Bentley. Digital Biology, 2001 • D. Goldberg. Genetic Algorithms in

Referências • P. J. Bentley. Digital Biology, 2001 • D. Goldberg. Genetic Algorithms in Search, Optimization and Machine Learning, 1989. • K. Deb. Multi-objective Optimization using Evolutionary Algoritms, 2001 • J. R. Koza. Genetic Programming of Computers by Means of Natural Selection, 1994 • D. B. Fogel. Evolutionary Computation, 2002. • J. Kennedy and R. Eberhart. Swarm Intelligence, 2001 Reconhecimento de Padrões - Computação Evolutiva PUCPR-PPGIa - Prof. Luiz Eduardo S. Oliveira 15