You are on page 1of 34

Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Lógica Nebulosa: Conceito e Prática

Diego da Silva Pinheiro


Felipe Andrade de Souza Alves

Universidade do Vale do Paraiba - UNIVAP

Novembro 2018

1/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Tópicos
1 Introdução - Lógica Nebulosa
História
Por que utilizar?
Conceitos Básicos
2 Teoria dos Conjuntos Nebulosos
Introdução
Operações
Funções de Pertinência
Variáveis Linguísticas
3 Raciocínio Nebuloso
Introdução
Fuzzificação
Base de Conhecimento
Motor de Inferência
Defuzzificação
4 Aplicações
5 Referências
2/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Introdução

O mundo real é complexo; esta complexidade nasce da incerteza perante


ele. Nós, seres humanos, inconscientemente conseguimos lidar com
problemas complexos, ambíguos e incertos graças à capacidade de
reflexão. Este processo mental é possível porque nós não precisamos de
uma descrição completa do problema desde que tenhamos a capacidade
de obter um raciocínio acerca do objeto de estudo. Com o advento dos
computadores e o aumento do poder computacional com o avanço
tecnológico, engenheiros e cientistas estão mais e mais interessados na
criação de métodos e tecnologias que resolvam o problema da incerteza.
3/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

História

A origem da Lógica Nebulosa remonta à 1965 com a publicação do


artigo "Fuzzy Sets" do Prof. Lofti A. Zadeh, da Universidade da
California, Berkeley;
A síntese do seu trabalho foi ligar à rigidez do pensamento
matemático com a ambiguidade e incerteza do pensamento humano,
criando uma maneira intuitiva de expressar a realidade.
Inicialmente, a ideia não foi muito bem aceita no ocidente por
questões filosóficas. Os países orientais como Japão e Coreia do Sul
foram os primeiros à aceitarem este método, empregando-os
inicialmente na área de controle de sistemas e, posteriormente, em
inteligência artificial.
Zadeh reconheceu as limitações da precisão na área de controle de
sistemas, lançando o Princípio da Incompatibilidade (1973), que
afirma:

4/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

História

Lofti Askar Zadeh


Mestrado em Eng.Elétrica pelo MIT em 1946;
Doutorado em Eng. Elétrica pela Columbia
University em 1949;
Professor da Universidade da Califórnia,
Berkeley, desde 1959;
Referência nas áreas de Matemática Aplicada
e Ciências da Computação.

Princípio da Incompatibilidade
Conforme a complexidade de um sistema aumenta, a nossa habilidade em
fazer afirmações precisas e ainda significativas sobre o seu
comportamento diminui, até que um limiar é atingido além do qual,
precisão e significado (ou relevância) se tornam características
mutuamente exclusivas.
5/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Por que utilizar?

Emprega o Conceito de Modelagem Cognitiva: Habilidade de


codificar o conhecimento de forma similar ao modo de como os
especialistas expressam o processo de decisão. Em outras palavras,
permite a expressão da solução de uma maneira mais próxima da
linguagem natural;
Manipulação de Incertezas: Trata as incertezas de maneira
consistente e matemática;
Maior Aplicabilidade do que a Teoria Clássica: No mundo real,
várias classes de objetos não possuem fronteiras bem definidas entre
elementos que pertencem ou não à dado conjunto;
Validação Facilitada: Um sistema de inferência baseado em regras
permite uma checagem consistente;
Computação Abrangente: Existem várias soluções e
implementações baseadas em software para uso imediato.

6/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Conceitos Básicos

Universo de Discurso: Expressa todos os valores possíveis para


entrada em um sistema nebuloso;
Conjunto: Expressa uma relação do agrupamento de elementos
pertencentes a um universo de discurso;
Grau de Pertencimento: Expressa uma relação de gradual de
verdade em relação ao pertencimento de um conjunto em um
universo de discurso por um número real entre [0,1];

7/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Introdução

Para obter a formalização matemática para um conjunto nebuloso, Zadeh


baseou-se no fato de qualquer conjunto clássico pode ser definido por
uma função característica cuja definição é dada a seguir:

