Fuzziness: sorellastra
dell’incertezza o primadonna ?
Pietro Baroni
Dip. di Elettronica per l’Automazione
Università di Brescia
Un termine fuzzy
Vaghezza
 Gradualità
 Verità parziale
 Logica multivalore

 Incertezza ?
Fuzzy storia






Intuizioni sparse e isolate da circa un secolo
Sistematizzazione by Zadeh (1965-...)
Resistenze e scetticismo dagli inizi
ai giorni nostri
Salvata dai giapponesi ...
Successo applicativo e commerciale
Maturazione scientifica e tecnologica tuttora in
corso
Fuzzy malintesi
Fuzzy pensiero (B. Kosko)
 Fuzzy logic come tuttologia

Tutto quello che si fa con i fuzzy si può fare
con tecniche più tradizionali
(e allora cosa avete aspettato fino adesso ?)
 La fuzzy logic non ha fondamenti teorici
(centinaia di articoli teorici di illustri studiosi)

Fuzzy applicazioni
Lavatrici
 Camcorder
 Cambio automatico
 Cementificio
 Metropolitana
 .............

Crisp set su dominio discreto
Crisp set su dominio discreto
1
0
Rossi
Bianchi
Verdi
Baroni
Crisp set su dominio continuo
Crisp set
Definizione tramite un predicato booleano
{t | t > 0 AND t < 100}
 La funzione caratteristica e’ una funzione
discontinua con soli due possibili valori

1
0
100
Inadeguatezza dei crisp set


Non sempre i predicati booleani (e le funzioni
discontinue) sono un buon modello della realtà
Insieme delle temperature confortevoli
{t | t > 18 AND t < 28} ??
1
0
18
28
Fuzzy set

Alcuni insiemi sono meglio definiti da funzioni di
appartenenza continue, quindi anche il relativo
predicato non è più booleano ma “fuzzy”
1
0
15
18
28
35
Fuzzy set su dominio
continuo
Fuzzy set su dominio discreto
Fuzzy set su dominio discreto
1
0
Rossi
Bianchi
Verdi
Baroni
In una parola ...



Crisp set C:
C: D  {0, 1}
C(x) è booleana
Fuzzy set F:
F: D  [0...1]
F(x) ha valori reali
Un “piccolo” salto formale,
un enorme salto concettuale
Operatori base sui fuzzy set

Intersezione:
A  B(x) = min (A(x) , B(x))

Unione:
A  B(x) = max (A(x) , B(x))

Complemento
Ã(x) = 1 - A(x)
Relazioni tra fuzzy set

Equivalenza:
A = B  A(x) = B(x) xD

Inclusione:
A  B  A(x) < B(x) xD
Casi limite

Appartenenza booleana all’universo:
x, D(x) = 1

Definizione di insieme vuoto:
x, (x) = 0

Vale che
~
D
Conferme e novità
La doppia negazione rimane idempotente
 Rimangono le leggi di De Morgan

ma
AÃD
AÃ
Sparisce il principio del terzo escluso
(e di non contraddizione)
Che altro sui fuzzy set ?






Fuzzy numbers (circa 3 per circa 2 = ?)
Fuzzy relations (1DM vale poco meno di 1000 £)
Fuzzy matrici
Fuzzy grafi
Fuzzy regressione
.....
Fuzzy logic
 Fuzzy control

Il mondo del vero e del falso
E’ un modello del nostro modo di
ragionare tra i più antichi ed influenti
 E’ palesemente inadeguato rispetto alla
maggior parte dei problemi che
quotidianamente affrontiamo

Il mondo del vero e del falso
Proposizione + Valore di verità
Soggetto + Attributo + Valore attributo
(qualitativo o quantitativo)
{TRUE, FALSE}
Lo schema base dell’inferenza
Conoscenza universale
“Gli uomini sono mortali”
Conoscenza particolare
“Socrate è uomo”
Regola di inferenza
Sillogismo
Conclusione
“Socrate è mortale”
L’imprecisione
Proposizione + Valore di verità
Soggetto + Attributo +
Set di valori ammissibili
(qualitativi o quantitativi)
{TRUE, FALSE}
La vaghezza (fuzziness)
Proposizione + Valore di verità
Soggetto + Attributo +Valore attributo
(qualitativo)
[0, 1]
(o un altro set ordinato
con più di due elementi)
L’incertezza
Proposizione + Valore di verità +
Grado di convinzione
Il grado di convinzione è una proprietà
della coppia proposizione-valore di verità
 Esso rappresenta uno stato mentale
(“Quanto ci credo”) e non uno stato del
mondo (“Quanto è vero”)

