You are on page 1of 49

Lgica Difusa (Fuzzy)

Prof. Josiane M. Pinheiro Ferreira

Outubro/2007
Lgica tradicional x Lgica difusa

Lgica tradicional (Aristteles)


Uma proposio = dois estados possveis (V ou F)
Pode ser insuficiente
No podemos ter valores intermedirios

Lgica fuzzy
Dualidade - coexistncia de um fato e seu oposto
Aquele homem alto ou baixo?
O sim ou no da lgica tradicional pode ser uma
resposta incompleta
Histrico

Conceito de conjunto fuzzy (1965)


Zadeh, Universidade da Califrnia Berkeley
Os recursos tecnolgicos disponveis eram incapazes
de automatizar as atividades relacionadas a problemas
industriais, biolgicos ou qumicos

Controle de uma mquina a vapor (1974)


Mamdani, Queen College Londres
Serviu de alavanca para muitas outras aplicaes
Histrico

Controle de operao de forno de cimento (1980)

Criao da Sociedade Internacional de Sistemas


Fuzzy (1984)

30% dos artigos publicados at hoje so de origem


japonesa
O problema da lgica clssica

Entre a certeza de ser e a certeza de no ser


existem diversos graus de ser

Lgica fuzzy com base nos conjuntos fuzzy tem se


mostrado mais adequada

capaz de capturar informaes vagas, em


geral descritas em ling. natural e converte-las
para o formato numrico, de fcil manipulao
pelos computadores de hoje em dia.
Lgica fuzzy
Mtodo para extrair concluses baseando-se em informaes
vagas, ambguas, qualitativas, incompletas ou imprecisas

Exemplo:
O quanto a taa est cheia ou no?
- Ela est meio cheia? ou
- Ela est meio vazia?

Uma pessoa de 1,77m alta ou baixa?


A taxa de risco para aquele empreendimento grande ou
pequena?
Representao da incerteza

Se o tempo de um investimento longo e o sistema


financeiro tem sido no muito estvel, ento a taxa
de risco do investimento muito alta

Os termos em negrito trazem informaes vagas que


so representadas atravs dos conjuntos fuzzy

Devido a esta propriedade e a capacidade de realizar


inferncias, a lgica fuzzy est sendo aplicada nas
mais diversas reas
reas de aplicaes

Sistemas especialistas
Raciocnio aproximado
Controle de processos
Linguagem natural
Robtica
Reconhecimento de padres
Processos de tomada de deciso
Teoria clssica dos conjuntos

Trata classes e objetos e suas relaes em um


universo definido

O universo pode ser discreto ou contnuo


Conjunto do nmeros inteiros de 10 a 10
U : {x / mdulo(x) 10}

Objetos de uma mesma classe so agrupados em


