1 prof. gustavo augusto lima de campos, dr. ciência da computação universidade estadual do ceará...

115
1 Matemática e Engenharia na Concepção de Sistemas Inteligentes Uma abordagem por exemplos Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) [email protected] 01/10/200 9

Upload: internet

Post on 18-Apr-2015

104 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

1

Matemática e Engenharia na Concepção de Sistemas Inteligentes – Uma abordagem por exemplos

Prof. Gustavo Augusto Lima de Campos, Dr.Ciência da Computação Universidade Estadual do Ceará (UECE)[email protected]

01/10/2009

Page 2: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

2

Roteiro

• Área de Computação e

Informática

• Inteligência Artificial: Definição e

Problemas

• Agentes Inteligentes

• Exemplos de Utilização da

Matemática Lógica e Representação do

Conhecimento Conjuntos Fuzzy e Incetezas Otimização e o Treinamento de

Redes Neurais

Page 3: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

3

Área de Computação e Informática

Page 4: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

4

Área de Formação Básica Área de Formação Tecnológica

Área de Formação Complementar Área de Formação Humanítica

Subáreas de Formação

Page 5: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

5

Programação Computação e Algoritmos

Arquitetura de Computadores Matemática

Física Eletricidade Pedagogia

Área de Formação Básica

Page 6: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

6

Geometria Analítica Álgebra Linear

Cálculo Diferencial e Integral Lógica

Matemática Discreta

Matéria Matemática

Page 7: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

7

Sistemas Operacionais Redes de Computadores Sistemas Distribuídos

Compiladores Banco de Dados

Engenharia de Software Sistemas Multimídia

Interface Homem-Máquina Realidade Virtual

Inteligência Artificial Computação Gráfica

Processamento de Imagens Prática do ensino de Computação

Área de Formação Tecnológica

Page 8: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

8

Agentes Inteligentes Agentes Reativos

Agentes de Resolução de Problemas Agentes Lógicos

Redes Neurais Artificiais Sistemas Fuzzy

Redes Bayesianas . . .

Matéria Inteligência Artificial

Page 9: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

9

Inteligência Artificial (IA): Definições e Problemas

Page 10: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

10

1. que pensamcomo humanos

2. que pensam racionalmente

3. que agem como humanos

4. que agem racionalmente

É uma Tecnologia da Computação que se ocupa com o estudo, o projeto e a implementação de sistemas:

IA

Page 11: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

11

1. Modelagem Cognitiva

2. Leis do pensamento

3. Teste de Turing 4. Agente racional

• Denominações das abordagens nas quatro categorias

Page 12: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

12

• RACIONALIDADE é um conceito ideal de inteligência:

“Um sistema é racional se ele faz a coisa certa” (Russel e Norvig, 1995)

“Agir racionalmente significa agir de maneira a alcançar as metas de alguém, conhecendo-se as crenças deste alguém” (Russel e Norvig, 1995)

Page 13: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

13

• Abordagem centrada nas pessoas (1 e 3) deve ser uma ciência empírica, envolvendo hipóteses e confirmação experimental.

• Abordagem racionalista (2 e 4) envolve a combinação de matemática com engenharia.

Page 14: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

14

Problemas de IA

• Quanto à dependência do domínio de aplicação (Kasabov, 1998):

• Problemas Genéricos

• Problemas Específicos

Page 15: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

15

• Reconhecimento de Padrões• Classificação• Memória Associativa• Predição• Planejamento• Diagnóstico• Controle• Monitoramento• Otimização • Tomada de Decisão• Jogos

Problemas Genéricos:

Page 16: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

16

• Reconhecimento de Caracteres escritos à Mão

• Reconhecimento de Imagens• Reconhecimento de voz• Planejamento de Trajetórias de Robôs • Diagnóstico Médico• Monitoramento de um Carro• Caixeiro-Viajante• Decisões sobre Empréstimos Bancários

Problemas Específicos:

Page 17: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

17

Exemplos de problemas específicos Reconhecimento de Caracteres Escritos à

Mão

variabilidade de formas em que o número 3 pode ser escrito

padrão pode ser representado por um conjunto de aspectos: curvas, linhas retas, pontos, cor, ...

Page 18: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

18

SL - comprimento sepal PL - comprimento petalSW - largura sepal PW - largura petal

