Você está na página 1de 31

Introduo a Sistemas Fuzzy

no Matlab e uso do Simulink


Alexandre Arduini da Silva e Oliveira
Jorge Chaves Barbosa

O que Lgica Fuzzy?
Conceito

A lgica fuzzy um conceito matemtico
surgido em 1965 a partir do conceito de
Conjuntos Fuzzy, que so conjuntos
nebulosos, ou vagos. Diferentemente dos
conjuntos clssicos, os conjuntos fuzzy
no so rgidos.

O que Lgica Fuzzy?
Conceito

A importncia desse conceito matemtico
a relevncia relativa da impreciso, e a
eficincia das respostas imprecisas em
alguns casos. A lgica fuzzy j est
presente em muitos setores produtivos,
como indstrias de aviao,
eletrodomsticos, agricultura entre outros.
O que Lgica Fuzzy?
Vantagens:

Conceitualmente fcil de ser entendida
Flexibilidade
Tolerncia a impreciso de dados
Modelagem no linear de complexidade arbitrria
Construda baseado na experincia dos
especialistas
Misturada a outras tcnicas de controle
Baseada em linguagem natural
O que Lgica Fuzzy?
Conjuntos Fuzzy

No conceito de conjuntos fuzzy, algum
elemento pode pertencer parcialmente ao
conjunto. Assim, introduziu-se termos
relativos e abstratos nos conceitos de
conjuntos.
O que Lgica Fuzzy?
Conjuntos Fuzzy

A funo que define o quanto um
elemento pertence a um conjunto a
funo de pertinncia
O que Lgica Fuzzy?
Funo de pertinncia

Curva que define como cada ponto de
entrada mapeado em um valor de grau de
pertinncia entre 0 e 1.

O que Lgica Fuzzy?
Exemplo:
Quando uma pessoa considerada gorda?
O que Lgica Fuzzy?
Inferncia Fuzzy

A inferncia fuzzy o modo como essa
lgica raciocina. O sistema de inferncia
realiza o processo de formular o
mapeamento de uma entrada em uma
sada usando a lgica fuzzy. O raciocnio
deles baseado em regras do tipo SE-
ENTO.
O que Lgica Fuzzy?
Inferncia Fuzzy
O processo de inferncia composto dos
seguintes passos:
1. Fuzzyficao das entradas:
Determinao do grau de pertinncia de cada
entrada em relao a cada conjunto fuzzy
O que Lgica Fuzzy?
Inferncia Fuzzy
2. Aplicar as regras e operadores:
Determinao de um nmero que represente o resultado
do antecedente daquela regra
Operadores AND e OR
AND min() ou prod()
OR max() ou probor() (probor(a,b) = a + b ab)

O que Lgica Fuzzy?
Inferncia Fuzzy
3. Aplicar operador de implicao:
Aplicao de pesos no resultado do antecedente
Remodelamento do conseqente em funo do valor do
antecedente
Mtodos usados
- Truncamento, atravs da funo min()
- Dimensionamento, atravs da funo prod()

O que Lgica Fuzzy?
Inferncia Fuzzy

4. Agregar todas as sadas
Combinao das sadas (fuzzy) em um nico conjunto
fuzzy
- Entradas so as funes retornadas pela implicao
- Sada um conjunto fuzzy para cada varivel de sada
Mtodos
- Mximo, atravs da funo max()
- OR probabilstico, atravs da funo probor()
- Soma, atravs da funo sum()
O que Lgica Fuzzy?
O que Lgica Fuzzy?
Inferncia Fuzzy
5. Defuzzyficao
Obtm valor numrico que representa a sada
do sistema
Mtodos:
Centride, Bisetor, Mdia dos mximos, Maior dos
mximos, Menor dos mximos

O que Lgica Fuzzy?
Inferncia Fuzzy - Esquema Geral
Lgica Fuzzy no MATLAB
Fuzzy Logic Toolbox:
Conjunto de funes construdas no
ambiente computacional numrico
MATLAB. Fornece ferramentas pra criar e
editar sistemas de inferncia fuzzy
Lgica Fuzzy no MATLAB
Editor SIF: Edita a funo de inferncia
Lgica Fuzzy no MATLAB
Membership Function Editor: Editor de funo
de pertinncia
Lgica Fuzzy no MATLAB
Rule Editor: Editor de Regras
Lgica Fuzzy no MATLAB
Rule Viewer: Visualizador de Regras
Lgica Fuzzy no MATLAB
Surface Viewer: Visualizador de Superfcie
Simulink
Ferramenta auxiliar do Matlab
especialmente desenvolvida para
simulao de processos.

Utiliza de modelos grficos e biblioteca de
conjuntos de blocos otimizados que
podem ser estendidos para aplicaes
especficas.
Simulink
Pode desenhar, simular, implementar,
testar controles, entre outras aplicaes.

Apresenta ferramentas especficas de
modelagem, desenho das tarefas e
gerao de cdigo, implementao de
algoritmos, teste e verficao.
Simulink
Criando e Trabalhando
- Com o Simulink voc pode rapidamente criar,
modelar, montar e detalhar seu sistemas
usando um conjunto compreensivo e
predefinidos de blocos.
- Fornece ferramentas para modelos
hierrquicos, gerenciamento de dados, e
customizao de subsistemas.
Simulink
Janela das bibliotecas e sub-bibliotecas
Simulink (Exemplo)
Controle de Nvel de gua
Imagine um tanque com um cano de entrada de gua e
um cano de sada de gua. Voc pode usar a vlvula
para controlar a entrada de gua, mas a sada de gua
depende do dimetro do cano e da presso do tanque.
Simulink (Exemplo)
Controle de Nvel de gua
Um controlador para o nivel de agua no tanque precisa saber o nivel
atual pra ajustar a valvula. Nosso entrada do controlador ser o
erro do nivel de agua (nivel desejado menos o atual) e a sada
ser a taxa com que a vlvula ser aberta ou fechada. O primeiro
passo pra construo do controlador fuzzy ser definir o seguinte:

1. If (nvel is bom) then (vlvula is sem_mudanas) (1)
2. If (nvel is baixo) then (vlvula is abre_rpido) (1)
3. If (nvel is alto) then (vlvula is fecha_rpido) (1)
4. If (nvel is bom) and (razo is negativa), then (vlvula is
fecha_devagar) (1)
5. If (nvel is bom) and (razo is positiva), then (vlvula is
abre_devagar) (1)

Simulink (Exemplo)
Simulink (Exemplo)
Controle de Nvel de gua
sltank tank.fis
Simulink (Exemplo)
Controle de Nvel de gua
sltanktankrule

Você também pode gostar