Il controllo delle capacità è, al massimo, una misura temporanea e ausiliaria. A meno che il piano non consista nel contenere in eterno la superintelligenza, sarà necessario dominare la selezione delle motivazioni. Ma come potremmo introdurre un valore in un agente artificiale, in modo che lo persegua come obiettivo finale? Finché non è intelligente, l’agente potrebbe non avere la capacità di capire e neanche di rappresentare i valori significativi per gli esseri umani. D’altra parte, se rinviamo la procedura finché non è superintelligente, l’agente potrebbe resistere ai nostri tentativi di interferire con il suo sistema motivazionale, motivato da ragioni strumentali convergenti. Il problema di come caricare i valori è arduo, ma deve essere affrontato.

È impossibile elencare tutte le situazioni possibili in cui può trovarsi una superintelligenza e specificare quali azioni dovrebbe intraprendere in ciascuna situazione. Altrettanto impossibile è stilare un elenco di tutti i possibili mondi e assegnare a ciascuno un valore. In qualsiasi dominio significativamente più complicato di una partita al gioco del tris, gli stati (e le successioni di stati) possibili sono troppi per essere elencati in modo esaustivo. Un sistema motivazionale pertanto non si può specificare sotto forma di una lookup table completa. Va invece descritto in una forma più astratta, come una formula, o regola, che permetta all’agente di decidere che cosa fare in ogni situazione.

Un modo formale di specificare una tale regola di decisione è rappresentato da una funzione di utilità. Una funzione di utilità assegna un valore a ciascun risultato ottenibile, o più in generale a ciascun «mondo possibile». Data una funzione di utilità, si può definire un agente che massimizza l’utilità attesa, cioè che seleziona in ogni momento l’azione che ha la massima utilità attesa. (L’utilità attesa è calcolata pesando l’utilità di ciascun mondo possibile con la probabilità soggettiva che quel mondo sia il mondo reale condizionata al fatto che si intraprenda una particolare azione). In realtà, i risultati possibili sono troppo numerosi per poter calcolare esattamente l’utilità attesa di un’azione. Ciò malgrado, la regola di decisione e la funzione di utilità determinano un ideale normativo – un concetto di ottimalità – che un agente può essere progettato per approssimare e l’approssimazione può migliorare a mano a mano che l’agente diventa più intelligente. Creare una macchina che possa calcolare una buona approssimazione dell’utilità attesa delle azioni che può compiere è un problema ia-completo. Il problema dei valori dell’ Ia resterebbe aperto anche se il problema di rendere intelligenti le macchine venisse risolto.

Il testo è tratto dal libro "Superintelligenza. Tendenze, pericoli, strategie", di Nick Bostrom, Bollati Boringhieri, 28 euro
Il testo è tratto dal libro “Superintelligenza. Tendenze, pericoli, strategie”, di Nick Bostrom, Bollati Boringhieri, 28 euro

Possiamo usare il modello dell’agente che massimizza l’utilità per valutare la condizione di un futuro programmatore di un seme di ia che intende risolvere il problema del controllo dotando l’ia di un obiettivo finale corrispondente a qualche concetto umano plausibile di risultato proficuo. Il programmatore ha in mente un valore umano particolare che vorrebbe far promuovere all’ia. Per fissare le idee, diciamo che si tratta della felicità (se fossimo interessati alla giustizia, alla libertà, alla gloria, ai diritti umani, alla democrazia, all’equilibrio ecologico o allo sviluppo personale, emergerebbero problemi simili). Nel quadro di riferimento dell’utilità attesa, il programmatore cerca quindi una funzione di utilità che assegna un’utilità ai mondi possibili in proporzione alla felicità che contengono. Ma come potrebbe esprimere questa funzione di utilità nel codice comprensibile dal computer? I linguaggi di programmazione non contengono termini quali «felicità» come primitive. Per poter usare un termine simile, occorre definirlo. Non è sufficiente definire «felicità» in funzione di altri concetti umani di alto livello: «la felicità è il godimento delle potenzialità intrinseche alla natura umana» o qualche parafrasi filosofica simile. La definizione deve essere esprimibile in funzione di termini che fanno parte del linguaggio di programmazione dell’ia e in ultima analisi in funzioni di primitive come operatori matematici e indirizzi che puntano a contenuti di registri di memoria. Se si considera il problema da questa prospettiva, si inizia a rendersi conto della difficoltà del compito del programmatore.

