programação evolutiva e lógica fuzzy cmp 135 arquiteturas especiais de computadores fauzi...

21
Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Upload: internet

Post on 22-Apr-2015

107 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Programação Evolutiva e Lógica Fuzzy

CMP 135

Arquiteturas Especiais de Computadores

Fauzi Shubeita - UFRGS 2003

Page 2: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

“Nenhum computador tem consciência do que faz, mas, na

maior parte do tempo, nós também não." (Marvín Minsky)

Page 3: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Tópicos Computação Evolutiva Taxonomia da Computação Evolutiva Definição Algoritmos Genéticos Programação Evolutiva Estratégias de Evolução Sistemas Classificadores Programação Genética Lógica Fuzzy Definição Aplicações da Lógica Fuzzy

Page 4: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Taxonomia da Computação Evolutiva

ComputaçãoEvolutiva

ComputaçãoNatural

Fuzzy Systems

Vida Artificial

Estratégias deEvolução

Redes Neurais

Geometria Fractal Teoria do CaosInteligênciaComputacional

SistemasComplexos

ProgramaçãoEvolutiva

AlgoritmosGenéticos

Sistemas deClassificação

ProgramaçãoGenética

Page 5: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Computação Evolutiva - Conceito

Computação Evolutiva consiste numa máquina “aprendente”

otimizada, baseada nos moldes dos mecanismos de evolução biológica e seleção natural.

Page 6: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Algoritmos Genéticos (J. H. Holland 1975) Programação Evolutiva (L. J. Fogel 1960) Estratégias de Evolução (I. Rechemberg 1973) Sistemas Classificadores (Post 1943) Programação Genética (J. R. Koza 1992)

Computação Evolutiva - Áreas

Page 7: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Algoritmos Genéticos Deriva do processo evolutivo natural É uma simulação do processo genético

natural. Indivíduos representados por Cromossomos,

um conjunto de strings de caracteres análogos a timina, guanina, adenosina e citosina derivados do DNA.

Usa processo estocásticos mas os resultados são não aleatórios.

Page 8: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Algoritmos Genéticos

Cruzamento (adequação proporcional) Competição entre indivíduos de

subgrupos (seleção por torneio) Mutação

Page 9: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Algoritmos Genéticos

Cria-se uma população (através de crossover, reprodução por adequação proporcional e mutação).

Descarta-se a população original e repete-se o ciclo, esse denominado de Geração.

A partir então da população Zero, por adequação é feito o aprimoramento da população.

Page 10: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Programação Evolutiva

Similar aos Algoritmos Genéticos Enfatiza o relacionamento

comportamental entre progenitores e sua descendência

Semelhante ao campo que investiga Estratégias de Evolução

Page 11: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Programação Evolutiva

Uma população de possíveis soluções é escolhida aleatoriamente.

Cada solução é replicada em uma nova população

Cada solução descendente é avaliada pela computação de sua adequação pelo método Estocástico.

Page 12: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Programação Evolutiva

Diferencia-se dos Algoritmos Genéticos por:

Não empregar Crossover (cruzamento). AG codificam as soluções de

problemas como um string de tokens significativos - o genoma. Em PE a solução é dependente do problema

Page 13: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Estratégias de Evolução

Concebido para solucionar problemas técnicos de otimização.

Utilizado pelas áreas de Engenharia Regra de 1/5 Recombinação por acasalamento

aleatório, mutação e seleção. Estratégia plus e virgula

Page 14: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Estratégias de Evolução

Empregam Teorias da Probabilidade e Estatística para interpretar resultados.

Auto-Adaptação dependente da Aleatoriedade, Tamanho da População, Cooperação e Deterioração.

Page 15: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Sistemas Classificadores

Percebem, classificam e reagem ao ambiente.

Abordagem dos Animat’s (animal + robot)

Compostos por: Ambiente, Receptores, Efectores e o Sistema em si.

Baseado em regras If-Then (idéia de caixa-preta).

Page 16: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Programação Genética

São programas, que quando executados oferecem diferentes soluções.

Representados em PG como árvores, ao invés de linhas de código.

Utiliza Crossover para seleção aleatória. Implementados em Lisp ou ambientes não-

Lisp.

Page 17: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Lógica Fuzzy (Difusa)

Page 18: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Lógica Fuzzy (Difusa) Teoria sobre conjuntos lançada pelo Prof.

Lofti A. Zadeh, publicada em 1965 (U. Berkeley).

Generaliza os conceitos da Teoria Clássica de Conjuntos.

Baseada no conceito de “verdade parcial”. Combina lógica multivalorada, IA e Redes

Neurais para representar o pensamento Humano

Page 19: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Lógica Fuzzy (Difusa)

Função de Pertinência, onde é explorada a relatividade de expressões como “Alto, Quente, Próximo...”.

Teoria do Protótipos (Eleanor Rosch 1976)

Um sim ou um não como resposta, é na maioria das vezes, incompleta.

Page 20: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Lógica Fuzzy (Difusa)

Utilizada em: Sistemas Especialistas, Computação com

Palavras, Raciocínio Aproximado, Controle de Processos, Robótica, Reconhecimento de Padrões, Processo de Tomada de Decisão...

Ar-Condicionado, Freios ABS, Câmbio Automático, Máquina Copiadoras, Elevadores,Televisores, Torradeiras...

Page 21: Programação Evolutiva e Lógica Fuzzy CMP 135 Arquiteturas Especiais de Computadores Fauzi Shubeita - UFRGS 2003

Referências

O. Cordón, F. Herrera, F. Hoffmann and L. Magdalena. Genetic Fuzzy Systems––Evolutionary Tuning and Learning of Fuzzy Knowledge Bases, World Scientific, Singapore (2001).

A. Geyer-Schulz. Fuzzy Rule-Based Expert Systems and Genetic Machine Learning, Physica, Heidelberg (1995).

C. Karr, Genetic algorithms for fuzzy controllers. AI Expert 6 2 (1991)

D.T. Pham and D. Karaboga, Optimum design of fuzzy logic controllers using genetic algorithms. J. System Eng. 1 (1991)