Classificação da Iris

Page 19: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

19

Previsão Consumo de Gás

X – meses jan, abr, out dos anos 88-91Y1 – consumo de gás (gallons per capita) Y2 – temperatura mínima média (0C)

Page 20: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

20

Diagnóstico Médico Baseado em Regras

4 regras envolvendo 4 manifestações e 4 diagnósticos

Page 21: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

21

Controle do Pêndulo Invertido

Y – força aplicada no carro para frente e para trás – ângulo do pêndulo com a vertical – velocidade angular

Page 22: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

22

Agentes Inteligentes

Page 23: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

23

Definição

Um agente é qualquer coisa que possa

ser visualizada como percebendo (P) seu

ambiente (E) através de sensores e

atuando (A) neste ambiente através de

atuadores, em busca de algum objetivo

(G).

Page 24: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

24

Exemplos: pessoas, robôs, programas, ...

Page 25: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Sensores

Efetuadores

?

25

P

E

A

Page 26: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

26

Exemplo: O Mundo WUMPUS

Page 27: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

27

O Mundo de WUMPUS representado

Page 28: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Ambiente

28

Page 29: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Ambiente

29

Page 30: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Ambiente

30

Page 31: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Ambiente

31

Page 32: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Ambiente

32

Page 33: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Ambiente

33

Page 34: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Sensores

34

Page 35: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Atuadores

35

Page 36: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Atuadores

36

Page 37: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Atuadores

37

Page 38: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Atuadores

38

Page 39: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Atuadores

39

Page 40: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Atuadores

40

Page 41: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Atuadores

41

Page 42: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

42

Exemplo: Mundo do Agente Aspirador de Pó

F:\29-09-2009\IA\programas\Aspirador+livr

Page 43: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

43

Função Agente – descreve o comportamento do agente em termos matemáticos.

Exemplo: tabulação parcial da função que mapeia qualquer seqüência de percepções para uma ação, no mundo do aspirador de pó simplificado.

Agente = Arquitetura + Programa Agente

Page 44: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

44

Seqüência de percepções Ação[A, Limpo] Direita

[A, Sujo] Aspirar

[B, Limpo] Esquerda

[B, Sujo] Aspirar

[A, Limpo], [A, Limpo] Direita

[A, Limpo], [A, Sujo] Aspirar

... ...

[A, Limpo], [A, Limpo], [A, Limpo]

Direita

[A, Limpo], [A, Limpo], [A, Sujo]

Aspirar

... ...

Tabulação Parcial da Função Agente

Page 45: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

45

Programa Agente – implementa a função de agente para um agente artificial.

Exemplo: programa agente baseado em tabelas escrito em uma linguagem de pseudocódigo simples

função agente-tabela(percepção) retorna uma ação vars: percepções, tabela, ação anexar percepção ao final de percepções ação ← ACESSAR(percepções,tabela) retornar ação

Page 46: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

46

Formalização do agente padrão

Sensores

Efetuadores

ação

S

amb

A

Page 47: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

47

Estado do ambiente do agente em um instante:

S = {s1, s2, ...}

Exemplo: Termostato

S = { s1, s2}

s1 = “temperatura Ok” s2 = “temperatura fria”

Page 48: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Capacidade efetuadora do agente:

A = {a1, a2, ...}

Exemplo: Termostato A = { a1, a2} a1 = “aquecer OFF”

a2 = “aquecer ON”

48

Page 49: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

49

Noção abstrata de um agente padrão

ação : S* → A

Page 50: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

50

Agente puramente reativo:

ação : S → A

Exemplo: Termostato

Se s = temp. OK então ação(s) = aquecer Off

Se s = outro estado então ação(s) = aquecer On

Page 51: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

51

Exemplos de Utilização da Matemática na Concretização de Agentes

Inteligentes

Page 52: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

52

Exemplo I: Lógica e Representação do

Conhecimento

Page 53: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

53

Arquitetura Concreta I

Sensores

Efetuadores

IA Simbólica - Lógica

P

E

A

Se Platão está disposto a visitar Sócrates então Sócrates está disposto a visitar

Platão.Se Sócrates está disposto … então Platão não

está … .Se Sócrates não está … então Platão está … . Sócrates está disposto a visitar Platão?

Page 54: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

54

Base de Conhecimento Agente Aspirador em Lógica de Predicados

