1 Introduzione: La Nascita ________________________________________________ Esiste una data precisa a segnare la nascita della logica fuzzy ed è la pubblicazione nel 1965 dell'articolo "Fuzzy Sets" sulla rivista Information and Control ad opera di Lofti A. Zadeh, allora direttore del Dipartimento di Ingegneria Elettrica della Università di Berkeley. Sebbene esistessero dei precedenti storici, la ripresa con energia di temi non nuovi riorganizzati sotto l'aggettivo politicamente ben scelto di fuzzy, ne fece un lavoro assolutamente originale e destinato a lasciare comunque un segno. Nonostante Zadeh occupasse una delle più alte cariche in ambito accademico, il suo lavoro del 1965 produsse una reazione mista. Alcuni matematici accolsero con entusiasmo le nuove idee, ma la maggior parte delle reazioni si raggruppavano tra lo scetticismo e l'aperta ostilità. Venticinque anni dopo, lo stesso Zadeh così si esprime: "La tradizione cartesiana del rispetto per ciò che è quantitativo e preciso, e il disprezzo per ciò che è qualitativo e impreciso è troppo radicata per essere abbandonata senza resistenza. L'assunto di base di questa tradizione è stato espresso sinteticamente da Lord Kelvin - uno tra i più eminenti intelletti del diciannovesimo secolo - nel 1883. Egli scrisse, "Nelle scienze fisiche un primo essenziale passo nella direzione di apprendere una qualche materia è quello di trovare principi di calcolo numerico e metodi praticabili per misurare alcune qualità ad essa connesse. Spesso affermo che quando puoi misurare quello di cui stai parlando ed esprimerlo in numeri, allora conosci qualcosa di esso; ma se non puoi misurarlo, se non puoi esprimerlo in numeri, la tua conoscenza è di un tipo insoddisfacente: potrebbe essere l'inizio della conoscenza, ma nei tuoi pensieri sei appena approdato allo stato di scienza, di qualunque questione si tratti." " (Zadeh 1990). Il tono della polemica rimase sempre molto alto, non furono risparmiate ingiurie e cadute di stile, soprattutto nei primi anni di vita della logica fuzzy, quando i suoi pochi sostenitori non erano ancora in grado di mostrarne nessuna applicazione. Ma nei laboratori di ingegneria la logica fuzzy si stava rivelando promettente nel campo del controllo, finché il primo prototipo di una sua applicazione apparve nel 1974 a opera di E.H. Mamdani che sviluppò un controllore fuzzy per un motore a vapore. Da allora gli studi su tali impieghi della fuzziness si sono moltiplicati, soprattutto in Giappone dove, forse per ragioni ideologiche, ma più probabilmente per motivi di ordine commerciale, le idee di Zadeh hanno incontrato molta meno resistenza. La più famosa applicazione fuzzy è stata la realizzazione verso la metà degli anni 80 di un sistema di controllo per la metropolitana di Sendai, dove accelerazioni e frenature sono ottenute in modo molto più morbido (a detta dei progettisti) che se affidate all'intervento umano. Nel 1985 il primo 'digital fuzzy chip' apparve nei laboratori AT&T Bell, mattone indispensabile per la realizzazione del primo computer fuzzy che oggi appare molto vicino. Il mercato si sta riempiendo in questi ultimi anni di prodotti basati su architettura fuzzy; soprattutto ad opera di colossi giapponesi come Hitachi, Canon, Nissan, sono apparse le lavatrici fuzzy, le macchine fotografiche fuzzy, e un numero sempre crescente di prodotti tecnologici di largo consumo va fregiandosi oggi del richiamo pubblicitario "fuzzy logic". Lo sviluppo dello studio sulla logica fuzzy ha comunque risentito e risente tuttora del suo luogo d'origine, mantenendo una caratterizzazione prevalentemente ingegneristica, quasi completamente spoglia da speculazioni di ordine filosofico. Sebbene l'idea alla base risalga al confronto con il linguaggio naturale, come ci confermano le parole di Zadeh: "Se prendessimo una frase a caso in un libro o in un quotidiano, 616d31g sarebbe estremamente improbabile che il suo significato possa essere rappresentato nella logica predicativa del primo ordine, dal momento che una tipica frase nel linguaggio naturale contiene una o più parole che vanno sotto il nome di predicati fuzzy." Poco o nulla è stato fatto per studiare i risultati che la logica fuzzy potrebbe portare alla linguistica. Il linguaggio naturale è stato finora preso a modello solo negli studi sul controllo nel senso che, ad esempio, il funzionamento di un condizionatore fuzzy si basa su come interpretare in logica fuzzy termini del linguaggio comune come freddo e caldo. In questo senso Kosko afferma che la logica fuzzy ha aumentato il quoziente di intelligenza delle macchine, perché ha avvicinato il loro funzionamento alla regolazione che potrebbe fornire un esperto umano. Scopo del presente lavoro è allora quello di fornire una presentazione della logica fuzzy nella direzione di un problema linguistico ben determinato, quello della vaghezza, riguardo al quale la fuzziness sembra avere molto da dire. Inoltre una formulazione logica dei suoi concetti non può che risultare utile in un futuro esame della sua applicazione ad altri problemi interessanti, come possono essere quello della ambiguità, il problema dei termini non denotanti, e molte altre questioni ancora aperte. Lungi dall'affermare che la logica fuzzy rappresenti la pietra filosofale della linguistica, in grado di trasformare in preziosi risultati ogni difficoltà che incontra, si ritiene comunque che come ogni strumento di nuova concezione meriti di essere indagata a lungo in tutte le sue possibilità. Lasciando forse da parte qualche pregiudizio, potremmo rinnovare produttivamente il nostro insieme di 'utensili logici'. Un lungo discorso a parte meriterebbe sicuramente anche l'uso di concetti fuzzy in tutti quei problemi filosofici di grande portata, siano essi di ordine etico, giuridico, psicologico, che fino ad ora sono apparsi senza via di uscita, talvolta pervasi da laceranti dibattiti tra fazioni avverse. Kosko(1993) pone delle domande interessanti sul delicato tema dell'aborto, sul confine fra giusto e ingiusto, e addirittura sul significato del 'contratto sociale', accordo non scritto su cui si basano tutte le organizzazioni di tipo statuale nel mondo contemporaneo. La domanda che un logico potrebbe facilmente porsi è: il Mondo è fuzzy? Non credo che si possa darne una risposta affermativa, anche se in molti hanno tentato di farlo, piuttosto sono convinto che la fuzziness sia un pezzetto, seppur piccolo, di mondo. 2 Il Problema della Vaghezza ________________________________________________ È paradossale il fatto che le teorie scientifiche più altamente sviluppate e utili siano espresse ostensivamente in termini di oggetti mai incontrati nell'esperienza. (Black, 1937). Così si apre uno dei testi fondamentali per quanto riguarda il problema della vaghezza. Tutte le costruzioni scientifiche sono ideali, i corpi puntiformi in fisica, i gas perfetti in termodinamica e così via rappresentano delle astrazioni utili per la teoria, ma che impongono una approssimazione dei risultati nel momento del confronto con la realtà. Scopo dello scritto di Black è allora quello di indicare un simbolismo appropriato per la vaghezza, dove l'interpretazione standard appaia come un caso particolare. I problemi fondamentali che deve affrontare una teoria sui linguaggi formali sono fondamentalmente due, e sono correlati: la vaghezza e i termini non denotanti. Per quanto riguarda il problema dei termini non denotanti, si tratta di risolvere l'interpretazione di enunciati del tipo 'Moby Dick è intelligente' dove il soggetto non ha denotazione; ma anche casi più sottili in cui non è sicuro se esista denotazione o ancora casi in cui questa esisteva in passato: 'Il mostro di Loch-Ness suona il flauto' e 'Socrate avrebbe apprezzato i Beatles'. Non prenderò in esame questo problema, anche se le differenze molto sottili tra questi tipi di enunciati svelano un fatto fondamentale: l'esistenza deve essere considerata come qualcosa di estremamente complesso, non riducibile ad una analisi superficiale del tipo tutto-o-niente. Tralasciando il fatto che una interpretazione formale di più vero di debba ancora essere data (e sia quindi già presupposta una negazione della bivalenza, come vedremo in seguito), questo fatto comporta una cosa sola: che l'esistenza è una questione di misura. Il problema della vaghezza può essere illustrato con le parole di Peirce (1902): "Una proposizione è vaga quando sono possibili stati di cose riguardo i quali è intrinsecamente incerto se, essendo stati essi contemplati dal parlante, siano considerati da lui come esclusi o ammessi dalla proposizione. Per intrinsecamente incerto non intendiamo incerto in conseguenza di una ignoranza dell'interprete, ma perché gli usi linguistici del parlante sono indeterminati." (Peirce, 1902) Un esempio molto chiaro in questo senso è quello presentato da Black, cioè il caso del termine sedia. Se consideriamo l'insieme degli oggetti che appartengono a questa categoria, possiamo rimanere sbalorditi dalla sua eterogeneità. Basti pensare alle sedie con o senza braccioli, sedie da ufficio, da cucina, da ristorante, poltrone, sgabelli, divani, panchine e così via. Si comprende facilmente il senso della sfida che ripropone Black di rendere inutilizzabile ogni possibile definizione di sedia o 'sedietà' che gli venga fornita. E' importante distinguere però il fatto che differenti oggetti vengano raggruppati sotto un unico nome, dalla vaghezza della parola. Occorre cioè distinguere la vaghezza dalla generalità e dalla ambiguità. La prima si ha quando uno stesso simbolo si applica ad una molteplicità di oggetti nello stesso campo di riferimento, la seconda quando diversi significati sono associati alla stessa forma fonetica. Si tratta di una distinzione proposta da Black per risolvere la confusione nella definizione di Russell (vaghezza come relazione uno-molti tra simbolo e simbolizzato) che rappresenta invece il fenomeno della generalità. La vaghezza si presenta invece nel momento in cui possono essere esibiti oggetti la cui appartenenza all'insieme delle sedie è dubbia. Il problema si pone nel momento in cui, di fronte ad una serie di sedie che differiscono progressivamente per piccoli particolari, dobbiamo tracciare una linea netta tra sedie e non-sedie, ad esempio, se definisco una sedia come "qualcosa su cui ci si può sedere", allora anche un televisore appoggiato per terra andrebbe considerato una sedia! Riassumendo, possiamo dire che un simbolo di un linguaggio è vago se possono essere presentati esemplari del mondo che tale linguaggio descrive, tali che è intrinsecamente impossibile affermare sia che il simbolo si applica, sia che non si applica a tali oggetti. L'insieme di tali oggetti viene definito da Black la frangia di applicazione del simbolo (Russell parla di penombra). Quindi la vaghezza è qualcosa che concerne i simboli, o meglio il rapporto tra questi e il loro simbolizzato. È allora interessante, o per lo meno curiosa la divagazione di Black sul tentativo di fornire una risposta alla domanda: La vaghezza è soggettiva? Ossia, i fenomeni della vaghezza sono fatti relativi al comportamento umano (in senso lato) o fatti relativi al mondo fisico? Per rispondere a questa domanda possiamo considerare l'osservatore come uno strumento scientifico per la formulazione di una divisione in una serie di oggetti. Secondo la terminologia matematica, la condizione necessaria e sufficiente per considerare variazioni nella lettura di uno strumento come corrispondenti ad effettive modificazioni oggettive, è che la legge che collega tali variazioni sia invariante rispetto alla sostituzione dello strumento con un un altro appartenente ad un insieme definito. In questo senso, dal momento che le diverse delimitazioni di confini per simboli vaghi presentano una certa regolarità statistica secondo diversi osservatori, ha senso considerare la vaghezza una proprietà oggettiva della serie di oggetti a cui il simbolo vago si applica. Sorgente della vaghezza è comunque sempre la nostra conoscenza sensibile della realtà. Vero e falso però potranno avere un significato preciso solo nel caso in cui tutti i simboli impiegati, siano essi parole, percezioni o immagini, siano a loro volta precisi, e non è questo il caso. "Dal momento che tutti i termini non logici presentano questo tipo di vaghezza, ne segue che le concezioni di verità e falsità, in quanto applicabili a proposizioni composte da o contenenti termini non logici, sono a loro volta più o meno vaghe. [...] I termini logici, come gli altri, quando sono usati da esseri umani, condividono la vaghezza degli altri termini. [...] Tutta la logica tradizionale assume abitualmente che i simboli impiegati siano precisi. Non è perciò applicabile a questa vita terrestre, ma solo ad una immaginaria esistenza celeste. [...] Questa è una ragione per cui la logica ci porta più vicini al paradiso (heaven) della maggior parte degli altri studi. Su questo punto sono d'accordo con Platone. Ma coloro che non amano la logica troveranno, temo, il mio paradiso deludente." (Russell, 1923) 3 Il Paradosso del Sorite ________________________________________________ Fu un contemporaneo di Aristotele, il logico Eubulide di Mileto a escogitare alcuni tra i paradossi più interessanti, che avrebbero turbato il sonno dei logici per i successivi due millenni. Ad esempio il paradosso del mentitore: se un uomo asserisce che sta mentendo, afferma la verità? L'enigma del mucchio veniva formulato generalmente come una serie di domande. Un granello di sabbia è un mucchio? Due granelli sono un mucchio? Tre granelli.? Diecimila granelli formano un mucchio? E' evidente che se consideriamo plausibile una risposta negativa alle prime domande e affermativa all'ultima, allora ci dovranno necessariamente essere due domande successive tali che n granelli non costituiscono un mucchio mentre n+1 sì. Se invece riteniamo che l'aggiunta di un granello non possa essere significativa, dall' affermazione che un granello non è un mucchio, per induzione otteniamo che nemmeno diecimila granelli costituiscono un mucchio. Il termine antico per questo enigma era "paradosso del sorite", dal termine soros, cioè mucchio. L'enigma divenne arma tradizionale nelle dispute tra la Stoà e l'Accademia, la logica stoica accettava fermamente il Principio di Bivalenza, diversamente da Aristotele anche per quanto riguarda i futuri contingenti. L'unica posizione coerente con questa linea poteva essere una sola: accettare l'esistenza di confini netti tra ciò che è un mucchio e ciò che non lo è. La difficoltà per la risposta alle domande del sorite non sta quindi nella non esistenza delle risposte giusta, ma nella nostra ignoranza di quali esse siano. La risposta stoica all'enigma del sorite è anche una posizione nei confronti del problema della vaghezza, posizione che non accetta l'idea della vaghezza come arma contro la logica classica. Secondo questa posizione, la vaghezza del linguaggio naturale è fondamentalmente una questione di ignoranza. Sebbene Williamson (anch'egli sostenitore della posizione stoica) riesca a sfuggire allo spettro delle logiche a più valori e a salvare il Principio della Bivalenza, è importante sottolineare a che prezzo si ottiene questo risultato. Infatti è evidente che non si può parlare di una adeguatezza o inadeguatezza in senso assoluto per un sistema logico a trattare determinati problemi: una maggiore semplicità da un lato può essere preferibile, ma d'altra parte può produrre trattamenti grossolani per alcuni fatti. 4 Logiche a più Valori ________________________________________________ In seguito all'affermazione che tutti i termini associati a qualità sensibili sono vaghi, otteniamo come risultato che non sempre potremo dire, di un enunciato contenente tali termini, se è vero o falso. In particolare, nei casi di applicazione dubbia del termine vago, l'enunciato non sarà né vero né falso, ma indeterminato. Diretta conseguenza di ciò è la proposta di una logica a tre valori di verità: V, F e N (o I). Uno dei primi a sviluppare una logica a tre valori, fu anche un pioniere della moderna logica bivalente: C.S.Peirce. La sua idea era che, sebbene la logica a due valori non fosse scorretta, si applicasse solo ad un numero limitato di casi. In tutti gli altri casi era necessaria la più generale logica a tre valori. Nel 1920 apparve un lavoro del logico polacco Jan Lukasiewicz, dove però la logica a tre valori era sviluppata non per superare il problema della vaghezza ma del libero arbitrio. L'unico modo per evitare il fatalismo era di considerare enunciati riferiti al futuro né veri né falsi. Il collegamento tra questi primi lavori e la vaghezza fu abbastanza lento. Sebbene il testo di Black (1937) contenga l'idea di un continuum di valori, nient'altro che una trattazione della negazione viene presentata, mentre manca l'idea di una generalizzazione delle tavole di verità. Forse il primo tentativo di trattare la vaghezza mediante logiche a più valori fu quello del logico svedese Sören Halldén nel 1949. Egli usava l'espressione 'insensata' o 'insignificante' (nel senso che manca di significato) in relazione alle proposizioni né vere né false, da qui il titolo della sua monografia 'La Logica del Nonsenso'. Consideriamo un concetto vago Z. La posizione di Halldén è che noi possiamo dividere gli elementi del dominio in tre classi esaustive e disgiunte: quelli che appartengono a Z, quelli che non vi appartengono e quelli indeterminati. Ma una volta postulata questa divisione netta, come stabilire qual è il limite preciso per cui si passa, ad esempio, da un caso positivo ad uno indeterminato? Come è vago il confine tra istanze positive e negative, così saranno vaghi i confini tra positive e indeterminate e tra indeterminate e negative. Questo problema viene denominato vaghezza del secondo ordine. Facciamo qualche esempio. I casi più chiari sono quelli di aggettivi che possiedono una gradazione continua, come ad esempio i colori. Possiamo decidere che il Rosso Ferrari è il prototipo del significato di "rosso".Prendiamo quindi due Ferrari, una Dino 246 del 1976 e una Testarossa del 1996. "La Ferrari del 1996 è rossa" è vera per definizione. "La Ferrari del 1976 è rossa" supponiamo sia invece dubbia, in quanto il tempo ha scolorito la vernice. Se prendessimo allora una Ferrari del 1986, potremmo dire di essa che è rossa? oppure sarà dubbia come l'esemplare del 1976? Si arriva al caso estremo per cui un'auto uscita solo qualche giorno prima di un'altra dallo stabilimento di Maranello, riceverà un trattamento linguistico diverso da questa. E' facile vedere che qualsiasi logica con un numero finito di valori incorre nella stessa difficoltà. Il passo successivo consiste nell'assumere un insieme infinito di valori di verità, più precisamente un insieme continuo, ad esempio l'insieme [0, 1] in A. Ogni semantica con un numero finito di valori di verità contiene sempre un margine di arbitrarietà, in quanto costretta a suddividere in passi finiti molti processi dal carattere continuo riscontrabili in natura (ad esempio il passaggio dal giorno alla notte). Una semantica a valori continui sembra allora la soluzione più immediata e naturale. Vedremo che esiste anche una semantica più sottile ed articolata, la semantica dei valori di verità linguistici delineata da Zadeh (1975). 5 Insiemi Fuzzy e Variabili Linguistiche ________________________________________________ La definizione di insieme fuzzy appare per la prima volta in Zadeh (1965): Un insieme fuzzy è una classe di oggetti con un continuum di gradi di appartenenza. Tale insieme è caratterizzato da una funzione di appartenenza (caratteristica) che assegna ad ogni oggetto un grado di appartenenza compreso tra zero e uno. Le nozioni di inclusione, unione, intersezione, complemento, relazione, convessità, ecc. sono estese a tali insiemi, e diverse proprietà di queste nozioni sono stabilite nel contesto degli insiemi fuzzy. (Zadeh, 1965). Consideriamo l'insieme ordinario X, con x denotante un elemento generico di X. X viene detto anche universo di discorso o dominio. In seguito userò X, Y e U come variabili denotanti universi. Un insieme o classe fuzzy A in X è un insieme di coppie ordinate della forma <fA(x),x> dove il secondo termine è un elemento di X, mentre il primo rappresenta la compatibilità di tale elemento con l'insieme fuzzy A. L'appartenenza di x in A può quindi non essere totale, e variare in modo continuo tra appartenenza nulla e appartenenza al 100%. Gli insiemi vaghi nel senso descritto da Black (1937) sono interpretabili in modo immediato come insiemi fuzzy. Per convenzione si considera la compatibilità come una funzione che associa ad ogni elemento del dominio un valore compreso in [0,1]. Nel momento in cui si sceglie di lavorare con insiemi fuzzy, una grande potenzialità che non può non essere sfruttata viene dall'interpretazione di insiemi fuzzy che derivano da altri tramite opportuna modificazione. Consideriamo l'insieme degli individui alti. Possiamo definire questo un insieme primario dal quale sono derivabili infiniti altri insiemi del tipo: individui molto alti, non molto alti, e così via. La capacità di trattare questo aspetto della vaghezza rappresenterà il punto di forza della logica fuzzy. Insiemi Fuzzy di tipo 2 e variabili linguistiche Dato un insieme fuzzy F che stabiliamo essere termine primario, è quindi derivabile da esso una classe non fuzzy T(F) di insiemi fuzzy derivati da F tramite opportune regole composizionali. Gli elementi di T(F) verranno detti anche termini derivati di F. Si rende quindi necessaria una grammatica per la costruzione di termini ben formati che apparterranno a T(F) e una semantica per il calcolo dell'estensione di tali termini che sarà per ogni termine un insieme fuzzy definito sullo stesso universo del termine primario F. Dal momento che un insieme fuzzy può essere associato ad una proprietà, e come tale essere il valore di una variabile, Zadeh imposta il discorso parlando di variabili linguistiche, cioè variabili che possono assumere come valore termini fuzzy derivati, e quindi descrivibili tramite espressioni linguistiche (insiemi Fuzzy di tipo 2). Nell'esempio precedente la variabile potrebbe essere denominata Altezza e i valori che può assumere sono esattamente i membri di T(F). Riassumendo: Una variabile linguistica è caratterizzata da una quintupla (x, T(x), U, G, M) dove x è il nome della variabile (es. Temperatura ), T(x) U è l'insieme dei valori linguistici che può assumere (es. T(x) = ), è l'universo di discorso (es. R), G è la grammatica per x, intesa come un insieme di regole sintattiche per la formazione dei termini di T(x), M è la semantica che associa ad ogni termine xi in T(x) il suo significato M(xi) dove M(xi) è un sottoinsieme fuzzy di U. Le variabili linguistiche sono uno strumento utilizzabile per scopi diversi. Già si è visto come si possa definire una variabile linguistica altezza, riferendosi ad individui, in modo da considerare assegnazioni del tipo Altezza(Mario) = alta dove altaT(Altezza), e Mario è individuo di un dominio generico. Assegnazioni di questo tipo sono l'equivalente di proposizioni atomiche fuzzy come "Mario è alto". Ma se per i casi come altezza e peso questo dominio è evidente, meno facile è determinare il dominio di variabili linguistiche come Intelligenza, Bellezza, Abilità, e così via. Le variabili linguistiche costituiscono quindi un microlinguaggio, un linguaggio nel linguaggio con una sua sintassi e una sua semantica. Quando, vengono interpretati enunciati ben formati in logica fuzzy, occorre tenere distinti questi due piani e procedere a due livelli di analisi onde evitare confusione Insiemi fuzzy di Tipo n Zadeh (1975a) introduce il concetto di insieme fuzzy di tipo n (n>1) per meglio esprimere i valori di verità fuzzy. Un insieme fuzzy A di tipo 2 su un dominio D associa ad ogni elemento dD un insieme fuzzy di tipo 1 (come le variabili linguistiche). In generale "Un insieme fuzzy è di tipo n, n=2,3,..., se la sua funzione di appartenenza assume come valori insiemi fuzzy di tipo n-1. La funzione di appartenenza di un insieme fuzzy di tipo 1 assume valori nell'intervallo [0,1]." (Zadeh, 1975) Inoltre defininamo un insieme fuzzy di tipo 0 su D come un elemento dD. 6 Applicazioni della Fuzzy Logic in Medicina ___________________________________________ _____ La logica fuzzy sarà probabilmente sempre più importante per trattare vari problemi legati all'area sanitaria. La sua importanza deriva dalla natura delle informazioni mediche che sono altamente individualizzate, spesso imprecise, dipendenti dal contesto e basate spesso su giudizio soggettivo. Occuparsi di questo genere di informazioni senza fuzzy logic è virtualmente impossibile o troppo costoso. Diagnostica Medica Quanti e quali tipi di sintomi permettono di formulare una diagnosi? Con quale frequenza i medici commettono errori? Sicuramente ognuno ha visto quelle liste di sintomi per un terribile disturbo che recitano "se avete almeno 5 di questi sintomi, siete a rischio": il vademecum degli ipocondriaci. Il problema è, come fanno i dottori a passare da questa lista di sintomi ad una diagnosi? Con un ragionamento riproducibile con la fuzzy logic. Non esiste un sistema sicuro per formulare una diagnosi. Se ci fosse, non ci sarebbero casi di diagnosi sbagliate. La diagnosi può solo avere alcuni gradi di appartenenza ad un insieme fuzzy. Controllo della concentrazione di ossigeno inspirato dai neonati (Yao Sun MD, Isaac Kohane MD, PhD, Ann Stark MD Children's Hospital, Harvard Medical School, Boston, MA) Il controllo della diffusione di ossigeno per arieggiare meccanicamente i neonati è un processo che deve equilibrare continuativamente l'adeguata ossigenazione dei tessuti per evitare i possibili effetti tossici di esposizione all'ossigeno. La tossicità dell'ossigeno svolge un ruolo fondamentale nello sviluppo dell'affezione polmonare cronica in neonati che richiedono la ventilazione meccanica. In bambini prematuri, i livelli di variazione di esposizione dell'ossigeno sono implicati nello sviluppo di retinopatie della prematurità. A causa di questi effetti, il controllo dell'erogazione automatizzata di ossigeno ai neonati si è trasformato in una priorità nel trattamento neonatale. Poiché un paziente può avere una maggior o minor richiesta di ossigeno - rilevabile tramite una misurazione della concentrazione dell'ossigeno - ma l'aumento manuale dell'erogazione potrebbe subire ritardi legati ai tempi di reazione umani (cioè un operatore non può essere presente per rispondere immediatamente), sta aumentando la ricerca nel controllo assistito dal computer, anche se gli studi che riguardano i neonati sono molto pochi. E' stato realizzato un regolatore fuzzy per la registrazione del tenore di ossigeno inspirato dai neonati sotto osservazione. Il regolatore utilizza le regole studiate dai neonatologi e funziona in tempo reale. Una prova clinica di questo regolatore attualmente sta avvenendo nell'unità di cura intensa neonatale (NICU) dell'ospedale pediatrico di Boston. Diabete (Trajanoski Z, Wach P.- Fuzzy filter for state estimation of a glucoregulatory system Department of Biophysics, Graz University of Technology, Austria.) Il livello dello zucchero nel sangue, per una persona in condizioni normali, dovrebbe essere fra 80-120 mg per 100 ml. Se questo livello supera i 120 mg la persona potrebbe essere diabetica. Tuttavia, esistono determinate situazioni per cui una persona può non essere diabetica anche se il livello dello zucchero nel sangue supera i 120 mg. Ad esempio, dopo che una persona si è affaticata, il livello dello zucchero supera i 120 mg; ancóra, per una donna incinta, nel suo normale corso della gravidanza, il livello dello zucchero nel sangue può essere superiore a 120 mg. In entrambi questi casi non possiamo dire che i pazienti sono diabetici. Questa incertezza può essere trattata con la fuzzy logic applicandola ai microinfusori portatili da insulina. Un sistema non-invasive è stato studiato all'UTS (University of Technology Sidney) per controllare l'ipoglicemia in pazienti diabetici. Il gruppo di ricerca è diretto da Nguyen del prof. Hung nella facoltà di ingegneria. Vari parametri fisiologici, compreso il sudore, il russare, la frequenza cardiaca, e segnali di EEG e di ECG, sono rilevati e controllati. Questi parametri sono elaborati con fuzzy logic, quindi evitano l'esigenza del prelievo e dell'analisi del sangue. L'interfacciamento del sistema ad un PC può fornire ai medici un utile strumento per studiare e diagnosticare l'ipoglicemia in pazienti diabetici. Nelle situazioni critiche, il PC è stato collegato ad un sistema di allarme per avvertire il paziente ed il medico dell'inizio dello stato di ipoglicemia. Il video dell'UTS è stato esaminato e calibrato nelle prove pre-cliniche nell'unità di ricerca del diabete al Prince of Wales Hospital di Sydney. E' stato costituito un fondo per facilitare ulteriori sviluppi, la prove cliniche e la commercializzazione del sistema di controllo dell'ipoglicemia. Altre applicazioni della tecnologia potrebbero includere il controllo dell'apnea durante il sonno e della sindrome improvvisa della morte in culla. Determinazione delle Terapie Adatte Poniamo che vi siano quattro diversi tipi di medicinali per curare la stessa malattia. La prescrizione della medicina ad un paziente con quella particolare malattia risulterebbe essere per nulla semplice. Determinati aspetti devono essere presi in considerazione nella determinazione della prescrizione finale: gli effetti collaterali della medicina; l'effetto sul paziente; se il paziente sta prendendo un'altra medicina bisognerà tenere in considerazione l'effetto della combinazione delle medicine; se il paziente è affetto nel contempo da un'altra malattia, e così via. Quindi individuare le medicine adatte diventa tanto importante quanto complesso. Qui la fuzzy logic può svolgere un ruolo importante. (Uno studio in merito è stato effettuato proprio alla facoltà di informatica dell'università di Salerno) Diagnostica per Immagini (S. Aja, R. San José, M. Á. Martín, Y. Dimitriadis, "Entorno Virtual para la Cooperación Clínica de Expertos en Ecografía Fetal", Trabajo de Doctorado, ETSI Telecomunicación, Valladolid, June 2000.) La maggior parte dei metodi di analisi dei dati provano a ricavare informazioni strutturali fuori dall'insieme di dati disponibili, ma appartenenti al sistema. Queste informazioni dovrebbero rappresentare più soddisfacentemente il sistema che produce l'insieme di dati. In sostanza, lo scopo è identificare parametri interni del sistema che non possono essere misurati direttamente. La logica fuzzy può aiutare a risolvere questo problema. Ecco un semplice esempio: osservate la figura 1. Con l'occhio umano quale sensore, l'aspetto dell'immagine è simile ad una collezione di quadretti in vari tonalità di grigi apparentemente senza senso. L'occhio umano è un sensore già abbastanza preciso in quanto può distinguere fra circa 100 differenti tonalità di grigio; tuttavia, anche con i migliori sensori, la figura 1 rimane una raccolta di quadrati grigi. Solamente se comprimete le vostre palpebre in modo che le immagini diventino "offuscate" (fuzzy), è possibile riconoscere l'immagine di Abraham Lincoln. La lezione appresa è che anche il metodo più accurato non darà le informazioni contenute nell'immagine. Anche se modificaste la tonalità di alcuni quadretti, non potreste risconoscere l'immagine di Lincoln: dovete sfumare i contorni dei quadretti; solo in questo modo aumenta il contenuto d'informazione. In altre parole, la visione d'insieme - quella della figura 2 è maggiore della visione particolareggiata di singoli dettagli. Esempio: Figura 1: solamente se comprimete le vostre palpebre in modo che le immagini diventino "offuscate" (fuzzy), potrete riconoscere Abraham Lincoln. Figura 2: Osservate ora la figura 2. Questa è stata ritoccata con un programma di fotoritocco in modo da aumentare le tonalità di grigio sfumando i contorni dei quadretti. Il risultato è un'immagine sbiadita, meno netta dell'originale, ma che aumenta il suo contenuto d'informazione: si percepisce un'immagine. L'esempio discusso, può aiutare a capire come basandosi su regole dettate dall'esperienza di medici esperti, la fuzzy logic può permettere la realizzazione di programmi per il miglioramento del riconoscimento delle immagini restituite dalle apparecchiature diagnostiche (ecografia, TAC, PET). Controlli di Processo Abbiamo discusso come la preparazione di molte forme farmaceutiche richieda il controllo di vari parametri. Per esempio, la pressione del punzone per formare le compresse ne determina il tempo di disaggregazione e quindi, deve tener conto della loro scorrevolezza e dimensione. Ancora, lo spessore del rivestimento delle microcapsule ne determina il tempo di rilascio, e quindi deve tener essere regolato in modo da conferire il necessario tempo di rilascio. Il controllo di questi processi può essere ottimizzato mediante elaborazione dei dati con fuzzy logic. Applicazioni in Ortopedia tratta da: www.fuzzytech.com Dopo un intervento chirurgico al ginocchio, ai pazienti è richesto di limitare le sollecitazioni al ginocchio per un lungo periodo di convalescenza. Il problema è che gli esseri umani non dispongono di sensori per controllare le sollecitazioni. Quando si presenta il dolore, il ginocchio già soffre di un danno. Per risolvere questo problema, è stato un sensore di tensione e un sistema di analisi fuzzy di dati per progettare una scarpa capace di restituire un feedback. La figura 3 mostra lo schema generale. Figura 3: La scarpa ortopedica comprende un'unità elettronica attaccata con velcro sopra la caviglia e di un sensore in uno strato di silicone Figura 4: tacco di silicone con sensore L'inserto in silicone contiene un sensore di pressione fatto in materiale polimerico. Il sensore è collegato ad un'unità elettronica che si trova in una cinghietta attaccata alla caviglia mediante velcro. L'unità elettronica comprende un microprocessore, batterie, altoparlante e una tastiera numerica. L'altoparlante avvisa il paziente quando la forza limite è raggiunta. La conversione A/D (Analogica/digitale), l'elaborazione del segnale e l'analisi dei dati in logica fuzzy sono gestiti da un microprocessore ad 8 bit. L'obiettivo del sistema fuzzy è stimare lo sforzo interno al ginocchio in base al segnale di tensione. Se l'80% del carico massimo accettabile è raggiunto, un beep avverte il paziente di muoversi più lentamente. Se il 90% del carico massimo accettabile è raggiunto, un beep ripetuto avverte il paziente di non muovere la gamba per un pò, e se il carico supera la soglia massima che è impostata dal medico mediante il tastierino numerico, il beep diviene continuo. Applicazioni in Cardiologia Association Claude Bernard - INSERM (Service d'Informatique Médicale, Hopital Broussais 96, Rue Didot F-75014 Paris, F) Lo scopo della ricerca è sviluppare un regolatore analogico a fuzzy logic per uno stimolatore cardiaco auto-adattabile. Questa nuova tecnologia è indirizzata alla progettazione e produzione di una nuova generazione di stimolatore cardiaci (pacemakers), o per migliorare quelli esistenti tramite un controllo più preciso ed affidabile ai processi di adattamento. Lo stimolatore cardiaco dovrebbe essere adattabile al carico del cuore così come alle diverse caratteristiche del paziente. La gestione a fuzzy logic permetterà la regolazione adattativa di uno stimolatore cardiaco. Ciò è destinato per essere prodotto come circuito integrato personalizzato su ordinazione nella tecnologia in CMOS. Lo sviluppo CMOS in analogico contribuirà a ridurre la complessità del chip, l'assorbimento di energia edi densità d'integrazione, di formato e basso. Finora è stato preparato uno studio preliminare sui differenti tipi di stimolatore cardiaci impiantati stabilmente che include un'analisi degli stati della risposta, della sopra-risposta e della sotto-risposta adattate. Uno studio sperimentale sulla frequenza cardiaca in relazione ai segnali di controllo negli individui sani durante i differenti sforzi delle prove, una ricerca e l'analisi critica dei possibili parametri di controllo, la definizione delle regole di individualizzazione iniziale usando un modello di controllo fuzzy logic. Il progetto unisce la ricerca fondamentale ed applicata in parecchi campi e presenta interesse teorico, tecnologico e medico. I risultati che saranno ottenuti sono importanti nei domini dei modelli adattativi, hardware a fuzzy logic, dell'ingegneria biomedica e degli stimolatori cardiaci e saranno pubblicati in pubblicazioni specifiche e presentati ai congressi. 7 Fuzzy Logic: Altre Applicazioni ________________________________________________ Controllo di frenata della metropolitana di Sendai Esistono situazioni in cui il sistema da controllare ha configurazioni e caratteristiche diverse nel tempo. È quindi necessario definire un sistema di controllo per ogni condizione. Se queste cambiano continuamente e se il cambiamento non è direttamente misurabile, è possibile definire un insieme di regole fuzzy, ognuna in grado di coprire una particolare situazione. La combinazione delle regole fuzzy permette di avere un controllo che varia in continuità al variare delle variabili di ingresso. Per questi motivi, il controllo della frenata del treno della metropolitana di Sendai, in Giappone, fu realizzato negli anni '80 con tecniche fuzzy. Il treno era in grado di frenare in maniera precisa e molto morbida qualunque fosse il carico di passeggeri. Ne risultò un maggior comfort per i passeggeri e un risparmio notevole di energia, rispetto alla frenata realizzata da operatori umani. Controllo del Volo di un Minielicottero Un altro esempio è il controllo di un mini elicottero, effettuato da Sugeno sempre negli anni '80. L'elicottero era in grado di eseguire comandi vocali con buona precisione, pur sottoposto a raffiche di vento non costanti, che cambiavano di continuo le condizioni operative. Controllo di una Lavabiancheria Grazie alla possibilità di realizzare controllori fuzzy su chip a bassissimo costo e alla loro buona robustezza nei confronti di segnali di cattiva qualità provenienti da sensori a basso costo, sistemi fuzzy sono stati usati per rendere più semplice l'utilizzo di beni di consumo quali lavatrici, aspirapolvere, condizionatori, telecamere, automobili, frullini ecc. Così, si hanno sul mercato lavatrici (anche di produttori italiani, divenuti leader di questa tecnologia) in grado di capire autonomamente che tipo di panni stanno lavando e di adeguare di conseguenza il ciclo di lavaggio, tra l'altro sciacquando solo finché è necessario, con notevoli risparmi di acqua ed energia. Si hanno aspirapolvere in grado di ridurre la potenza del motore quando sono puntate contro delle tende, e aumentarla sul pavimento. Si hanno telecamere in grado di mantenere a fuoco oggetti in movimento e di ridurre le accidentali vibrazioni della mano. A titolo d'esempio, si veda come una lavatrice, a un costo bassissimo e compatibile con le esigenze di mercato, può capire che tipo di panni deve lavare. Ogni lavatrice carica acqua finché un semplice interruttore pneumatico (pressostato) non viene attivato dalla pressione stessa dell'acqua nella vasca. Quando l'acqua entra nella vasca viene assorbita dai panni con un tempo di solito superiore a quello di attivazione del pressostato, e diverso a seconda del tipo di tessuto usato. Dopo un certo tempo si ha quindi, una diminuzione della quantità d'acqua nella vasca a spese dell'acqua assorbita dal tessuto. Il pressostato scatta e l'acqua riprende a entrare. Misurando i tempi e la quantità di attivazioni del pressostato si può ottenere, senza sensori aggiuntivi, una caratterizzazione del tipo di panni immesso, che viene usata per adattare il programma di lavaggio, ottimizzandolo e risparmiando all'operatore umano l'onere della scelta del programma. Anche la regolazione della quantità di risciacqui può essere fatta a costo bassissimo. L'acqua nella vasca costituisce un dielettrico per un condensatore le cui armature sono la vasca e un elemento metallico isolato da essa. L'acqua ha caratteristiche dielettriche diverse a seconda che contenga o meno sapone. Viene così misurato il tempo di carica del condensatore-lavatrice con l'acqua al termine del lavaggio e si continuaa sciacquare fino a quando questo tempo non è qualitativamente vicino al tempo di carica misurato all'entrata dell'acqua fresca all'inizio del lavaggio. In entrambi questi casi, il modello è qualitativo e affetto da rumore: si presta, dunque, bene a essere realizzato con regole fuzzy. Controllo di un Impianto Industriale Modello matematico difficile da identificare. Esistono impianti industriali il cui modello matematico è difficile da definire o da identificare con precisione, come per esempio, reattori chimici come quello oggetto del primo controllo fuzzy industriale, laminatoi, forni ecc. In questi casi, in genere, ci sono operatori umani in grado di governare l'impianto manualmente utilizzando regole qualitative basate sull'esperienza. Il controllore fuzzy può sostituirli, o affiancarli, catturandone e rendendone esplicita l'esperienza. Anche qui si veda un esempio in dettaglio. Si tratta di un forno per l'invecchiamento di alluminio, in cui bisogna portate un carico di trafilati di alluminio a una temperatura di stabilizzazione, possibilmente senza introdurre gradienti termici tra i due estremi dei trafilati, e senza produrre sovrariscaldamenti eccessivi. Il tutto nel più breve tempo possibile. In questa applicazione, il forno ad aria forzata era controllato considerando le temperature dell'aria all'ingresso e all'uscita del carico. Nell'azienda si avevano più di 10.000 tipi diversi di trafilati con diverse caratteristiche di assorbimento termico e non si voleva appesantire le operazioni di carico e scarico con procedure che indicassero il tipo di carico effettuato. In questo caso, è stato realizzato un controllo fuzzy che cattura una logica semplice e applicabile a qualunque tipodi carico, al quale il comportamento del controllore si adatta naturalmente. Espressa a parole la logica suona così: "Finché la differenza di temperatura tra ingresso e uscita dell'aria è contenuta entro i limiti desiderati, si scaldi con la massima intensità. Se il limite è raggiunto si mantenga quell'intensità nel riscaldamento. Se la temperatura in ingresso è vicina alla temperatura obiettivo si mantenga la temperatura obiettivo". Con un insieme di meno di 10 regole si è così ottenuto un controllo efficace, in grado di rispondere, come desiderato, ai diversi carichi. Un esempio di andamento del riscaldamento è la curva rappresentante la temperatura dell'aria calda in ingresso, sempre superiore a quella rappresentante la temperatura dell'aria in uscita dai trafilati. Si noti come si tratti di curve che sarebbero difficilmente rappresentabili con una funzione matematica, la quale eventualmente avrebbe un'espressività molto minore delle poche regole lingui-stiche menzionate, e una difficoltà di identificazione e manutenzione molto maggiori. Inoltre, la curva dovrebbe essere diversa per ogni tipo di carico e questo richiederebbe l'identificazione di parametri in linea di principio difficili da identificare. Applicazioni a Carattere Ludico Una delle più famose applicazioni di logica fuzzy è quella della nazionale di calcio robotico ( robocup.org ). Sono alti meno di un metro e mezzo, hanno ruote al posto delle gambe e calciano con curiosi pedali a stantuffo. Giocano in quattro contro quattro su un campo largo quattro metri e lungo otto. Per guardarsi intorno usano una telecamera mobile e per non scontrarsi mettono in funzione un sofisticato sonar. Sono calciatori-robot e giocano delle vere e proprie partite. E nell'ultima edizione dei campionati mondiali che si sono tenuti a Stoccolma, la squadra italiana, denominata Azzurra robot team, si è piazzata al secondo posto. Robocup non è però soltanto un gioco. In realtà questi sofisticati robot sono il frutto di ricerche scientifiche sull'intelligenza artificiale e la logica fuzzy. Per creare i robot calciatori della nazionale italiana, spiega il dottor Daniele Nardi, hanno lavorato insieme sei università italiane con il contributo del CNR e del Consorzio Padova Ricerche: "La caratteristica di questi robot è quella di essere completamente autonomi. Ogni robot infatti ha a bordo tutti i dispositivi che gli consentono di acquisire le informazioni sullo stato del gioco e di prendere le decisioni su quali sono le azioni da svolgere". La particolarità di questi robot è dunque quella di essere autonomi ed è proprio verso questa direzione che stanno andando le ricerche sull'intelligenza artificiale. Un settore disciplinare nato alla metà degli anni '50 e i cui risultati inizialmente non sono in realtà stati molto significativi. Il progredire poi della tecnologia, dei calcolatori elettronici e delle tecniche di programmazione, ha permesso la costruzione sia di robot sia di software capaci di prestazioni sorprendenti. INDICE Capitolo 1: Introduzione, la Nascita..............1 Capitolo 2: Il problema della Vaghezza..............4 Capitolo 3: Il paradosso del Sorite.................7 Capitolo 4: Logiche a più valori................8 Capitolo 5: Insiemi Fuzzy e Variabili 5.1: Insiemi fuzzy di tipo 2 e 5.2: Insiemi fuzzy di tipo N......................11 Linguistiche..........10 Variabili Linguistiche...........10 Capitolo 6: Applicazioni di Fuzzy Logic in Medicina.........12 6.1: Diagnostica Medica.....................12 6.2: Controllo della concentrazione di ossigeno inspirato dai neonati.....12 6.3: Diabete..........................13 6.4: Determinazione delle Terapie Adatte...............14 6.5: Diagnostica per Immagini....................14 6.6: Controlli di Processo......................16 6.7: Applicazioni in Ortopedia....................16 6.8: Applicazioni in Cardiologia....................17 Capitolo 7: Fuzzy Logic: Altre Applicazioni...........19 7.1: Controllo di frenata della metropolitana di Sendai.........19 7.2: Controllo del Volo di un Minielicottero..............19 7.3: Controllo di una Lavabiancheria................19 7.4: Controllo di un Impianto Industriale................20 7.5: Applicazioni a Carattere Ludico.................21 " A cura di: Tufano Tommaso Mat.: 056/100919 Per il corso di Intelligenza Artificiale Metodi e Tecniche Professor Antonio Gisolfi "