Вы находитесь на странице: 1из 28

11/27/2018

Lógica Nebulosa Introdução

Lógica Fuzzy • Lógica Difusa ou Lógica Fuzzy


• extensão da lógica boolena

(Lógica Nebulosa) • um valor lógico difuso é um valor qualquer no intervalo de valores entre 0 e 1

• As implementações da lógica difusa permitem que estados não 
precisos possam ser tratados por dispositivos de controle.
• desse modo, é possível avaliar conceitos não‐quantificáveis.
• Casos práticos: 
• avaliar a temperatura (quente,morno, frio,etc..)
• sentimento de felicidade(radiante,feliz,apático,triste..)

DEE‐Departamento de Engenharia Elétrica 
UFPE‐ Universidade Federal de Pernambuco

Introdução Conceito

• Surgiu com Lofti A. Zadeh, Berkeley (1965). • Lógica difusa é uma lógica multivalorada capaz de capturar 


• para tratar do aspecto vago da informação; informações vagas, em geral descritas em uma linguagem 
• 1978 – desenvolveu a Teoria das Possibilidades natural e convertê‐las para um formato numérico, de fácil 
• menos restrita que a noção de probabilidade  manipulação pelos computadores atuais. 
• ligar a lingüística e a inteligência humana, pois muitos conceitos são 
melhores definidos por palavras do que pela matemática.  • A representação depende não apenas do conceito, mas também 
do contexto em que está sendo usada. 
• É uma técnica baseada em graus de pertinencia (verdade).
• os valores 0 e 1 ficam nas extremidades
• A lógica difusa pode ainda ser definida como a lógica que 
• inclui os vários estados de verdade entre 0 e 1
suporta modos de raciocínio aproximados, ao invés de exatos, 
• idéia: todas as inf. admitem graus (temperatura, altura, velocidade,  como estamos acostumados a trabalhar. 
distância, etc...)
11/27/2018

Objetivo Características

• Baseia‐se em palavras e não em números, ou seja, os valores 
• A lógica difusa objetiva fazer com que as decisões tomadas pela  verdades são expressos lingüisticamente. 
máquina se aproximem cada vez mais das decisões humanas. • Por exemplo: baixo, médio, alto, quente, frio, ...., e outros usados para 
definir estados de uma variável.
• principalmente ao trabalhar com uma grande variedade de 
informações vagas e incertas, as quais podem ser traduzidas por 
expressões do tipo: a maioria, mais ou menos, talvez, etc. 
• Possui vários modificadores de predicado.
• antes do surgimento da lógica fuzzy essas informações não tinham 
como ser processadas.  • Por exemplo: muito, mais ou menos, pouco, bastante, médio, etc; 

• Possui também um amplo conjunto de quantificadores.
• Por exemplo: poucos, vários, em torno de, usualmente.

Conjuntos Fuzzy Conjuntos Fuzzy

• Na teoria dos conjuntos nebulosos existe um grau de pertinência de cada 
elemento a um determinado conjunto.
• Conjuntos com limites imprecisos.  • Um conjunto fuzzy A definido no universo de discurso X é caracterizado por 
uma função de pertinência A, a qual mapeia os elementos de X para o 
intervalo [0,1].
Conjunto Clássico Conjunto Fuzzy A:X[0,1]

1.0 1.0 • Desta forma, a função de pertinência associa a cada elemento x pertencente 


.9
.8 a X um número real A(x) no intervalo [0,1], que representa o grau de 
Função de pertinência do elemento x ao conjunto A, isto é, o quanto é possível para o 
.5
pertinência elemento x pertencer ao conjunto A.

1.75 Altura 1.60 1.70 1.75 Altura


(m) (m)

A = Conjunto de pessoas altas


11/27/2018

• A função de pertinência A(X) indica o grau de compatibilidade entre x e o 
conceito expresso por A:
• A(x) = 1  indica que x é completamente compatível com A;
• A(x) = 0  indica que x é completamente incompatível com A;
• 0 < A(x) < 1   indica que x é parcialmente compatível com A, com grau  A(x) .
Função característica do conjunto “crisp”
• crisp
• pode ser visto como um conjunto nebuloso específico (teoria de conjuntos clássica)
• A {0,1} pertinência do tipo “tudo ou nada”, “sim ou não” e não gradual como para 
os conjuntos nebulosos

Conjuntos Fuzzy

• Definição formal
• Um conjunto fuzzy A em X é expresso como um conjunto de pares 
ordenados:

A  {( x ,  A ( x )) | x  X }
Função de Universo ou
Conjunto
pertinência Universo de discurso
fuzzy

Um conjunto fuzzy é totalmente caracterizado


por sua função de pertinência.
11/27/2018

Lógica Fuzzy Universo Discreto


Fundamentos
• X = {SF, Boston, LA} (discreto e
• Representações não ordenado)
(a) Universo Discreto
• Funções de pertinência representadas em computador podem ser: • C = “Cidade desejável para se
• contínuas ou discretas.
viver”
• No caso contínuo, a função de pertinência é uma função matemática,  1 • C = {(SF, 0.9), (Boston, 0.8), (LA,
possivelmente um programa. 0.6)}
0.8
• No caso discreto, a  função de pertinência e o universo são pontos de 

Grau de Pertinência
uma lista (vetor). 0.6 • X = {0, 1, 2, 3, 4, 5, 6} (discreto)
• A = “Número de filhos razoável”
0.4
• A = {(0, .1), (1, .3), (2, .7), (3, 1),
0.2 (4, .6), (5, .2), (6, .1)}

0
0 2 4 6
X = Número de filhos

Universo Contínuo
Operações Básicas
(b) Universo Contínuo • X = (Conjunto de números
reais positivos) (contínuo)  Subconjunto  A  B, se B(x)  A(x) para cada x X 
1 Igualdade A = B, se A(x) = B(x) para cada x X
 

