giovedì 8 dicembre 2011

SHRDLU, cerca di capirmi...

Molti studiosi, sia nel passato, sia oggi, ricercano la scintilla dell’intelligenza studiando i
meccanismi più profondi del funzionamento del nostro complicatissimo cervello. Studiano
come i neuroni, gli elementi base del cervello, interagiscono tra di loro e cercano di
riprodurre artificialmente questa interazione. E’ questo l’approccio giusto per capire e
riprodurre l’intelligenza? Non lo so. A me sembra che studiare l’intelligenza in questo modo
sia un po’ come cercare di capire il senso di quello che c’è scritto in questa pagina
studiando le interazioni elettriche dei transistor del processore montato sulla macchina che
visualizza queste righe. E poi, come definiamo noi il termine “intelligenza”? Quali sono le
caratteristiche che un’entità deve possedere per poter essere definita intelligente?
Partiamo da una considerazione. Noi ci definiamo una specie intelligente. Quale è il tratto
distintivo che differenzia la nostra specie dalle altre? La risposta è semplice: il linguaggio.
Il nostro linguaggio è il più articolato e complesso di qualsiasi altra specie vivente su
questo pianeta. Terry Winograd ha seguito la strada del linguaggio naturale per lo studio
dell’intelligenza artificiale. Nel 1968, Winograd ha iniziato la sua tesi di dottorato scrivendo
un programma in LISP che sarebbe stato in grado di “capire” le intenzioni di comandi dati
in Inglese naturale. Il programma si chiamava (...e si chiama) SHRDLU. All’epoca
SHRDLU girava su un DEC PDP-6 ed occupava un’intera bobina da 6 pollici. Il nome
SHRDLU deriva da ETAOIN SHRDLU che era il nome con cui era identificata la tastiera
della Linotype Machine (un po’ il precursore della nostra QWERTY).
SHRDLU era in grado di capire frasi (contestualizzate in un mondo ad hoc chiamato “il
mondo dei blocchi”) del genere: “SHRDLU sposta il blocco rosso più piccolo rispetto a
quello che stai reggendo adesso e che si trova sotto al blocco a forma di piramide di
colore verde”. Per un essere umano è banale disambiguare una frase del genere, ma per
un programma software diventa un incubo analizzare semanticamente questa frase. La
tesi di dottorato di Winograd si concluse nel 1970 e nel 1972 SHRDLU divenne il più
famoso programma software (e forse il primo) catalogabile sotto la categoria di
Computational Linguistic, branca della Computer Science affascinante e tuttora in fase di
enorme sviluppo. SHRDLU è ancora attivo e liberamente scaricabile per diverse
piattaforme all’indirizzo: http://hci.stanford.edu/winograd/shrdlu/.
Oggi molte ricerche sono orientate all’analisi del linguaggio naturale da parte di software
sempre più sofisticati. Si pensi all’ormai famoso Apple Siri, un programma di analisi
linguistica
che è in grado di tenere una conversazione credibile su qualsiasi argomento ed
eseguire comandi. Siri è disponibile in versione beta sul dispositivo mobile (iPhone 4S)
della Apple. Informazioni su Siri sono disponibili a questo indirizzo: http://www.apple.com/
iphone/features/siri.html
Sempre su iPhone è disponibile una mia applicazione (un po’ di pubblicità non va mai
male) in grado di eseguire l’analisi logica di una frase qualsiasi in inglese, classificando le
parole contenute nella frase in verbi, nomi, aggettivi, ecc. “Grammatica”, la mia
applicazione, è in grado anche di identificare all’interno della frase nomi propri, date,
indirizzi e numeri di telefono. Informazioni su Grammatica possono essere trovate al sito
Apple: http://itunes.apple.com/app/grammatica/id482570158?ign-mpt=uo%3D6&mt=8.
Molti altri studi sono in corso in Computational Linguistic. Per chi fosse interessato
all’argomento, un sito molto bello e pieno di articoli liberamente accessibili è quello del
MIT: http://www.mitpressjournals.org/loi/coli.
Per concludere ritengo la Computational Linguistic un approccio più sensato da perseguire
nella ricerca sull’intelligenza artificiale rispetto all’approccio botton-up della maggior parte
delle ricerche oggi attive in questo campo.
Luca Ciciriello.

Nessun commento:

Posta un commento