fuzzy matlab

111
Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados. Sistemas Fuzzy com Matlab ® Rafael P. Laufer [email protected] Inteligência Artificial - Prof. Sérgio Palma Departamento de Engenharia Eletrônica e de Computação Escola Politécnica Universidade Federal do Rio de Janeiro

Upload: igorcoroli

Post on 13-Jun-2015

2.157 views

Category:

Documents


6 download

DESCRIPTION

Sistemas Fuzzy e Matlab

TRANSCRIPT

Page 1: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy com Matlab®

Rafael P. [email protected]

Inteligência Artificial - Prof. Sérgio PalmaDepartamento de Engenharia Eletrônica e de ComputaçãoEscola PolitécnicaUniversidade Federal do Rio de Janeiro

Page 2: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Introdução

Lógica FuzzyImportância relativa da precisãoRespostas imprecisas às vezes são mais eficientes

CUIDADO!1500 kg

Um peso de 1500 kg se

aproxima da sua cabeça a

27.3 m/s!1500 kg

Page 3: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Introdução

Lógica FuzzyManeira conveniente de mapear um espaço de entradas em um espaço de saídasExemplo:

dado o serviço de um restaurante, qual a gorjeta ideal ?

caixapreta

Espaço de entrada(todas as classificações de serviço possíveis)

Espaço de saída(todas as gorjetas possíveis)

classificação doserviço de hoje gorjeta de hoje

Page 4: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Introdução

Vantagens da Lógica FuzzyConceitualmente fácil de ser entendidaFlexibilidadeTolerância a imprecisão de dadosModelamento não-linear de complexidade arbitráriaConstruída baseado na experiência dos especialistasMisturada a outras técnicas de controleBaseado em linguagem natural

Page 5: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Conjunto FuzzyConjunto sem fronteiras rígidas e bem definidasEx.: dias do fim-de-semana

Possibilidade de valores de respostas “contínuas”Representação de “verdadeiro”(1) e “falso”(0) ultrapassadaValores entre 0 e 1 agora são possíveis

Diversos valores ao invés de somente dois

Sábado

Domingo Sexta-feiraSegunda-feira

Terça-feira

Quarta-feira

Quinta-feira

Dias do fim-de-semana

Page 6: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Ex.: dias do fim-de-semana

5ª 6ª Sáb. Dom. 2ª0

1

Fim

-de-

sem

ana

5ª 6ª Sáb. Dom. 2ª0

1Não-Fuzzy Fuzzy

5ª 6ª Sáb. Dom. 2ª0

1

Dias da semana

Fim

-de-

sem

ana

5ª 6ª Sáb. Dom. 2ª0

1

Dias da semana

Page 7: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Funções de Pertinência (Membership Functions)Curva que define como cada ponto da entrada é mapeado em um valor ou grau de pertinência entre 0 e 1Ex.: quando uma pessoa é considerada gorda ?

Funções de pertinência discontínua e contínua

0

1

Peso(Kg)

Grau dePertinência (µ)

Gordo (µ = 1.0)

Não é gordo (µ = 0.0) 0

1

Peso(Kg)

Definitivamentegordo (µ = 0.87)

Pouco gordo(µ = 0.14)

Page 8: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Tipos de funções de pertinência do “Fuzzy Toolbox”

0

1

0

1

trimf trapmf

0

1

0

1

gaussmf gauss2mf0

1

gbellmf

Page 9: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Tipos de funções de pertinência do “Fuzzy Toolbox”

0

1

0

1

sigmf dsigmf

0

1

0

1

zmf pimf0

1

smf

0

1

psigmf

Page 10: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Operações LógicasA AND B min(A,B)A OR B max(A,B)NOT A 1 - A

Page 11: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

0

1

0

10

1

0

1

0

1

0

10

1

0

1

Lógica dedois valores

Lógica devários valores

ANDmin(A,B)

ORmax(A,B)

NOT(1 – A)

Page 12: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Regras se-entãoUsadas para formular as expressões condicionais que englobam a lógica fuzzy