0.8 Complemento  A = X - A  A(x) = 1 - A(x)
Grau de Pertinência

• B = “Pessoas com idade em


 

Complemento
torno de 50 anos”
0.6 

Relativo  E(x) = Max [0, A(x) - B(x)]


0.4

0.2
• B = {(x, B(x) )| x em X}  União  C = A  B  c(x) = max(A(x), B(x))
0  C = A(x)  B(x)
0 50 100
X = Idade
 Interseção  C = A  B  c(x) = min(A(x), B(x))
 C = A(x)  B(x)
1
 B(x) 
 x  50 
2

1  
 10 
11/27/2018

Representação Exemplo (União|Interseção)

• X = {a, b, c, d, e}
(a) Conjuntos Fuzzy A e B (b) Conjunto Fuzzy não “A”
• A = {1/a, 0.7/b, 0.3/c, 0/d, 0.9/e}
A B
1 1 • B = {0.2/a, 0.9/b, 0.4/c, 1/d, 0.4/e}
A está contido em B 0.8 0.8
Grau de Pertinência

0.6 0.6
1 B • União
0.4 0.4
0.8 A • C = {1/a, 0.9/b, 0.4/c, 1/d, 0.9/e}
0.2 0.2
0.6
0 0
0.4 • Interseção
0.2 (c) Conjunto Fuzzy "A ou B" (d) Conjunto Fuzzy "A e B" • D = {0.2/a, 0.7/b, 0.3/c, 0/d, 0.4/e}
0
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0

Operadores Fuzzy

• Uma sentença modificada pela palavra “não” é dita “negação” 
• Suponha que desejássemos representar de forma fuzzy a altura de Alice (1,65 m), 
da sentença original. Bob (1,75 m), Carlos(2,0m) e Denise(1,45 m). Nossas proposições serão da forma "X 
• NÃO‐fuzzy(x) = 1 ‐ x é alto", e serão:
• A = Alice é alta, μ(A)=0,55 
• A palavra “e” é usada para juntar duas sentenças formando uma  • B = Bob é alto, μ(B)=0,75 
“conjunção” de duas sentenças. • C = Carlos é alto, μ(C) = 1,0 
• E‐fuzzy(x,y) = Mínimo(x,y) • D = Denise é alta, μ(D) = 0,0 

• De maneira similar a sentença formada ao conectarmos duas  • Usando os operadores fuzzy, podemos escrever sentenças como:
sentenças com a palavra “ou” é dita “disjunção” das duas  • Carlos não é alto, NÃO(C), μ(NÃO(C))= 1,0 ‐ μ(C) = 0,0 
sentenças. • Bob não é alto, NÃO(B), μ(NÃO(B))= 1,0 ‐ μ(B) = 0,25 
• OU‐fuzzy(x,y) = Máximo(x,y) • Denise é alta e Alice é Alta, D e A, μ(D e A)= mínimo (μ(D), μ(A)) =0,0 
11/27/2018

• A lógica está claramente associada a teoria dos conjuntos. Cada 
afirmação (do tipo "Carlos é alto") representa na verdade o grau 
de pertinência de Carlos ao conjunto de pessoas altas.

• Isso permite que conjuntos como "alto" e "baixo" sejam 
tratados de forma separadas e afirmações como "Carlos é alto 
0,75" e "Carlos é baixo 0,5" sejam válidas simultaneamente, ao 
contrário do que seria esperado em um modelo crisp. 

• Esse tipo de afirmação é facilmente encontrada na descrição, 
por humanos, na forma como entendem certo conceito, e a 
lógica difusa é uma ótima forma de tratar essa forma de 
incerteza.

22

Sistemas Fuzzy
Componentes do sistema

• Definição das variáveis fuzzy de entrada e de saída: forma e 
valores das variáveis
• Sistema de controle fuzzy baseado no modelo de Mamdani. • Regras fuzzy
• Técnica de defuzzificação
11/27/2018

Componentes do sistema Componentes do sistema


Inference
Inference
Input Fuzzifier Engine Defuzzifier Output
Engine

Máquina de
Entrada Fuzificador Defuzificador Saída
Inferência Fuzzy
Knowledge base

Os passos de raciocínio aproximado (operações de inferência baseado em regras difusas SE‐
ENTÃO) realizada pelo FIS são:
1.Comparar as variáveis  de entrada com as funções de pertinência da parte antecedente
para obter os valores dos graus de pertinência de cada variável linguística. (este passo é
muitas vezes chamado fuzificação.)
Fuzzy 2.Combinar (geralmente multiplicação ou min) os valores dos graus de pertinência na
Knowledge base premissa para obter a “força de disparo” (grau de satisfação) de cada regra.
3.Gerar os consequentes (ou fuzzy ou crisp) de cada regra, dependendo da “força de
disparo”.
4.Agregar os conseqüentes para produzir uma saída crisp. (Este passo é chamado de
defuzificação.)

Base de conhecimento Base de conhecimento – regras difusas


SE x é A1 e y é B1 ENTÃO z é Cu : R11
SE x é A1 e y é B2 ENTÃO z é Cv : R12
Inference
Inference
Input Fuzzifier Engine Defuzzifier Output
...
Engine

SE x é A1 e y é Bn ENTÃO z é Cx : R1n
SE x é A2 e y é B1 ENTÃO z é Cx : R21
SE x é A2 e y é B2 ENTÃO z é Cy : R22
Fuzzy
Knowledge base
...
SE x é A2 e y é Bn ENTÃO z é Ci : R2n
...
A base de regras e o banco de dados são referenciados em conjunto como sendo a SE x é Am e y é B1 ENTÃO z é Cx : Rm1
base de conhecimento.
...

•uma base de regras contém uma série de regras difusas SE‐ENTÃO;
•um banco de dados define as funções de
pertinência dos conjuntosdifusos  utilizados nas regras difusas.
11/27/2018

