• Non ci sono risultati.

Capitolo 2: Fuzzy Logic

2.8. Analisi e architettura di un sistema inferenziale fuzzy

2.8.3. Implicazione dell’antecedente al conseguente

Con l’espressione “aggregazione dell’antecedente” s’intende la valutazione del grado

di verità della precondizione (IF-part), cioè la determinazione dell’intensità con la quale

sono soddisfatte due o più condizioni del tipo:

I possibili aggregatori sono:

• AND logico

• OR logico

• Operatore Gamma

• Operatore Min-Max

• Operatore Min-Avg

1)

L’AND logico considera il minimo grado di verità fra le funzioni di appartenenza.

Questo operatore è stato, insieme all’OR logico, uno dei primi aggregatori ad essere

proposto ed impiegato ed è tuttora il più utilizzato in diverse applicazioni pratiche, per

varie ragioni. Innanzitutto usare il minimo fra due gradi di soddisfazione sembra più che

plausibile. Infatti se si prende in considerazione una regola come “IF continuità = alta AND

reddito = medio THEN liquidità = alta”, questa si verificherà quando verranno soddisfatte

entrambe le condizioni. Con l’uso del minimo come aggregatore la liquidità sarà alta nella

misura del minor grado di soddisfazione fra le due condizioni. Ciò significa che almeno in

quella misura è pienamente soddisfatta. Pur essendo quello che produce il valore più

elevato fra quelli di intersezione, l’operatore Minimo è molto prudente. Esso infatti,

considerando sempre il grado di appartenenza più basso, finisce per ignorare il grado di

verità dell’altra condizione. Certo è che l’uso del Minimo riduce i tempi di elaborazione

delle regole ed è molto semplice. È fondamentalmente per questa ragione che il Minimo

risulta essere l’aggregatore più utilizzato.

2)

L’operatore logico OR esegue il massimo delle funzioni di appartenenza implicate

nel processo di aggregazione. Analogamente a quanto accade con l’utilizzo dell’operatore

AND, l’OR logico considera soltanto i valori estremi assunti dalle funzioni di membership.

Esso in sostanza impedisce di considerare i valori intermedi risultanti dalla compensazione

tra le condizioni.

3)

L’operatore GAMMA consente di realizzare una compensazione fra le funzioni di

appartenenza. Per questa ragione esso, rispetto agli altri operatori, permette di tradurre in

modo più appropriato il processo decisionale umano.

[0,1]

con

)

1