conjuntos
Definio de um conjunto
Por enumerao
A = conjunto que contm os elementos positivos de U
A : {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

Por caractersticas semelhantes


A : {x U / x > 0}

Pela expresso de sua funo caracterstica


Que associa a cada elemento do universo U um valor
binrio
XA(u) = 0, se x A
1, se x A
Conjunto A no universo U
XA
1 --

-10 0 10

X A(u) = 0, se x A
1, se x A
Relaes de pertinncia

Seja A : {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} e B o conjunto


dos elementos de U entre 5 e 5

Podemos destacar algumas relaes de pertinncia


4 A ou XA(4) = 1
- 6 B ou XB(-6) = 0
- 6 A ou XA(-6) = 0
- 3 B ou XB(-3) = 1
Conjuntos Fuzzy

So definidos para representarem informaes


vagas, imprecisas ou incertas
Frio, quente, vazio, cheio, alto, baixo, mdio

A teoria dos conjuntos fuzzy pode ser vista como


uma extenso da teoria clssica dos conjuntos

Mas...
Conjuntos fuzzy

O grau de pertinncia de um elemento em relao a


um conjunto fuzzy determinado por uma funo
caracterstica real, que tem como valor qualquer
valor no intervalo [0, 1]

Desta forma um homem pode pertencer ao conjunto


dos homens altos com um grau de pertinncia 0,8. O
que significa que ele no completamente alto.
Conjuntos Fuzzy

Desta forma um elemento pode pertencer a dois


conjuntos aparentemente disjuntos

Conjunto dos homens altos

Conjuntos dos homens baixos

Joo pode pertencer ao conjunto do homens altos com


um grau de pertinncia 0,3

E a o mesmo tempo Joo pode pertencer ao conjunto


do homens baixos com um grau de pertinncia 0,8
Conjuntos Fuzzy

Nos conjuntos fuzzy no existe uma fronteira bem


definida que separe os elementos que pertenam ou
no a um conjunto

Exemplos:
Conjunto dos caracteres ASCII
Conjunto dos homens altos
Se temos um caracter podemos afirmar sem discusso
se ele pertence ou no ao primeiro conjunto
Mas se tivermos um homem com 1,75m. Ele est no
segundo conjunto? E se ele tiver 1,76m?
Conjunto fuzzy

Definio: um conjunto fuzzy A definido no universo


de discurso U caracterizado por uma funo de
pertinncia A, a qual mapeia os elementos de U
para o intervalo [0, 1]

A: U => [0, 1]
Aplicabilidade

Possibilidade de pertinncia parcial dos elementos

Aplicabilidade muito maior do que a teoria clssica

Existem no mundo real vrias classe de objetos que


no possuem um fronteira bem definida entre os
elementos que pertencem e os elementos que no
pertencem a ele

Exemplo:
Pessoas jovens Doenas perigosas
Pessoas velhas Pessoas altas
Carros caros ...
Representao dos Conjuntos
Fuzzy
Depende basicamente da natureza do universo de
discurso

Universo pequeno com pequeno nmero de elementos


Representao analtica
p(x) = {0,0/-10; 0,0/-9; 0,0/-8; 0,0/-7; 0,0/-6; 0,0/-5; 0,2/-4;
0,4/-3; 0,6/-2; 0,8/-1; 1,0/0; 0,8/1; 0,6/2; 0,4/3; 0,2/4; 0,0/5;
0,0/6; 0,0/7; 0,0/8; 0,0/9; 0,0/10}

Universo de discurso grande ou contnuo


Representao grfica
Representao grfica dos
Conjuntos Fuzzy discretos
A
1 --

-10 0 10

A(u) = 0, 0 , se modulo(x) > 5


(5 modulo(x))/5, se modulo(x) <= 5
Representao grfica dos
Conjuntos Fuzzy contnuos

Baixa Alta Uma pessoa de


1 1,77m pode se
considerada
tanto 20% baixa
0.5 quanto 40% alta
0,4
0,2
0
1.4 1.5 1.6 1.7 1.8 1.9 2.0
Representao Fuzzy de
Conhecimento
Variveis lingsticas

So entidades utilizadas para representar de modo


impreciso (lingstico) um conceito ou uma varivel de
um dado problema

Admite como valores expresses lingsticas como


frio, muito grande, aproximadamente alto etc

Uma varivel lingstica pode ser representada por um


conjunto fuzzy existente no universo U
Variveis lingsticas

Para um dado elemento x do universo de discurso, o


valor da funo de pertinncia A(x) representa o
quanto este elemento satisfaz o conceito lingstico
representado pelo conjunto fuzzy

As variveis lingsticas normalmente so


representadas em termos de parties fuzzy desta
varivel

Exemplo: uma varivel lingstica Temperatura


pode ser particionada em: muito frio, frio,
quente, muito quente
Representao de uma varivel
Temperatura

Muito_frio Frio Quente Muito_quente


1

0.5

0
-10 0 10 20 30 40
Representao da Base de
Conhecimento
Normalmente, uma BC fuzzy representada por meio de regras
de produo

Regra de produo
If <antecedente> then <conseqente>

Antecedente: composto por um conjunto de condies


Conseqente: composto por um conjunto de aes ou
diagnsticos

Quando as condies da regra so satisfeitas (mesmo que


parcialmente) dizemos que a regra disparada o que determina
o processamento do conseqente da regra pelo sistema de
inferncia fuzzy
Sistemas fuzzy - Vantagens

Requer poucas regras, valores e decises

Mais variveis observveis podem ser valoradas

O uso de variveis qualitativas nos deixa mais perto


do pensamento humano

Simplifica a soluo do problema

Proporciona prottipos rpidos dos sistemas


Sistemas fuzzy - fases
Estgio de entrada
Fuzzificao: mapeia cada entrada de dados ao sistema em
uma ou mais funes de pertinncia

Processamento
As regras de um conjunto de regras (predefinidas) so
avaliadas verificando quais so aplicveis e
Quo fortemente cada regra deve ser disparada
dependendo de como foram ativadas cada f de pertinncia

Sada
Defuzzificao: calcula a sada, baseada nos valores
mapeados em funes de pertinncia de sada e em funo
das regras que foram disparadas
Sistemas fuzzy - fases
Entradas Sadas do
do sistema sistema

Funes de
fuzzifica pertinncia defuzzifi
o Conjunto de cao
regras

Avaliao
Nveis de Nveis de
pertinncia das sada
regras
Exemplo

Controle de velocidade de um ventilador


A velocidade depende da temperatura

Temperatura Velocidade Corrente relativa do


motor
Muito frio Desligado 0
Frio Devagar 15
Quente Mdia 50
Muito quente Rpida 100
Exemplo

Como a temperatura varia gradualmente do quente


para o frio
A corrente varia gradualmente do valor 50 15 A
Objetivo: Monitorar a temperatura e evitar variaes
abruptas na temperatura

Sistemas usando lgica fuzzy so desenvolvidos


para gerar variaes de sada de forma contnua e
suave
Desenvolvendo o sistema fuzzy
No momento de desenvolver um sistema baseado em
lgica fuzzy, deve-se decidir:
Como cada varivel de entrada e sada ser particionada e
Associar uma f de pertinncia para cada partio

No exemplo temos 4 fs de pertinncia para a entrada


Uma quinta (moderada) poderia ser adicionada entre frio e
quente

O nmero de fs necessrias depende da exatido


desejada para o sistema
Quanto mais curvas, mais sensibilidade, maior
complexidade
Desenvolvendo o sistema fuzzy

Sobreposio entre as funes de pertinncia


Caracteriza a capacidade de avaliar uma situao em
sistemas baseados em lgica fuzzy
Distinta dos sistemas baseados em lgica pura

A sobreposio desejvel
a chave para determinar transies suaves em um
sistema fuzzy
Permitindo mltiplas funes quase em aparente
contradio
Definindo os conjuntos fuzzy

Na fase de ajuste do sistema as funes de


pertinncia so continuamente ajustadas

Os formatos mais utilizados para funes de


pertinncia so os trapezoidais e os triangulares

Mas qualquer funo mais adequada ao caso pode


ser utilizada
Definindo os conjuntos fuzzy

Morno Quente
1

0.5

0
-10 0 10 20 30 40

Morno Quente
1

0.5

0
-10 0 10 20 30 40
Conjuntos fuzzy correspondentes
varivel Temperatura
Funes de pertinncia para a varivel de entrada
No exemplo temos apenas a varivel temperatura

Muito_frio Frio Quente Muito_quente


1

0.5

0
-10 0 10 20 30 40
Conjuntos fuzzy correspondentes
varivel Velocidade
Funes de pertinncia para a varivel de sada
No exemplo temos apenas a varivel velocidade

zero baixa mdia alta


1

0.5

0
0 20 40 60 80 100
Definindo as regras de produo
If (temperatura is muito_frio) then (velocidade is zero)

If (temperatura is frio) then (velocidade is baixa)

If (temperatura is quente) then (velocidade is mdia)

If (temperatura is muito_quente) then (velocidade is alta)

Tanto as regras como os conjuntos fuzzy so


especificados de acordo com o conhecimento de um
especialista no domnio do SE
Processo de fuzzificao
20C pode ser considerada fria ou quente
70% fria e 30% quente
Muito_frio Frio Quente Muito_quente
1

0.5

0
-10 0 10 20 30 40

Fuzzificao: transformar variveis qualitativas, com base nas


funes de pertinncia, em alguns significado para o computador
Regras ativadas
If (temperatura is muito_frio) then (velocidade is zero)

If (temperatura is frio) then (velocidade is baixa)

If (temperatura is quente) then (velocidade is mdia)

If (temperatura is muito_quente) then (velocidade is alta)


Avaliao das regras
Durante a avaliao de uma regra
Valores so computados baseados nos nveis de ativao
alcanados
Para cada uma das funes de pertinncia
Para cada uma das entradas

Estes valores so associados s regras difusas de sada

Geralmente uma f de minimizao utilizada para


determinar o valor associado a cada varivel de entrada
quando mais de uma fc de pertinncia ativada na mesma
regra
Operaes sobre conjuntos fuzzy

Interseco de dois conjuntos, corresponde a funo


fuzzy-AND
u(A AND B) = min(uA(x), uB(x))

Unio de dois conjuntos, corresponde a funo


fuzzy-OR
u(A OR B) = max(uA(x), uB(x))
temperatura velocidade

-10 40
20
Composio:

0 100
Processo de defuzzificao

Uma vez que j sabemos quais regras devem ser


ativadas

O processo de defuzzificao da sada necessrio


para:
Decifrar o significado de uma ao vaga como: a
velocidade de ser baixa e
Resolver conflitos entre regras que possam parecer
contraditrias

Um dos mtodos mais utilizados se baseia no


mtodo de determinao do centride (determinao
do centro de gravidade ou massa)
Processo de defuzzificao
1. Verificao das regras que foram ativadas

2. Processo de composio das regras disparadas

3. As reas que representam o grau de ativao de cada regra


so compostas formando uma rea resultante

4. Sobre esta rea se calcula o ponto central, baseado no clculo


do centro de massa

Assim, o nvel de ativao de cada regra age como um nvel de


ponderao no clculo final
temperatura velocidade

-10 40
20
Composio:

0 44.1 100
O projeto de sistemas de controle

Passos:

Especificaes operacionais do sistema, entradas e


sadas
Documentao dos conjuntos fuzzy para as entradas
Documentao do conjunto de regras
Determinao do mtodo de defuzzificao
Teste para a verificao do sistema, ajustando os
detalhes como requerido
Aplicaes
Hitachi (1985) controle de acelerao, frenagem, e parada
para a estrada de ferro de Sendai

Takeshi Yamakawa (1987) pndulo invertido

Laboratrio Internacional de Engenharia Fuzzy (LIFE) (1988)


cooperativa 48 companhias

Aspiradores de p controle de suco

Mquinas de lavar (Hitachi) uso otimizado de potncia, gua


e detergente

Cmera com autofoco (Canon)


Aplicaes
Ar condicionado industrial (Mitsubishi) reduz o consumo de
potncia em 24%, usa menos sensores

Outros projetos japoneses:


Reconhecimento de caracteres
Sistemas fuzzy ticos
Robs
Helicpteros comandados por voz
Sistemas de elevadores

NASA controle fuzzy para ancorar suas naves


automaticamente no espao
Perspectivas

Potencial manuseio de incertezas e controle de


sistemas complexos

Lgica fuzzy combinada com redes neurais artificiais


Capacidade de adaptao e aprendizagem

Simbiose
Novas classes de sistemas e de controladores
neurodifusos

You might also like