Definição as variáveis
Exemplos de variáveis fuzzy
• Etapa na qual as variáveis lingüísticas são definidas de forma subjetiva, bem como as funções 
membro (funções de pertinência) TRAPEZOIDAL
• Engloba
TRIANGULAR
• Análise do Problema 
• Definição das Variáveis 
• Definição das Funções de pertinência 
• Criação das Regiões 1
1
• Na definição das funções de pertinência para cada variável, diversos tipos de espaço podem 
ser gerados:
• Triangular, Trapezoidal, Gaussiana, ...

Lento Rápido
Frio Normal Quente

29 30

Fuzzificação Fuzzificação

Inference
Inference

Etapa na qual os valores numéricos são


Input Fuzzifier Engine Defuzzifier Output
Engine

transformados em graus de pertinência para
um valor linguístico.
Fuzzy

 Cada valor de entrada terá um grau de Knowledge base

pertinência em cada um dos conjuntos difusos.


O tipo e a quantidade de funções de Converte a entrada crisp numa variável linguística usando as funções de pertinência
pertinência usados em um sistema dependem armazenadas na base de conhecimento difuso.
de alguns fatores tais como: precisão,
estabilidade, facilidade de implementação...
11/27/2018

INFERÊNCIA: Avaliação das INFERÊNCIA: Agregação das


regras Regras
• Cada antecedente (lado if) tem um grau • São as técnicas utilizadas na obtenção de
de pertinência. A ação da regra (lado um conjunto difuso de saída “x” a partir
then) representa a saída nebulosa da da inferência nas regras.
regra. • Determinam quanto a condição de cada
regra será satisfeita.
• Durante a avaliação das regras, a • Para cada variável fuzzy de saída,
intensidade da saída é calculada com base considera o resultado de todas as regras.
nos valores dos antecedentes e então Por exemplo, considerando a pertinência
indicadas pelas saídas nebulosas da regra. máxima das regras para cada valor da
variável.

Inference
Inference Engine
Input Fuzzifier Defuzzifier Output
Engine

Máquina de inferência
Regras Fuzzy
Fuzzy
Knowledge base

Usando regras difusas do tipo SE‐ENTÃO converte a entrada difusa para a saída difusa. SE condição ENTÃO conclusão, com variáveis linguísticas (fuzzy)

Exemplo:

Se a fruta é verde então o gosto é azedo

Se a fruta é amarela então o gosto é pouco-doce

Se a fruta é vermelha então o gosto é doce


11/27/2018

Sistema de Inferência Difusa


Regras Fuzzy

Métodos de inferência (Máquinas de inferência)
• E o raciocínio? Os 2 tipos mais importantes de método de inferência fuzzy são Mamdani e Sugeno.
• Avaliar o antecedente O método de inferência difuso do tipo Mamdani é o método mais comumente
• Aplicar o resultado ao consequente usado. Este método foi introduzido por Mamdani e Assilian (1975).
• As regras são ativadas parcialmente, dependendo do antecedente
• Ex: Se a altura é alta, o peso é pesado  (altura =1.85,  peso = ?) Outro método de inferência bem conhecido é o chamado método do processo de
inferência fuzzy Sugeno ou Takagi‐Sugeno‐Kang. Este método foi introduzido por
Sugeno (1985). Este método também é chamado de método TS.

Alto Pesado
A principal diferença entre os dois métodos reside no consequente das regras Fuzzy.

.75 .75
.5 .5

.1 .1
37
1.85 90

Método de Inferência Difusa Mamdani

Para calcular a saída deste FIS dadas as entradas, seis passos devem ser seguido:

1.Determinar um conjunto de regras fuzzy

2.Fuzzificar das entradas usando as funções de pertinência de entrada;
Método de inferência difusa Mamdani
3.Combinar as entradas fuzificadas de acordo com as regras fuzzy para 
estabelecer a “força da regra” (operações difusas);

4.Encontrado o resultado da regra, combinar a “força da regra” com a função de 
pertinência de saída (implicação);

5.Combinar as consequências para obter uma saída (agregação);

6.Defuzzificar a saída (apenas se uma saída crisp é necessária).
11/27/2018

Método de Inferência Difusa Mamdani Método de Inferência Difusa Mamdani


Esquema de raciocínio Exemplo

Examinamos um problema de uma saída simples e duas entradas que inclui 3 regras:
Regra: 1 SE X é A3  OU y é B1 ENTÃO z é C1
Regra: 2SE x é A2  E y é B2 ENTÃO z é C2
Regra: 3 SE x é A1 ENTÃO Z é C3

Exemplo da vida real para esses tipos de regras:

Regra: 1 SE project_funding é adequado OU project_staffing é pequena, ENTÃO o  
risco é baixo.
Regra: 2 SE project_funding é marginal E project_staffing é grande, ENTÃO o risco é  
normal.
Regra: 3 SE project_funding é inadequado ENTÃO risco é alto.

Composição max‐prod

Método de Inferência Difusa Mamdani Método de Inferência Difusa Mamdani


Passo 1: Fuzzificação Passo 2: Avaliação das regras
O primeiro passo é tomar as entradas crisp, x1 e y1 (financiamento do projeto e de O passo seguinte é tomar as entradas fuzzificadas
pessoal do projeto), e determinar o grau com que essas entradas pertencem a cada (x=A1) = 0,5, (x=A2) = 0,2, (y=B1) = 0,1 e (y=B2) = 0,7,
um dos conjuntos fuzzy.
e aplicá‐los aos antecedentes das regras difusas.

Entrada Crisp Entrada Crisp Se uma dada regra diufsa tem múltiplos antecedentes, o operador difuso (E e OU) é
x1 y1 utilizado para obter um único número que representa o resultado da avaliação do
antecedente.
1 1 B1 B2
A1 A2 A3 0.7
0.5 RELEMBRANDO: Avaliar a disjunção dos antecedentes da regra, usa‐se o operador OU.
0.2 0.1 Normalmente, os sistemas especialistas difusos geralmente fazem uso da operação
0 0 clássica de união difusa:
x1 X y1 Y
 (x = A1) = 0.5  (y = B1) = 0.1 AB(x) = max [A(x), B(x)]
 (x = A2) = 0.2  (y = B2) = 0.7 Da mesma forma, a fim de avaliar o conjunto dos antecedentes da regra usando E,
