33
Sistema de Inferência Fuzzy Prof. Juan Mauricio Villanueva [email protected] http://app.cear.ufpb.br/~juan/ 1

Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Embed Size (px)

Citation preview

Page 1: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Sistema de Inferência Fuzzy

Prof. Juan Mauricio Villanueva

[email protected] http://app.cear.ufpb.br/~juan/

1

Page 2: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas, descritas em linguagem natural e convertê-las para um formato numérico.

2

Informações Imprecisas

Formatos Númericos

Conjuntos Fuzzy

Page 3: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Introdução Lógica Fuzzy Incorpora Conhecimento objetivo Conhecimento subjetivo Conhecimento Objetivo

Conhecimento Subjetivo

3

Usado na formulação de problema de engenharia: modelos matemáticos

Representa a informação lingüística que não é posivel quantificar usando matemática tradicional

Page 4: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Teoria de Conjuntos Fuzzy Conjuntos Fuzzy são funções que mapeiam um valor escalar em um número entre 0 e 1, a qual indica seu grau de pertinência a esse conjunto.

4

PROJETOS

Page 5: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Sistema de Inferência Fuzzy

5

O sistema de inferência fuzzy permite resolver problemas cujas variáveis apresentam imprecisões Aplicações: Sistemas de Controle Fuzzy Sistemas de Previsão Sistemas automáticos Detecção de Fraude

Page 6: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Sistema de Inferência Fuzzy

6

Sistema de Inferência Fuzzy

Entradas Precisas

Saídas Precisas

Page 7: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

7

Sistema de Inferência Fuzzy : Fuzzyficador

Exemplo: Para um sistema, cuja entrada é a Temperatura e com faixa de medição entre 0 a 50 ºC. Pode-se definir intervalos para indicar os níveis de temperatura como baixo, médio e alto

Transforma entradas precisas em conjuntos fuzzy

Temperatura

Baixa Média Alta

Conjuntos Crisp

1

Temperatura

Baixa

Conjuntos Fuzzy

1 Média Alta

Fuzzyficador

Page 8: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

8

Sistema de Inferência Fuzzy: Base de Regras

Regras estabelecidas por especialistas ou

base de dados numéricas

SE x é muito quente ENTÃO girar y um pouco para a direita

Page 9: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Um aspecto importante de Lógica Fuzzy é o mapeamento entrada/saída.

Para realizar esta tarefa se requer definir uma lista de regras da forma: IF-THEN

A Inferência Fuzzy interpreta os valores do vetor de entrada, em base a um conjunto de regras, assignando um valor ao vetor de saída.

9

Sistema de Inferência Fuzzy: Base de Regras

Page 10: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Forma de uma regra Fuzzy

Em que: A e B são valores linguísticos definidos por conjuntos Fuzzy em um Universo de Discurso X e Y, respectivamente.

Regras IF-THEN

10

if is then isx A y B

if is then isx A y B

Antecedente Consequente

Page 11: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Exemplo de Aplicação Controle de um Guindaste

11

Page 12: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Problema Trasladar uma carga utilizando um guindaste desde

um navio até uma seção de armazenamento

12

Page 13: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Variáveis

Variáveis de Entrada: Ângulo Distância

13

Variável de Saída: Potência

Page 14: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Sistema de Inferência Fuzzy

14

Page 15: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Um motorista pode seguir os seguintes critérios como entrada: A distância pode ser longe, médio ou perto. O ângulo pode negativo, zero oi positivo A saída é definida por: A potência pode ser baixa, média ou alta

Uma regra pode ser dada por:

Regras IF-THEN

15

if is or is then isdistância longe ângulo negativo potência alta

Antecedente Consequente

Page 16: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

16

longe negativo

Distância (crisp)

Ângulo (crisp)

If distância is longe or ângulo is negativo then potência = alta

Antecedentes Consequente

Fuzzyficação de Entradas

Page 17: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

17

longe negativo

Distância (crisp)

Ângulo (crisp)

If distancia is longe or ângulo is negativo then potência = alta

If 0.0 or 0.7 then potência= alta

Antecedentes Consequente

Fuzzyficação de Entradas

Aplicando-se o operador OR

(max)

Page 18: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

18

longe negativo

Distância (crisp)

Ângulo (crisp)

If distancia is longe or ângulo is negativo then potência = alta

If 0.0 or 0.7 then potência= alta

Antecedentes Consequente

Fuzzyficação de Entradas

Aplicando-se o operador OR

(max)

Page 19: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

19

Conjuntos Fuzzy

longe negativo

Distância (crisp) Ângulo (crisp)

