SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Ao se modelar sistemas (especialistas ou não) do mundo real:
Considerável parte dos dados modelados apresenta uma
característica “estável”, precisa e bem definida por natureza.
Outra parte dos dados modelados apresenta uma característica
incerta e/ou conceitualmente imprecisa.
Exemplo de dado preciso (bem definido):
• Sócrates é humano
Exemplo de dado incerto:
• Amanhã irá chover
(o dado se caracteriza através da probabilidade de ocorrência de
um evento)
Exemplo de dado conceitualmente impreciso:
• João é alto
(o dado se caracteriza pela definição do conceito de “alto”. O que
é um indivíduo/objeto “alto” ? “Alto” é um conceito que se
define subjetivamente conforme o contexto onde é apresentado
e, por isso, é um conceito impreciso)
1
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Relembremos a estrutura básica de um sistema especialista:
Os fatos e as regras do SE, não raramente, apresentarão dados dos
três tipos: precisos, incertos e conceitualmente imprecisos.
Exemplos de regras de Sistemas Especialistas
2
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Exemplos de regras de Sistemas Especialistas
3
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Exemplos de regras de Sistemas Especialistas
Você consegue identificar nos exemplos acima os dados precisos,
incertos e conceitualmente imprecisos ?
4
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Com relação aos dados precisos, o motor de inferência pode
processá-los, com eficiência, basicamente através da regra de
inferência modus ponens.
Φ → Ψ
Φ
-------------Ψ
(Inferência por modus ponens)
Com relação aos dados incertos, o motor de inferência pode
processá-los, por exemplo, utilizando a regra de inferência modus
ponens e/ou com suporte da teoria da probabilidade, através de
modelos bayesianos (probabilidade condicional).
- Fato: João tem dois filhos
- Será que ele tem dois filhos do sexo masculino ?
- Evento A (a ser provado): João tem dois filhos do sexo
masculino
P(A) = ? ⇒ P(A) = 0.25
- Evento B (é um fato) : O primeiro filho é do sexo masculino
- Sabendo que ocorreu o evento B, qual a probabilidade de
ocorrer o evento A ?
P(A | B ) = 0.50
5
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
E com relação aos dados conceitualmente imprecisos, como o
motor de inferência de um SE deve processá-los ?
Conforme anteriormente citado,
o dado conceitualmente
impreciso se define subjetivamente dependendo do contexto
considerado.
-
João é alto
O organismo tem formato de bastonete
O paciente se queimou seriamente
Há um fator gastrointestinal que pode interferir na absorção
da penicilina
Há um alto teor de alumínio naquele tipo de solo
Este é um bom filme
O preço do produto é bom
A seleção brasileira jogou muito bem
A seleção brasileira jogou bem
É um fato sabido que a forma de raciocínio humano ocorre, com
frequência, através do uso de dados e/ou informações onde
conceitos subjetivos estão presentes. Desta forma, o ser humano
emprega, com frequência, o raciocínio aproximado (approximate
reasoning) no seu esquema natural de inferência.
- (premissa 1): Se o preço está bom, vou comprar o produto
- (premissa 2): O preço, nas lojas, está por volta de $50,00
----------------------------------------------------------------------- (conclusão): Vou comprar o produto
6
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Como então modelar os dados de modo a permitir a simulação em
máquina, do esquema inferencial do raciocínio aproximado
(approximate reasoning) do ser humano ?
Uma forma de se representar/processar dados conceitualmente
imprecisos e raciocínio aproximado ocorre através do uso da
lógica difusa / conjuntos difusos (fuzzy logic / fuzzy sets)
Lofti Zadeh, considerado o “pai da lógica difusa”, caracteriza
lógica difusa (fuzzy logic) da seguinte forma:
“Perhaps the simplest way of characterizing fuzzy logic is to
say that it is a logic of approximate reasoning”
[ Fuzzy Logic and Approximate Reasoning, Synthese 30 (1975)
p. 407-428 ]
Resta portanto serem apresentados os principais conceitos da
lógica difusa / conjuntos difusos (fuzzy logic / fuzzy sets) que
permitirem “modelar” os dados para processamento via raciocínio
aproximado.
7
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Lógica Clássica: Alguns fundamentos
Para entender os conceitos básicos da lógica difusa / conjuntos
difusos (fuzzy logic / fuzzy sets) é importante entender antes
algumas noções de Lógica (Clássica). Vejamos então alguns
conceitos:
Sentença
Definição: Sentença é uma expressão linguística que veicula um
pensamento completo
O conceito/noção de sentença é o ponto de partida para o
desenvolvimento do objeto de estudo da Lógica, que podemos
resumir aqui como uma ciência que investiga a consistência ou
não de raciocínios. Resumidamente diremos que um raciocínio é
composto por várias sentenças (que expressam idéias,
pensamentos completos), e daí a importância da sentença para a
Lógica.
Exemplos de sentenças:
-
8
Que horas são ?
Feche a porta !
Hoje é 4a feira
1+1=2
Brasília é a capital da França
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Lógica Clássica: Alguns fundamentos
Sentença
O importante de uma sentença é expressar uma idéia, um
pensamento completo, independentemente da idéia/pensamento
condizer ou não com a realidade.
Dos exemplos apresentados anteriormente é possível identificar 3
tipos de sentença:
Tipos de Sentença
Interrogativa
Imperativa
Declarativa
Que horas são ?
Feche a porta !
Hoje é 4a feira
1+1=2
Brasília é a capital da França
Interrogativa
Imperativa
Declarativa
Para o estudo da Lógica, na avaliação de raciocínios, importa
apenas a análise de sentenças declarativas, pois apresentam um
valor de verdade (pelo bom senso, um sentença declarativa pode
ser verdadeira ou falsa) enquanto que sentenças interrogativas e
imperativas não apresentam valor de verdade
9
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Lógica Clássica: Alguns fundamentos
Sentença Declarativa
As sentenças declarativas podem ser analisadas matematicamente
através do uso de Teoria de Conjuntos básica:
Exemplos:
Maria é brasileira
m ∈ B
m - Maria
B – Conjuntos dos brasileiros
Os brasileiros são latinos
B – Conjunto dos brasileiros
L – Conjunto dos latinos
Brasília é a capital da França
b - Brasília
f - Capital da França
B ⊂ L
b = f
Exemplos de sentenças declarativas em sistemas especialistas:
Todo homem é mortal
(ou então: os homens são mortais)
mortal (X) :- humano(X)
Os brasileiros são latinos
latino(X) :- brasileiro(X)
Maria é brasileira
brasileiro(maria)
10
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Lógica Clássica: Alguns fundamentos
Sentença Declarativa
As sentenças declarativas além de poderem ser representadas por
conjuntos, têm a característica de apresentar um valor de verdade
“embutido” em seu enunciado. Este valor de verdade é chamado
de proposição.
Intuitivamente, ou então, pelo bom senso, assumimos que a
proposição de uma sentença declarativa assuma ou o valor de
verdade V (verdadeiro) ou então o valor de verdade F (falso)
E para a chamada Lógica Clássica este é o caso, delineado em
seus dois postulados abaixo apresentados:
Lógica clássica - Postulados
1) Princípio da não-contradição: Dados uma proposição (de uma
sentença) e sua negação, não é o caso que ambas sejam ao mesmo
tempo verdadeiras ou que ambas sejam ao mesmo tempo falsas.
2) Princípio do terceiro excluído (“Tertium non datur”): Dadas uma
proposição (de uma sentença) e sua negação, então uma delas tem
valor de verdade verdadeiro, e a outra tem valor de verdade falso
(e nada além disso !).
11
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Lógica Clássica: Alguns fundamentos
Sentença Declarativa
Considerando-se os postulados da Lógica Clássica, então, por
exemplo, a sentença
p - Maria é brasileira
p
V
F
V
F
NÃO-p
V
F
F
V
Fere o Princípio da Não-Contradição !
Fere o Princípio da Não-Contradição !
Situação possível
Situação possível
Pelo Princípio do Terceiro Excluído, não existe nenhum valor
de verdade além do verdadeiro (V) e do falso (F).
Os sistemas especialistas convencionais funcionam baseados
nestes dois princípios da Lógica Clássica, pois as sentenças
declarativas que são armazenadas na base de conhecimento
apresentam valor de verdade V (e o que não está na base de
conhecimento é assumido ter valor de verdade F). Uma consulta à
Base de Conhecimento de um SE retorna true ou false !
12
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Lógica Clássica: Alguns fundamentos
Sentença Declarativa
Consideremos
agora
uma
conceitualmente imprecisa
João é alto
sentença
declarativa
j ∈ A
j - João
A – Conjuntos dos indivíduos altos
Pela Lógica Clássica, esta sentença terá valor de verdade V ou F.
O conceito de “alto” porém apresenta imprecisão conceitual,
sendo passível de mais de uma interpretação subjetiva. João pode
ser alto dentro de um determinado contexto e não ser alto em
outro contexto.
Para gerenciar a imprecisão conceitual presente com
frequência nos dados disponíveis, é possível utilizar a
lógica difusa (fuzzy logic) que é uma lógica que irá
“gerenciar” este tipo de imprecisão. Na lógica difusa, a
proposição de uma sentença pode apresentar infinitos
valores de verdade, e não apenas o valor V ou F da Lógica
Clássica.
As sentenças declarativas podem ser representadas por
meio de conceitos da Teoria Elementar de Conjuntos.
Assim, quando uma sentença declarativa apresenta
conceito(s) impreciso(s) por natureza, utiliza-se conjunto
difuso (fuzzy set) para sua representação.
13
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Conjunto difuso (fuzzy set) - Definições intuitivas
Um conjunto difuso pode ser visto como um predicado cujos
valores de verdade recaem no intervalo unitário I = [0,1] ao invés
dos valores {0, 1} como ocorre com os conjuntos ordinários.
Um conjunto difuso A sobre um conjunto ordinário X é uma
coleção de valores de graus de pertinência de cada elemento de
X em relação ao próprio conjunto X. O grau de pertinência é um
valor real definido num intervalo I, onde normalmente tem-se I =
[0,1].
O grau de pertinência é uma forma de medir a “intensidade” de
pertinência do elemento em relação ao conjunto em questão
Exemplo: Seja X um conjunto tal que X = { a, b, g, k, y }
Considerando a Lógica Clássica temos: a ∈ X (ou seja I(a) = 1), c ∉
X (ou seja I(c) = 0), g ∈ X (ou seja I(g) = 1)
Considerando a Lógica Difusa poderíamos ter: a ∈ X (com I(a) =
0.63) e ao mesmo tempo a ∉ X (com I(a) = 0.37)
14
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Conjunto difuso (fuzzy set) - Definição formal
Seja X um conjunto servindo como universo de discurso. Um
conjunto difuso A sobre X está associado a uma função
característica
µA : X → [0,1]
µA é chamada de função de pertinência (membership
function) associada ao conjunto difuso A.
Matematicamente :
A = { (x, µA) | x ∈ X }
Esta terminologia indica, de fato, para cada x ∈ X, o grau
de pertinência µA(x) de x em relação a X.
Por isso, conjuntos difusos são particularmente úteis para
representar conceitos semânticamente imprecisos.
15
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Conjunto difuso (fuzzy set) - Exemplos
Exemplo: Seja X = { a, b, c, d, e } um universo de discurso
(discreto) e sejam A e B conjuntos difusos definidos sobre X da
seguinte forma:
A = { 1/a, .3/b, .2/c, .8/d, 0/e }
B = { .6/a, .9/b, .1/c, .3/d, .2/e }
Vamos apresentar dados conceitualmente imprecisos: suponha que
o conjunto difuso A represente pessoas altas e o conjunto difuso B
represente pessoas gordas. O que os conjuntos difusos A e B nos
dizem em relação ao universo de discurso X ?
O indivíduo a: µA(x) = 1
µB(x) = .6
Indica que é considerado sem sombra de dúvida um indivíduo alto e
também um indivíduo gordo. Porém o grau de pertinência (ou grau
de crença) que se tem que a seja gordo não é tão enfatizado (pois
vale 0.6 !!). O contexto nos leva a crer que a possa ser considerado
não gordo também !
E os indivíduos b, c, d e e ? O que os conjuntos difusos A e B nos
indicam ?
16
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Conjunto difuso (fuzzy set) - Exemplos
Exemplo: Seja X = ℜ o universo de discurso (contínuo) e seja A o
conjunto difuso definido sobre X que indica “número real próximo
de 10”
Neste caso, a imprecisão conceitual refere-se ao fato de se
tentar definir o que é um número próximo de 10
Suponha que o conjunto difuso A seja assim definido:
A = { (x, µA(x)) | µA(x) = [1 + (x – 10)2] -1 }
17
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Conjunto difuso (fuzzy set) - Exemplos
Exemplo: Seja X = ℜ o universo de discurso (contínuo) e seja A o
conjunto difuso definido sobre X que indica “uma idade jovem”
Neste caso, a imprecisão conceitual refere-se ao fato de se tentar
definir o que é uma idade em que um indivíduo é considerado
jovem. Assim, A é o conjunto difuso jovem.
Conforme a definição acima temos, por exemplo, µA(10) = 1, µA(15)
= 1, µA(25) = 1, µA(30) = .8, µA(40) = .4, µA(50) = 0
18
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Conjunto difuso (fuzzy set) - Exemplos
Exemplo: Seja X = ℜ o universo de discurso (contínuo) e seja A o
conjunto difuso definido sobre X que indica “uma temperatura de
água fria”. Seja B o conjunto difuso definido sobre X que indica
“uma temperatura de água morna”. E seja C o conjunto difuso
definido sobre X que indica “uma temperatura de água quente”.
Poderíamos definir, através das funções de pertinência abaixo
apresentadas em gráfico, os conjuntos difusos Frio, Morno e Quente.
19
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Conjunto difuso (fuzzy set) - Exemplos
Exemplo: Seja X = { 8, 20, 25, 29, 50, 65 } o universo de discurso
(discreto) representando quantidade em hectares e sejam A, B, C, D
os conjuntos difusos definidos sobre X que indicam:
A - área pequena, B – área média,
C – área grande,
D – área muito grande
Suponha a seguinte caracterização qualitativa de área (para plantio,
por exemplo) considerada por um agrônomo:
A = { .9/8, .7/20, .5/25, .2/29, 0/50, 0/65 }
B = { .3/8, .5/20, .75/25, .9/29, .1/50, 0/65 }
C = { 0/8, .15/20, .3/25, .5/29, .9/50, 1/65 }
D = { 0/8, 0/20, 0/25, .3/29, .4/50, .6/65 }
Analisando a caracterização qualitativa acima apresentada podemos
concluir, por exemplo, que uma área de 8 hectares é considerada,
pelo agrônomo, área pequena (µA(8) = .9 ) ao mesmo tempo em que
ele considera 8 hectares também uma área média (µA(8) = .3 ). Sua
inclinação maior porém, é considerar 8 hectares uma área pequena.
Que outras conclusões podem ser tiradas sobre a opinião do
agrônomo em relação a tamanho de área de plantio ?
20
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
É possível executar diversas operações sobre dois ou mais
conjuntos difusos. Limitemo-nos a verificar apenas duas
operações: união e interseção de conjuntos difusos.
União de conjuntos difusos
Sejam A e B dois conjuntos difusos definidos sobre um determinado
universo de discurso X. A união dos conjuntos difusos A e B
resultará no conjunto difuso C cuja função de pertinência é a
seguinte:
µC(x) = MAX [ µA(x), µB(x) ] = µA(x) ∨ µB(x)
Interseção de conjuntos difusos
Sejam A e B dois conjuntos difusos definidos sobre um determinado
universo de discurso X. A interseção dos conjuntos difusos A e B
resultará no conjunto difuso C cuja função de pertinência é a
seguinte:
µC(x) = MIN [ µA(x), µB(x) ] = µA(x) ∧ µB(x)
(Observação)
Normalmente o operador MAX é o operador utilizado para
união e o operador MIN é o operador utilizado para
interseção embora outros operadores existam tanto para a
união como para a interseção entre conjuntos difusos.
21
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
União e Interseção sobre Conjuntos difusos (fuzzy sets) - Exemplos
Exemplo: Seja X = { a, b, c, d, e } um universo de discurso
(discreto) e sejam A e B conjuntos difusos definidos sobre X da
seguinte forma:
A = { 1/a, .3/b, .2/c, .8/d, 0/e } (Obs.: A - pessoas altas)
B = { .6/a, .9/b, .1/c, .3/d, .2/e } (Obs.: B – pessoas gordas)
Então: C = A ∪ B = { 1/a, .9/b, .2/c, .8/d, .2/e }
D = A ∩ B = { .6/a, .3/b, .1/c, .3/d, 0/e }
Interpretação (exemplos):
... Se alguém diz a sentença...
O grau de crença nisso
que ele/ela disse é...
“o indivíduo a é alto”
“o indivíduo c é gordo”
“o indivíduo c é alto ou gordo”
“o indivíduo d é alto e gordo”
µA(a) = 1
µB(c) = .1
µC(c) = .2
µD(d) = .3
Note que C é resultado de uma operação de união (via
operador MAX) e D é resultado de uma operação de
interseção (via operador MIN)
22
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
União e Interseção sobre Conjuntos difusos (fuzzy sets) - Exemplos
Exemplo: Seja X = ℜ o universo de discurso (contínuo) e sejam A e
B conjuntos difusos assim definidos sobre X :
A – Salário em torno de $ 300”.
B – Salário razoavelmente modesto”.
23
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
União e Interseção sobre Conjuntos difusos (fuzzy sets) - Exemplos
Exemplo: (Continuação) - Suponha que desejemos caracterizar a
união dos conjuntos difusos A e B:
C = A ∪ B
A sentença (declarativa) que está sendo pronunciada será:
“Um salário na faixa de $300 ou razoavelmente modesto”
e sua caracterização qualitativa é abaixo apresentada:
24
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
União e Interseção sobre Conjuntos difusos (fuzzy sets) - Exemplos
Exemplo: (Continuação) - Suponha que desejemos caracterizar a
união dos conjuntos difusos A e B:
D = A∩ B
A sentença (declarativa) que está sendo pronunciada será:
“Um salário na faixa de $300 e razoavelmente modesto”
e sua caracterização qualitativa é abaixo apresentada:
25
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Em sistemas do mundo real frequentemente ocorrem, de forma
natural, relacionamentos entre eventos e/ou objetos no contexto
dos sistemas considerados.
Estes relacionamentos podem
apresentar a característica de serem imprecisos conceitualmente
Definição: Relacionamento Difuso (fuzzy relationship)
Sejam X e Y dois universos de discurso distintos. Um
relacionamento difuso (fuzzy relationship) sobre o par X, Y é
definido através de um conjunto difuso A sobre o Produto
Cartesiano X x Y
Exemplo: Seja X = { a, b, c } e Y = {1, 2 }
Então: X x Y = { (a,1), (a,2), (b,1), (b,2), (c,1), (c,2) }
Seja o conjunto difuso A definido sobre X x Y da seguinte forma:
A = { .1/(a,1); .6/(a,2); .9/(b,1); 1/(b,2); 0/(c,1); .2/(c,2) }
A é um relacionamento difuso (fuzzy relationship) sobre X x Y !
Suponha que X é um conjunto (universo de discurso) de pessoas, Y é
um conjunto (universo de discurso) de tipos de música e A
representa o grau de apreciação dos indivíduos de X pelos tipos
musicais de Y.
O que você conclui sobre os gostos musicais baseando-se em A ?
26
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Definição: Produto Cartesiano difuso (cross product)
Sejam A e B dois conjuntos difusos definidos sobre os universos
de discurso X e Y respectivamente. Seu Produto Cartesiano
difuso (cross product) A x B é um relacionamento difuso (fuzzy
relationship) T sobre X x Y denotado T = A x B onde
T = MIN [ µA(x), µB(x) ] = µA(x) ∧ µB(x)
Generalização: Sejam A1, A2, ..., An n conjuntos difusos
definidos sobre os universos de discurso X1, X2, ..., Xn
respectivamente. Seu Produto Cartesiano difuso (cross product)
A1 x A2 x ... An é um relacionamento difuso (fuzzy relationship)
T sobre X1 x X2 x ... Xn denotado T = A1 x A2 x ... An onde
T = MINk [ µAk(xk) ] , xk ∈ Xk , k = 1, 2, ... n
Exemplo: Sejam A = { 1/a ; .6/b ; .3/c } e B = { 1/1 ; .5/2 ; 0/3 } dois
conjuntos difusos definidos sobre os universos de discurso
X = { a, b, c } e Y = {1, 2, 3 } respectivamente. Então:
A x B = { 1/(a,1) ; .5/(a,2) ; 0/(a,3) ; .6/(b,1) ; .5/(b,2) ; 0/(b,3) ;
.3/(c,1) ; .3/(c,2) ; 0/(c,3) }
27
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Produto Cartesiano difuso (cross product)
Exemplo: Sejam A = { .9/Maria ; .4/José ; .3/Paula } e B = {
1/samba ; .6/bolero ; .2/valsa ; .8/forró } dois conjuntos difusos
definidos sobre os universos de discurso X = { Maria, José, Paula } e
Y = {samba, bolero, valsa, forró } respectivamente.
Suponha que o conjunto difuso A represente pessoas que gostam de
dançar e o conjunto difuso B represente ritmos de música agitados.
Assim, a aceptividade de uma pessoa que gosta de dançar em X com
relação a um ritmo de música de Y, poderia ser caracterizada pelo
Produto Cartesiano difuso (cross product) A x B:
A x B = { .9/(Maria,samba); .6/(Maria,bolero) ; .2/(Maria,valsa) ;
.8/(Maria,forró) ; .4/(José,samba) ; .4/(José,bolero) ;
.2/(José, valsa) ; .4/(José,valsa) ; .4/(José,forró) ;
.3/(Paula,samba) ; .3/(Paula,bolero) ; .2/(Paula,valsa) ;
.3/(Paula,forró) }
AxB
Maria
José
Paula
28
Samba
.9
.4
.3
Bolero
.6
.4
.3
Valsa
.2
.2
.2
Forró
.8
.4
.3
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Extensão Cilíndrica (cylindrical extension)
É um caso especial do Produto Cartesiano difuso
Definição: Sejam X e Y dois universos de discurso distintos e seja A
um conjunto difuso definido sobre X. Então a extensão cilíndrica
(cylindrical extension) de A em relação a X x Y, representada por Â
é um relacionamento difuso (fuzzy relationship) sobre X x Y
definido como o Produto Cartesiano difuso (cross product) de A
com Y,
 = A x Y onde:
