Lógicas Difusas e Sistemas
Difusos
Prof. Valmir Macário
Introdução (1/2)
• O conhecimento humano é muitas vezes
incompleto, incerto ou impreciso.
• A IA preocupa-se com formalismos de
representação e raciocínio que permitam o
tratamento apropriado a cada tipo de
problema.
• No mundo real muitas vezes é utilizado
conhecimento incerto.
– Incertezas estocásticas.
– Incertezas léxicas.
Lógicas Difusas e Sistemas Difusos
2/77
Alto é um
conceito vago.
Introdução (2/2)
• Incertezas estocásticas
– Ex.: “A probabilidade de acertar o alvo é de 0.8”
• Incertezas léxicas
– Ex.: homens altos, dias quentes, moeda estável
– A experiência do especialista A mostra que B está
quase para ocorrer, porém, o especialista C está
convencido de que não é verdade.
• Incerteza pode ser tratada de várias formas entre
elas com Lógicas Difusas (= Nebulosas, Fuzzy) e
Redes Bayseanas.
• Os fundamentos da lógica difusa foram
estabelecidos em 1965, por Lotfi Zadeh.
Lógicas Difusas e Sistemas Difusos
3/77
História
• 1965 Seminal paper “Fuzzy Logic” por Prof. Lotfi Zadeh,
• 1970 Primeira aplicação de Lógica Fuzzy em engenharia
de controle (Europa)
• 1975 Introdução de Lógica Fuzzy no Japão
• 1980 Verificação empírica de Lógica Fuzzy na Europa
• 1985 Larga aplicação de Lógica Fuzzy no Japão
• 1990 Larga aplicação de Lógica Fuzzy na Europa
• 1995 Larga aplicação de Lógica Fuzzy nos Estados Unidos
• 2000 Lógica Fuzzy tornou-se tecnologia padrão e é
também aplicada em análise de dados e sinais de sensores.
Aplicação de Lógia Fuzzy em finanças e negócios
Lógicas Difusas e Sistemas Difusos
4/77
Nós veremos
primeiro a teoria
de base, depois
a formalização e
por último a
implementação.
Hierarquia
Sistemas Difusos (implementação)
Lógicas Difusas (formalização)
Teoria dos Conjuntos Difusos (teoria de base)
Lógicas Difusas e Sistemas Difusos
5/77
Entendendo o princípio da teoria dos
conjuntos difusos (1/4)
Curiosidade do Cotidiano:
Diálogo entre Artur e Rodrigo para decidir
“O quão rápido é um carro rápido”
Lógicas Difusas e Sistemas Difusos
6/77
Entendendo o princípio da teoria dos
conjuntos difusos (2/4)
Artur: ... então podemos criar uma categoria para
carros rápidos uRÁPIDO [x] = { velocidade  100 };
Rodrigo:
... e um carro a 99.5 km/h não é rápido?
Artur: ... vamos diminuir o limite para 99, combinado?
Rodrigo:
... ainda não. E 98.5?
Artur: Temos que parar em algum ponto !
Rodrigo:
Porque?
Artur: ... concordar em algum ponto onde os carros não
estão rápidos.
Lógicas Difusas e Sistemas Difusos
7/77
Entendendo o princípio da teoria dos
conjuntos difusos (3/4)
Rodrigo:
É verdade. Então vamos dizer que
carros abaixo de 35 km/h não são
rápidos.
Artur: ... concluímos que u RÁPIDO [x] = { velocidade  35 e
velocidade  100 }. Não, não podemos ter dois
limites para rápido. Então u RÁPIDO [x] = {
velocidade  35 }.
Rodrigo:
Não! Carros a 35 km/k são lentos para
serem considerados rápidos.
Artur: Sem problemas. 35 será o mínimo para ser
considerado rápido - não em todos os casos, e
Lógicas Difusas e Sistemas Difusos
8/77
Entendendo o princípio da teoria dos
conjuntos difusos (4/4)
Artur:
100 será a velocidade que nós dois
consideramos ser rápido. Qualquer valor entre
eles terá o seu grau de rapidez.
• Esta variação de grau de rapidez significa que alguns
carros estarão mais fortemente associados com a categoria
rápido do que outros;
•
Este grau pode assumir qualquer valor em um
determinado intervalo, não ficando restrito apenas a
PERTENCER ou NÃO PERTENCER ao conjunto;
•
Finalmente Artur e Rodrigo conseguiram entender o
princípio da teoria dos conjuntos difusos.
Lógicas Difusas e Sistemas Difusos
9/77
Conjuntos Fuzzy (1/3)
• Conjuntos com limites imprecisos
A = Conjunto de pessoas altas
Conjunto Clássico
1.0
Conjunto Fuzzy
1.0
.9
.8
Função de
pertinência
.5
1.75
Altura
(m)
1.60 1.70 1.75
Altura
(m)
Conjuntos Fuzzy (2/3)
• 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].
A:X[0,1]
• Desta forma, a função de pertinência associa a cada elemento x
pertencente a X um número real A(X) no intervalo [0,1], que
representa o grau de pertinência do elemento x ao conjunto A, isto é, o
quanto é possível para o elemento x pertencer ao conjunto A.
• Uma sentença pode ser parcialmente verdadeira e parcialmente falsa
• A(X) : x [0,1], A(X) = 0
0 < A(X) < 1
A(X) = 1
Conjuntos Fuzzy (3/3)
• Definição formal
– Um conjunto fuzzy A em X é expresso como um conjunto de pares
ordenados:
A  {( x,  A ( x)) | x  X }
Conjunto
fuzzy
Função de
pertinência
(MF)
Universo ou
Universo de discurso
Um conjunto fuzzy é totalmente caracterizado
por sua função de pertinência (MF)
Como representar um conjunto Fuzzy
num computador?
1. Função de pertinência
– Reflete o conhecimento que se tem em relação
a intensidade com que o objeto pertence ao
conjunto fuzzy
– Métodos para adquirir esse conhecimento do
especialista
– Ex: Perguntar ao especialista se vários
elementos pertencem a um conjunto
Função de Pertinência
• Várias formas diferentes
• Representadas uma função de mapeamento
• Características das funções de pertinência:
• Medidas subjetivas
• Funções não probabilísticas monotonicamente crescentes, decrescentes ou
subdividida em parte crescente e parte decrescente.
“alto” no Brasil
MFs
.8
“alto” nos EUA
.5
“alto” na Itália
.1
1.75
Altura (m)
Função de Pertinência
• Função Triangular
• Função Trapezoidal