geralmente aplica‐se o operador de interseção difuso:
AB(x) = min [A(x), B(x)]
11/27/2018

Método de Inferência Difusa Mamdani Método de Inferência Difusa Mamdani


Passo 2: Avaliação das regras Passo 2: Avaliação das regras
1 1 1 Agora, o resultado da avaliação do antecedente pode ser aplicado Degree of
para a função de petrinência do consequente. Membership
A3 B1 C1 C2 C3 1.0
0.1 OR 0.1 O método mais comum é cortar a função de pertinência do
0.0
consequente ao nível da “verdade” do antecedente. Este método
0 0 (max) 0 C2
x1 X y1 Y Z é chamado de recorte (corte‐alfa).
•Como o topo da função de pertinência é cortado, o
Rule 1: IF x is A3 (0.0) OR y is B1 (0.1) THEN z is C1 (0.1) conjunto difuso fatiado/cortado perde algumas 0.2
informações.
1 1 1
0.7 •No  entanto,  o  corte‐alfa  ainda  é  muitas  vezes  preferido
C1 C2 C3 recorte Z
A2 0.2 B2 AND 0.2 0.0
(min) porque envolve matemática menos complexa e mais rápida, e gera
0 x1 X 0 y1 Y 0 Z uma figura de saída agregada mais fácil de defuzzificar. Degree of
Membership
Rule 2: IF x is A2 (0.2) AND y is B2 (0.7) THEN z is C2 (0.2) 1.0
Enquanto corte‐alfa é um método frequentemente utilizado, o
1 1 escalonamento oferece uma melhor abordagem para a C2
A1 0.5 0.5 C1 C2 C3 preservação da forma original do conjunto difuso.
•A função de pertinência original do consequente da regra é
0.2
ajustada multiplicando todos os seus graus de pertinência pelo
0 x1 X 0 Z grau de “verdade” do antecedente da regra.
0.0
Rule 3: IF x is A1 (0.5) THEN z is C3 (0.5) •Este método, que geralmente perde menos informação, pode ser escalonamento Z
muito útil em sistemas especialistas difusos.

Método de Inferência Difusa Mamdani Método de Inferência Difusa Mamdani


Passo 3: Agregação das saídas das regras Passo 4: Defuzzificação
•A agregação é o processo de unificação das saídas de todas as regras. •O último passo no processo de inferência difuso é a defuzzificação.
•Tomamos as funções de pertinência de todos •Fuzziness ajuda‐nos a avaliar as regras, mas o resultado final de um sistema  difuso 
os consequentes das regras  previamente cortadas ou  tem que ser um número crisp.
escalonadas e combinamos num único conjunto difuso.
•A entrada para o processo de defuzzificação é o conjunto difuso de saída  agregado 
•A entrada do processo de agregação é a lista das funções de pertinência e a saída é um número crisp (singelton).
consequentes cortadas ou escalonadas, e a saída é um conjunto difuso para cada
variável de saída.

1 1 1
C1 C2 C3
0.5 0.5
0.2
0.1 0.2 0.1
0 Z 0 Z 0 Z 0 Z

z is C1 (0.1) z is C2 (0.2) z is C3 (0.5) 


11/27/2018

Método de Inferência Difusa Sugeno

• A técnica de Inferência Mamdani, como acabamos de ver, obriga‐nos a encontrar o


centroide de uma forma bidimensional através da integração de uma função
continua. Em geral, este processo não é computacionalmente eficiente.

• Michio Sugeno sugeriu o uso de um único ponto, um singleton, como função de


pertinência do consequente da regra.

• Um singleton, ou mais precisamente um singleton difuso, é um conjunto fuzzy com


Método de inferência difusa Sugeno uma função de pertinência que é a unidade em um único ponto do universo de
discurso e de zero em qualquer outro lugar.

• Também conhecido como modelo difuso TSK (Takagi, Sugeno & Kang)

Método de Inferência Difusa Sugeno Método de Inferência Difusa Sugeno


Regras difusas do modelo Sugeno Exemplos de Regras do modelo Sugeno

R1: SE X é pequeno E Y é grande ENTÃO z = x +y +1  

SE x é A E y é B ENTÃO z = f(x, y) R2: SE X é pequeno E Y é grande ENTÃO z = y +3  

R3: SE X é pequeno E Y é grande ENTÃO z = x +3

Conjuntos Difusos Função Crisp R4: SE X é pequeno E Y é grande ENTÃO z = x + y + 2

f(x, y) muitas vezes é uma função polinomial
11/27/2018

Método de Inferência Difusa Sugeno Método de Inferência Difusa Sugeno


Esquema de Raciocínio Regras difusas do modelo Sugeno
O estilo de inferência sugeno é muito semelhante ao método Mamdani.
Sugeno alterou apenas o consequente da regra: em vez de um conjunto difuso, ele  
usou uma função matemática dada em função das entradas.
O formato da regra difusa estilo Sugeno é
SE x é A E Y é B ENTÃO z é f (x, y)
onde:
x, y e z são termos   linguís cos;
A e B são conjuntos difusos (variáveis linguísticas) nos universo de discursos  X e Y, 
respectivamente;
f (x, y) é uma função matemática crisp.
O formato mais comum das regas é :
SE x é A E Y é B ENTÃO z é k
onde k é uma constante.
Neste caso, a saída de cada regra difusa é uma constante e todas as funções de
pertinência consequentes são representados por pontos únicos (singletons).

Método de Inferência Difusa Sugeno Método de Inferência Difusa Sugeno


