Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
L'Intelligenza Artificiale dai suoi inizi ad oggi, le opinioni dei filosofi sul problema mente/corpo, il mondo frattale dei neuroni....
Materie trattate: Informatica, Filosofia, Matematica, Inglese
a.s 2006/2007
Capitolo 2
A NALISI
’I A
DELL NTELLIGENZA RTIFICIALE
2.1 Fondamenti teorici
Sono stati enunciati alcuni fondamenti teorici unanimemente considerati alla base della
moderna A.I.:
1. Il ragionamento ed ogni tipo di attività della mente è un calcolo.
2. Il calcolo è inteso come manipolazione di simboli in base a regole prestabilite.
3. Il simbolo, o rappresentazione, è un oggetto che sta per o raffigura un altro oggetto.
4. Può esistere un manipolatore automatico di simboli.
(μηχανη)
Macchina deriva dal greco mechané che a sua volta deriva da méchos
(μηχος), mezzo, rimedio, espediente. La definizione più generale di macchina è quella
per cui essa è vista come un insieme funzionale composto da parti chiaramente definite,
cioè da dei ‘meccanismi’, tale che le sue funzioni (sia interne che esterne) si possano
comprendere conoscendo le parti che lo compongono e il modo in cui esse interagiscono.
2.2 Turing e l’avvicinamento all’Intelligenza Artificiale: Test di Turing
Uno degli obiettivi dei primi studiosi di Intelligenza Artificiale è stato realizzare una
macchina che funzionasse come un sistema formale, le cui caratteristiche di una
macchina con sistema formale sono state definite rigorosamente dal grande matematico
inglese Alan Turing (1912-1954) che diede un contributo fondamentale agli studi
sull’A.I.
Nel suo saggio del 1936 “Sui numeri computabili con una applicazione al problema della decisione”
Turing immagina una macchina teorica in grado di compiere qualsiasi tipo di calcolo, di
qualunque genere, facendo delle banali operazioni computazionali. Una macchina di
Turing è costituita da un dispositivo che può scrivere e leggere simboli su un nastro di
lunghezza anche infinita, diviso in celle che possono contenere un solo simbolo
ciascuna. Il dispositivo, oltre a scrivere e leggere i simboli, può spostarsi a destra o
sinistra, una cella alla volta. Il suo funzionamento avviene per passi successivi e ogni
passo è determinato da regole precise che, oltre a considerare il simbolo letto, valutano
anche il suo stato interno. Si può dimostrare che una macchina di Turing è in grado di
simulare il funzionamento di qualsiasi sistema formale e che i moderni calcolatori sono
equivalenti a una macchina di Turing.
Una caratteristica fondamentale della macchina di Turing è che separa l’informazione in
due elementi: il suo stato interno e ciò che ne deriva esternamente. 5
a.s 2006/2007
La macchina di Turing costituirebbe la rappresentazione meccanica di un algoritmo,
ovvero di un insieme di istruzioni che specificano i passaggi tramite i quali si rende
possibile la soluzione di un determinato problema.
Il matematico Church ha inoltre espresso la congettura di Church: qualsiasi cosa sia
calcolabile da un algoritmo, esso è calcolabile da una macchina di Turing. La macchina di Turing
potrebbe eseguire tutti i procedimenti mentali trasformabili in un procedimento formale
di passaggi, da uno stato all’altro, ma, proprio perché basata su procedimenti formali, ne
condividerebbe i limiti. Le proposizioni espresse nell’ambito di un sistema formale non
sono infatti verificabili restando all’interno del sistema e ciò rappresenta un limite di
incompletezza del sistema stesso.
Alcuni teorici dell’A.I. sostengono invece che il cervello è una specie di macchina di
Turing e le operazioni che avvengono in esso sono una sorta di programmi. Questa
teoria è detta teoria rappresentazionale della mente e in base a essa si potrebbero
trovare le regola con cui il nostro cervello elabora i simboli, trasformarle in programmi e
riprodurle artificialmente in un computer.
Alan Turing è inoltre l’autore di un test, apparso nel 1950 nell’articolo Computing
machinery and intelligence sulla rivista Mind, che è universalmente conosciuto come l’unico
in grado di stabilire se una macchina è in grado di pensare o meno: viene infatti definita
“intelligente” una macchina che riesce a superare il test di Turing.
In che modo definiva “intelligente” una macchina?
Il test di Turing consiste essenzialmente nel rispondere alla sua domanda iniziale: “Can
machines think?”. Per rispondere a questa domanda Turing la riformulò nei termini di un
gioco, che chiamò gioco dell’imitazione.
Questo gioco viene effettuato da tre persone: un uomo(A), una donna (B) ed un
interrogante. Quest’ultimo viene chiuso in una stanza, diviso dagli altri due, i quali sono
da lui conosciuti con i nomi X e Y. Scopo del gioco è che l’interrogante capisca chi sia
l’uomo e chi sia la donna, facendo delle domande ai due. Affinché nulla possa aiutare
l’interrogante a capire chi sia l’uomo e chi la donna, le risposte verranno dattiloscritte.
Lo scopo di A è quello di ingannare l’interrogante, lo scopo di B è quello di aiutarlo.
Il test di Turing si basa sulla convinzione che una macchina si sostituisca ad A,e nel caso
in cui l’interrogante non si accorgesse di nulla, la macchina dovrebbe essere considerata
intelligente, dato che sarebbe indistinguibile da un essere umano. Per macchina
intelligente Turing ne ritiene una che sia in grado di pensare, ossia capace di produrre
idee e pensieri concatenati tra loro e di esprimerle.
Il test di Turing è stato riformulato negli anni successivi. Le ragioni sono varie: dalla
formulazione originale imprecisa, al sorgere di nuovi problemi sulla definizione di
macchine intelligenti. Il filosofo John Searle, ha proposto una modifica del test di
Turing, che ha preso il nome di stanza cinese, ritenendo di essere riuscito a dimostrare
che il test di Turing non era sufficiente a provare che una macchina o un sistema
informatico siano sistemi dotati di intelligenza.
Ancora oggi nessun sistema artificiale ha superato il test di Turing, e ogni anno si
imbandiscono premi per incentivare i programmatori a costruirlo.
2.3 L’architettura base dei sistemi di Intelligenza Artificiale
L’I.A. è valutata per le sue capacità e prestazioni, indipendentemente dai metodi e
meccanismi che sono utilizzati per realizzarla. 6
a.s 2006/2007
L’idea che sta alla base è quella di costruire macchine che non necessariamente
simulino riproducendo il comportamento del cervello umano, ma siano in grado di
emularlo selettivamente nel risultato finale di certe operazioni.
È questa la tesi sostenuta da A. Turing nel gioco dell’imitazione: egli propone di
“valutare” l’intelligenza di una macchina solamente dalla sua capacità di presentare un
comportamento comunicativo indistinguibile da un essere parlante umano.
Quest’impostazione è stata sicuramente dominante nella storia dell’IA ed ha portato alla
costruzione programmi che raggiungono un alto livello di competenza nella conoscenza
e nella risoluzione di problemi ritenuti complessi.
L’applicazione software alla base di un sistema di I.A. è un “ambiente” in cui
rappresentare, utilizzare e modificare una base di conoscenza. Il sistema esamina un
largo numero di possibilità e costruisce dinamicamente una soluzione. Ogni sistema di
tal genere deve riuscire ad esprimere due tipi di conoscenza in modo separato e
modulare: una base di conoscenza e un motore inferenziale.
2.4 Primi programmi di Intelligenza Artificiale
A partire dalla metà degli anni ‘60, lo sviluppo della tecnologia dei circuiti integrati
consentì il nascere di quella che viene definita la terza generazione dei computer. Con
queste nuove macchine si rese possibile anche un salto qualitativo dei programmi ed una
ricerca dell’A.I. applicata soprattutto alla comprensione del linguaggio umano, al calcolo
simbolico ed alla rappresentazione semantica.
Uno dei primi programmi di A.I. ad avere successo fu Eliza, inventato nel 1964 da
Joseph Weizenbaum, prima ricercatore al MIT poi prestigioso docente. Eliza (nome
preso dall’omonima Eliza del ‘Pigmalione’ di G. B. Shaw) era in grado di sostenere una
conversazione in inglese su “copioni” prestabiliti di diverso argomento. La sua notorietà
fu dovuta anche al ‘ruolo’ di psicanalista che Weizenbaum fece assumere ad Eliza,
talmente realistico da far credere agli utilizzatori di essere davanti a un vero dottore.
Uno psichiatra, Kenneth Colby, realizzò poco dopo un programma simile ad Eliza che
chiamò Parry, in grado di simulare il comportamento linguistico di un paranoico.
Furono persino organizzate sedute di dialogo tra Parry ed Eliza, a detta di molti
psichiatri estremamente realistiche.
2.5 Linguaggi di AI
Uno dei limiti caratteristici nel modo di procedere formale del computer è quello che la
macchina ignora il significato dei simboli che va manipolando. E’ la distinzione esistente
fra un procedimento sintattico ed uno semantico.
Il primo programma dotato di un modulo per la comprensione semantica del linguaggio
umano fu SHRLDU sviluppato da T. Winograd fra il 1968 e il 1970. Il nome è ottenuto
dalla sequenza di lettere dell’alfabeto inglese che va dalla settima alla dodicesima in
ordine di frequenza decrescente. SHRDLU era in grado di comprendere il linguaggio
naturale e di spostare a piacimento, tramite un braccio articolato, un gruppo di oggetti
geometrici diversi per forma, misura e colore, sperimentava la percezione del mondo
esterno con rappresentazioni proprie di oggetti fisici. La procedura di risposta ai
comandi impartiti prevedeva una fase di riconoscimento della frase. 7
a.s 2006/2007
Sulla comprensione e la formulazione del linguaggio naturale furono iniziati a Yale da
Roger Schank, alla fine degli anni ‘60, studi particolari che portarono al programma
Margie, proposto nel 1975 dallo stesso Schank. Successivamente furono sviluppati altri
programmi, come Eli, scritto da Riesbeck al fine di perfezionare la fase di
segmentazione del linguaggio naturale, e Babel, scritto da Goldman per generare testi. I
più recenti programmi, considerati come la terza generazione dei programmi di
Intelligenza Artificiale, sono finalizzati come nel caso di Sam (Script Applier
Mechanism) alla comprensione testuale.
Le ricerche sull’elaborazione del linguaggio naturale (Natural Language Processing)
costituiscono uno dei settori di punta dell’intelligenza artificiale e sono oggetto di una
ulteriore disciplina che si chiama linguistica computazionale. L’elaborazione
automatica del linguaggio naturale prende le mosse dalla teoria linguistica di Noam
Chomsky. Secondo Chomsky la capacità che ogni essere umano ha di capire e produrre
frasi e discorsi nella sua lingua è dovuta ad un insieme di conoscenze presenti nella sua
mente: definiamo questo insieme di conoscenze implicite competenza linguistica.
Tale competenza è almeno in parte inconsapevole, visto che la maggior parte delle
persone sono in grado di produrre e capire le frasi corrette, così come di individuare
immediatamente gli usi scorretti della loro lingua, pur senza sapere il modo in cui questo
avviene.
Per la rappresentazione delle conoscenze si utilizzano le cosiddette reti semantiche. La
prima formulazione del concetto di rete semantica si deve a Ross Quillian, che lo
elaborò nel 1968 per costruire un modello dell’organizzazione dei significati delle parole
nella memoria e della capacità di associare concetti. Secondo Quillian i concetti nella
nostra mente sono organizzati in una struttura reticolare, solo che in questa rete esistono
due tipi di nodi: i nodi tipo e i nodi occorrenza. I nodi tipo corrispondono ai
significati delle singole parole. Da ogni nodo tipo si dipartono una serie di collegamenti
o archi che terminano nei nodi occorrenza, che hanno la funzione di descrivere il
significato della parola in questione.
Questo modo di rappresentare la conoscenza è inadeguato per rendere conto del modo
assai rapido in cui un essere umano è in grado di accedere alle conoscenze
immagazzinate nella sua memoria e di utilizzarle per ragionare, comprendere un
discorso in lingua naturale o riconoscere gli oggetti e le situazioni che gli si presentano.
Per rendere conto di queste caratteristiche della nostra memoria concettuale, e per
riprodurla su un computer, Marvin Minsky, uno dei pionieri dell’Intelligenza Artificiale,