Fuzziness vs. Probabilità
Bicchiere d’acqua di montagna:
Potabile(B) = 1
P(Potabile, B) = 1
Fuzziness vs. Probabilità
Bicchiere d’acqua di mare:
Potabile(B) = 0.4 (o comunque minore di 1)
P(Potabile, B) = 1
Fuzziness vs. Probabilità
?
Estrazione
Bicchiere d’acqua estratto:
Potabile(B) = chi lo sa ? (dubbio tra 0 o 1 in questo caso)
P(Potabile, B) = 0.9
Fuzziness vs. Probabilità
?
Potabile(B) = 0.4
P(Potabile, B) = 0.4
Fuzziness vs. Probabilità:
il caso più generale
?
Estrazione
Potabile(B) = chi lo sa ? (potrebbe essere 0, 0.4 o 1 in questo caso)
P(Potabile(B) = 1) = 0.5
P(Potabile(B) = 0.4) = 0.2
P(Potabile(B) = 0) = 0.3
Fuzzy logic
Narrow vs. broader sense
 Broader sense = tutto e niente
 Narrow sense = una logica multivalore
che rappresenta il ragionamento in
presenza di verità parziali (non di
incertezza)

Un tipico schema
Valori
Input
Valori
Output
Fuzzificatore
Fuzzy
set
Defuzzificatore
Fuzzy
inference
Regole
Fuzzy
Fuzzy
set
Nel cuore della “fuzzy logic”

IF varI IS attrI AND
varJ IS attrJ OR
varK IS attrk
.....
THEN
outZ IS attrZ
Proposizioni fuzzy
Sono proposizioni il cui valore di verità è
definito sull’intervallo [0 1]
 Tipicamente sono proposizioni di natura
qualitativa:
Mario è vecchio, Giorgio è furbo ...
 Il valore di verità può essere attribuito
“direttamente” (per giudizio incondizionato)
oppure ...

Definizione delle
proposizioni fuzzy
varJ IS attrK
un caso molto comune è quello in cui
varJ è una grandezza continua
misurabile, mentre attrK è un attributo
qualitativo.
 Es. la temperatura è alta, la velocità è
media, la tensione è bassa, Giorgio è
alto

Definizione delle
proposizioni fuzzy


Definizione di una scala di valori qualitativi
Definizione di  per ciascun valore
Bambino
Giovane
Adulto
Anziano
1
18
0
14 16
25
30 50
65
Definizione delle
proposizioni fuzzy

La definizione delle  è un passaggio
totalmente arbitrario che traduce una visione
soggettiva del mondo
Adolescente
Bambino
Giovane
Maturo
Attempato
Vecchio
1
0
18
14 16
30
40 55
65
70
Modificatori linguistici
moltoA (x) = (A(x))2
 piùomenoA(x) = (A(x))1/2
 

1
Più o meno
Caldo
Caldo
Molto Caldo
25
35
Connettivi AND e OR


La logica fuzzy, essendo una logica
multivalore non incerta è truth-functional:
il valore di verità di una formula composta si
può ricavare da quello dei componenti
Al contrario, un teorema dimostra che
qualunque quantificazione di incertezza non
può essere truth-functional
Ad esempio, P(A AND B) = P(A)*P(B)
solo se A è indipendente da B
AND, OR, NOT: modello base

AND = Intersezione:
(A AND B) = min((A), (B))

OR = Unione:
(A OR B) = max((A), (B))

NOT = Complemento
(NOT A) = 1 - (A)
“Fuzzyficare” AND e OR




Il concetto “booleano” di AND (tutte le componenti
devono essere vere) si riflette nell’operatore min
Il concetto “booleano” di OR (una sola componente
deve essere vera) si riflette nell’operatore max
Tra AND e OR “booleani” ci sono infiniti casi
intermedi di connettivo: quasi tutte le componenti,
molte, la maggioranza, alcune, poche ...
Quindi, infinite funzioni possibili per AND e OR oltre
a min e max
T-norm

T-norm
una funzione T: [0 1] X [0 1]  [0 1] t.c.
» T(a, b) = T(b, a)
» T(a, b)  T(c, d) IF a c AND b d
» T(a, T(b, c)) = T(T(a, b) , c)
» T(1, a) = a

Min e prodotto sono esempi di T-norm
T-conorm (o S-norm)

S-norm
una funzione S: [0 1] X [0 1]  [0 1] t.c.
» S(a, b) = S(b, a)
» S(a, b)  S(c, d) IF a c AND b d
» S(a, S(b, c)) = S(S(a, b) , c)
» S(0, a) = a

Max e (a + b - a*b) sono esempi di S-norm
T-norm e S-norm per AND e
OR