x a c  x 
trimf ( x ; a , b , c )  max min 
,
 , 0
b a c b 


d  x 
x a
, 1,
 , 0
b a
d c  
trapmf ( x ; a , b , c , d )  max min
• Função Gaussiana
• Função Sino Generalizada

gaussmf ( x; a, b, c)  e
gbellmf ( x ; a , b , c ) 
1  x c 
 

2  
2
1
x c
1
b
2b
Função de Pertinência
(b) Trapezoidal
1
Grau de Pertinência
Grau de Pertinência
(a) Triangular
0.8
0.6
0.4
0.2
0
1
0.8
0.6
0.4
0.2
0
0
20
40
60
80
100
0
40
60
80
100
(d) Sino Gerneralizada
1
Grau de Pertinência
Grau de Pertinência
(c) Gaussiana
20
0.8
0.6
0.4
0.2
0
1
0.8
0.6
0.4
0.2
0
0
20
40
60
80
100
0
20
40
60
80
100
Partição Fuzzy
• Partição fuzzy do universo de X representando “idade”, formada pelos
conjuntos fuzzy “jovem”, “maduro” e “idoso”.
Grau de Pertinência
1.2
Jovem
Maduro
Idoso
1
0.8
0.6
0.4
0.2
0
0
10
20
30
40
50
X = Idade
60
70
80
90
Representação dos conjuntos difusos
(1/2)
• Analiticamente - universo discreto e
composto por poucos elementos.
– Ex.: Conjunto dos números inteiros pequenos
entre –10 e 10.
Lógicas Difusas e Sistemas Difusos
18/77
Representação dos conjuntos difusos
(2/2)
• Gráfico da função de pertinência (diagrama HassiEuler (H-E)) – universo contínuo ou discreto com
grande quantidade de elementos.
– Ex.: Conjunto dos números reais pequenos entre –10 e
10.
Lógicas Difusas e Sistemas Difusos
19/77
Exemplos de conjuntos difusos (1/2)
• Conjunto febre alta
– Definição analítica (discreta):
• µFA(35°C) = 0 µFA(38°C) = 0.1
µFA(41°C) = 0.9
• µFA(36°C) = 0 µFA(39°C) = 0.35 µFA(42°C) = 1
• µFA(37°C) = 0 µFA(40°C) = 0.65 µFA(43°C) = 1
– Gráfico H-E:
µ(x)
1
0
36°C
Lógicas Difusas e Sistemas Difusos
37°C
38°C
39°C
40°C
41°C
42°C
20/77
Exemplos de conjuntos difusos (2/2)
• Conjunto projetos longos
– Definição analítica (discreta):
• µPL(2) = 0.2
µPL(8) = 0.5
µPL(14) = 0.8
• µPL(4) = 0.3
µPL(10) = 0.6
µPL(16) = 0.9
• µPL(6) = 0.4
µPL(12) = 0.7
µPL(18) = 1.0
– Gráfico H-E:
Lógicas Difusas e Sistemas Difusos
21/77
Variáveis Lingüísticas
• Representa um conceito ou variável de um Problema.
• Um valor linguístico é um conjunto fuzzy.
•
•
•
•
•
•
•
Variável linguística:
– Idade
Termos primários:
– Jovem
– Velho
Universo de discurso:
– 0 – 100 anos
Hedges (modificadores)
• Termos que são usados
para modificar a forma
dos conjuntos fuzzy
– Muito, algo mais ou menos,
um pouco
• São universais
• Compostos de nome e
fórmula
• Muito:
 ( x)   A ( x)