O antecedente representa uma interpretação que retorna um número entre 0 e 1O conseqüente é a designação de todo um conjunto fuzzy Bpara a variável de saída yEx.: Se o serviço é bom, a gorjeta é média

“serviço é bom” representa um número entre 0 e 1média é representada por um conjunto fuzzy

Se x é igual a A, então y é B

antecedente conseqüente

Page 13: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Regras se-entãoA entrada para uma regra é o valor da variável de entradaA saída é todo um conjunto fuzzyInterpretação das regras se-então envolvem partes:

Avaliação do antecedenteFuzzyficação da entradaAplicação de operadores fuzzy, se necessárioGera o grau de pertinência para a regra

Aplicação do resultado ao conseqüente, ou implicaçãoGrau de pertinência molda o conjunto fuzzy de saída

Page 14: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Fuzzificaçãodas entradas

Se o serviço é excelente ou a comida é deliciosa, então a gorjeta é generosa

serviço (fixo)

µ = 0.1

excelente

comida (fixo)

µ = 0.8deliciosa

Page 15: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Fuzzificaçãodas entradas

Se o serviço é excelente ou a comida é deliciosa, então a gorjeta é generosa

serviço (fixo)

µ = 0.1

excelente

comida (fixo)

µ = 0.8deliciosa

Se ( 0.1 ou 0.8 ), então a gorjeta é generosa

Aplicar operadorfuzzy OR (max)

0.1

0.8MAX() 0.8

Grau de pertinência

Page 16: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Fuzzificaçãodas entradas

Se o serviço é excelente ou a comida é deliciosa, então a gorjeta é generosa

serviço (fixo)

µ = 0.1

excelente

comida (fixo)

µ = 0.8deliciosa

Se ( 0.1 ou 0.8 ), então a gorjeta é generosa

Aplicar operadorfuzzy OR (max)

0.1

0.8MAX() 0.8

Grau de pertinência

Aplicar operadorde implicação OR (max)

Se ( 0.8 ), então a gorjeta é generosa

gorjeta (fuzzy)

generosa0.8

generosa0.8

min(0.8, generosa)

Page 17: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Bases da Lógica Fuzzy

Regras se-entãoAvaliação do antecedente

Fácil em lógica de dois valoresUsando vários valores

Se o antecedente é verdadeiro em algum grau de pertinência, o conseqüente também é verdadeiro no mesmo grau

Número de 0 a 1 é gerado (grau de pertinência)

Aplicação do resultado ao conseqüenteConjunto fuzzy de saída modificado pela função de implicação

Modificação influenciada pelo grau de pertinência

Maneiras mais comunsTruncamento, usando a função min()Dimensionamento, usando a função prod()

Page 18: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

Mapeamento dos valores de entrada usando lógica fuzzyEx.: gorjeta ideal

Entrada 1serviço (0-10)

Entrada 2comida (0-10)

Regra 1Se o serviço é ruim ou a comida é péssima, então a gorjeta é baixa

Regra 2Se o serviço é bom, então a gorjeta é média

Regra 3Se o serviço é excelente ou a comida é deliciosa, então a gorjeta é generosa

Saídagorjeta (5-15%)Σ

Entradas são números(não-fuzzy) dentro deuma faixa

Regras são processadasem paralelo

Resultado das regras éagregado e defuzzyficado

O resultado é um número(não-fuzzy) dentro de uma outra faixa

Page 19: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

Formados basicamente por 5 passosPasso 1 – Fuzzyficação das entradas

Determinação do grau de pertinência de cada entrada em relação a cada conjunto fuzzy

Entrada é um valor numérico limitadoSaída é um número entre 0 e 1

Feito de acordo com uma função de pertinência

serviço = 6

0.1 Resultado dafuzzyficação

serviço é excelente

Page 20: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

Passo 2 – Aplicar operador(es) fuzzyDeterminação de um número que represente o resultado do antecedente daquela regra

Entrada são dois ou mais valores resultados da fuzzyficaçãoSaída é um único valor entre 0 e 1