― Representação dos estados do ambiente Salas do Aspirador de Pó

em(x,y)sujo(x,y)frente(direção)

― Regras comportamentais do Agente Aspirador de Pó

x, y: (em(x,y) л sujo(x,y)) faça(aspirar)x, y: (em(x,y) л ¬sujo(x,y) л frente(norte)) faça(frente)x, y: (em(x,y) л ¬sujo(x,y) л frente(oeste)) faça(direita). . .

Page 55: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

55

Princípio da Demonstração

*

*

Page 56: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

56

Resolução para a Lógica Proposicional Método de prova que executa em uma

única operação a série de processos envolvidos no raciocínio com fbfs

Opera em fbfs em uma forma padrão conveniente: a Forma Clausal

Uma Cláusula em LP é uma fbf na forma de uma disjunção de símbolos proposicionais, negados ou não.

Produz prova por contradição

Page 57: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

57

Algoritmo1: Conversão para Forma Clausal 1. Eliminar , usando:

(p q) (p q)

2. Reduzir escopo de cada a um único termo, usando:(p) p (p q) (p q) (p q) (p q)

3. Converte em conjunção de disjunções, usando:

(p (q r)) ((p q) (p r))

4. Cláusula separada correspondente a cada conjunção:

c1 - p qc2 - p r

Page 58: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

58

Algoritmo2: Resolução para LProposicional

1. Converter hipóteses para Forma Clausal.

2. Negar conclusão. Converter conclusão

negada para Forma Clausal e acrescentar

resultado ao conjunto de Cláusulas obtido

no Passo 1.

Page 59: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

59

3. Repetir {a) Selecionar duas cláusulas-pais;b) Obter

resolvente = disjunção de todos os símbolos proposicionais nas cláusulas-pais com a seguinte exceção:

Se símbolo proposicional p cláusula-pai1 e p cláusula-pai2 então elimine p e p do resolvente;

c) Se resolvente for cláusula-vazia ( )então contradição foi encontrada e resposta é ‘sim’senão acrescentar resolvente ao conjunto de

cláusulas disponíveis ao procedimento.

 } até uma contradição ser encontrada ou

até nenhum progresso a mais puder ser feito.

Page 60: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

60

p1. (p q) rp2. q

Argumento em Lógica Proposicional

q*. p r

Resolução

1. Converter hipóteses para Forma Clausal:c1. p q rc2. q

2. Negar conclusão, converter para Forma Clausal e acrescentar ao conjunto obtido em 1: c3. pc4. r

Page 61: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

61

3. Resolver

c3. p c1. p q r

c5. q r c2. q

c6. r c4. r

Logo, argumento é válido.

Page 62: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

62

Exemplo II:

Conjuntos Fuzzy e Incertezas

Page 63: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

63

Arquitetura Concreta II

Sensores

Efetuadores

Lógica Fuzzy

Se pessoa é fumante inveterado então risco de câncer é alto.

Pessoa é fumante moderado. Qual o risco de câncer?

P

E

A

Page 64: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

64

Fonte: Notas de aula - EA072 – Prof. Fernando J. Von Zuben – DCA/FEEC/UNICAMP

Em resumo:

Page 65: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

65

Fonte: Notas de aula - EA072 – Prof. Fernando J. Von Zuben – DCA/FEEC/UNICAMP

Page 66: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Conjuntos Clássicos

No contexto da teoria de conjuntos clássicos (Crisp Sets), a função de pertinência de conjuntos clássicos define se um elemento pertence ou não a um conjunto clássico.

Por exemplo:X – universo de discurso de valores possíveis de altura das pessoasx X – altura em metros das pessoasP(X) – família de subconjuntos clássicos de XA P(X) – conjunto das pessoas altas μA(x) {0, 1} – função de pertinência

66

Page 67: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

X = [0, 2.5m]A – conjunto das pessoas altas x – altura em metros das pessoas

A função de pertinência de um conjunto clássico A, μA: X {0,1}, mapeia elementos x do universo de discurso X, em um grau de pertinência, 0 ou 1, ao conjunto A. 67

Page 68: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

O problema da escolha do limiar entre dois conjuntos (alto / não alto) é denominado de paradoxo de Sorites:

Quando um monte de areia

deixa de ser um monte de areia,