If distância is longe or ângulo is negativo then potência = alta

If 0.0 or 0.7 then potência = alta

If 0.7 then potência= alta

alta

Antecedentes Consequente

Fuzzyficação de Entradas

Aplicando-se o operador OR

(max)

Aplicando-se o operador de

Implicação (min)

Page 20: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Estudo de Caso

20

Entradas:

Input 1: distância={longe, médio, perto} (0-10)

Input 2: ângulo={negativo, zero, positivo (-45°, 45°)

Saída:

Output: potência={baixa, média, alta} (0, 25%)

Page 21: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Estudo Caso

21

Regras IF-THEN:

If distância= longe or ângulo= negativo then potência=alta If distância= média then potência=média

If distância= perto or ângulo = positivo then potência=baixa

Page 22: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Estudo de Caso

22

Distância (0, 10)

Ângulo (-45, 45)

Potência (0, 25)

REGRA 1: If distância= longe or ângulo= negativo then potência=alta

REGRA 2: If distância= média then potência=média

REGRA 3: If distância= perto or ângulo = positivo then potência=baixa

Page 23: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

23

Distância=3 (crisp)

ângulo=30 (crisp)

longe

If distância= longe or ângulo= negativo then potência=alta

negativo alta

Fuzzyficação de Entradas

Operador Fuzzy OR=max

Page 24: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

24

longe

If distância= longe or ângulo= negativo then potência=alta

If distância= média then potencia=média

médio

negativo alto

médio

Fuzzyficação de Entradas

Operador Fuzzy OR=max

Distância=3 (crisp)

Ângulo=30 (crisp)

Page 25: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

25

Distância=3 Ângulo = 30

longe

If distância= longe or ângulo = negativo then potência =alta

If distância = médio then potência=média

If distância =perto or ângulo= positivo then potência=baixa

médio

perto

negativo

positivo

alta

média

baixa

Fuzzyficação de Entradas

Operador Fuzzy OR=max

Page 26: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

26

Distância=3 Ângulo = 30

longe

If distância= longe or ângulo = negativo then potência =alta

If distância = médio then potência=média

If distância =perto or ângulo= positivo then potência=baixa

médio

perto

negativo

positivo

alta

média

baixa

Fuzzyficação de Entradas

Operador Fuzzy OR=max

Agregação das Saídas (max)

Page 27: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Defuzzyficação

27

É o processo de converter um conjunto fuzzy a um número real (crisp).

O método mais utilizado é baseado no cálculo do

centroide da área de um conjunto fuzzy

potência= 11.08% Resultado da Deffuzyficação

Conjunto fuzzy como resultado do processo de agregação das saídas

Page 28: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Outros Métodos Utilizados para a Defuzzyficação:

- Máximo

- Media dos máximos

28

Defuzzyficação

Page 29: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Sistema de Inferencia Fuzzy

29

REGRA 1

REGRA 2

REGRA 3

Distância=3

Ângulo=30

Potência 11.08%

Sistema de Inferência Fuzzy

Page 30: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Construção de Regras em MATLAB

30

Entradas:

Input 1: distância={longe, médio, perto} (0-10)

Input 2: ângulo ={negativo, zero, positivo} (-45° 45°)

Saída:

Output: potência={baixa, media, alta} (0-25%) Regras IF-THEN: If distância= longe or ângulo = negativo then potência=alta 1,1,3,(1),2 If distância= média then potência=média 2,0,2,(1),1

If distância= perto or ângulo = positivo then potência=baixa 3,3,1,(1),2

1 2 3

1 2

1 2 3

3

Page 31: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Construção de Regras em MATLAB

31

Formato de Regras:

1, 1, 3, (1), 2

Primeira coluna: variáveis de entrada (Input 1) e (Input 2) Segunda coluna: variável de saída (Output 1) Terceira coluna: pesos aplicados a cada regra Quarta coluna: (2) OR ou (1) AND

1 2 3 4

Page 32: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Construção de Regras em MATLAB

32

Formato de Regras:

%[Distância, Ângulo, Potência, Peso, Conetor Lógico] rule = [1, 1, 3, (1), 2 2, 0, 2, (1), 1 3, 3, 1, (1),2]; fis = addrule(fis,rule);

%[Distância Ângulo] Potencia= evalfis([3 30], fis)

Page 33: Sistema de Inferência Fuzzy - cear.ufpb.br³gica... · 1 . Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas , descritas em linguagem natural

Sistema de Inferência Fuzzy

Prof. Juan Mauricio Villanueva

[email protected] http://app.cear.ufpb.br/~juan/

33