Individuare e codificare i nostri obiettivi finali è difficile perché le rappresentazioni degli obiettivi umani sono complesse. Noi però ci rendiamo conto di rado di questa complessità, poiché per noi è praticamente trasparente. Possiamo fare un confronto con il caso della percezione visiva. Anche vedere può sembrare una cosa semplice, poiché non ci richiede il minimo sforzo. Basta che apriamo gli occhi, così sembra, e nella nostra mente si riversa una visione tridimensionale eidetica, ricca e significativa dell’ambiente circostante. Questa interpretazione intuitiva della visione ricorda il modo in cui un aristocratico considera la sua famiglia patriarcale: dal suo punto di vista, sembra che le cose siano semplicemente nel posto giusto al momento giusto, mentre i meccanismi che producono queste manifestazioni sono celati alla vista. Tuttavia svolgere anche il più semplice compito visivo – trovare il barattolo del pepe in cucina – richiede un’enorme mole di lavoro computazionale. Da una serie temporale rumorosa di configurazioni bidimensionali di scariche nervose, provenienti dalla retina e trasmesse al cervello attraverso il nervo ottico, la corteccia visiva deve procedere a ritroso per ricostruire una rappresentazione tridimensionale interpretata dello spazio esterno. Una parte notevole del nostro prezioso metro quadrato di patrimonio corticale è destinata all’elaborazione di informazioni visive. Mentre leggete questo libro, miliardi di neuroni lavorano incessantemente per realizzare questo compito (come tante cucitrici, sempre chine sulla macchina da cucire in condizioni di sfruttamento, che cuciono e ricuciono una gigantesca trapunta molte volte al secondo). In maniera simile, in apparenza i nostri valori e desideri sono semplici, ma in realtà contengono una complessità immensa. Come potrebbe fare il nostro programmatore a trasferire questa complessità in una funzione di utilità?

Un approccio potrebbe consistere nel cercare di tradurre direttamente in codice una rappresentazione completa dell’obiettivo che vogliamo assegnare all’ia: in altre parole, scrivere una funzione di utilità esplicita. Questo approccio potrebbe funzionare se i nostri obiettivi fossero straordinariamente semplici, per esempio se volessimo calcolare le cifre di π, cioè, se volessimo soltanto che l’ia calcolasse le cifre di π e fossimo indifferenti a qualunque conseguenza derivabile dal perseguimento di questo obiettivo (si ricordi la discussione sulla modalità di guasto della profusione di infrastrutture). La programmazione esplicita potrebbe avere qualche possibilità di successo anche usando i metodi di selezione delle motivazioni della domesticità. Se però si cerca di promuovere e proteggere qualsiasi valore umano plausibile, e si sta costruendo un sistema destinato a diventare un monarca superintelligente, programmare in modo esplicito l’indispensabile rappresentazione completa degli obiettivi appare irrimediabilmente fuori dalla nostra portata. Se non riusciamo a trasferire valori umani in un’ia scrivendo rappresentazioni complete in codice, che cos’altro potremmo cercare di fare? Ci sono diversi percorsi alternativi. Alcuni a prima vista possono sembrare plausibili– ma a un esame più attento molto meno. Le esplorazioni future dovrebbero concentrarsi sulle vie che restano aperte.

Risolvere il problema del caricamento dei valori è una sfida degna delle migliori menti matematiche della prossima generazione. Non possiamo rimandare il compito di affrontare questo problema finché l’ia non abbia sviluppato una capacità di ragionamento sufficiente per capire senza difficoltà le nostre intenzioni. Come abbiamo visto nel paragrafo sulle ragioni strumentali convergenti, un sistema generico resisterà ai tentativi di modificare i suoi valori ultimi. Se un agente non è già sostanzialmente amichevole quando raggiunge la capacità di riflettere sulla propria facoltà di agire, non reagirà bene a un tentativo tardivo di «lavaggio del cervello», o a un complotto per sostituirlo con un agente diverso che ama di più il suo prossimo.

© 2014 Nick Bostrom / © 2018 Bollati Boringhieri editore / Traduzione di Simonetta Frediani