(

1

1 ) 1 ( 1









=

= − =

γ

µ

µ

µ

γ γ n i i n i i

(1.16)

Questo operatore viene utilizzato nei casi in cui si abbiano due condizioni che possono

essere soddisfatte anche non contemporaneamente e quando un eccesso di soddisfazione di

una compensa una carenza di soddisfazione nell’altra. Per gli esseri umani l’operazione di

compensazioneè logico intuitiva, ma per formalizzare questo procedimento in fase di

costruzione di un sistema fuzzy è necessario scegliere un valore Gamma appropriato. Esso

varia tra 0 e 1: più tende a 0, più questo operatore si avvicina all’AND probabilistico e più

tende a 1 , più si avvicina all’OR probabilistico.

Non esiste un metodo standard che permetta di estrarre il valore di Gamma opportuno,

ma dall’analisi empirica è risultato che:

• Regole con stesse variabili di input e di output hanno lo stesso grado di

compensazione;

• Nelle implementazioni pratiche il valore di Gamma è significativo fra 0,1 e 0,4;

• Un approccio semplificato per determinare il valore di Gamma è quello di

fissarlo inizialmente pari a 0,25. Se successivamente durante le prove concrete

del sistema lo si dovesse ritenere non appropriato, si procederà aumentandolo

oppure diminuendolo.

Ad esempio si supponga di avere ricevuto alcune offerte di lavoro e di dover scegliere

quale di queste accettare. Si ipotizzi per semplicità che la scelta si basi esclusivamente su

due variabili: (1) ammontare dello stipendio mensile e (2) distanza dell’abitazione dal

luogo di lavoro. È ovvio che la scelta ottimale ricadrebbe sulla proposta caratterizzata da

uno stipendio elevato e da una distanza bassa, ma anche se lo stipendio fosse più basso e il

luogo di lavoro più vicino a casa o, in alternativa, lo stipendio alto, ma il luogo di lavoro

lontano, ci si potrebbe ritenere “soddisfatti”. Questo significa che ci si accontenterà di una

compensazione tra una condizione più “vera” e una meno “vera”. Una delle regole logiche

da applicare in questo caso sarà:

Si supponga di dover vagliare tre proposte con le seguenti caratteristiche:

IMPIEGO

Stipendio = alto

Distanza = bassa

Proposta A

μ

alto

= 0.3

μ

bassa

= 0.4

Proposta B

μ

alto

= 0.3

μ

bassa

= 0.8

Proposta C

μ

alto

= 0.28

μ

bassa

= 1.0

Se la scelta dell’aggregatore ricade sul Minimo, si avrà:

• Proposta A Min{μ

alto

= 0.3 ; μ

bassa

= 0.4}= 0.3

• Proposta B Min{μ

alto

= 0.3 ; μ

bassa

= 0.8}= 0.3

• Proposta C Min{μ

alto

= 0.28 ; μ

bassa

= 1.0}= 0.28

Le proposte di impiego A e B sono caratterizzate dallo stesso grado attrazione, pari a

0,3. Se però si osservano attentamente gli aspetti delle due possibilità ci si accorge che,

nonostante siano indifferenti dal punto di vista dello stipendio offerto, in realtà l’offerta B

risulta essere migliore dal punto di vista della distanza giornaliera da percorrere per

raggiungere il luogo di lavoro. Se poi si considera l’offerta C si osserva che questa viene

reputata meno attrattiva delle precedenti, ma in considerazione del fatto che a fronte di uno

stipendio leggermente più basso corrisponderebbe una riduzione sensibile della distanza

giornalmente percorsa per recarsi sul posto di lavoro, si può ragionevolmente pensare che

nella realtà la terza soluzione sarebbe quella maggiormente appetibile. Il fatto che ciò non

emerga invece dall’analisi dipende proprio dalla scelta dell’aggregatore: utilizzando l’AND

logico infatti si considera solo il minimo grado di verità tra le funzioni di appartenenza e,

di conseguenza, se i cambiamenti nelle altre caratteristiche superano questo valore, non

vengono prese in considerazione.

Se invece si utilizza l’operatore GAMMA, con un valore di γ pari, ad esempio, a 0,3, i

risultati si presenteranno nel modo seguente:

• Proposta A Gamma{μ

alto

= 0.3 ; μ

bassa

= 0.4}= 0.19

• Proposta B Gamma{μ

alto

= 0.3 ; μ

bassa

= 0.8}= 0.35

• Proposta C Gamma{μ

alto

= 0.28 ; μ

bassa

= 1.0}= 0.41

Così facendo, si opera una compensazione tra le caratteristiche delle variabili prese in

considerazione nell’analisi. Dai risultati ottenuti la scelta ricadrà sulla proposta C, che è

evidentemente migliore rispetto ad A e B, coerentemente con le osservazioni svolte

precedentemente. In particolare si nota che la possibilità A che, utilizzando il MIN come

aggregatore, risultava la più attrattiva viene segnalata ora come la proposta peggiore.

Nell’esempio presentato si è considerato un caso in cui risulti conveniente operare una

compensazione fra le funzioni di appartenenza ma è necessario sottolineare che questa

operazione non rappresenta una costante nelle decisioni umane. Tutto dipende dal contesto

in cui si opera.

1)

L’operatore MIN-MAX è una combinazione convessa fra minimo e massimo:

μ = λ max { μ

i

} + ( 1 - λ ) ∗ min { μ

i

}

2)

L’operatore MIN-AVG è una combinazione convessa fra minimo e media:

μ = λ / n ∗ Σ μ

i

+ ( 1 - λ ) ∗ min { μ

i

}

Documenti correlati