Operadores AND e ORAND – min() ou prod()OR – max() ou probor() (probor(a,b) = a + b – ab)

serviço = 6

0.1

comida = 8

0.8

deliciosa

serviço é excelente ou comida é deliciosa

0.8

Resultado dooperador fuzzy

Page 21: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

Passo 3 – Aplicar operador de implicaçãoAplicação de pesos no resultado do antecedenteRemodelamento do conseqüente em função do valor do antecedenteMétodos usados

Truncamento, através da função min()Dimensionamento, através da função prod()

serviço = 6

0.1

comida = 8

0.8deliciosa

serviço é excelente ou comida é deliciosa então gorjeta é generosa

generosagenerosa

Resultado daimplicação

Page 22: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

Passo 4 – Agregar todas as saídasCombinação das saídas (fuzzy) em um único conjunto fuzzy

Entradas são as funções retornadas pela implicaçãoSaída é um conjunto fuzzy para cada variável de saída

MétodosMáximo, através da função max()OR probabilístico, através da função probor()Soma, através da função sum()

Page 23: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

serviço = 6 comida = 8

Sistemas Fuzzy

péssimabaixa

ruimbaixa

5 15%serviço é ruim ou comida é péssima então gorjeta é baixa

Page 24: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

serviço = 6 comida = 8

Sistemas Fuzzy

péssimabaixa

ruimbaixa

5 15%serviço é ruim ou comida é péssima então gorjeta é baixa

médiamédiabom

5 15%serviço é bom então gorjeta é média

Page 25: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

serviço = 6 comida = 8

Sistemas Fuzzy

péssimabaixa

ruimbaixa

5 15%serviço é ruim ou comida é péssima então gorjeta é baixa

médiamédiabom

5 15%serviço é bom então gorjeta é média

deliciosagenerosagenerosa

excelente

5 15%serviço é excelente ou comida é deliciosa então gorjeta é generosa

Page 26: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

serviço = 6 comida = 8

Sistemas Fuzzy

péssimabaixa

ruimbaixa

5 15%serviço é ruim ou comida é péssima então gorjeta é baixa

médiamédiabom

5 15%serviço é bom então gorjeta é média

deliciosagenerosagenerosa

excelente

5 15%serviço é excelente ou comida é deliciosa então gorjeta é generosa

5 15%

Resultado daagregação

(soma)

média

5 15%é média

generosaerosa

5 15%é generosa

baixa baixa

5 15%a é baixa

Page 27: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

Passo 5 – DefuzzyficaçãoObtém valor numérico que representa a saída do sistema

Entrada é o conjunto fuzzy gerado na agregaçãoSaída é um número dentro da faixa estipulada

MétodosCentróideBisetorMédia dos máximosMaior dos máximosMenor dos máximos

5 15%

gorjeta = 13,5%Resultado da

defuzzyficação(centróide)

Page 28: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

serviço é bom então gorjeta é média

serviço é excelente ou comida é deliciosa então gorjeta é generosa

serviço é ruim ou comida é péssima então gorjeta é baixa

serviço = 6 comida = 8

bom

deliciosaexcelente

péssimaruim

1 – Fuzzyficação das entradas

Page 29: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

serviço é bom então gorjeta é média

serviço é excelente ou comida é deliciosa então gorjeta é generosa

serviço é ruim ou comida é péssima então gorjeta é baixa

serviço = 6 comida = 8

bom

deliciosaexcelente

péssimaruim

1 – Fuzzyficação das entradas 2 – Aplicação do operador fuzzy

Page 30: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

serviço é bom então gorjeta é média

serviço é excelente ou comida é deliciosa então gorjeta é generosa

serviço é ruim ou comida é péssima então gorjeta é baixa

serviço = 6 comida = 8

bom

deliciosaexcelente

péssimaruim

1 – Fuzzyficação das entradas 2 – Aplicação do operador fuzzy

médiamédia

5 15%

generosagenerosa

5 15%

baixa baixa

5 15%

3 – Aplicação de operador de implicação

Page 31: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

serviço é bom então gorjeta é média