Exemplo – Fuzzificação Exemplo – Agregação das regras e defuzzificação
1 1 1 1
1 1 1
 1 1
 1
0.5 0.5 0.2
 A3
A3 B1
 B1 0.2
0.1 0.1 0.1
0.0
 0.0  0.1 OR OR0.1
  0.1
 (max)
0 k1 Z 0 k2 Z 0 k3 Z 0 k1
0 0 0 0 (max) 0 0
x1
 x1 X
 X  y1
 y1 Y
 Y  k1 k1 Z
 k2
Z z is k1 (0.1) z is k2 (0.2) z is k3 (0.5) k3 Z
Rule 1: IF x is A3 (0.0) OR y is B1 (0.1) THEN z is k1 (0.1)
1
 Rul e1:IFxisA3 (0.0)
1
OR yisB1 (0.1)
1


THEN zisk1 (0.1) 0.7
A2 B2 CG torna‐se numa Média Ponderada (WA)
 1 0.2  1 AND 0.2 1
 0.7
0 (min)
x1  A2 X  00.2 y1  YB2  AND0 0.2 k2 Z 0 z1 Z
 (min)
Rule 2: IF x is A2 (0.2) AND y is B2 (0.7) THEN z is k2 (0.2) Crisp Output z1
 0  x1  X  0  y1  Y  0  k2 
1 Z 1
A1 0.5 0.5
 Rule 2:IF xisA2 (0.2) AND yisB2 (0.7) 
(k1) k1 (k 2) k2  (k3)  k3 0.1 20  0.2 50  0.580
THEN zisk2 (0.2) WA    65
0 x1 X 0 k3 Z (k1)  (k 2)  (k3) 0.1 0.2  0.5
 1  1
Rule
3: IF
A1x is A1 (0.5)  0.5  THEN
0.5 z is k3 (0.5)

 0  x1  X  0  k3
11/27/2018

Mamdani ou Sugeno? Mamdani ou Sugeno?

• Método de Mamdani é amplamente aceito para a captura de


conhecimento especializado. Ele nos permite descrever a
experiência de forma mais intuitiva, mais semelhante à
humana. No entanto, o tipo de inferência Mamdani implica
numa carga computacional considerável.

• Por outro lado, o método de Sugeno é computacionalmente


eficiente e funciona bem com otimização e técnicas
adaptativas, o que torna muito atraente em problemas de
controle, especialmente para sistemas dinâmicos não‐lineares.

http://www.massey.ac.nz/~nhreyes/MASSEY/159741/Lectures/Lec2012‐3‐159741‐FuzzyLogic‐v.2.pdf

Defuzzificação Defuzzificação

Inference
Inference
Input Fuzzifier Defuzzifier
Defuzzifier Output

• Processo utilizado para converter o


Engine
Engine

conjunto difuso de saída em um valor


crisp correspondente.
• Alguns métodos de defuzzificação:
Fuzzy Knowledge base

• Centróide,
• Máxima pertinência,
• Média ponderada,
• etc.
Converte a saída difusa da máquina de inferência para crisp usando funções de  
pertinência análogas às utilizadas na fuzificação.
11/27/2018

Defuzzificação Técnica de Defuzzificação

• Etapa no qual as regiões resultantes são convertidas em valores  para a  • Dentre os diversos tipos de técnicas de defuzzificação, pode‐se 
variável de saída do sistema citar:
• Centróide
• Esta etapa corresponde a ligação funcional entre as regiões Fuzzy e o valor  • O valor de saída é o centro da gravidade da função de distribuição 
esperado. da possibilidade da ação de controle.
• converte as variáveis fuzzy em valores numéricos ou aceitáveis pelo 
sistema.
Defuzzificação – Alguns Métodos
Centro de Gravidade‐CG

z* 
 z  (z)dz
c
1
  (z)dz
c

z* z

61

Máxima Pertinência 

c(Z*)  c(z)  z  Z 1 Técnicas de Defuzzificação


 Defuzzificação – Alguns Métodos  Centro da Gravidade‐CG – Exemplo
Mean‐MAX Pertinência – MOM •O método de defuzzificação do CG encontra um ponto que representa o centro de  
gravidade do conjunto agregado difuso A, no intervalo [a, b].
(middle‐of‐maxima method) z* z
1  •Uma estimativa razoável pode ser obtido através do cálculo sobre uma amostra de
a b pontos.
z* 
2
Degree of
Membership
0 a z* b z
1.0

0.8

0.6
Média Ponderada
 0.4
Válida somente para funções 0.2
de pertinência simétricas .9
0.0
0 10 20 30 40 50 60 70 80 90 100
  (z )  z Z
z 
c .5   67.4
* ~

  (z )c
~
CG = (0 10 20)0.1 (30 4050 60)0.2 (7080 90100)0.5  67.4
COG
0.1 0.1 0.10.2 0.2 0.2 0.2 0.5 0.5 0.5 0.5
0 a b z
11/27/2018

Defuzzificação – Alguns Métodos Etapas do Raciocínio


Média Ponderada – Exemplo

Variáveis Calculadas Inferência Variáveis de Comando


(Valores Linguísticos) (Valores Linguísticos)

Nível
Linguístico Fuzzificação
z* 
.32.5 .55 16.5  5.41meters
Nível Defuzzificação
.3 .5  1
Numérico

Variáveis Calculadas Objeto Variáveis de Comando


(Valores Numéricos) (Valores Numéricos)

Inferência Fuzzy: Um exemplo Inferência Fuzzy: Um exemplo

• Objetivo do sistema:  • Passo 1: Fuzzificar 
• um analista de projetos de uma empresa que determina o risco de um determinado 
projeto
• Variáveis de  entrada:
• quantidade de dinheiro e de pessoas envolvidas no projeto Dinheiro
Pessoal
• Base de conhecimento
1.Se dinheiro é adequado ou pessoal é baixo então risco é pequeno .8
.75
2.Se dinheiro é médio e pessoal é alto, então risco é normal .25 .2
3.Se dinheiro é inadequado, então risco é alto
35 60
Inadequado Adequado Baixo Alto
Problema a ser resolvido: dinheiro = 35% e pessoal = 60%
Médio b ( p)  0,2 &  a ( p)  0,8
67
i (d )  0, 75 & m (d )  0, 25 68
11/27/2018