Conjuntos Ordinários ou "Crisp": Expressam uma noção de


pertinência absoluta: Os elementos pertencem (verdadeiro) ou não
pertencem (falso) a dado conjunto A em um universo de discurso X
cuja função característica é:
(
1 se e somente se x ∈ A
fa (x) =
0 se e somente se x ∈
/A

8/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Introdução

Entretanto, existem conjuntos cujo limite entre a pertinência e a não


pertinência é vago, com uma transição gradual entre os dois grupos:

Conjunto de Pessoas Altas


Conjunto de Carros Caros

Conjuntos Nebulosos ou "Fuzzy": Expressa um conjunto A em


um universo X regido por um grau de pertencimento dado pela
função característica abaixo:
µa (x) : X → [0, 1]
Um conjunto nebuloso pode, então, ser definido como um conjunto
ordenado de pares (Singleton):
A = {(x, µa (x))|x ∈ X }

9/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Introdução - Crisp x Fuzzy - Exemplo


Conjunto de Pessoas Altas e Carros Caros

10/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Operações

Da mesma forma que nos conjuntos clássicos nos conjuntos Fuzzy


também existem operações básicas para combinar e modificar conjuntos.
Porém, na lógica Fuzzy, estas funções são aplicadas às funções de
pertinência. É necessário entender que um certo elemento é membro de
um conjunto Fuzzy se ele atender as seguintes condições:

Estar dentro do domínio do conjunto


Possui um grau de pertinência maior que zero

Intersecção União
(µA∩B )(x) = min{µA , µB }, x ∈ U (µA∪B )(x) = max{µA , µB }, x ∈ U

Complemento Inclusão
µA0 (x) = 1 − µA (x), x ∈ U A(x) ≤ B(x)∀x ∈ U

11/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Operações - Exemplo

12/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Funções de Pertinência

Uma função de pertinência deverá refletir o conhecimento que se tem em


relação à intensidade com que um objeto pertence a um conjunto Fuzzy.
Vale salientar que as funções de pertinência podem assumir várias formas,
ficando a cargo do projetista a escolha da forma mais conveniente para a
sua aplicação. As funções de pertinência mais conhecidas são:

Função de Pertinência Triangular


Função de Pertinência Trapezoidal
Função de Pertinência Gaussiana
Função de Pertinência Sino
Função de Pertinência Discreta

13/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Funções de Pertinência - Tipos

Triangular
Necessários três pontos (a,b e c) para
definir o triangulo.
Deve existir um ponto onde o valor de
pertinência seja 1
x −a c −x
f (x) = max(min( , ), 0)
b−a c −b
Trapézio
Necessários quatro pontos (a,b,c e d)
para definir o trapézio.
Permite um intervalo onde o valor da
pertinência seja 1
x −a d −x
f (x) = max(min( , 1, ), 0)
b−a d −c
14/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Funções de Pertinência - Tipos

Gaussiana
Necessário conhecer a média e o desvio
padrão
2
1 x −c


f (x) = e 2 α

Sino
1
f (x) =
x − c 2b

1+

α

15/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Função de Pertinência - Tipos

Discreta
Não é necessário realizar cálculos, pois
para cada valor já existe uma
pertinência definida
Muito usado em aplicações embarcadas
que possuem baixo desempenho

Observações
As funções Triangular e Trapezoidal são as mais comuns pela
simplicidade;
As funções de maior ordem exigem mais recursos computacionais e
devem ser usadas apenas se necessário.

16/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Variáveis Linguísticas
São entidades utilizadas para representar de modo impreciso um
conceito ou uma variável de dado problema.
Para dado um elemento x do universo de discurso, o valor da função
de pertinência µa (x) representa o quanto este elemento satisfaz o
conceito linguístico representado pelo conjunto Fuzzy.
Por exemplo, uma variável linguística Temperatura admite termos
Baixa, Média e Alta:

17/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Variáveis Linguísticas - Exemplos

Se a velocidade é alta e a distância é pequena.


Então o tempo de viagem é curto

Se o dinheiro é médio e o número de pessoas é alto.


Então o risco é normal.

Se o projeto é curto e o custo é baixo


Então o risco é reduzido.

Variáveis Linguísticas em AZUL


Termos Linguísticos em VERMELHO

18/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Termos Linguísticos

Generalizando, os termos linguísticos podem ser sentenças em uma


linguagem especificada construídas através de diferentes tipos:

Termos Primários: Alto, baixo, pequeno, médio, grande e etc.


Conectivos Lógicos: e, não, ou e etc.
Qualificadores: Muito, pouco, levemente, ligeiramente, bastante e
etc.
Delimitadores: Como, parênteses e etc.

Diferentes termos linguísticos, especialmente os qualificadores,


alteram os valores dos graus de pertinência.

19/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Termos Linguísticos - Qualificadores

Os Qualificadores ou Hedges possuem o mesmo papel que os


advérbios e modificam os gráficos de uma função de pertinência em
um conjunto nebuloso. Abaixo, segue um exemplo:

20/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Introdução - Sistemas Especialistas

Definição: Sistemas especialistas empregam um determinado


conhecimento (proveniente de especialistas do domínio do problema)
e regras para lidar com o mesmo no intuito de apresentar conclusões
ou resolver problemas, emulando a habilidade de decisão de um
especialista humano;
Os elementos que compõem um sistema especialista são
basicamente:

Base de Conhecimento: Banco de informações colhidas dos


especialistas sobre o domínio em estudo contendo os
elementos e formas de condução para identificação e solução
de um problema;
Mecanismo de Inferência: Atua como um processador,
trabalhando com as informações contidas na base de
conhecimento em função dos dados do problema (contexto)

21/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Introdução - Fases do Raciocínio Nebuloso

O processamento de um sistema nebuloso consiste nas seguintes fases:

1 Processo de mapeamento das variáveis linguísticas com os


respectivos termos linguísticos e funções de pertinência;
2 Obtenção dos valores numéricos de cada conjunto Fuzzy;
3 Processamento de cada valor de entrada pela sua respectiva
função de pertinência gerando um grau de pertinência;
4 Agregação dos graus de pertinência calculados por meios de
regras de produção;
5 Obtenção de um valor numérico a partir da base de
conhecimento ou conjunto de instruções;
6 Interpretação dos resultados.

22/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Introdução - Componentes de um Sistema Nebuloso

23/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Fuzzificação
Definição: Transforma as variáveis de entrada em conjuntos
nebulosos que representam incertezas. Em outras palavras,
transforma informação quantitativa em informação qualitativa,
através de um processo de generalização. Nesta etapa, os valores
numéricos são transformados em graus de pertinência para um valor
linguístico.

Ex: Temperatura em 20ºC - Pert 0.7(Frio) e 0.3(Quente)


24/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Fuzzificação - Exemplo Altura

Ex: Uso do Trapézio para criar uma função de pertinência


relacionada à classificação de pessoas altas.

25/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Base de Conhecimento

A base de Conhecimento de um sistema Fuzzy é essencialmente


composta por dois componentes:
Base de Dados: Contém informações sobre os parâmetros das
funções de pertinência, operadores de agregação e informações
relativas ao modelo de inferência;
Base de Regras: Contém as regras Fuzzy que representam o
conhecimento do sistema;
26/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Base de Conhecimento - Base de Regras

Após as variáveis linguísticas serem interpretadas através da


fuzzificação, a próxima etapa será a descrição das situações nas
quais existem reações através de regras de produção: O famoso
se...então. Cada regra na saída especifica uma ou várias conclusões.

IF <conjunto de condições> THEN <ações>


ou
IF <precedentes> THEN <consequentes>

A obtenção do consequente global (ou precedente global) a partir de


cada consequente individual (ou precedente individual) é conhecida
como agregação de regras. Essencialmente, existem duas formas
de agregação de regras:

27/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Base de Conhecimento - Base de Regras

Sistemas de Regras Conjuntivas: Neste sistema, as regras são


conectadas pelos conectivos E e a saída agregada é encontrada pela
intersecção de todos os consequentes individuais de cada regra

y = y 1 E y 2 E ... E y n ou y = y 1 ∩ y 2 ∩ ... ∩ y n
µy (x) = min(µy 1 (x), µy 2 (x), ..., µy n (x))

Sistemas de Regras Disjuntivas: Neste sistema, as regras são


conectadas pelos conectivos OU e a saída agregada é encontrada
pela união de todos os consequentes individuais de cada regra

y = y 1 OU y 2 OU ... OU y n ou y = y 1 ∪ y 2 ∪ ... ∪ y n
µy (x) = max(µy 1 (x), µy 2 (x), ..., µy n (x))

28/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Motor de Infererência

Definição: Mapeamento de uma dada entrada para uma saída


utilizando lógica Fuzzy, ou seja, tendo os métodos de fuzzificação,
regras que agirão sobre os consequentes conforme o operador
utilizado. Os modelos de inferência mais difundidos são os modelos
de Mamdani e de Sugeno, e os que difere é o método que obtém o
valor da saída.

Mamdani Sugeno
Mais intuitivo; Mais eficiente;
Possui aceitação maior; Mais flexível;
MISO ou MIMO; Apenas MISO;
Mais indicado para a linguagem Mais indicado para análise
humana. matemática.

29/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Defuzzificação

Definição: Processo utilizado para converter o conjunto difuso de


saída em um valor crisp correspondente através de um dos métodos
de defuzzificação. Em outras palavras, a defuzzificação é onde os
valores Fuzzy são convertidos em números reais tendo como saída
um conjunto matematicamente definido. Os métodos mais comuns
são:

Método do Critério Máximo


Método da Média dos Máximos
Método do Centro de Gravidade

e vários outros.... Centro Geométrico, Centroide, Máxima


Pertinência, Média Ponderada, Último dos Máximos, Primeiro
dos Máximos e etc.

30/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Defuzzificação - Tipos Mais Comuns

Critério Máximo
É um dos métodos mais simples de
defuzzificação
Sua saída é o valor correspondente ao
conjunto que tem maior grau de
pertinência

Média dos Máximos


A classe de saída é determinada a
partir do valor máximo entre os
máximos de cada conjunto
Xn
max(xAi ∗ µAi (x))
i=1
MOM = n
X
µAi (x)
i=1
31/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Defuzzificação - Tipos Mais Comuns


Centro de Gravidade
Este método de defuzzificação encontra um ponto que representa o
centro de gravidade do conjunto nebuloso agregado A no intervalo
[a,b]
Uma estimativa razoável pode ser obtida através do cálculo sobre
uma amostra de pontos

32/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Aplicações Comerciais

Metro Sendai: 16 estações e 13,5km de trilhos, desenvolvido pela


Hitachi;
Lavadoras de roupa medem peso e sujeira das roupas para avaliar
programa de lavagem;
Máquinas fotográficas comparam imagens para diminuir tremidas;
Aspiradores de pó medem quantidade de pó para variar potência de
sucção;
Fornos de microondas medem temperatura, umidade e forma dos
elementos para controlar tempo;
Ar condicionado mede a temperatura ambiente e preferências dos
usuários;
Sistemas ABS medem deslizamento e travamento das rodas para
controlar freios;
Fujitec desenvolveu um controle de elevadores para reduzir o tempo
de espera.
33/34
Introdução - Lógica Nebulosa Teoria dos Conjuntos Nebulosos Raciocínio Nebuloso Aplicações Referências

Referências

1 www.logicafuzzy.com.br/wp-content/uploads/2013/04/uma_
introducao_a_logica_fuzzy.pdf
2 www.pucsp.br/~logica/Fuzzy.htm
3 professor.ufabc.edu.br/~ronaldo.prati/
InteligenciaArtificial/AulaFuzzy.pdf
4 www.inf.ufsc.br/~barreto/trabaluno/IANebulosos.pdf
5 www.marinha.mil.br/spolm/sites/www.marinha.mil.br.
spolm/files/033.pdf
6 jeiks.net/wp-content/uploads/2013/10/IntArt_Fuzzy.pdf
7 docs.ufpr.br/~volmir/TP034_TPO.html
8 www.sjsu.edu/faculty/watkins/fuzzysets.htm

34/34