serviço é excelente ou comida é deliciosa então gorjeta é generosa

serviço é ruim ou comida é péssima então gorjeta é baixa

serviço = 6 comida = 8

bom

deliciosaexcelente

péssimaruim

1 – Fuzzyficação das entradas 2 – Aplicação do operador fuzzy

médiamédia

5 15%

generosagenerosa

5 15%

baixa baixa

5 15%

3 – Aplicação de operador de implicação

5 15%

4 -

Agr

egaç

ão

Page 32: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Sistemas Fuzzy

serviço é bom então gorjeta é média

serviço é excelente ou comida é deliciosa então gorjeta é generosa

serviço é ruim ou comida é péssima então gorjeta é baixa

serviço = 6 comida = 8

bom

deliciosaexcelente

péssimaruim

1 – Fuzzyficação das entradas 2 – Aplicação do operador fuzzy

médiamédia

5 15%

generosagenerosa

5 15%

baixa baixa

5 15%

3 – Aplicação de operador de implicação

5 15%

4 -

Agr

egaç

ão

gorjeta = 13,5%

5 - Defuzzyficação

Page 33: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Sistema deInferência

Fuzzy

Editor de Funções de Pertinência

Visualizador de superfície

Visualizador de regras

Editor de Regras

Editor SIF

Page 34: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Page 35: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Page 36: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Page 37: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Page 38: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Page 39: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Duplo clique no ícone da variável de entrada para abrir o Editor deFunções de Pertinência

Page 40: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Duplo clique no ícone da variável de entrada para abrir o Editor deFunções de Pertinência

Nome do sistema é mostrado aqui. Pode ser mudado salvandoo sistema

Page 41: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Duplo clique no ícone da variável de entrada para abrir o Editor deFunções de Pertinência

Nome do sistema é mostrado aqui. Pode ser mudado salvandoo sistema

Menu para seleção dasfunções fuzzy

Page 42: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Duplo clique no ícone da variável de entrada para abrir o Editor deFunções de Pertinência

Nome do sistema é mostrado aqui. Pode ser mudado salvandoo sistema

Menu para seleção dasfunções fuzzy

Barra de status mostra as operações mais recentes

Page 43: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Duplo clique no ícone da variável de entrada para abrir o Editor deFunções de Pertinência

Nome do sistema é mostrado aqui. Pode ser mudado salvandoo sistema

Menu para seleção dasfunções fuzzy

Barra de status mostra as operações mais recentes

Duplo clique no diagra-ma do sistema para abrir Editor de Regras

Page 44: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Duplo clique no ícone da variável de entrada para abrir o Editor deFunções de Pertinência

Nome do sistema é mostrado aqui. Pode ser mudado salvandoo sistema

Menu para seleção dasfunções fuzzy

Barra de status mostra as operações mais recentes

Duplo clique no diagra-ma do sistema para abrir Editor de Regras

Duplo clique no ícone da variável de saída para abrir o Editor deFunções de Pertinência

Page 45: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor SIF (Sistema de Inferência Fuzzy)

Duplo clique no ícone da variável de entrada para abrir o Editor deFunções de Pertinência

Nome do sistema é mostrado aqui. Pode ser mudado salvandoo sistema

Menu para seleção dasfunções fuzzy

Barra de status mostra as operações mais recentes

Duplo clique no diagra-ma do sistema para abrir Editor de Regras

Duplo clique no ícone da variável de saída para abrir o Editor deFunções de Pertinência

Campo de edição paranomear e editar os nomes das variáveis de entrada e saída

Page 46: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Page 47: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Page 48: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Nome da variável de entrada alterado para “serviço

Page 49: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Nome da variável de entrada alterado para “serviço

Page 50: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Nome da variável de entrada alterado para “serviço

Page 51: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Nome da variável de entrada alterado para “serviço

Page 52: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Nome da variável de entrada alterado para “serviço

Nome da variável de entrada alterado para “comida”

Page 53: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Nome da variável de entrada alterado para “serviço

Nome da variável de entrada alterado para “comida”

