Fuzziness: sorellastra dell’incertezza o primadonna ?

Post on 13-Jan-2016

40 views 0 download

description

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 - PowerPoint PPT Presentation

Transcript of Fuzziness: sorellastra dell’incertezza o primadonna ?

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

0

1

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

0 100

1

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} ??

0 28

1

18

Fuzzy set

Alcuni insiemi sono meglio definiti da funzioni di appartenenza continue, quindi anche il relativo predicato non è più booleano ma “fuzzy”

0 28

1

1815 35

Fuzzy set su dominio continuo

Fuzzy set su dominio discreto

Fuzzy set su dominio discreto

0

1

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) xD

Inclusione: A B A(x) < B(x) xD

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à

Bicchiere d’acqua estratto:

Potabile(B) = chi lo sa ? (dubbio tra 0 o 1 in questo caso)

P(Potabile, B) = 0.9

Estrazione

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

Fuzzificatore Defuzzificatore

ValoriInput

Fuzzy inference

ValoriOutput

RegoleFuzzy

Fuzzyset

Fuzzyset

Nel cuore della “fuzzy logic”

IF varI IS attrI ANDvarJ IS attrJ ORvarK IS attrk .....

THENoutZ 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 delleproposizioni fuzzy

varJ IS attrKun caso molto comune è quello in cuivarJ è una grandezza continua misurabile, mentre attrK è un attributo qualitativo.

Es. la temperatura è alta, la velocità è media, la tensione è bassa, Giorgio è alto

Definizione di una scala di valori qualitativi Definizione di per ciascun valore

Definizione delleproposizioni fuzzy

Bambino Giovane Adulto Anziano

0 1614 25 30 50 65

18

1

La definizione delle è un passaggio totalmente arbitrario che traduce una visione soggettiva del mondo

Definizione delleproposizioni fuzzy

Bambino Giovane Maturo Attempato

0 1614 3040 55 65

18

Adolescente

70

Vecchio1

Modificatori linguistici

moltoA (x) = (A(x))2

piùomenoA(x) = (A(x))1/2

25 35

1

CaldoMolto Caldo

Più o menoCaldo

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-functionalAd 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-normuna 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-normuna 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 diconclusioni 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 diconclusioni 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