2
M
A
• Extremamente
 ( x)   A ( x)
M
A
3
• Muito muito
• Um pouco
 ( x)   A ( x)
4
M
A
 ( x)  A ( x)
1,3
M
A
• Mais ou menos
 ( x)  A ( x)
M
A
• Indeed
 ( x)  2 *  A ( x) ,0    0,5
M
A
2
 ( x)  1  21   A ( x) ,0,5    1
M
A
2
Conjuntos difusos: operadores (1/4)
• Operações básicas sobre conjuntos fuzzy:
–
–
–
–
União
Interseção
Complemento
Negação
• Operações semelhantes a dos conjuntos
tradicionais.
Lógicas Difusas e Sistemas Difusos
24/77
Conjuntos difusos: operadores (2/4)
• Intersecção (t-norm)
– Mínimo:
– Produto:
– Soma limitada:
Lógicas Difusas e Sistemas Difusos
25/77
Conjuntos difusos: operadores (3/4)
• União (t-conorm)
– Máximo:
– Produto ou soma probabilística:
– Soma limitada:
Lógicas Difusas e Sistemas Difusos
26/77
Conjuntos difusos: operadores (4/4)
• Complemento
Lógicas Difusas e Sistemas Difusos
27/77
Isomorfismo
Lógicas Difusas e Sistemas Difusos
28/77
Representação
(a) Conjuntos Fuzzy A e B
Grau de Pertinência
A está contido em B
1
0.8
0.6
0.4
B
A
1
0.8
0.6
0.4
0.2
0
A
B
(b) Conjunto Fuzzy não “A”
1
0.8
0.6
0.4
0.2
0
(c) Conjunto Fuzzy "A ou B"
0.2
(d) Conjunto Fuzzy "A e B"
0
1
0.8
0.6
0.4
0.2
0
1
0.8
0.6
0.4
0.2
0
Regras Fuzzy
• Base de Conhecimento
• BC: regras de produção
– Se <antecedente> então <consequente>
• Antecedente: conjunto de condições
• Consequente: ações
• Os consequentes das regras disparadas são
processados em conjunto para gerar uma
resposta determinística para cada variável
de saída do sistema.
Lógicas Difusas e Sistemas Difusos
30/77
Regras Fuzzy
Consistem:
– Conjunto de condições IF
(usando conectivos and, or ou not)
– Uma conclusão THEN
– Uma conclusão opcional ELSE
Exemplo:
Velocidade [0,220]
1.
2.
Se velocidade > 100
Então DPP é 30 metros
Se velocidade < 40
Então DPP é 10 metros
Baixa, Média e alta
1.
2.
Se velocidade é alta
Então DPP é longa
Se velocidade é baixa
Então DPP é curta
Um agente inteligente com BC
Sensores
Base de
Conhecimento
entrada
Raciocínio
Lógicas Difusas e Sistemas Difusos
efetuadores
32/77
saída
Um agente inteligente difuso
BC
Sensores
entrada
Regras
Condicionais
Incondicionais
Variáveis lingüísticas
Fuzzificação
Inferência
Defuzzificação
Min-max vs. aditivas
Máximos vs. Centróide
efetuadores
Lógicas Difusas e Sistemas Difusos
33/77
saída
Módulos de um sistema difuso
• Base de conhecimento
– Regras
– Variáveis lingüísticas
• Processos do Raciocíno
– Processo de fuzzificação
– Processo de inferência
– Processo de defuzzificação
Lógicas Difusas e Sistemas Difusos
34/77
Sistema difuso – exemplo
• Determinar o tempo de irrigação de uma
plantação (em minutos), de acordo com a
temperatura (graus Celsius) e a umidade do
ar (%).
Lógicas Difusas e Sistemas Difusos
35/77
Variáveis Linguísticas (Fuzificação)
Lógicas Difusas e Sistemas Difusos
36/77
Exemplo: regras
Lógicas Difusas e Sistemas Difusos
37/77
Raciocínio: inferência (1/10)
• Transformação dos conjuntos difusos de
cada variável de saída em um único.
• Realiza a interpretação das regras da base
de conhecimento.
• Passos:
– Ativação do antecedente,
– Implicação,
– Agregação.
Lógicas Difusas e Sistemas Difusos
38/77
Raciocínio: inferência (2/10)
• Ativação do antecedente:
– Utiliza os graus de pertinência das condições
difusas, determinados na fuzzificação.
– Aplica os operadores difusos para obter o grau
de verdade das regras.
Lógicas Difusas e Sistemas Difusos
39/77
Raciocínio: inferência (3/10)
Exemplo de ativação do antecedente
• Base de Regras:
Lógicas Difusas e Sistemas Difusos
40/77
Raciocínio: inferência (4/10)
Exemplo de ativação do antecedente
•
Ativações dos antecedentes:
1.
2.
3.
4.
0,3
0,6
0,4
0
Lógicas Difusas e Sistemas Difusos
41/77
Raciocínio: inferência (5/10)
• Implicação
– Obtenção dos valores difusos de saída de cada regra.
– Obtenção de um conjunto difusos de saída para cada
regra.
– Métodos mais comuns:
Onde: C1 é um conjunto difuso de saída determinado pela
aplicação da implicação;
C é o conjunto difuso de saída existente no consequente
da regra;
é o grau de verdade da regra.
Lógicas Difusas e Sistemas Difusos
42/77
Raciocínio: inferência (6/10)
Exemplo de implicação
•
Resultados da implicação. O tempo de irrigação
deve ser:
1.
2.
3.
4.
0,3 pequeno
0,6 médio
0,4 médio
Lógicas Difusas edo
Sistemas
Difusos de inferência.
0 grande – não participará
processo
43/77
Raciocínio: inferência (7/10)
Exemplo de implicação
Lógicas Difusas e Sistemas Difusos
44/77
Raciocínio: inferência (8/10)
• Agregação:
– Agrega os conjuntos difusos obtidos na implicação.
– Obtém um único conjunto difuso, que descreve a saída
do sistema.
– Pra quê?
• Porque se espera que o sistema difuso produza uma única
decisão.
– Como?
• Normalmente se utiliza o operador de união máximo.
 x   max1 x ,...,  n x 