Inferência Fuzzy: Um exemplo Inferência Fuzzy

• Passo 2: Avaliação das regras 
• OU  máximo       E  mínimo
Regra 1: Risco Regra 3:
Risco
0,75
0,2
ou
Adequado 0,0 Baixo
Inadequado

Regra 2: Risco
0,8

e
0,25
médio Alto
69 70

Inferência Fuzzy Outro exemplo

• Passo 3: Defuzzificação • O sistema  tem como objetivo determinar a gorjeta que um 
Risco cliente deve dar. 
• Esse sistema possui três variáveis (serviço, comida e gorjeta). 
pequeno normal alto As variáveis comida e serviço são variáveis de entrada e gorjeta é 
a variável de saída.
0,75

0,25
0,20
10 20 30 40 50 60 70 80 90 100

(10 20  30  40) * 0,2  (50 60  70) * 0,25 (80 90 100) * 0,75 267,5
C   70,4
0,2  0,2  0,2  0,2  0,25 0,25 0,25 0,75 0,75 0,75 3,8

71
11/27/2018

Aplicação 1

Método de Inferência Difusa


Aplicação 1 – Conserto e Reposição de Peças Etapas
1. Especificar o problema e definir variáveis linguísticas.
2. Determinar os conjuntos difusos.
Problema
3. Extrair e construir regras difusas.
Um centro de serviço mantém peças de reposição e conserta as que falharam.
4. Codificar os conjuntos fuzzy, regras difusas e procedimentos para realizar a
Um cliente traz uma peça que falhou e recebe um item de reposição do mesmo tipo.
inferência fuzzy no sistema especialista.
Partes avariadas são reparadas, colocadas na prateleira, e assim torna‐se peças de  
5. Avaliar e ajustar o sistema (tuning).
reposição.

O objetivo é aconselhar um gerente do centro de serviços em políticas de decisão de  
manter os clientes satisfeitos.
11/27/2018

Aplicação 1 – Conserto e Reposição de Peças


Aplicação 1 – Conserto e Reposição de Peças
Passo 1: Variáveis linguísticas, termos linguísticos e domínio
Linguistic Variable: Mean Delay, m
Passo 1: Definição das variáveis linguísticas Linguistic Value Notation Numerical Range (normalised)
Há quatro principais variáveis lingüísticas Very Short VS [0, 0.3]
Short S [0.1, 0.5]
Medium M [0.4, 0.7]
Linguistic Variable: Number of Servers, s
1. Tempo médio de espera (média de demora) m Linguistic Value Notation Numerical Range (normalised)
Small S [0, 0.35]
2. Número de servidores  Medium M L [0.30, 0.70]
Large [0.60, 1]
3. Fator de utilização do centro de serviços de reparação r Linguistic Variable: Repair Utilisation Factor, 
Linguistic Value Notation Numerical Range
4. Número inicial de peças de reposição n Low L [0, 0.6]
Medium M H [0.4, 0.8]
High [0.6, 1]
Linguistic Variable: Number of Spares, n
Linguistic Value Notation Numerical Range (normalised)
Very Small VS [0, 0.30]
Small S [0, 0.40]
Rather Small RS [0.25, 0.45]
Medium M [0.30, 0.70]
Rather Large RL [0.55, 0.75]
Large L [0.60, 1]
Very Large VL [0.70, 1]

Aplicação 1 – Conserto e Reposição de Peças


Aplicação 1 – Conserto e Reposição de Peças Passo 2: Conjunto difuso MÉDIA DE ESPERA m

Degree of
Passo 2: Determinação dos conjuntos difusos Membership
Conjuntos fuzzy pode ter uma variedade de formas. No entanto, um triângulo ou 1.0
um trapézio pode muitas vezes fornecer uma representação adequada do
0.8 VS S M
conhecimento especializado, e, ao mesmo tempo, simplifica significativamente o
processo computacional. 0.6
0.4

0.2
0.0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Mean Delay (normalised)
11/27/2018

Aplicação 1 – Conserto e Reposição de Peças Aplicação 1 – Conserto e Reposição de Peças


Passo 2: Conjunto difuso NÚMERO DE SERVIDORES s Passo 2: Conjunto difuso FATOR DE UTILIZAÇÃO DO CENTRO DE REPARAÇÃO 

Degree of Membership Degree of


1.0 Membership
1.0
0.8
S M L 0.8 L M H
0.6
0.6
0.4
0.4
0.2
0.2
0.0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.0
0.8 0.9 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Repair Utilisation Factor

Método de Inferência Difusa


Aplicação 1 – Conserto e Reposição de Peças
Passo 2: Conjunto difuso NÚMERO DE PEÇAS n Extrair/deduzir e construir regras difusas
Para realizar essa tarefa, podemos perguntar a especialistas para descrever como o
Degree of problema pode ser resolvido usando as variáveis linguísticas fuzzy definidas
Membership anteriormente.
1.0
0.8 Conhecimentos necessários também podem ser recolhidas a partir de outras fontes,
VS S RS M RL L VL
tais como livros, bases de dados eletrônicas, diagramas de fluxo e comportamento
0.6 humano observado.

0.4

0.2

0.0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Number of Spares (normalised)
11/27/2018

Aplicação 1 – Conserto e Reposição de Peças Aplicação 1 – Conserto e Reposição de Peças