caso retiremos um grão de

areia de cada vez?

Ou seja, a partir de quantos centímetros uma pessoa pode ser considerada alta? 169 cm? 170 cm? 171 cm? ... 180 cm?

68

Page 69: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Lógica Fuzzy

Lógica que trata matematicamente informações imprecisas usualmente empregadas na comunicação humana.

Lógica multi-valorada que estende a lógica booleana usualmente empregada em computação.

69

Page 70: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Conjuntos Fuzzy

No contexto da teoria de conjuntos difusos (Fuzzy Sets), a função de pertinência define o grau de participação de um elemento a um conjunto fuzzy.

Por exemplo:

X – universo de discurso de valores possíveis de altura das pessoasx X – altura em metros das pessoasP(X) – família de subconjuntos fuzzy definidos em XA P(X) – conjunto fuzzy das pessoas altas μA(x) [0, 1] – função de pertinência

μA(x) = 0 se x ‹ 1.60;

μA(x) = (x – 1.60)/0.20 se 1.60 ≤

x < 1.80;

μA(x) = 1 se x ≥

1.80.

70

Page 71: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

X = [0, 2.5m]A – conjunto nebuloso das pessoas altas x – altura em metros das pessoas

A função de pertinência de conjuntos fuzzy, μA: X [0,1], mapeia elementos x do universo de discurso X, em um grau de participação, [0, 1], no conjunto nebuloso A das pessoas altas.

μA(x) = 0 se x <

1.60;

μA(x) = (x – 1.60)/0.20 se 1.60 ≤

x < 1.80;

μA(x) = 1 se x ≥

1.80.

71

Page 72: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Um conjunto clássico pode ser definido como uma coleção de elementos:

A = { x | x X }.

Um conjunto fuzzy pode ser definido como uma coleção de pares ordenados:

A = { (x, μA(x)) | x X ; μA(x) [0, 1] }.

72

Page 73: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Exemplos: Conjunto Clássico

Conjunto Fuzzy

Fonte: User´s Guide – Fuzzy Logic Toolbox for Use with MATLAB

73

Page 74: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Conjuntos Fuzzy: frio, fresco, morno e quente.

74

Page 75: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Conjuntos Nebulosos: jovem e muito jovem

75

Page 76: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Problema da Gorjeta: dado um conjunto de números entre 0 e 10, representando a qualidade do serviço em um restaurante, onde 0 é péssima e 10 é excelente, qual deve ser a gorjeta?

Abordagem Clássica

Gorjeta é sempre igual a 15% da conta

Gorjeta vai de 5%, se o serviço for péssimo, crescendo linearmente até 25%, se o serviço for excelente:

Gorjeta = 0.05 + (0.20/10)*Serviço

76

Page 77: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Problema da Gorjeta Estendido: dado dois conjuntos de números entre 0 e 10, representando a qualidade do serviço e da comida em um restaurante, onde 0 é péssima e 10 é excelente, qual deve ser a gorjeta?

Gorjeta = 0.05 + (0.20/20)*(Serviço + Comida)

Serviço vale 80% da gorjeta total e a comida vale os 20% restantes:

Gorjeta = 0.8*(0.05 + (0.20/10)*Serviço) +

0.2*(0.05 + (0.20/10)*Comida)

77

Page 78: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Em geral, gorjeta de 15%. Acima, ou abaixo, deste patamar somente se o serviço for excepcionalmente bom, ou mau.

se Serviço < 3, então Gorjeta = 0.8*(0.05 + (0.10/3)*Serviço) + 0.2*(0.05 + (0.20/10)*Comida);

senão se Serviço < 7, então Gorjeta = 0.15*0.8 + 0.2*(0.05 + (0.20/10)*Comida);

senão, Gorjeta = 0.8+(0.15 + (0.10/3)*(Serviço–7)) + 0.2*(0.05 + (0.20/10)*Comida).

78

Page 79: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Seria bom se pudéssemos capturar os aspectos fundamentais do problema, deixando de lado todos os fatores que poderiam ser arbitrários:

se o serviço for pobre ou a comida não for boa, então gorjeta é pouquinha; se o serviço for bom, a gorjeta é razoável; se o serviço for excelente ou a comida for deliciosa, então a gorjeta é generosa.

Abordagem Fuzzy

79

