Farsi un’idea chiara di quale sia la vera natura dell’Intelligenza artificiale, comprendere che dietro non c’è nulla di magico o misterioso e chiedersi, semmai, da dove venga l’effetto di magia che l’«intelligenza artificiale» porta con sé, sono passaggi indispensabili in un’epoca in cui sempre meno possiamo permetterci di lasciare che decisioni importanti per la nostra vita siano ciecamente demandate ad una politica sempre più disarmata e ad un’economia sempre più opaca.
E per farsi un’idea più chiara, niente di meglio che leggere la voce pubblicata a luglio di quest’anno dall’eccellente Stanford Encyclopedia of Philosophy dedicata alla Artificial Intelligence, a firma di Selmer Bringsjord e Naveen Sundar Govindarajulu: a giudicare dagli Acknowledgments in cui, con tipico humour da scienziati, vengono ringraziate «many first-rate (human) minds», si tratta di una voce che è costata molto cura e fatica. Di qualche giorno fa è la rielaborazione, nella medesima sede, della voce sorella Logic and Artificial Intelligence, firmata da Richmond Thomason e la cui prima stesura venne rivista da John McCarthy (più o meno come scrivere una voce sul cristianesimo e farla rivedere da San Paolo).
In tempi in cui le discussioni sull’intelligenza artificiale si affacciano costantemente nei mezzi di comunicazione sociale, circondate da un’aura di timore misto ad ammirazione, queste due voci di enciclopedia sono un ottimo consiglio di lettura per coloro che vogliono farsi un’idea più chiara. Oseremmo dire che, anziché occupare tempo a leggere cento articolini di attualità, a seguire infiniti scambi di opinioni, è una buona idea investire un po’ di tempo nella lettura di qualche pagina seria, organica, documentata: più impegnativo ma in fin dei conti remunerativo.
Perché farsi un’idea più chiara sull’intelligenza artificiale
Farsi un’idea più chiara sulla natura dell’intelligenza artificiale ottiene almeno due effetti complementari. Il primo è eliminare l’opinione secondo cui essa sarebbe un campo che si è aggiunto ad un’informatica «poco intelligente», con conseguenze, a seconda dei punti di vista, meravigliose o temibile. È l’idea secondo cui i computer sono macchine estremamente stupide, solo comode per la loro velocità: l’intelligenza artificiale sarebbe una magica pozione in grado di donare loro capacità quasi umane. In realtà basta uno sguardo alla storia dell’informatica per vedere che l’idea di un’intelligenza artificiale nel senso moderno è praticamente contemporaneo alla nascita dei computer. Il suo atto di fondazione è l’articolo di Alan Turing «Macchine per calcolare e intelligenza», del 1950. Nel 1936 lo stesso autore, con il suo articolo «Sui numeri computabili, con un’applicazione al Problema della Decisione» aveva già descritto un’ipotetica «macchina universale» in grado di eseguire ogni calcolo matematico concepibile. Una quindicina di anni più tardi, quando questo modello era diventato il punto di partenza per la costruzione dei primi computer, Turing s’interroga sulla possibilità che una macchina possa pensare.
Dato che tale domanda implicherebbe una difficile definizione di entrambi i termini coinvolti, Turing propone di sostituirla con un’altra: è possibile programmare una macchina a rispondere in modo tale che un essere umano si sbagli a capire se tali risposte vengano da una macchina o da un altro essere umano? (In realtà la nuova domanda di Turing era più raffinata, e implicava un delizioso gioco consistente nel distinguere le risposte maschili da quelle femminili!) Alla fine di una lunga discussione, che ancor oggi vale la pena di essere letta, Turing conclude:
Possiamo sperare che le macchine possano alla fine competere con gli uomini in tutti i campi puramente intellettuali. Ma quali sono i migliori da cui cominciare? Anche questa è una decisione difficile. Molti pensano che un’attività molto astratta, come il gioco degli scacchi, sarebbe la cosa migliore. Si può anche sostenere che è meglio fornire alla macchina i migliori organi di senso che si possano trovare in commercio, e poi insegnarle a capire e parlare inglese. Questo processo potrebbe seguire il normale procedimento di insegnamento ad un bambino. Le cose potrebbero essere indicate dicendo il loro nome ecc. Anche in questo caso non so quale sia la risposta giusta, ma penso che entrambi gli approcci dovrebbero essere provati. Possiamo vedere solo una breve tratto di strada davanti a noi, ma vi vediamo molte cose che devono essere fatte.
Turing il visionario
Se si pensa che i pochissimi calcolatori dell’epoca avevano capacità a mala pena paragonabili con quelle di una calcolatrice tascabile di parecchi anni fa, si capisce quanto il discorso di Turing fosse, come oggi si direbbe, visionario. D’altra parte, le sue riflessioni non aggiungono molto di più rispetto a quanto il suo articolo del 1936 aveva messo in luce: una semplice «macchina universale» è teoricamente in grado di calcolare tutto ciò che è calcolabile. I limiti pratici sono solo da una parte quelli fisici (velocità, ampiezza della memoria), dall’altra quelli intellettuali dalla parte del programmatore: descrivere l’algoritmo che esegue una certa operazione può essere difficilissimo, anche quando è chiaro che esso esiste. Lo stesso tema appassionò anche John von Neumann, al quale viene comunemente attribuita nel 1945 la descrizione dell’architettura dei computer moderni: alla sua prematura morte nel 1957 egli lascia incompiuto proprio un libro dedicato a confrontare il cervello umano con il computer, sostenendone implicitamente la sostanziale omogeneità. Nel frattempo, proprio ad opera del già citato John McCarthy, era stato coniato il termine «intelligenza artificiale» (non amato da tutti, peraltro). Insomma, l’intelligenza artificiale non solo non è un’ospite arrivata in ritardo alla festa dell’informatica: in un certo senso, è proprio lei che l’ha organizzata.
Ma questa rettifica di carattere storico ne trascina immediatamente un’altra con sé: nell’intelligenza artificiale non c’è nulla di magico o misterioso: c’è semplicemente lo sforzo di descrivere procedimenti via via più complessi e di renderli quindi riproducibili da una macchina.
- Scrivere un programma che giochi a tris perfettamente (cioè sempre con la migliore strategia) è alla portata di qualsiasi studente di informatica, e infatti già nel 1952 venne scritto: era il primo videogioco grafico (si fa per dire) della storia.
- Scrivere un programma che giochi perfettamente a dama è molto più complesso.
- Scrivere un programma che giochi perfettamente a scacchi è estremamente difficile.
- Scrivere un programma che comprenda istruzioni formulate in un linguaggio standard verbo + complemento oggetto, con un dizionario limitato, è molto facile; comprendere forme e lessici via via più ricchi è sempre più complesso.
È per questo che sfogliando testi scritti decenni fa si può restare sorpresi nel vedere il termine «intelligenza artificiale» applicato a campi apparentemente molto semplici. Nel 1962 il manuale del LISP 1.5 (il geniale linguaggio di programmazione ideato appunto da McCarthy) così recitava nella quarta di copertina:
Il linguaggio LISP è progettato primariamente per l’elaborazione di dati simbolici, usata per calcoli simbolici nel calcolo differenziale e integrale, nella teoria dei circuiti elettrici, nella logica matematica, nei giochi, e in altri campi dell’intelligenza artificiale.
Insomma: nel 1962 sembrava evidente che calcolare un integrale è un’operazione «intelligente», così come giocare a tris o calcolare i valori di verità di un’espressione logica. Erano operazioni tradizionalmente svolte da esseri umani, secondo procedimenti più o meno complessi, che ora potevano essere affidati a macchine semplicemente perché da una parte si era giunti a descriverli perfettamente, dall’altra esistevano macchine abbastanza potenti e versatili in grado di interpretare ed eseguire questa descrizione. Nessuna magia!
Ciò che semmai bisogna chiedersi è da dove venga l’effetto di magia che l’«intelligenza artificiale» porta con sé. Un piccolo episodio avvenutomi qualche mese fa può esemplificare. Per una delle prime volte il sistema di scrittura Potest di Tor Vergata era utilizzato per scrivere una tesi di laurea. Al momento della composizione, l’autrice vorrebbe segnalare che la prefazione non va considerata come capitolo 1, ma piuttosto lasciata senza numero: però il manuale non indica alcuna maniera. Rassegnata dà il comando di impaginazione e… il programma le legge nella mente! La prefazione resta non numerata. Come è possibile una simile magia? Be’, nulla di più che una banale riga di codice che usava alcuni possibili titoli come chiavi di una tavola:
local unnumbered = {[“Prefazione”]=true, [“Introduzione”]=true, [“Abbreviazioni”]=true, [“Ringraziamenti”]=true, [“Conclusioni”]=true, [“Conclusione”]=true, [“Bibliografia”]=true, [“Riferimenti bibliografici”]=true}
Qui l’umilissima operazione di intelligenza artificiale consisteva solo nell’aver presente che i manuali di stile prescrivono che le divisioni siano numerate, eccetto quelle che all’inizio o alla fine svolgono un ruolo speciale, e che per questo motivo portano un titolo fisso speciale.
Trucco svelato! Come in uno spettacolo di magia, nel momento in cui si svela ciò che avviene dietro le scene cessa la sorpresa e tutto fa sorridere. L’effetto di meraviglia nasceva infatti solo dal fatto che non si sapeva come qualcosa fosse avvenuto. Forse, estendendo un po’ il discorso, si può addirittura dire che per lo più chiamiamo «intelligente» quel processo che, in noi stessi o negli altri, genera qualcosa che non ci attendevamo: seguire una semplice regola non è intelligenza, trovare un procedimento nuovo lo è.
L’espressione «intelligenza artificiale», nella misura in cui presuppone l’esatta descrizione di un procedimento, potrebbe quindi lecitamente apparire contraddittoria: a meno che la qualifica di «intelligente» si usi (come di fatto avviene anche nel linguaggio comune) anche per indicare quei procedimenti che possono sì essere espressi in regole, le quali però hanno avuto bisogno di intelligenza per essere scoperte e descritte.
Come se «intelligenza artificiale» fosse insomma la contrazione di «procedimento meccanico scoperto e descritto con intelligenza». Un’espressione un po’ più lunga e sobria, che però può aiutare a capire le cose, o almeno a cercarle nel luogo giusto.