Nome da variável de saída alterado para “gorjeta”

Page 54: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Page 55: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Page 56: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Page 57: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Page 58: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Page 59: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Área da “Palheta de Variáveis”. Clique na variável para editar suas funções

Page 60: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Área da “Palheta de Variáveis”. Clique na variável para editar suas funções

Nome, tipo da variável, alcance e o alcance mostrado são exibidos ou alterados aqui

Page 61: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Área da “Palheta de Variáveis”. Clique na variável para editar suas funções

Nome, tipo da variável, alcance e o alcance mostrado são exibidos ou alterados aqui

Barra de status mostra as operações mais recentes

Page 62: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Área da “Palheta de Variáveis”. Clique na variável para editar suas funções

Nome, tipo da variável, alcance e o alcance mostrado são exibidos ou alterados aqui

Barra de status mostra as operações mais recentes

Gráfico mostra todas as funções de perti-nência da variável

Page 63: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Área da “Palheta de Variáveis”. Clique na variável para editar suas funções

Nome, tipo da variável, alcance e o alcance mostrado são exibidos ou alterados aqui

Barra de status mostra as operações mais recentes

Gráfico mostra todas as funções de perti-nência da variável

Clique em uma curva para selecioná-la e alterar seus atributos, incluindo nome, tipo e parâmetros numéricos. Arraste o mouse para mover a curva ou alterar seu formato

Page 64: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Funções de Pertinência

Área da “Palheta de Variáveis”. Clique na variável para editar suas funções

Nome, tipo da variável, alcance e o alcance mostrado são exibidos ou alterados aqui

Barra de status mostra as operações mais recentes

Gráfico mostra todas as funções de perti-nência da variável

Clique em uma curva para selecioná-la e alterar seus atributos, incluindo nome, tipo e parâmetros numéricos. Arraste o mouse para mover a curva ou alterar seu formato

Nome, tipo e parâmetros numéricos da função são exibidos ou alterados aqui

Page 65: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Page 66: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Page 67: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Page 68: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Page 69: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Page 70: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Page 71: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Page 72: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Page 73: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Page 74: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Nome, e parâmetros numéricos da função alterados

Page 75: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Nome, e parâmetros numéricos da função alterados

Page 76: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Nome, e parâmetros numéricos da função alterados

Page 77: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Nome, e parâmetros numéricos da função alterados

Page 78: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Alcance e alcance mostrado alterados para o intervalo [0 10]

Nome, e parâmetros numéricos da função alterados

Page 79: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Page 80: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Page 81: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Page 82: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Page 83: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Page 84: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Page 85: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Regras são colocadas automaticamente usando as ferramentas gráficas

Page 86: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Regras são colocadas automaticamente usando as ferramentas gráficas

Menu de seleção das variáveis de entrada e saída

Page 87: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Regras são colocadas automaticamente usando as ferramentas gráficas

Menu de seleção das variáveis de entrada e saída

Escolha do operador fuzzy usado em cada regra

Page 88: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Regras são colocadas automaticamente usando as ferramentas gráficas

Menu de seleção das variáveis de entrada e saída

Escolha do operador fuzzy usado em cada regra

Barra de status mostra as operações mais recentes

Page 89: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Regras são colocadas automaticamente usando as ferramentas gráficas

Menu de seleção das variáveis de entrada e saída

Escolha do operador fuzzy usado em cada regra

Barra de status mostra as operações mais recentes

Negação das variáveis de entrada e/ou saída

Page 90: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Editor de Regras

Regras são colocadas automaticamente usando as ferramentas gráficas

Menu de seleção das variáveis de entrada e saída

Escolha do operador fuzzy usado em cada regra

Barra de status mostra as operações mais recentes

Negação das variáveis de entrada e/ou saída

Aqui estão os butões para deletar, criar ou modificar uma regra. Além disso, ainda é possível especificar o peso que cada regra tem no resultado final

Page 91: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Page 92: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Page 93: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Page 94: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Page 95: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Construindo o “gorjetador”

Page 96: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Regras

Page 97: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Regras

