Si fa un gran parlare di innovazione intorno alle tecnologie informatiche di tutti i tipi, internet, software intelligenti, sensori, eccetera, e alle minacce che costituirebbero per l’uomo, loro creatore, marginalizzandolo nella vita sociale.
È davvero così?
Prima di accennare una risposta cerchiamo di andare a fondo della questione a partire da alcuni casi di cronaca.
Il primo è riguarda le crescenti difficoltà delle flotte di Google Car (le auto che si guidano da sole) che da alcuni mesi viaggiano in via sperimentale sulle strade della California.
Questi veicoli sono programmati per rispettare le regole del codice stradale “alla lettera” (ovvero proceduralmente). Quando interagiscono con altri soggetti (umani) che, evidentemente, guidano in modo “non procedurale” vanno in tilt in quanto si trovano davanti a situazioni che non sono state previste. Nonostante gli investimenti di Google (che di soldi ne ha) non si riesce a dotare queste auto di programmi che “decidano” cosa fare a fronte di input “emergenti”.
Col tempo si troverà una soluzione o il problema è insormontabile?
Per trovare una risposta bisogna andare agli anni ’30 del secolo scorso quando Alan Turing, matematico inglese, definì finalmente in modo rigoroso il concetto di “computabilità” (con un modello astratto: la Macchina di Turing) e i suoi limiti attraverso una serie di Teoremi.
Uno di questi, forse il più importante che scoraggerebbe, se lo conoscessero, i fan della macchina-che-sostituirà-l’uomo, è il problema dell’Halt.
Nel paradigma computazionale attuale (l’unico esistente ad oggi) il momento in cui un algoritmo si ferma non è un problemino operativo: è equivalente alla dimostrazione della vericidità di una “proposizione” che è l’oggetto della computazione (o calcolabilità di una funzione se piace di più). Detto in altri termini se a fronte di un input (si badi bene: “predeterminato”) un algoritmo si ferma restituendo l’output, e non gira all’infinito, il compito che doveva effettuare, mi si lasci banalizzare, è corretto (per quell’input).
È possibile allora costruire un algoritmo che avendo in input un altro algoritmo ci dica se questo si fermerà oppure no?
Turing dimostrò, con il suo Teorema dell’Halt, che non è possibile ovvero, in termini matematici, che il problema della fermata è “indecidibile”. Dunque una procedura non può decidere se un’altra procedura è corretta, lo dovrà fare un umano con un intervento “esterno”, da “oracolo”, come lo definì lo stesso Turing, bloccando un programma che dovesse girare all’infinito. Non è allora possibile, con l’attuale paradigma, costruire un “General Problem Solver” ovvero un risolutore generale di problemi.
Come si risolveranno guai self-driving car?
Le cose potranno migliorare solo quando tutti gli umani guideranno “Proceduralmente” o quando viaggeranno solo self-driving car; ma anche allora chissà che non capiti qualche impiccio, nel qual caso dovrà intervenire “l’oracolo” di Turing che interverrà alla stregua del deus ex machina agendo sul software delle auto e sbloccando l’impasse nel quale saranno cadute.
Il secondo caso è anch’esso interessante ed è un esempio di intervento continuo (oracolare) preventivo. Si tratta del software utilizzato nelle transazioni finanziarie.
L’inserto Nova24 del Sole24ore del 3 gennaio scorso pubblica due articoli a proposito. Il primo illustra a grandi linee il funzionamento dei “trading system”, i software che operano sulla borsa. Rimando ovviamente alla lettura del pezzo per i dettagli, desidero però sottolineare un’affermazione del progettista intervistato: “I trading system possono perdere di efficacia. Quindi vanno sempre monitorati” .
Domanda: da chi? Ovviamente dall’uomo, considerando il teorema di Turing su menzionato, e anche se “è stato impostato un meccanismo che individua entro quali parametri, in un determinato periodo di tempo, il trading system deve operare. Se il robot non soddisfa quelle caratteristiche viene automaticamente sostituito da un altro algoritmo” la situazione non cambia. Chi ha scritto quegli altri algoritmi? Chi ha stabilito i parametri per la sostituzione? Con quale periodicità gli algoritmi vengono manutenuti, aggiornandoli o sostituendoli?
Nell’articolo a queste domande non vi è risposta ma è facile immaginare una versione complementare dell’Oracolo di Turing ovvero l’intervento “manuale” (ricordo che le manine le hanno gli umani) prima che ci siano loop (o disastri): manutenzioni preventive del software, sue modifiche, eccetera.
Il secondo articolo su Nova24 parla anche dell’interazione tra robot che effettuano le compravendite e software che analizzano notizie (disponibili in maniera digitale ovviamente) per individuare la “polarità dell’informazione. Cioè, definisce se la notizia è positiva, neutra o negativa.”
Ma, anche qui, chi stabilisce i criteri di questa classificazione?
“..il cosiddetto classificatore. Il sistema, basandosi su un suo dizionario in cui sono contenuti i domini di molti vocaboli, riesce ad identificare le parole. Dopodiché, calcolando la quantità dei termini positivi e negativi, individua la polarità della notizia stessa.”
Dunque chi ha costruito il dizionario (ovvero un umano) ha deciso in fase di progettazione cosa è positivo o negativo in modo “a-contestuale”. Al di là del fatto che basta leggere i giornali (ad esempio quello di oggi sui commenti in positivo e negativo sul crollo della Borsa cinese) per verificare che ad ogni notizia le considerazioni possono essere le più diverse, chi fa soldi nel trading è proprio colui che si comporta in modo opposto a quello che fanno gli altri! E costoro sono, sono stati e saranno sempre umani.
Morale
Fino al ‘700 in Europa l’80% della popolazione lavorava la terra. Oggi meno del 5% lo fa e non mi pare che abbiamo problemi di malnutrizione, anzi. Tutto ciò è stato possibile grazie all’uso delle macchine che altro non sono che “applicazione” di conoscenze maturate nel corso dei secoli precedenti e ulteriormente sviluppatesi successivamente. Grazie ad esse l’uomo si è col tempo affrancato dalle fatiche fisiche e si è potuto occupare di compiti meno ripetitivi e più gratificanti.
Oggi le tecnologie informatiche consentono di fare un ulteriore balzo in avanti nella direzione di attività intellettuali così come avvenne per quelle agricole. Ben vengano allora tutte queste applicazioni ma per favore non chiamiamole innovazioni. Le innovazioni sono ben altre e dovrebbero venire da ambiti molto diversi, da discipline fondamentali e non declinate come la matematica, la filosofia, la fisica, la letteratura e altre ancora. Purtroppo ci si accontenta, causa questa ignoranza, di scambiare le une per le altre e con questo strabismo si percepisce “l’uomo sullo sfondo”, come dice uno degli autori dell’articolo laddove invece esso è al centro, come nel caso di un trattore che ara un campo.
Se fino a qualche hanno fa le macchine hanno tolto lavoro in un ambito, ad esempio nell’agricoltura, creandone in altri, l’industria, non è stata colpa o merito di esse, ma dell’uomo che ha trovato agli spazi di opportunità che si erano aperti nuovi significati. Oggi di quegli spazi, proprio grazie alle nuove tecnologie applicative, ve ne sono di più ampi ma siamo incapaci di darne significati alti e ci limitiamo semplicemente ad usare le tecnologie per fare meglio e prima ciò che già facevamo.
Ecco allora che l’innovazione vera e profonda di cui abbiamo bisogno è quella di un livello superiore, che ci ispiri a dare nuovi significati alle incredibili tecnologie di cui disponiamo e a rimettere noi, i creatori, al centro del nostro sistema.
Abbiamo bisogno di tali innovazioni come medicina per curare la nostra agorafobia progettuale.