Esistono famiglie di infinite T-norm e
S-norm legate da relazioni di dualità:
T(a, b, ) =
a*b
max(a, b, 
S(a, b, ) = a +b - a*b - min(a, b, 1 - 
max(1 - a, 1 - b, 

Fissando  si sceglie una coppia di operatori
AND e OR (quasi tutti scelgono min e max)
Ma non è finita ...

Estensione del concetto di media:
OWA operators ...
Fuzzyficare il NOT
Anche il concetto di negazione può
essere “sfumato”
 Basta una funzione C: [0 1]  [0 1] t.c.

» C(0) = 1, C(1) = 0
» C(a)  C(b) IF a < b

Anche per la negazione esiste
un’infinita scelta di operatori
Il passo di implicazione



La regola IF x IS prem THEN y IS cons
può essere vista come una fuzzy relation R:
R(x,y) = F(prem(x) , cons(y))
In pratica per ogni valore di x, passando per
prem(x) si stabilisce una funzione di adeguatezza
di y (un’altra ) derivata da cons
Poichè la premessa è fuzzy, l’attivazione della
regola non richiede un matching preciso
Operatori di implicazione


Come per AND e OR ci sono infinite scelte,pure
l’implicazione ha svariate interpretazioni e diversi
possibili operatori (Zadeh, Godel, Lukasiewicz,
Mamdani ...)
Di Mamdani ce ne sono due (molto usati perche’
semplici e ingegneristicamente sensati):
Mam’(x,y) = min(prem(x) , cons(y))
Mam”(x,y) = prem(x) * cons(y)
Fuzzyficazione dell’input
Il matching di un valore di input con la
premessa può essere valutato in forma crisp
(fuzzyficazione banale, la più comune)
 Si può passare dal valore di input a una m
(tipicamente triangolare o gaussiana) e
valutare il matching tra  in input e  della
premessa

Generalized modus ponens
input fuzzyficato: IN(x)
 regola: IF x IS prem THEN y IS cons
 risultato: OUT(y) derivata da IN(x),
prem(x) , cons(y)

OUT(y) = sup T[IN(x), R(x,y) ]
xX
Generalized modus ponens

In pratica, nel caso semplificato più comune:
IN(x) = fuzzy singleton = k
OUT(y) = R(k,y)

A seconda della scelta di R
OUT(y) = min(prem(k) , cons(y))
OUT(y) = prem(k) * cons(y)
L’aggregazione di
conclusioni multiple



Un valore di verità per una proposizione può venire
derivato tramite più percorsi deduttivi
Vale di nuovo il discorso di AND e OR generalizzati
a seconda delle caratteristiche del ragionamento
nel dominio (percorsi indipendenti oppure tutti
necessari, che si corroborano ...)
Una scelta molto comune è il max tra la varie 
risultanti
L’aggregazione di
conclusioni multiple


Un modo alternativo di procedere che
”previene” il problema dell’aggregazione di
conclusioni multiple è combinare a priori le R
delle regole con output comuni in un unico
regolone globale
Di nuovo si possono usare AND o OR
generalizzati a seconda di come si veda la
cosa
La defuzzyficazione
dell’output
L’implicazione e aggregazione fuzzy non
producono un valore ma una funzione di
appartenenza  per una grandezza
 Dalla  si può desiderare di ricavare un
singolo valore di output
 Di nuovo, svariati diversi criteri sono
possibili

Esempi di defuzzyficatori





Max
Media dei max
Centroide della  globale risultante
Media dei centroidi delle  dei conseguenti
pesata sull’”altezza” dei punti centroidi stessi
Media dei centroidi delle  dei conseguenti
pesata come sopra e anche sulla dispersione
delle  dei conseguenti
Fuzzy control

Da tentare quando altre tecniche di
controllo non sono utilizzabili:
» Modelli inesistenti, ma conoscenza di esperti
disponibile
» Non-linearità
» Svariati parametri di ingresso
Perchè funziona ?


Th: Qualsiasi funzione nonlineare continua
può essere approssimata con precisione a
piacere con un numero finito di variabili e
regole fuzzy (per certi operatori)
E’ un teorema di esistenza: garantisce che
una buona soluzione fuzzy esiste (il che è
confortante) ma non dà indicazioni su come
costruirla (il che lascia spazio anche agli
insuccessi e alle improvvisazioni)
Perchè usare proprio i fuzzy ?
Rispetto ad altri “approssimatori universali”
offrono il vantaggio esclusivo di offrire una
forma naturale di rappresentazione della
conoscenza empirica degli esperti
 Sono quindi “agevoli” da usare e decifrabili
nei comportamenti
 I casi di successo sono numerosi e
indiscutibili

Troppe scelte arbitrarie ?
La definizione di un sistema fuzzy
comprende un elevato numero di scelte
soggettive (a volte implicite se si usano
certe soluzioni scorciatoia standard)
 Il meccanismo è tendenzialmente piuttosto
robusto rispetto a scelte diverse
 In altri approcci apparentemente più
rigorosi certe scelte sono mascherate o
forzate dalle ipotesi iniziali

Fuzzy diramazioni




Senza incertezza
Fuzzy control
Fuzzy database
Soft constraints
Multicriteria decision
making




Con incertezza
Possibility theory
Gradual rules
Fuzzy expert systems
Fuzzy probability
• Fuzzy clustering
• Neuro-fuzzy
Scarica

Fuzzy logic