Cada linha representa uma regra. Clique no número da regra para mostrá-la na barra de status

Page 98: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Regras

Cada linha representa uma regra. Clique no número da regra para mostrá-la na barra de status

Arraste a linha para mudar os valores de entrada e gerar outro valor de saída

Page 99: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Regras

Cada linha representa uma regra. Clique no número da regra para mostrá-la na barra de status

Arraste a linha para mudar os valores de entrada e gerar outro valor de saída

Esse campo permite alterar os valores de entrada explicitamente

Page 100: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Regras

Cada linha representa uma regra. Clique no número da regra para mostrá-la na barra de status

Arraste a linha para mudar os valores de entrada e gerar outro valor de saída

Esse campo permite alterar os valores de entrada explicitamente

Barra de status mostra as operações mais recentes

Page 101: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Regras

Cada linha representa uma regra. Clique no número da regra para mostrá-la na barra de status

Arraste a linha para mudar os valores de entrada e gerar outro valor de saída

Esse campo permite alterar os valores de entrada explicitamente

Barra de status mostra as operações mais recentes

Cada coluna mostra como as variáveis de entrada e saída são usadas em cada regra. Os valores da entrada e saída são mostrados no topo

Page 102: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Regras

Cada linha representa uma regra. Clique no número da regra para mostrá-la na barra de status

Arraste a linha para mudar os valores de entrada e gerar outro valor de saída

Esse campo permite alterar os valores de entrada explicitamente

Barra de status mostra as operações mais recentes

Cada coluna mostra como as variáveis de entrada e saída são usadas em cada regra. Os valores da entrada e saída são mostrados no topo

Essa caixa mostra a agregação das saídas individuais de cada regra. A linha vermelha mostra o valor defuzzyficado

Page 103: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Regras

Cada linha representa uma regra. Clique no número da regra para mostrá-la na barra de status

Arraste a linha para mudar os valores de entrada e gerar outro valor de saída

Esse campo permite alterar os valores de entrada explicitamente

Barra de status mostra as operações mais recentes

Cada coluna mostra como as variáveis de entrada e saída são usadas em cada regra. Os valores da entrada e saída são mostrados no topo

Essa caixa mostra a agregação das saídas individuais de cada regra. A linha vermelha mostra o valor defuzzyficado

Esses butões tem a funcionalidade de mover os gráficos

Page 104: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Superfície

Page 105: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Superfície

Use o mouse para rotacionar o gráfico

Page 106: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Superfície

Use o mouse para rotacionar o gráfico

Menu de especificação das variáveis de entrada e saída

Page 107: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Superfície

Use o mouse para rotacionar o gráfico

Menu de especificação das variáveis de entrada e saída

Esse campo permite alterar a densidade da grelha do espaço de entrada

Page 108: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Superfície

Use o mouse para rotacionar o gráfico

Menu de especificação das variáveis de entrada e saída

Esse campo permite alterar a densidade da grelha do espaço de entrada

Esse campo permite alterar a entrada explicitamente para entradas não especif. na superfície

Page 109: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Superfície

Use o mouse para rotacionar o gráfico

Menu de especificação das variáveis de entrada e saída

Esse campo permite alterar a densidade da grelha do espaço de entrada

Esse campo permite alterar a entrada explicitamente para entradas não especif. na superfície

Aperte esse butão quando estiver pronto para calcular e plotar

Page 110: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Matlab® Fuzzy Toolbox

Visualizador de Superfície

Use o mouse para rotacionar o gráfico

Menu de especificação das variáveis de entrada e saída

Esse campo permite alterar a densidade da grelha do espaço de entrada

Esse campo permite alterar a entrada explicitamente para entradas não especif. na superfície

Aperte esse butão quando estiver pronto para calcular e plotar

Barra de status mostra as operações mais recentes

Page 111: Fuzzy Matlab

Copyright © 2003 Rafael P. Laufer. Todos os direitos reservados.

Referência

The MathWorks, Inc.; Fuzzy Logic Toolbox User’s Guide, version 2, Janeiro de 1999