Passo 3: Representação das regras em 2D – 9 possíveis regras Passo 3: Representação das regras na forma TABULAR – 27 possíveis regras
s Linguistic Variable: Mean Delay, m Rule m s  n Rule m s  n Rule m s  n
Linguistic Value Notation Numerical Range (normalised)
Very Short VS [0, 0.3] 1 VS S L VS 10 VS S M S 19 VS S H VL
L M SM S VS Short S [0.1, 0.5]
Medium M [0.4, 0.7] 2 S S L VS 11 S S M VS 20 S S H L
RL RS S Linguistic Variable: Number of Servers, s
Linguistic Value Notation Numerical Range (normalised) 3 M S L VS 12 M S M VS 21 M S H M
VL L M Small S [0, 0.35]
Medium M L [0.30, 0.70] 4 VS M L VS 13 VS M M RS 22 VS M H M
VS S M m Large [0.60, 1]
Linguistic Variable: Repair Utilisation Factor,  5 S M L VS 14 S M M S 23 S M H M
Linguistic Value Notation Numerical Range
Low L [0, 0.6]
6 M M L VS 15 M M M VS 24 M M H S
Medium M [0.4, 0.8]
7 VS L L S 16 VS L M M 25 VS L H RL
High H [0.6, 1]
Linguistic Variable: Number of Spares, n 8 S L L S 17 S L M RS 26 S L H M
Linguistic Value Notation Numerical Range (normalised)
Very Small VS [0, 0.30] 9 M L L VS 18 M L M S 27 M L H RS
Small S [0, 0.40]
Rather Small RS [0.25, 0.45] 1. Tempo médio de espera (média de demora) m
Medium M [0.30, 0.70]
Rather Large RL [0.55, 0.75] 2. Número de servidores 
Large L [0.60, 1] 3. Fator de utilização do centro de serviços de reparação r
Very Large VL [0.70, 1]
4. Número inicial de peças de reposição n

Aplicação 1 – Conserto e Reposição de Peças Aplicação 1 – Conserto e Reposição de Peças


Passo 3: Representação expandida das regras (3 + 33) Passo 3: Representação das regras em 3D – 27 regras

s
s
VS VS L. RL M RS
VS VS
L S SVS VSVS
VS VS VS M. M M S
VS VS VS
M VS VS VS
VS VS VS  S VL L M 
VS VS
S VS H H
M VS S M
VS VS L s
VS m
L. M RS S
VS S M
m M. RS S VS

S S VS VS
M
VS S M
s
m
L. S S VS

M. VS VS VS

S VS VS VS
L
VS S M
m
11/27/2018

Método de Inferência Difusa Método de Inferência Difusa


Codificar os conjuntos difusos, regras e os procedimentos para executar a   Avaliação e ajuste/tuning do sistema fuzzy
inferência fuzzy no sistema especialista. A última e a mais trabalhosa, é a tarefa de avaliar e ajustar o sistema. Queremos ver  
se o nosso sistema fuzzy atende aos requisitos especificados no início.

Para realizar essa tarefa, podemos escolher uma das seguintes opções: construir  
Várias situações de teste dependem do atraso médio, número de servidores e fator  
nosso sistema usando uma linguagem de programação como C / C ++ ou Pascal, ou  
de utilização de reparo.
para aplicar uma ferramenta de lógica fuzzy tais como MATLAB Toolbox Fuzzy Logic.

Fuzzy Logic Toolbox pode gerar superfície para nos ajudar a analisar o desempenho  
do sistema.

Aplicação 1 – Conserto e Reposição de Peças Aplicação 1 – Conserto e Reposição de Peças


Passo 5: Representação em 3D da regra 4 Passo 5: Ajuste/tuning do sistema fuzzy
No entanto o especialista pode não estar satisfeito com o desempenho do sistema.

Para melhorar o desempenho do sistema, podemos usar conjuntos adicionais ‐
Rather Small and Rather Large ‐ sobre o universo do discurso Número de servidores  
0.6
e, em seguida, estender a base de regra.

0.5

0.4

0.3

0.2

0
0.2 1
0.8
0.4 0.6
0.4
0.6 0.2
mean_delay 0 number_of_servers
11/27/2018

Aplicação 1 – Conserto e Reposição de Peças Aplicação 1 – Conserto e Reposição de Peças


Passo 5: Tuning ‐ por exemplo, alterando a número de servidores Novo conjunto de regras após tuning
Degree of s
Membership s
1.0 VS VS VS L L M RS
VS VS VS
0.8 S M L L S S VS
Novos termos para a   VS VS VS
VS VS VS
RL RL M RS
0.6 variável linguística   RL S S VS
VS VS VS M M M S
0.4 “número de servidores“ VS VS VS
M VS VS VS
VS VS VS s RS VL RL RS
0.2 VS VS VS
RS VS VS VS  
0.0 VS VS VS L M RS S S VL L M
VS VS VS
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 S VS VS VS H VS S M H
M RL M RS S
L m
VS S M
m M RS S VS
Degree of
Membership
1.0 s RS S VS VS

0.8 S RS M RL L L S S VS S S VS VS
M
0.6 RL VS S M
S S VS
m
0.4
M VS VS VS
0.2
RS VS VS VS
0.0
0 0.1 S VS VS VS
0.2 0.3 0.4 0.5 0.6 0.7 0.8
0.9 1 L
VS S M
Number of Servers (normalised)
m

Método de Inferência Difusa


Sugestões de tuning/ajuste
1.Reveja as variáveis de entrada e de saída e, se necessário redefinir suas faixas.
2.Reveja os conjuntos fuzzy e, se necessário definir conjuntos adicionais sobre o  
universo de discurso. O uso de muitos conjuntos fuzzy pode fazer com que o  sistema 
fuzzy tenha baixa performance.
3.Proporcionar sobreposição suficiente entre conjuntos vizinhos. Sugere‐se que o  
triângulo‐a‐triângulo e trapezoidal‐a‐triângulo conjuntos fuzzy tenham  sobreposição 
entre 25% a 50% das suas bases.
4.Rever as regras existentes e, se necessário adicionar novas regras para a base de  
Aplicação 2
regra.
5.Examinar a base de regras e verificar oportunidades de escrever regras com  
hedges/modificadores para capturar o comportamento do sistema.
6.Ajustar os pesos de execução das regras. A maioria das ferramentas de lógica  fuzzy 
permite o controle da importância das regras alterando um multiplicador de  peso.
7.Rever as formas dos conjuntos difusos. Na maioria dos casos, sistemas fuzzy são  
altamente tolerante a uma determinada forma aproximada.