Â(x,y) = MIN [ µA(x), µY(y) ] = µA(x) ∧ 1 = µA(x), ∀ (x,y) ∈ X x Y
Exemplo: Seja A = { 1/a ; .6/b ; .3/c } um conjunto difuso definido
sobre o universo de discurso X = { a, b, c } e seja Y = {1, 2, 3 }
outro universo de discurso. Então, por extensão cilíndrica temos:
 = { 1/(a,1); 1/(a,2); 1/(a,3);
.6/(b,1); .6/(b,2); .6/(b,3) ;
.3/(c,1); .3/(c,2); .3/(c,3) }
29
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Extensão Cilíndrica (cylindrical extension)
Exemplo: Seja A = { .9/Maria ; .4/José ; .3/Paula } um conjunto
difuso definido sobre o universo de discurso X = { Maria, José,
Paula } e Y = {samba, bolero, valsa, forró } outro universo de
discurso . Então, por extensão cilíndrica temos:
Â
Maria
José
Paula
Samba
.9
.4
.3
Bolero
.9
.4
.3
Valsa
.9
.4
.3
Forró
.9
.4
.3
Interpretação da extensão cilíndrica para o exemplo acima:
Os “dados” iniciais do problema nos mostram que existe uma
caracterização qualitativa para os elementos do universo de
discurso X através do conjunto difuso A. Por exemplo, suponha
que A significa pessoa que gosta de dançar.
Com relação ao universo Y, obviamente µY(samba) = 1,
µY(bolero) = 1, µY(valsa) = 1 e µY(forró) = 1, pois afinal estes
elementos pertencem “completamente” de fato ao conjunto Y.
Mas como caracterizar (qualitativamente), por exemplo, o grau de
satisfação das pessoas de X dançarem cada ritmo de música de Y
? Então, por extensão cilíndrica associamos o grau de satisfação
de x ∈ X em dançar (independente do ritmo) ao grau de satisfação
de x ∈ X dançar qualquer ritmo y ∈ Y (todo par ordenado (x, y)).
30
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Projeção (projection)
É um caso especial do Produto Cartesiano difuso
Definição: Sejam X e Y dois universos de discurso distintos e seja A
um conjunto difuso definido sobre X x Y. Então a projeção
(projection) de A em relação a X, representada por A°° é o conjunto
difuso A°° = ProjXA onde
µA°°(x) = Maxy [µA°°(x) ]
Exemplo: Seja X = { a, b, c } e Y = { 1, 2, 3 } e seja A um conjunto
difuso definido sobre X x Y onde:
A = { 1/(a,1); .6/(a,2); .4/(a,3); .5/(b,1); .8/(b,2); .2/(b,3);
.3/(c,1); .1/(c,2); .3/(c,3) }
a
b
c
1
1
.5
.3
Então:
ProjXA = { 1/a; .8/5; .3/c }
ProjYA = { 1/1; .8/2; .4/3 }
31
2
.6
.8
.1
3
.4
.2
.3
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Projeção (projection)
Exemplo: Sejam os universos de discurso X = {Maria, José, Paula}
e Y = {samba, bolero, valsa, forró} distintos e seja A um conjunto
difuso definido sobre X x Y da seguinte forma:
A = { .8/(Maria,samba); .4/(Maria,bolero); .2/(Maria,valsa);
.9/(Maria, forró); .25/(José,samba); .7/(José,bolero);
.6/(José,valsa); .3/(José,forró); .2/(Paula, samba);
.4/(Paula,bolero); .4/(Paula,valsa); .3/(Paula,forró) }
Interpretação semântica (qualitativa) para o conjunto difuso A: A
representa, o grau de apreciação de indivíduos do universo de
discurso X para dançar ritmos citados no universo de discurso Y. E o
que dizer ao se aplicar a operação de projeção ?
ProjXA = { .9/Maria; .7/José; .4/Paula }
ProjYA = { .8/samba; .7/bolero; .6/valsa; .9/forró }
Interpretação semântica (qualitativa) de ProjXA: Indica o grau de
satisfação em geral que cada indivíduo do universo de discurso X
tem em dançar.
Interpretação semântica (qualitativa) de ProjYA: Indica o grau de
“popularidade” que cada ritmo musical do universo de discurso Y
apresenta.
32
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Princípio da Extensão
Em muitas situações, os sistemas do mundo real precisam
manipular dados quantitativos de forma imprecisa: “próximo de
zero graus celsius”, “mais ou menos dez quilos”, “entre quinze e
vinte segundos”, “pouco acima de 80 km/h”, etc.
Estes números difusos (fuzzy numbers) podem ser representados
via conjuntos difusos, definidos convenientemente sobre o
conjunto dos números reais.
Para utilizar estes números difusos em qualquer sistema
especialista, com certeza serão necessárias efetuar operações
aritméticas tais como adição, subtração, multiplicação e divisão
com números difusos. O processo de realização de tais operações
é chamado aritmética difusa (fuzzy arithmetic).
Para que se possa efetivar a aplicação da aritmética difusa é
preciso lançar mão de um importante princípio, o chamado
princípio da extensão.
De modo geral, pode-se dizer que o princípio da extensão permite
“extender” qualquer operação pontual para operações envolvendo
conjuntos difusos.
33
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Princípio da Extensão – Definição:
Sejam X e Y dois universos de discurso distintos e seja f uma função
que mapeia X em Y,
f: X → Y tal que para cada x ∈ X, f(x) = y ∈ Y.
Seja A um conjunto difuso definido sobre o universo de discurso X.
Assim, pelo princípio da extensão, podemos definir um conjunto
difuso B = f(A) que será definido sobre o universo de discurso Y de
modo que
f(A) = ∪X [µA(x)/ f(x)]
Exemplo: Seja X = { 1, 2, 3, 4 } Y = { a, b, c, d, e }. Seja f uma
função que mapeia X em Y da seguinte forma:
f(1) = b, f(2) = c, f(3) = b, f(4) = e
Seja A um conjunto difuso definido sobre X:
A = {.9/1, .6/2, .5/3, .8/4}
(ou seja: µA(1) = .9, µA(2) = .6, µA(3) = .5, µA(4) = .8)
Então, pelo princípio da extensão, o conjunto difuso A é definido
sobre o universo de discurso Y da seguinte forma:
B = f(A) = MAX[µA(1), µA(3)] / b ∪ µA(2) / c ∪ µA(4) / e
B = f(A) = { .9/ b, .6/c, .8/e }
34
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Conjuntos Difusos (Fuzzy Sets) – Conceitos Básicos
Princípio da Extensão – Exemplo:
Exemplo: Sejam os universos de discurso X e Y e seja f: X → Y
uma função que associa os países do conjunto X com um único país
do conjunto Y onde x ∈ X é muito semelhante (em termos
econômicos, por exemplo) a y ∈ Y.
f(Brasil) = Argentina
f(Haiti) = Zâmbia
f(Uruguai) = Argentina
f(França) = Alemanha
f(Inglaterra) = Alemanha
Seja A um conjunto difuso definido sobre o universo de discurso X,
onde A indica um país que é uma potência econômica...
A = { .6/Brasil, .1/Haiti, .3/Uruguai, .8/França, .7/Inglaterra }
Como avaliar, partindo-se destes dados, o grau de importância
econômica dos países de Y ? Pelo princípio da extensão, o conjunto
difuso A é definido sobre o universo de discurso Y assim:
B = f(A) = MAX[µA(Brasil), µA(Uruguai)] / Argentina ∪
µA(Haiti) / Zâmbia ∪
MAX[µA(França), µA(Inglaterra)] / Alemanha
B = f(A) = { .6/ Argentina, .8/Alemanha, .1/Zâmbia }
35
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística – Conceitos Básicos
• No mundo real existe considerável quantidade de conhecimento
difuso (fuzzy), ou seja, conhecimento vago, impreciso, incerto,
ambíguo, inexato ou mesmo probabilístico por natureza. O
pensamento e raciocínio humano frequentemente envolve
informação difusa (fuzzy).
• De um modo geral, os sistemas especialistas computacionais
“convencionais” apresentam a implementação de seus motores de
inferência baseados em um esquema de inferência “exato”,
baseado na lógica booleana: a informação (sentença) processada
ou é verdadeira ou é falsa.
Exemplos:
João é alto
João é velho
A temperatura é alta
(ou é V ou é F)
(ou é V ou é F)
(ou é V ou é F)
Ocorre porém incerteza de natureza conceitual:
O que é, quantitativamente, um indivíduo alto ?
O que é, quantitativamente, um indivíduo velho ?
O que é, quantitativamente, uma temperatura alta ?
36
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística – Conceitos Básicos
• Motor de inferência dos Sistemas Especialistas “convencionais”
→ Modus Ponens
Φ → Ψ
Φ
-------------Ψ
(Inferência por modus ponens)
• Exemplo de regra em sistema especialista “convencional”:
Φ
Ψ
Φ’
Temperatura > 37 °C
Dosagem (de medicamento) = 15 ml
Temperatura = 36,9 °C
- Se Temperatura > 37 °C Então Dosagem = 15 ml
- Temperatura = 36,9 °C
------------------------------------------Inferência: NÃO ocorre o fato Ψ !!! Regra NÃO disparada devido o
raciocínio boolenano. O antecedente Φ não “casa” com o fato Φ’
• Conclusão: O modo de raciocínio, embora muitas vezes se
apresente envolvendo variáveis de natureza quantitativa, é melhor
“processado” pelo raciocínio humano de forma qualitativa.
37
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística – Conceitos Básicos
• O modo de raciocínio, embora muitas vezes apresente o raciocínio
envolvendo variáveis de natureza quantitativa, é melhor
“processado” pelo raciocínio humano de forma qualitativa.
• Uma variável linguística é uma variável cujos valores assumidos
não são valores numéricos, mas sim valores quantitativos, na
forma de “palavras” ou termos.
• Através das variáveis linguísticas é possível representar a forma
de raciocínio qualitativo.
Exemplo
Variável (numérica): Idade (em anos)
Possíveis valores: 5, 8, 10, 25.5, 42, 75, 34, 45.5, etc...
Variável linguística: Idade
Possíveis valores: jovem, muito jovem, meia-idade, velho,
não muito velho, mais ou menos jovem, etc.
38
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística – Conceitos Básicos
Variável Linguística - Definição formal
Uma variável linguística
(x, T(x), U, G, M) onde:
é
definida
por
uma
quíntupla
x é o nome da variável.
T(x) representa o conjunto de termos de x, ou seja, os valores que x
pode assumir, onde cada valor é representado por um conjunto
difuso.
U é o universo de discurso (numérico) sobre o qual se definem os
valores quantitativos do conjuto de termos T(x).
G é uma regra sintática (usualmente uma gramática) para gerar o
nome X dos valores de x.
M é uma regra semântica que associa a cada X o seu “significado”
M(X) que nada mais é do que um conjunto difuso definido sobre U.
39
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística – Conceitos Básicos
Variável Linguística - Exemplo
Variável Linguística
Idade
Assim:
Termo Linguístico
Muito Jovem
Jovem
Velho
x = Idade
T(x) = muito jovem ou T(x) = jovem ou T(x) = velho
U = { u | u ∈ [0, 85] }
Alguns exemplos para M(muito jovem), M(jovem),
M(velho)
40
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística – Conceitos Básicos
Variável Linguística - Exemplo
Variável Linguística Termo Linguístico
Temperatura
Muito Baixa
Baixa
Moderada
Alta
Muito Alta
Universo de Discurso (para os Termos Linguísticos):
U = { u | u ∈ [32, 40] }
41
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística – Conceitos Básicos
Variável Linguística - Exemplo
• Seja a variável linguística Temperatura definida abaixo e que
representa, qualitativamente, o “ponto de vista” de um
determinado usuário de “sistema” que envolva o processamento
de valores de temperatura.
• Observa-se, por exemplo, que 37 °C é considerada pelo usuário do
“sistema” como uma temperatura moderada, e ao mesmo tempo
também é considerada uma temperatura alta.
42
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística – Conceitos Básicos
Variável Linguística - Exemplo
• Considerando o contexto anterior, para a temperatura de 37 °C
temos:
µMuitoBaixa(37) = 0
µBaixa(37) = 0
µModerada(37) = .67
µAlta(37) = .33
µMuitoAlta(37) = 0
• Assim, o usuário do “sistema” tem uma tendência maior em
aceitar 37 °C como uma temperatura moderada, embora considere
“com menor intensidade”, que 37 °C é também uma temperatura
alta.
• É possível, por exemplo, que o usuário do “sistema” pense da
seguinte forma:
“37 °C é uma temperatura moderada, e eu tenho, numa escala
de 0 a 1 um nível de crença de 0.67 no que estou dizendo”
“Por outro lado, apesar de considerar 37 °C uma temperatura
moderada, posso considerá-la também uma temperatura alta e
meu nível de crença para esta segunda opção é de 0.33”
43
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística e Raciocínio Aproximado
• Conforme apresentado anteriormente, os sistemas especialistas
“convencionais” apresentam seu motor de inferência na maioria
dos casos baseados na regra de modus ponens “processados” via
lógica booleana, ou seja, um consequente de uma regra do sistema
especialista é “disparado” se e somente se, existir um fato na base
de conhecimento do SE que “case completamente” com o
antecedente de tal regra.
• Mas em alguns casos, o contexto desejável é que o consequente da
regra seja “disparado” ainda que o antecedente da regra não “case
completamente” com determinado fato da base de conhecimento
• Nesta situação, é desejável uma forma de raciocínio aproximado
para que o consequente da regra seja disparado. E uma forma de
se obter tal resultado consiste na modelagem “qualitativa” das
variáveis do sistema em questão, via variáveis linguísticas, ou
seja, em última instância através do uso de conjuntos difusos (pois
os termos linguísticos da variável linguística são conjuntos
difusos).
• O raciocínio aproximado pode ser entendido como uma forma de
determinação de uma solução aproximada para um “sistema
equações relacionais” onde as equações, em geral, são de natureza
qualitativa ao invés de quantitativas.
Exemplo: Se a temperatura é alta então dosagem do
medicamento deve ser de média intensidade
44
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística e Raciocínio Aproximado
• Uma forma de raciocínio aproximado passível de implementação
baseia-se na regra de inferência de modus ponens e é denominada
de modus ponens generalizado.
• Modus ponens generalizado
Sejam A, B, A’ e B’ sentenças “difusas” e seja o seguinte
relacionamento difuso (fuzzy relationship) e o seguinte fato de
natureza qualitativa:
(1) Se x é A Então y é B
(2) x é A’
Então, por inferência de modus ponens generalizado é possível
concluir:
Se x é A Então y é B
x é A’
-------------------y é B’
• Exemplo
Se um tomate está vermelho, Então ele está maduro
Um tomate está muito vermelho
------------------------------------Tal tomate está muito maduro
45
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística e Raciocínio Aproximado
• É necessário definir como será “calculada” a conclusão obtida via
modus ponens generalisado.
Se x é A Então y é B
x é A’
-------------------y é B’
• Em 1973 Zadeh propôs a assim chamada regra composicional de
inferência para se “calcular” o consequente de uma regra de
inferência via modus ponens generalisado.
• Regra composicional de inferência
Sejam R(x), R(x,y) e R(y) relacionamentos difusos (fuzzy
relationship) definidos sobre os universos de discurso X, X x Y
e Y respectivamente, onde x ∈ X e y ∈ Y.
Sejam A e B conjuntos difusos definidos sobre X e X x Y
respectivamente.
A regra composicional de inferência determina que a solução
deste “sistema de equações relacionais” R(x) = A e R(x,y) = B
é resultante em R(y) = A ° B onde A ° B é a composição de A e
B.
46
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Variável Linguística e Raciocínio Aproximado
• Regra composicional de inferência - Exemplo
Seja X = { 1, 2, 3, 4 } um universo de discurso.
Seja R(x) = A um conjunto difuso definido sobre X da seguinte
forma:
A = { 1/1, .6/2, .2/3, 0/4 }. A pode significar,
qualitativamente, um número pequeno.
Seja R(x,y) = B um relacionamento difuso (fuzzy relationship) sobre
X x X caracterizando, qualitativamente, “dois números
aproximadamente iguais” da seguinte forma:
B
1
2
3
4
1
1
.5
0
0
2
.5
1
.5
0
3
0
.5
1
.5
4
0
0
.5
1
R(y) = A ° B ? Aplicando-se a operação de composição max-min
(regra composicional de inferência) obtemos o resultado:
R(y) = maxx min { µA(x) , µB(x,y) } = { 1/1, .6/2, .5/3, .2/4 }
Exemplo de cálculo:
R(2) =
maxx [min {µA(1) , µB(1,2)}; min {µA(2) , µB(2,2)};
min {µA(3) , µB(3,2)}; min {µA(4) , µB(4,2)} ] =
maxx [.5; .6; .5; 0 ] = .6
47
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Sistemas especialistas difusos (fuzzy expert systems) são sistemas
baseados em regras tipo Se... Então... onde os antecedentes e
consequentes não são necessariamente variáveis quantitativas,
podendo assumir valores qualitativos que, conforme exposto
anteriormente, podem ser representados por variáveis linguísticas.
• O motor de inferência utilizado em sistemas especialistas difusos
pode ser implementado pela regra de inferência de modus ponens
generalisado cujo “cálculo” do resultado se baseia na regra
composicional de inferência.
• Diversos shells de sistemas especialistas que implementam
raciocínio aproximado utilizam esta estrutura. Um destes shells é
o FuzzyClips (http://www.jsc.nasa.gov/~clips/CLIPS.html)
• É importante entender o funcionamento do motor de inferência
nestes sistemas especialistas quando apresentam apenas um
antecedente numa regra distinta do SE, e quando apresentam dois
ou mais antecedentes numa regra distinta do SE.
48
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Considere as variáveis linguísticas temperatura e dosagem:
49
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Considere a seguinte regra com um antecedente e consequente(s)
(definidos de forma qualitativa)
SE temperatura é moderada
ENTÃO dosagem (do medicamento) é baixa
• Considere o seguinte fato definido de natureza qualitativa:
“A temperatura está em torno de 37,5 °C”
50
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Análise da regra e do fato qualitativo à luz do raciocínio
aproximado:
- Se temperatura é moderada
Então dosagem (do medicamento) é baixa
- A temperatura está em torno de 37,5 °C
----------------------------------(Conclusão ????)
• Inferência: modus ponens generalisado - Regra composicional de
inferência (“regra do máximo dos mínimos”)
51
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• A potência da regra anterior vale: µ ≈ 0.3571. A conclusão da
regra define uma dosagem (de medicamento) baixa. O conjunto
difuso resultante, que representará a dosagem (de medicamento) a
ser aplicada, será “calculada” aplicando-se um “corte” no valor de
µ = 0.3571 sobre o conjunto difuso dosagem baixa.
• O disparo da regra gerou como conclusão a dosagem acima
apresentada pela área hachurada
52
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Considere agora uma regra com um antecedente e um consequente
(ambos definidos de forma qualitativa)
SE temperatura é alta
ENTÃO dosagem (do medicamento) é média
• Considere o seguinte fato definido já definido anteriormente, de
natureza qualitativa:
“A temperatura está em torno de 37,5 °C”
53
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Análise da regra e do fato qualitativo à luz do raciocínio
aproximado:
- Se temperatura é alta
Então dosagem (do medicamento) é média
- A temperatura está em torno de 37,5 °C
----------------------------------(Conclusão ????)
• Inferência: modus ponens generalisado - Regra composicional de
inferência (regra do “máximo dos mínimos”)
54
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• A potência da regra anterior vale: µ ≈ 0.7857. A conclusão da
regra define uma dosagem (de medicamento) média. O conjunto
difuso resultante, que representará a dosagem (de medicamento) a
ser aplicada, será “calculada” aplicando-se um “corte” no valor de
µ = 0.7857 sobre o conjunto difuso dosagem média.
• O disparo da regra gerou como conclusão a dosagem acima
apresentada pela área hachurada :
55
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Suponha agora que um sistema especialista apresente, em sua base
de conhecimento, as duas regras acima consideradas e o fato
difuso acima considerado:
Base de Conhecimento
A) Regras
SE temperatura é moderada
ENTÃO dosagem (do medicamento) é baixa
SE temperatura é alta
ENTÃO dosagem (do medicamento) é média
B) Fato
“A temperatura está em torno de 37,5 °C”
• Analisando-se as duas regras e o fato acima podemos dizer que as
duas regras serão “disparadas” gerando como conclusão uma
dosagem (de medicamento).
• Problema: Qual o valor resultante de dosagem (de medicamento),
uma vez que as duas regras apresentadas irão ser “disparadas”
haja visto que seus antecedentes “unificam” com o fato do sistema
especialista ?
56
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Solução: Uma forma de “cálculo” adotada pelos sistemas
especialistas difusos (fuzzy expert systems) é aplicar o operador de
união ao conjunto difuso resultante na conclusão da regra
disparada.
• Assim, considerando-se o sistema especialista acima, a “conclusão
final” (dosagem de medicamento) é resultante da união dos
conjuntos difusos dosagem gerados por cada uma das regras
disparadas:
57
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Conjunto resultante Dosagem para o sistema especialista do
exemplo
• Problema: para fins práticos, qual a dosagem (em termos
numéricos) que deve ser recomendada ? Afinal, o resultado
fornecido pelo disparo das duas regras gerou um conjunto difuso,
e seria interessante informar um número único que represente a
quantidade de mililitros a ser medicada. Vamos adiar a resposta
para este problema por enquanto.
58
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
Resumo de mecanismo de Inferência – Regras com um antecedente
• Sejam x e y variáveis linguísticas e A1, A2, B1 e B2 termos
lingúísticos definidos para x e y. Seja um fato A’ um termo
linguístico definido para a variável linguística x.
• Seja o seguinte “trecho” de um sistema especialista:
Se x é A1 Então y é B1
Se x é A2 Então y é B2
x é A’
-------------------y é B’
• Suponha que o fato x é A’ consiga “unificar” com os antecedentes
x é A1 e x é A2 das duas regras, cada uma “gerando” B1’ e B2’
respectivamente
• Qual o valor de B’ ? Resposta: B’ = B1’ ∪ B2’
59
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Para analisar o comportamento de um sistema especialista difuso
com regras com mais de um antecedente, vamos considerar, além
das variáveis linguísticas temperatura e dosagem, definidas
anteriormente, a variável linguística idade abaixo apresentada:
60
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Considere a seguinte regra com dois
consequente(s) (definidos de forma qualitativa)
antecedentes
SE temperatura é alta E
idade é meia-idade
ENTÃO dosagem (do medicamento) é baixa
• Considere os seguintes fatos definidos de natureza qualitativa:
“A temperatura está em torno de 37,5 °C”
(Obs.: ver o conjunto difuso definido anteriormente)
“A idade está na faixa dos 20 e poucos anos”
61
e
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Análise da regra e dos fatos qualitativos à luz do raciocínio
aproximado:
SE temperatura é alta E
idade é meia-idade
ENTÃO dosagem (do medicamento) é baixa
A temperatura está em torno de 37,5 °C
A idade está na faixa dos 20 e poucos anos
----------------------------------(Conclusão ????)
• O primeiro fato “unifica” com o primeiro antecendente e o
segundo fato “unifica” com o segundo antecedente. Assim, a regra
é disparada.
• Como calcular a conclusão ? Neste caso:
1) Calcular a conclusão (C1) resultante do primeiro fato unificado
com o primeiro antecedente da regra (primeira inferência)
2) Calcular a conclusão (C2) resultante do segundo fato unificado
com o segundo antecedente da regra (segunda inferência)
3) Calcular a interseção (usualmente via operador MIN) entre as
conclusões C1 e C2 obtendo o resultado final.
62
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Primeira Inferência: modus ponens generalisado:
• Segunda Inferência: modus ponens generalisado:
63
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• A primeira inferência gera uma potência de disparo da regra
(Máx-Min) µ ≈ 0.7857 e a segunda inferência gera uma potência
de disparo da regra (Máx-Min) µ ≈ 0.1818. Assim:
• Consequente gerado pela primeira inferência:
• Consequente gerado pela segunda inferência:
64
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
• Conjunto resultante Dosagem para o sistema especialista do
exemplo:
• Problema: Como no exemplo anterior, qual deve ser a dosagem
(em termos numéricos) que deve ser recomendada ? Afinal, o
resultado fornecido pelo disparo das duas regras gerou um
conjunto difuso, e seria interessante informar um número único
que represente a quantidade de mililitros a ser medicada.
65
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Regra de Modus Ponens Generalizado em SE
Resumo de mecanismo de inferência
Regras com dois ou mais antecedentes
• Seja o seguinte “trecho” de um sistema especialista:
Se x é A1 E y é A2 Então z é B
x é A1’
y é A2’
---------------------------z é B’
• Suponha que o fato x é A1’ consiga “unificar” com o antecedente
x é A1 e “gerando” B1’ e o fato y é A2’ consiga “unificar” com o
antecedente y é A2 e “gerando” B2’
• Qual o valor de B’ ? Resposta: B’ = B1’ ∩ B2’
66
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação
• Vamos retomar o problema levantado anteriormente sobre a
informação que deve ser apresentada parar o usuário após o
“disparo” de regras de um sistema especialista modelado para
representar raciocínio aproximado:
Problema: para fins práticos, qual a dosagem (em termos
numéricos) que deve ser recomendada ? Afinal, o resultado
fornecido pelo disparo de regra(s) gerou um conjunto difuso, e
seria interessante informar um número único que represente a
quantidade de mililitros a ser medicada.
• Em vários casos, uma conclusão de natureza qualitattiva limita a
praticidade de uso do SE pois seu usuário pretende tomar uma
ação que envolva procedimentos quantitativos, tal como
determinar a dosagem em ml de medicamento, determinar em Us$
o montante a ser investido numa aplicação financeira, a
velocidade em Km/h a ser desenvolvida por um automóvel ou
foguete, a quantidade em Kg de herbicidas a ser aplicada numa
lavoura, etc.
• Neste caso a conclusão, apresentada de forma qualitativa (via
conjunto difuso), deve ser “mapeada” para algum valor numérico
que represente a informação qualitativa.
• O processo de se representar um conjunto difuso (qualitativo por
natureza) através de um valor numérico denomina-se
defuzificação.
67
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação
• Existem diversos métodos propostos para a implementação do
processo de defuzificação. Dois processos usualmente citados na
literatura são:
(1) Centróide ou Centro de Gravidade ou Centro de Área
Center of Gravity - COG
Center of Area - COA
(2) Média dos máximos
Mean of Maxima - MOM
68
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação
Método do Centróide
Center of Gravity (COG) ou Center of Area (COA)
• O processo de defuzificação através do Método do Centróide
(COG) pode ser formalmente assim definido:
onde X’ é o valor numérico resultante da defuzificação e U é o
universo de discurso.
• Em casos onde a “área” do conjunto difuso possa ser representada
pela soma de “subáreas” em formato de triângulos, retângulos
e/ou trapézios, o cálculo
das integrais no numerador e
denominador da expressão numérica de X’ torna-se extremamente
simples para implementação computacional.
69
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação - Método do Centróide (COG)
• Seja o processo de cálculo de defuzificação do conjunto difuso
abaixo pelo Método do Centróide:
• Problema: calcular os centróides X1’, X2’, X3’ e X4’ para
determinar o valor de X’ (valor procurado !!)
70
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação - Método do Centróide (COG)
• Cálculo do centróide da área A1:
• Procedendo de forma análoga para X2’, X3’ e X4’ obtemos:
X2’ = 3,917; X3’ = 5.500 e X4’ = 6.333
e as “subáreas” A2, A3 e A4
A2 = 1,6; A3 = 0,6 e A4 = 0,3
71
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação - Método do Centróide (COG)
• Cálculo do centróide do conjunto difuso “completo” (valor da
defuzificação):
72
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação
Método da Média dos Máximos
Mean of Maxima (MOM)
• O processo de defuzificação através do Método da Média dos
Máximos (MOM) se caracteriza pelo cálculo da média dos
elementos do universo de discurso com o valor máximo de grau
de pertinência:
onde J* é o conjunto com q elementos do universo de discurso X
que apresentam o maior valor de grau de pertinência do conjunto
difuso A definido sobre X. A é o conjunto difuso o qual se
deseja “defuzificar”.
73
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação - Método Média dos Máximos (MOM)
• No exemplo acima, o conjunto J* = {3}, pois 3 é o único
elemento de X que possui o grau de pertinência máximo (que vale
1 no caso). Assim, a defuzificação de tal conjunto vale x’ = 3.
• No exemplo acima, o conjunto J* = {1, 3, 6}, cujos elementos
apresentam o grau de pertinência máximo (que vale .7 no caso).
Assim, a defuzificação de tal conjunto vale x’ = 3,333.
74
SISTEMAS ESPECIALISTAS
Gerenciamento de Incertezas em Sistemas Especialistas
Defuzificação - Método Média dos Máximos (MOM)
• No exemplo acima, o conjunto J* é infinito pois o grau de
pertinência máximo deste conjunto difuso é .7 e existem infinitos
valores a serem considerados no intervalo [1,3]. Assim, como
fazer o cálculo do valor defuzificado ? Não há uma forma única
de cálculo:
Poder-se-ia, por exemplo utilizar os pontos extremos do
intervalo, além é claro, do valor 6 (pois µ(6) = .7) Assim
x’ = (1+3+6)/3 = 3.333
Nada impede porém de se utilizar os valores 1; 1,1; 1,2 e 6.
Assim x’ = (1 + 1,1 + 1,2 + 6)/4 = 2.325
• Para estes casos (existências de “platôs”) o critério de
defuzificação deve ficar a cargo do usuário do sistema
75
Download

iat007 - Lógica difusa (fuzy logic) e conjuntos difusos