• Mas também pode ser utilizado, por ex., o operador de união
soma limitada.
 x   min 1, 1 x   ...   n x 
Lógicas Difusas e Sistemas Difusos
45/77
Raciocínio: inferência (9/10)
Exemplo de agregação
Lógicas Difusas e Sistemas Difusos
46/77
Raciocínio: inferência (10/10)
Observação
• Quando se utiliza o min na etapa de
implicação e o max na etapa de agregação,
diz-se que foi utilizada a técnica min-max
de inferência.
• Quando se utilizam os operadores de soma
limitada, diz-se que foi utilizada a técnica
aditiva (ou cumulativa) de inferência.
Lógicas Difusas e Sistemas Difusos
47/77
Raciocínio: defuzzificação (1/2)
• Produz um valor crisp a partir de um
conjunto difuso.
• Pra quê?
– Porque apesar de um único conjunto difuso de
saída (produzido na etapa anterior) possuir
informação qualitativa útil, normalmente
queremos uma saída crisp.
• Como?
– Existem diversos métodos.
Lógicas Difusas e Sistemas Difusos
48/77
Raciocínio: defuzzificação (2/2)
Métodos de defuzzificação
• Seja o conjunto difuso de saída
definido no universo de discurso V da
variável v.
• O valor defuzzificado
é:
• Centróide para universo de discurso contínuo
Mais
robustos
• Centróide para universo de discurso discreto
Lógicas Difusas e Sistemas Difusos
49/77
Exemplo1: Apoio à Decisão
• Projeto e funcionamento de um sistema para
determinação do consumo de combustível de
um automóvel.
– Passo (1): Variáveis de entrada = velocidade (Vel),
pneu (Pneu) Variável de saída = consumo (Con)
– Passo (2): Vel = [Baixa, Média, Alta]; Pneu =
[Velho, Novo] Con = [Baixo, Médio, Alto]
Lógicas Difusas e Sistemas Difusos
50/77
Exemplo1: Apoio à Decisão
• Passo (3):
–
–
–
–
–
–
Regra 1: Se Vel = B e Pneu = V, então Con = A.
Regra 2: Se Vel = B e Pneu = N, então Con = M.
Regra 3: Se Vel = M e Pneu = V, então Con = M.
Regra 4: Se Vel = M e Pneu = N, então Con = B.
Regra 5: Se Vel = A e Pneu = V, então Con = A.
Regra 6: Se Vel = A e Pneu = N, então Con = M.
• Passo (4):
– Adotar centro de área.
Lógicas Difusas e Sistemas Difusos
51/77
Exemplo1: Apoio à Decisão
• Para Velocidade = 35 km/h e Pneu = 1mm,
qual o Consumo?
• Fuzzificação:
Lógicas Difusas e Sistemas Difusos
52/77
Exemplo1: Apoio à Decisão
• Inferência:
• Defuzzificação:
– Usando centro de área:
• Con ≅ 11,5 km/l
53/77
Exemplo2: Controle de Processo
• Sistema de controle do nível de água em um
tanque através de uma válvula de escape.
– Se “nível de água estiver alto” então “abrir a válvula”.
– Se “nível de água estiver baixo” então “fechar a válvula”.
Lógicas Difusas e Sistemas Difusos
54/77
Exemplo2: Controle de Processo
• Qual a abertura desejada da válvula se o nível está a
1,7m?
– Fuzzyficar entrada: descobrir o valor da função de
pertinência para a entrada 1,7m.
• Caso a entrada já seja “fuzzy”, este passo é desnecessário.
Lógicas Difusas e Sistemas Difusos
55/77
• Inferência fuzzy: Transferir o valor encontrado para a saída.
Lógicas Difusas e Sistemas Difusos
56/77
Aplicações
• No caso das máquinas de lavar roupas, por
exemplo, a partir da quantidade de roupas
colocadas na máquina e o nível de sujeira, a
máquina automaticamente regula a
quantidade de água necessária para a
lavagem, o tempo de lavagem, a quantidade
necessária de sabão em pó, amaciante. O
resultado disso é o melhor aproveitamento
de recursos, economia de energia, maior
vida útil do equipamento.
Lógicas Difusas e Sistemas Difusos
57/77
Aplicações …
• Controle
–
–
–
–
Controle de Aeronave (Rockwell Corp.)
Operação do Metrô de Sendai (Hitachi)
Transmissão Automática (Nissan, Subaru)
Space Shuttle Docking (NASA)
• Otimização e Planejamento
– Elevadores (Hitachi, Fujitech, Mitsubishi)
– Análise do Mercado de Ações (Yamaichi)
• Análise de Sinais
– Ajuste da Imagem de TV (Sony)
– Autofocus para Câmera de Video (Canon)
– Estabilizador de Imagens de Video (Panasonic)
58
Aplicações
• Outros projetos japoneses:
–
–
–
–
Reconhecimento de caracteres
Sistemas fuzzy óticos
Robôs
Helicópteros comandados por voz
• NASA – controle fuzzy para ancorar suas naves
automaticamente no espaço
59
Conclusão
• Lógica difusa é uma importante ferramenta para
auxiliar a concepção de sistemas complexos, de
difícil modelagem
• Pode ser utilizada em conjunto com outras
tecnologias de ponta:
– Algoritmos Genéticos;
– Clustering;
– Redes neurais artificiais.
Lógicas Difusas e Sistemas Difusos
60/77
Referências bibliográficas
REYES, C. A. P., Lecture Notes in Computer Science 3204 Coevolutionary Fuzzy Modeling, Springer, Germany, 2004.
SANTOS, G. J. C., Tese de Mestrado, Universidade Federal de Santa
Cruz, Departamento de Ciências Exatas e Tecnológicas, Ilhéus, Bahia,
2003.
ALMEIDA, P. E. M., EVSUKOFF, A. G., Sistemas Inteligentes:
Fundamentos e Aplicações, cap. Sistemas Fuzzy, Manole, Barueru,
São Paulo, 2005.
COX, E., The FuzzySystems Handbook.
KARTALOPOULOS, S. V., Understanding Neural Networks and Fuzzy
Logic, IEEE PRESS, 1996.
KOSKO, B., Fuzzy Engineering, Prentice-Hall, 1997.
Kosko, B., Neural Networks and Fuzzy Systems, Prentice-Hall, 1992.
Lógicas Difusas e Sistemas Difusos
61/61
Download

Lógicas Difusas e Sistemas Difusos