L'intelligenza artificiale
Luigia Carlucci Aiello
1. Introduzione
Ogni disciplina scientifica è animata da sogni e motivata da grandi progetti. Grazie ad essi si procede, conseguendo risultati anche inaspettati rispetto a quelli immaginati, spesso utili e in grado di conferire all’intero programma un significato che va al di là delle speranze e degli obiettivi originali.
I ricercatori di intelligenza artificiale (IA) sognano di realizzare quello che di certo appare come il più inaccessibile tra i progetti scientifici: capire i principi e i meccanismi del funzionamento della mente umana allo scopo di riprodurre l’intelligenza su una macchina. L’espressione “Intelligenza Artificiale” (di matrice americana, introdotta da John McCarthy nel 1956) descrive questo sogno. Forse il campo avrebbe incontrato meno ostilità se per esso fosse stata scelta la dizione “Intelligenza delle Macchine” (di origine britannica, introdotta da Alan Turing nel 1950), in quanto essa ricorda che, per quanto intelligenti, pur sempre di macchine si tratta. Ma un forte dibattito era comunque prevedibile in quanto l’IA mette in ballo quella che è ritenuta la più esclusiva prerogativa degli esseri umani: l’intelligenza.
Va anche aggiunto che inizialmente l’IA ha generato aspettative eccessive per sistemi che potessero risolvere qualunque problema e a basso costo, in particolare considerando le limitazioni della tecnologia con la quale i manufatti intelligenti sono stati realizzati. D’altronde, qualcuno ha giustamente osservato che ogni volta che la ricerca in IA raggiunge un nuovo risultato e viene proposto un prodotto che lo incorpora, questo viene considerato un prodotto dell’informatica: un destino ingrato per una disciplina che ha conseguito molti successi e ha facilitato la vita di ognuno di noi. La spiegazione è che l’IA parte da problemi scientifici che vengono prevalentemente affrontati, risolti e, quindi, ingegnerizzati con gli strumenti dell’informatica.
Nel resto dell’articolo vedremo brevemente le idee fondamentali che soggiacciono alla realizzazione di manufatti intelligenti e ne vedremo le incarnazioni in un oggetto fisico (un robot)[1] oppure in sistemi software (talvolta, per contrasto, detti softbot). Faremo poi una carrellata su applicazioni e prodotti già sul mercato nei campi più svariati, in particolare quello medico, e chiuderemo con un cenno ai problemi di attualità e con uno sguardo al futuro.
2. Il test di Turing e l'agente intelligente
Impossibile parlare di IA senza introdurre l’universalmente noto test proposto da Turing[2] che, nel 1950 scrive:
“Propongo di considerare la domanda: possono le macchine pensare?”
Conscio della difficoltà di definire formalmente cosa significhi pensare e cosa sia l’intelligenza, Turing suggerisce di osservare i comportamenti: diremo che una macchina è intelligente quando non potremo distinguere le sue risposte da quelle che ci dà un essere umano. Ed ecco il “gioco dell'imitazione,” come Turing chiamò l'ipotetico esperimento che ora porta il suo nome.
Turing mutua un test dalla psicologia: un giudice C interroga un uomo A e una donna B, che sono nascosti alla sua vista, e attraverso le risposte che riceve alle sue domande deve capire chi è chi. Turing adatta questo test alle macchine intelligenti: un interrogante/giudice C (a sinistra in figura[3]) e dietro una parete, collegati via telescrivente, un computer dotato di intelligenza A e una persona B (a destra). Obiettivo di C: capire, attraverso le riposte fornite alle sue domande, chi è A e chi è B, cioè chi dei due è la persona. Molto sottile, infatti Turing nel suo gioco dell'imitazione non si preoccupa di come le domande di C vengono capite o come le risposte di A e B vengono formulate, ma fornisce solo una misura qualitativa della bontà dell'output della macchina.
Come realizzare macchine intelligenti? La figura 2 rappresenta uno schema di architettura di sistema intelligente, sia esso un robot che un softbot, esemplificandone le caratteristiche salienti.
Un agente intelligente è situato in un ambiente e con esso interagisce. L'ambiente fornisce l'input all'agente, le percezioni che l'agente acquisisce attraverso sensori; l'agente elabora l'informazione acquisita nella scatola col punto interrogativo, che contiene il software che dà l'intelligenza al manufatto. Il risultato dell’elaborazione sarà un'azione, effettuata attraverso gli attuatori, che modificherà l'ambiente. Da notare che l'agente fa parte dell'ambiente, perciò un'azione può modificare l'ambiente, l'agente stesso, o entrambi.
Il funzionamento di un agente intelligente può essere esemplificato come un ciclo percezione-ragionamento-azione o, se si preferisce, percezione-pianificazione-azione. La divisione nelle tre fasi è puramente logica e non corrisponde a una netta separazione in sequenza in quanto le tre attività possono essere parallele.
La percezione avviene attraverso sensori che permettono la misura di quantità fisiche come la luce (immagini statiche e in movimento), il suono (parlato), la temperatura, ecc.. Le azioni vengono effettuale da organi di locomozione, da manipolatori, ma possono anche essere output sonori o grafici. Percezioni e azioni possono coinvolgere anche internet: ad esempio, un softbot può inviare messaggi o consultare risorse in rete. Il software che implementa gli algoritmi di ragionamento e pianificazione, sulla base degli input forniti dalla percezione e della conoscenza che l’agente incorpora circa i fatti e regole che governano il mondo, prende decisioni in autonomia sulla successiva azione da eseguire.
L’agente è parte integrante dell’ambiente, per cui le sue azioni possono anche modificare sé stesso. Questa capacità gli permette di apprendere dalla sua stessa esperienza in un circolo virtuoso che lo porta a incrementare la propria conoscenza dell’ambiente in cui opera e a migliorare le sue prestazioni.
Di particolare interesse sono i sistemi multi-agente, in cui coesistono diversi agenti (siano essi umani o artificiali) che possono cooperare alla soluzione di uno stesso problema o competere, come in situazioni di gioco. Esempi significativi sono le squadre di robot che collaborano in operazioni di soccorso o la competizione tra squadre come nel calcio robotico.[4]
3. Le sfide vinte
La ricerca in intelligenza artificiale, partita in sordina e tra tanti scetticismi, ha prodotto una mole considerevole di risultati ed è ormai sotto la constante attenzione, anche dei media, per il fatto che metodi e tecniche dell’IA sono alla base degli strumenti informatici entrati nell'uso quotidiano. È quindi legittimo chiedersi come siamo posizionati rispetto al superamento del famoso test di Turing. Anche se non siamo esattamente circondati da sistemi che lo supererebbero, siamo tutti pronti a dire che alcuni sistemi mostrano intelligenza di livello umano, o in qualche caso la superano. Qui di seguito accenniamo a tre tra questi:
1. Deep Blue batte un campione umano nel gioco degli scacchi (1997).
2. Veicoli senza pilota si muovono in ambienti urbani ed extraurbani (2005 -2007).
3. Watson, un sistema di domanda/risposta batte due campioni umani nel gioco televisivo a premi Jeopardy (2011).
Nel 1997 per la prima volta un programma (Deep Blue, fatto dall'IBM) batte il campione mondiale di scacchi Garry Kasparov in un torneo: 2 partite per Deep Blue, 1 per Kasparov e 3 patte. Kasparov era stato campione del mondo nel 1985, a 22 anni, e racconta che nel 1985 aveva giocato una simultanea contro 32 computer con 32 diversi programmi e li aveva battuti tutti. Bel salto dal 1985 al 1997! La notizia di Deep Blue ha avuto l'onore della prime pagine dei quotidiani, a partire dal New York Times e se ne è continuato a parlare per mesi; anche se la discussione troppo spesso si è concentrata sulla diatriba se si trattasse o meno di un risultato di IA piuttosto che di informatica e se Deep Blue avesse realmente dimostrato intelligenza. Deep Blue è stato un risultato epocale nel campo degli scacchi e non solo; da allora anche gli scettici hanno guardato con attenzione all'IA.
La costruzione di veicoli che possono muoversi senza pilota ha grande interesse pratico ed ha attratto molta attenzione negli anni recenti. Sono state indette delle competizioni tra veicoli senza pilota, due hanno avuto risultati notevoli:
· nel 2005 un camion senza pilota (realizzato all’Università di Stanford) attraversa in autonomia il deserto del Mojave da Los Angeles a Las Vegas;
· nel 2007 un'automobile senza pilota (realizzata alla Carnegie Mellon University) gira per le strade di una cittadina americana.
Siamo qui di fronte a due competizioni molto diverse dal gioco degli scacchi; è infatti comune sentire che per guidare un automezzo non serva l'intelligenza che serve per giocare a scacchi. La guida sembra essenzialmente un problema di percezione e presa di decisioni in tempi rapidi, ma non per questo è di semplice soluzione. L’attraversamento di un deserto è più facile rispetto alla guida in città, che è resa complicata dall'ambiente più complesso e dinamico. Infatti, una macchina che si muove in una città, in condizioni di traffico normali, incontra altre macchine, pedoni, semafori, segnali di stop, ecc.
Watson è un sistema di IA che risponde a domande poste in linguaggio naturale sviluppato presso i laboratori IBM nel progetto DeepQA. Watson è un’applicazione di tecnologie di elaborazione del linguaggio naturale, reperimento di informazione, rappresentazione della conoscenza, ragionamento automatico e apprendimento automatico, applicate al “Question Answering” su domini aperti, cioè non limitati a specifici argomenti. Nel 2011 per testarne le capacità, Watson, che aveva a disposizione la conoscenza contenuta in circa 200 milioni di pagine memorizzate in 4 terabyte di disco, è stato fatto competere nel quiz televisivo americano Jeopardy con i due più importanti campioni umani di questo gioco - quello che è stato campione più a lungo e quello che ha vinto di più - e li ha battuti entrambi. Watson ha fatto meno notizia sulla stampa internazionale rispetto a Deep Blue, forse perché Jeopardy non è altrettanto popolare degli scacchi, o non è considerato un gioco che richiede intelligenza come gli scacchi, ma il risultato non è certo meno importante.
4. Stato dell’arte e prospettive
I robot nelle fabbriche e in agricoltura stanno già dimostrando il loro potenziale. Per le automobili senza guidatore si parla di immissione sul mercato per il 2015. Queste applicazioni possono contare sugli enormi progressi fatti dalla visione artificiale. Altre tecniche dell’IA, che includono il riconoscimento delle lingue naturali e del parlato, la manipolazione con destrezza, la navigazione, porteranno un cambio radicale nell’interazione tra esseri umani e robot e nell’uso di internet e del personal computer. Dalla dizione inglese “intelligent” siamo ora passati a “smart”. Vedremo quindi “Smart robots, smart homes, smart cities, smart grids, smart cars, smart health, smart science,” ecc..
Sono passati due anni da quando Watson ha vinto i campioni di Jeopardy. IBM aveva inizialmente previsto di commercializzarlo come consulente esperto per i medici: la conoscenza enciclopedica di Watson può essere utilizzata nella diagnosi di malattie e non solo. Recentemente IBM ha annunciato una versione più generale, lo “Watson Engagement Advisor,” da utilizzare nei call center, nel supporto tecnico e nelle vendite telefoniche, dove sembra che addirittura il 61 percento del supporto telefonico fallisca per l’inadeguatezza degli impiegati nel fornire informazioni corrette e complete.
C'è una corsa a costruire robot che possono camminare, aprire porte, salire scale, interagire con esseri umani senza pericolo, giocare con bambini o assistere persone anziane, disabili o cognitivamente deboli. Il robot domestico che assiste l'anziano monitorandone lo stato di salute, facendogli compagnia e aiutandolo a mantenere i suoi contatti umani è foriero di grandi vantaggi sociali in una società in cui l’età media cresce costantemente, supportando in sicurezza una vita indipendente.
L'interazione tra esseri umani e robot diventa sempre più facile e diretta, passando attraverso la comprensione del linguaggio naturale e del parlato (basti pensare al prodotto Siri di Apple per l’interazione vocale con i suoi palmari e tablet), delle immagini e permettendo al robot di imparare non solo per esperienza diretta, ma anche da internet e perché oggetto di insegnamento esplicito da parte degli esseri umani. Ma l'interazione diventa più intima con la costruzione di interfacce cervello-computer (vedi figura 3) dove i segnali che arrivano direttamente dal cervello possono diventare comandi per un computer o per controllare protesi.
Robot-bambini giocano con bambini, li ascoltano, parlano con loro e capiscono le loro espressioni facciali. Computer che comprendono le nostre espressioni facciali fanno prevedere molti possibili utilizzi nella interazione intelligente tra esseri umani e robot, ancorché siano forieri di preoccupazioni: una invasione della privacy a livelli precedentemente non possibili. Non stiamo più parlando semplicemente di riconoscimento di volti, ma di "decodifica" dei muscoli facciali che lascia capire pensieri e sentimenti di un essere umano.
5. Robotica medica
E veniamo alla robotica medica:[6] ospedali popolati da robot infermieri, macchine portantini, tele-chirurghi. Non è la scena di un romanzo di fantascienza, ma lo scenario sempre più reale di come appariranno le nostre strutture sanitarie. La robotica medica è un campo che richiede competenze interdisciplinari di robotica e medicina, sia nella fase di individuazione delle funzionalità richieste sia nelle varie fasi in cui si articola il processo di progettazione, sviluppo e valutazione dei sistemi realizzati.
La robotica medica contribuisce, attraverso lo sviluppo di dispositivi intelligenti, a estendere e a migliorare le possibilità di intervento in molti settori della medicina, anche potenziando direttamente le capacità percettive, cognitive e motorie del medico.
Una menzione speciale merita la chirurgia robotica. L’etimologia stessa della parola chirurgo[7] ci fa capire perché rimpiazzare mani umane con mani artificiali sia stato un obiettivo che la robotica si è posta con grande impegno, visto l’alto valore applicativo e sociale. Nell’ambito della chirurgia, la ricerca robotica si propone principalmente di ridurre il grado di invasività degli interventi, garantendo al contempo una precisione elevata, paragonabile o anche superiore a quella dell’operatore umano, permettendo anche interventi altrimenti impossibili, minor stress e una più veloce convalescenza da parte del paziente.
In ambito diagnostico si progettano sistemi robotici per ridurre l’invasività degli interventi esplorativi, alleviando di conseguenza lo stato di disagio fisico e psicologico del paziente. Nel settore della riabilitazione, i sistemi robotici affiancano o sostituiscono gli operatori, permettendo protocolli riabilitativi più efficaci e riducendo la fatica del personale che somministra le terapie.
Abbiamo già accennato alla robotica al servizio dell’invecchiamento della popolazione. I sistemi robotici possono contribuire ad arginare la domanda crescente di risorse umane da destinare all’assistenza domiciliare e ospedaliera degli anziani, svolgendo alcune funzioni di assistenza e ritardando al contempo la necessità di ospedalizzazione o di fruizione di strutture specialistiche.
Infine, nel campo della prostetica, la robotica fornisce tecnologie per il coordinamento percezione-azione e sistemi avanzati di controllo con lo scopo di restituire capacità perdute di interazione con l’ambiente a soggetti che hanno subito amputazioni o che sono affetti da forti limitazioni percettive e motorie.
6. Concludendo
Il programma di costruire macchine in grado di comportarsi come noi umani prosegue con successo e oggi i ricercatori di intelligenza artificiale si occupano di una disciplina matura che fornisce soluzioni a problemi importanti e produce sistemi utili all’uomo e alla società.
La ricerca continua, nessuno dei problemi aperti dell’IA è veramente e completamente chiuso, su tutti si continua a migliorare, in un circolo virtuoso che fa corrispondere al progredire delle soluzioni teoriche un progresso notevole della tecnologia, e dal progresso della tecnologia, vede emergere nuove sfide scientifiche.
L’impiego di sistemi intelligenti diventa ogni giorno più pervasivo e sempre di più aumenta l’autonomia decisionale da parte di agenti artificiali. Dalle soluzioni di “problemi giocattolo” (così i ricercatori di IA hanno sempre amato chiamare i piccoli ma al contempo complessi problemi su cui esemplificare le teorie e le soluzioni proposte) che al massimo potevano aver impatto su una lavagna in un’aula universitaria, a problemi di grande impatto per l’umanità.
La crescente versatilità dei prodotti dell’IA e la crescente autonomia nelle decisioni, spesso critiche fino a decisioni di vita o di morte, solleva problemi etici e legali. Infatti ci troviamo a confrontarci con situazioni completamente nuove e non riconducibili a casi normativi preesistenti. Si va dalla limitazione o addirittura messa al bando degli UVA, “Unmanned Aereal Vehicles,” anche noti come droni, in scenari di guerra (analogamente a quanto fatto per le armi chimiche), all’aggiornamento del codice della strada, ma soprattutto alla rivisitazione del concetto di responsabilità in caso di danni arrecati da agenti intelligenti autonomi a persone e cose.
Prof.ssa Luigia Carlucci Aiello Dipartimento di Ingegneria Informatica Automatica e Gestionale Antonio Ruberti Sapienza Università di Roma
[1] Un sistema fisico che incorpori elettronica e software che lo rendono capace di muoversi e agire autonomamente di solito prende il nome di “robot mobile autonomo” e la disciplina che se ne occupa viene detta “robotica cognitiva.”
[2] Turing A. M., Computing Machinery and Intelligence, Mind 59 (1950), pp. 433-460.
[3] Le figure sono prese da Russell S., Norvig P., Artificial Intelligence: A modern Approach.(3rd Edition) Pearson, New York 2010.
[4] Nel 1997 è stata lanciata la Robocup, un torneo di calcio tra robot; l’obiettivo è quello di avere una squadra di robot calciatori capace di battere la squadra vincitrice dei campionati del mondo entro il 2050.
[5] Foto cortesia dell’autore Febo Cincotti.
[6] Per un approfondimento sugli aspetti tecnologici, etici, sociali ed economici si veda Datteri E., Tamburrini G., Robotica medica e società in http://www.treccani.it/enciclopedia/robotica-medica-e-societa_(XXI-Secolo)/
[7] La parola chirurgo deriva dal greco cheirourgos “colui che opera con le proprie mani,” composto di cheir mano e ergon opera.