69
11/27/2018

Aplicação 2 – Taxa de Ocupação de Resort Aplicação 2 – Taxa de Ocupação de Resort


Problema Passo 1 e 2: Variáveis linguísticas e conjuntos difusos
Seja um sistema difuso para predizer o número de turistas visitando um resort. Base de conhecimento/variáveis linguísticas
o Entrada:
–Variáveis de entrada:
• Temperatura (em graus Celsius) • Temperatura {fria, morna, quente}
• Luz do sol (expressa em uma porcentagem do máximo esperado de luz do sol)

–Saída: o Entrada:
• Quantidade estimada de turistas (expressa em porcentagem da capacidade do  
resort). • Luz do sol {nublado, parcialmente  
ensolarado, ensolarado}

o Saída:

• Turistas {baixo, médio, alto}

Aplicação 2 – Taxa de Ocupação de Resort Aplicação 2 – Taxa de Ocupação de Resort


Passo 3: Construção das regras difusas Passo 4: Máquina de inferência
•Base de conhecimento – regras (devem ser definidas por um especialista) Raciocínio Aproximado

1. Se temperatura é quente ou luz do sol é ensolarado então turistas é alto. – Escolha da estratégia de implicação


2. Se temperatura é morna e luz do sol é parcialmente ensolarado então   • Mínimo
turistas é médio.
– Escolha da estratégia de agregação
3. Se temperatura é fria ou luz do sol é nublado então turistas é baixo.
• Máximo

– Escolha do método de defuzzificação
• Operadores de união e interseção: max e min.
• Centroide
11/27/2018

Aplicação 2 – Taxa de Ocupação de Resort Aplicação 2 – Taxa de Ocupação de Resort


Passo 4: Máquina de inferência – Uso Passo 4: Máquina de inferência – Uso
Suponha a situação que foi observado: Raciocínio – Agregação dos antecedentes
– Temperatura de 19 graus Celsius.
– Luz do sol de 60%. Agregação e Ativação do antecedente

Raciocínio ‐ Fuzzificação 1. Se temperatura é quente ou luz do sol é ensolarado


temperatura

= max(0, 0,2) = 0,2
2. Se temperatura é morna e luz do sol é parcialmente ensolarado

= min(0,67,0,8) = 0,67
luz
3. Se temperatura é fria ou luz do sol é nublado

= max(0,33,0) = 0,33

turistas

Aplicação 2 – Taxa de Ocupação de Resort Aplicação 2 – Taxa de Ocupação de Resort


Passo 4: Máquina de inferência – Uso Passo 4: Máquina de inferência – Uso
Raciocínio – Implicação Raciocínio – Agregação dos resultados das regras

Regra 3
Regra 1

turistas turistas

Regra 2
turistas
11/27/2018

Aplicação 2 – Taxa de Ocupação de Resort


Passo 4: Máquina de inferência – Uso Ex. Aplicações
Raciocínio – Defuzzificação

• Mitsubishi tem um ar condicionado industrial que usa um controlador


fuzzy. Economiza 24% no consumo de energia.

• Metrô de Sendai, Japão, usa um controlador fuzzy para controlar os


vagões. Proporciona uma viagem suave em todas as condições de
terreno.

• Câmeras e gravadoras usam fuzzy para ajustar foco automático e


cancelar os tremores causados pelas mãos trêmulas.

• A Nissan possui projetos de sistemas de freio, controle de transmissão


e injetores de combustível fuzzy.

• Aplicações de software para buscar e comparar imagens por certas


regiões de pixels de interesse.

106

Exemplos
Ex. Aplicações

• Copiadora Canon ajusta a voltagem do tambor baseado na


densidade da imagem, temperatura e umidade. • Softwares para auxílio a projeto e implementação de Sistemas Fuzzy:
• InFuzzy (desenvolvido na UNISC)
• Secadora de roupa Matsushita ajusta a estratégia do • Fuzzy Toolbox do Matlab
tempo de secagem baseado no tamanho da carga e tipo
• NEFCON, NEFCLASS e NEFPROX... (desenvolvidos pela Universidade de Magdeburg)
de tecido
• disponível para download em

• Lavadoras de roupa (Daewoo, Goldstar, Hitachi, Matsushita,  • http://fuzzy.cs.uni‐magdeburg.de/


Samsung, Sony, Sharp, etc.) ajustam a estratégia de lavagem,  • http://fuzzy.cs.uni‐magdeburg.de/wiki/pmwiki.php?n=Forschung.Software
baseado no nível sujeira, tipo de tecido, na quantidade de  • SciFLT for Scilab (free)
roupa, e nível d’água. • UnFuzzy (free)
• FuzzyTech 
• Etc.
• FuzzyClips (free, API para Java)

108
11/27/2018

Bibliografia

• Terano, T., Asai, K., Sugeno, M. ‐ Fuzzy Systems Theory and its Applications 
‐ Editora Academic Press, 1992 (ISBN: 0126852456)

• Driankov, Dimiter ‐ An introduction to fuzzy control ‐ Editora Springer‐


Verlag , 1996 (ISBN: 3540606912)

• MAMDANI, E. H. Aplications of fuzzy algorithms for control of simple 
dynamic plant. Proc. IEEE 121, vol. 12, p. 1585‐1588, 1973. 

• SUGENO, M.. An introductory survey of fuzzy control. Information Sciences 
36, p. 59‐83, 1985.