Page 80: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Abordagem Fuzzy

Abordagem Clássica

80

Page 81: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Observações:

As três regras da abordagem fuzzy definem as regras para um sistema fuzzy.

A abordagem clássica para o problema da gorjeta busca uma relação linear por parte (piecewise) para resolver o problema. Pode ser bastante incômodo derivar esta relação e, depois de escrita em algum código, difícil de interpretar.

Sistemas fuzzy baseiam-se em declarações do senso comum. Novas declarações podem ser adicionadas a lista de regras, influenciando a forma da saída sem que seja necessário refazer o que já tinha sido feito; ou seja, modificações subseqüentes no conjunto de regras são realizadas de maneira muito simples.

81

Page 82: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

82

Exemplo III:

Otimização e o Treinamento de Redes

Neurais

Page 83: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

83

Sensores

Efetuadores

Redes de Neurônios

P

E

AÉ um 3 ?ou é um E ou é ...?

Arquitetura Concreta III

Page 84: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

84

Adequação arquitetura concreta ao tipo de informação

Page 85: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

85

Page 86: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

86

Neurônio Biológico

Page 87: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

87

Page 88: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

88

Neurônio é o dispositivo computacional elementar do sistema nervoso, com muitas entradas e uma saída.

Page 89: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

89

Esquema de um Neurônio Artificial

jwij.xjvi

g(vi)yi

Page 90: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

90

Sigmoid

Linear Sinal

Tangente Hiperbólica

g(v) = αv

v > 0

g(v) = 1

g(v) = 1/(1 + e-αv)

g(v) = (1–e-αv)/(1+e-αv)

Funções de ativação nos neurônios artificiais

v 0 g(v) = -1

Page 91: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Rede de múltiplos neurônios dispostos em camadas

91

Page 92: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

O Problema que Widrow e Hoff tentaram

resolver com as RedesDada uma função arbitrária y = f(x1, x2, ..., xn) = f(x) tal que f(0) = 0 e L observações desta função:

determinar uma aproximação linear do tipo:

tal que o erro quadrático sobre todos os exemplos:

seja o mínimo possível, ou seja:

92

Page 93: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

93

Page 94: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

A Regra Delta de Widrow e Hoff busca encontrar os valores

de w* tal que:

94

seja o mínimo possível.

Page 95: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

A solução proposta emprega o Método do Gradiente

para chegar em w* por meio de um processo de

iteração local – partindo-se de um ponto arbitrário

w(0) é possível caminhar por E(w) em direção ao

ponto de mínimo, seguindo na direção oposta ao

gradiente da função:

onde:η – determina o tamanho do passo que será

dado na direção contrária à direção do gradiente

95

Page 96: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Cálculo do gradiente da função erro quadrático

sobre os exemplos

96

Page 97: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Substituindo-se na fórmula de atualização dos pesos obtém-se a Regra Delta

97

Page 98: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Exemplo da aplicação da Regra Delta para o caso

em E(w) = w2

98

Page 99: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

99

Page 100: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

Comentários

A natureza do conjunto de exemplos, Ψ, determina o panorama da superfície erro, influindo grandemente na velocidade do processo de convergência

100

Page 101: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

101

Atualmente O algoritmo de treinamento mais utilizado é o Back-propagation, que emprega uma generalização da Regra Delta para redes com camadas escondidas.

Page 102: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

102

Entendendo o Treinamento de Redes Neurais com o Algoritmo Back-propagation

Page 103: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

103

Page 104: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

104

Page 105: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

105

Page 106: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

106

Page 107: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

107

Trabalhando com o Algoritmo Back-propagation

Page 108: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

108

Page 109: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

109

Page 110: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

110

Page 111: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

111

Page 112: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

112

Page 113: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

113

Page 114: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

114

Page 115: 1 Prof. Gustavo Augusto Lima de Campos, Dr. Ciência da Computação Universidade Estadual do Ceará (UECE) gustavo@larces.uece.br 01/10/2009

115

Indicação Bibliográfica

• KASABOV, N. K. Foundations of Neural Networks, Fuzzy Systems, and Knowledge Engineering. The MIT Press, 2o Edição, 1998.

• RUSSEL, S. e NORVIG, P. Artificial Intelligence: A Modern Approach. New Jersey: Ed. Prentice-Hall. 1995.