Il problema del carrello e l'intelligenza artificiale
Il dilemma del carrello nell’era del software decisionale
Dalla filosofia alla progettazione software
Il cosiddetto "trolley problem", noto in italiano come dilemma del carrello, è un esperimento mentale nato in ambito filosofico per esplorare i confini della moralità nelle scelte umane. La versione classica è semplice quanto crudele: un carrello ferroviario è fuori controllo e si dirige verso cinque persone legate ai binari. Un osservatore può deviarlo, salvando quei cinque ma causando la morte di una persona su un altro binario. Qual è la scelta giusta? Per decenni è rimasto un gioco intellettuale per eticisti e filosofi morali. Oggi, però, ha trovato applicazione pratica in ambiti dove il software prende decisioni autonome, come nel mondo dell’automotive, dell’healthcare e della finanza automatizzata.
Il software come agente morale
Quando un sistema software è chiamato a prendere decisioni che impattano vite umane, non si parla più solo di codice performante o architetture scalabili. Il software diventa un agente morale. Pensiamo alla guida autonoma: un veicolo deve decidere in millisecondi se frenare bruscamente mettendo a rischio i passeggeri, o sterzare e potenzialmente coinvolgere un pedone. Nessuna soluzione è neutra. Ogni decisione incorpora, implicitamente o esplicitamente, una scala di valori, una gerarchia di priorità, una visione etica del mondo.
Modelli predittivi, dati imperfetti, scelte definitive
A complicare ulteriormente le cose c’è la natura stessa dell’intelligenza artificiale: i modelli decisionali sono addestrati su dati passati, che portano con sé bias, squilibri e lacune. Nonostante la sofisticazione crescente degli algoritmi, questi sistemi rimangono strumenti statistici. Ottimizzano una funzione obiettivo, non comprendono il contesto morale. Se il dataset penalizza sistematicamente una categoria di persone, o se la funzione di costo non tiene conto di fattori etici, il risultato sarà tecnicamente corretto ma socialmente distorto. Eppure, il software prenderà comunque una decisione, in tempi spesso incompatibili con l’intervento umano.
Responsabilità distribuita e trasparenza necessaria
Uno degli aspetti più critici è la distribuzione della responsabilità. Quando un software autonomo prende una decisione tragica, chi è responsabile? Il team di sviluppo che ha scritto l’algoritmo? L’azienda che ha progettato il sistema? L’utente finale che lo ha attivato? In assenza di una catena chiara di responsabilità e di strumenti per la tracciabilità delle decisioni, il rischio è quello di una società dove le conseguenze non hanno mai un colpevole. Per questo, la progettazione di sistemi autonomi deve includere logiche di audit, registrazione e riproducibilità delle decisioni. Solo così si potrà garantire accountability, una vera auditabilità del comportamento algoritmico.
Etica by design: un nuovo standard di qualità
Nella pratica quotidiana di chi sviluppa software decisionale, l’attenzione ai dettagli etici deve diventare parte del processo di sviluppo, tanto quanto la sicurezza, la scalabilità o la manutenibilità. Si parla sempre più spesso di "Ethics by Design": un approccio che prevede la modellazione delle scelte morali già in fase di analisi, la simulazione di scenari dilemmatici durante i test e la validazione delle implicazioni etiche nelle review tecniche. In un mondo dove i software incidono su diritti, libertà e sicurezza, progettare bene non significa solo "funziona", ma anche "è giusto che funzioni così".
Un compito per noi sviluppatori
Per le software house, per i team tecnici e per i singoli sviluppatori, questo cambiamento è al tempo stesso una sfida e un’opportunità. Non si tratta solo di rispettare le normative o prevenire rischi legali. Si tratta di assumersi la responsabilità culturale e tecnica di costruire un futuro in cui il software sia non solo intelligente, ma anche giusto. I nostri algoritmi non sono estranei al mondo reale: lo influenzano, lo trasformano, lo definiscono. È il momento di trattarli come strumenti morali, e di agire di conseguenza.