Il reinforcement learning (apprendimento rinforzato) è uno dei paradigmi fondamentali dell’intelligenza artificiale moderna. A differenza del machine learning supervisionato, dove un modello impara da esempi etichettati, nel reinforcement learning un agente impara interagendo direttamente con un ambiente, ricevendo ricompense o penalità in base alle proprie azioni. È il metodo che ha permesso ad AlphaGo di battere il campione mondiale di Go, a OpenAI Five di vincere contro i team professionali di Dota 2 e agli algoritmi di raccomandazione di YouTube di tenerti incollato allo schermo per ore.
Il concetto fondamentale: agente, ambiente e ricompensa
Per capire il reinforcement learning bisogna partire dai tre elementi chiave che ne definiscono la struttura. L’agente è il soggetto che apprende e prende decisioni: può essere un robot, un programma informatico o un algoritmo che controlla un sistema. L’ambiente è il contesto in cui l’agente opera: può essere un videogioco, un simulatore fisico, un mercato finanziario o il mondo reale. La ricompensa (reward) è il segnale che l’ambiente fornisce all’agente per indicare quanto bene o male ha eseguito un’azione.
Il ciclo fondamentale del reinforcement learning è semplice ma potente: l’agente osserva lo stato attuale dell’ambiente, sceglie un’azione, riceve una ricompensa e osserva il nuovo stato dell’ambiente. Ripetendo questo ciclo milioni di volte, l’agente impara gradualmente quale sequenza di azioni massimizza la ricompensa totale accumulata nel tempo. Non impara da esempi prefissati ma dall’esperienza diretta, esattamente come un bambino che impara ad andare in bicicletta cadendo e riprovando.
La politica e la funzione valore
Due concetti centrali nel reinforcement learning sono la politica (policy) e la funzione valore (value function). La politica è la strategia dell’agente: data una certa situazione (stato), determina quale azione compiere. Può essere deterministica, mappando ogni stato a una specifica azione, oppure stocastica, assegnando una distribuzione di probabilità sulle azioni possibili.
La funzione valore stima quanto è “buono” trovarsi in un determinato stato: non in termini di ricompensa immediata, ma di ricompensa totale attesa nel lungo periodo. È la differenza tra scegliere un’azione che dà +10 punti subito ma porta a una situazione sfavorevole, versus un’azione che dà +2 punti ora ma apre la strada a ricompense future molto maggiori. Questo equilibrio tra explorazione (provare cose nuove) ed exploitation (sfruttare ciò che già si sa funzionare) è uno dei problemi centrali del reinforcement learning.
I principali algoritmi di reinforcement learning
Nel corso degli anni sono stati sviluppati numerosi algoritmi per risolvere problemi di apprendimento rinforzato. I più importanti appartengono a diverse famiglie.
Q-Learning e SARSA
Il Q-Learning è uno degli algoritmi più classici e intuitivi. Mantiene una tabella (Q-table) che stima il valore di ogni coppia (stato, azione): quanto vale compiere una certa azione in un certo stato. L’agente aggiorna questa tabella ogni volta che esegue un’azione, usando la cosiddetta equazione di Bellman. SARSA (State-Action-Reward-State-Action) è una variante che aggiorna i valori basandosi sull’azione effettivamente eseguita, rendendolo più conservativo e stabile in certi ambienti.
Il limite di questi approcci classici è la scalabilità: quando l’ambiente ha milioni di stati possibili, una tabella diventa impraticabile. La soluzione è usare reti neurali per approssimare la funzione Q, dando vita al Deep Q-Network (DQN), l’algoritmo con cui DeepMind nel 2013 ha dimostrato che un’AI poteva imparare a giocare a giochi Atari partendo da zero, solo guardando i pixel dello schermo.
Policy Gradient e Actor-Critic
I metodi Policy Gradient ottimizzano direttamente la politica senza passare per la stima dei valori. L’algoritmo calcola il gradiente della ricompensa attesa rispetto ai parametri della politica e aggiorna i pesi nella direzione che aumenta la ricompensa. REINFORCE è l’algoritmo policy gradient più semplice, ma soffre di alta varianza nel gradiente.
I metodi Actor-Critic combinano i vantaggi di entrambi gli approcci: un “attore” (actor) che impara la politica e un “critico” (critic) che impara la funzione valore per guidare l’aggiornamento dell’attore. Varianti moderne come A3C (Asynchronous Advantage Actor-Critic) e PPO (Proximal Policy Optimization) sono tra gli algoritmi più utilizzati oggi, grazie alla loro stabilità e scalabilità.
Proximal Policy Optimization (PPO)
Il PPO, sviluppato da OpenAI nel 2017, è diventato l’algoritmo di riferimento per il reinforcement learning moderno. La sua innovazione chiave è una funzione obiettivo che impedisce aggiornamenti troppo grandi della politica, garantendo una convergenza stabile. PPO è l’algoritmo usato da OpenAI per addestrare i suoi agenti di Dota 2 e, soprattutto, è alla base del RLHF (Reinforcement Learning from Human Feedback), la tecnica usata per allineare i modelli linguistici come ChatGPT alle preferenze umane.
RLHF: il reinforcement learning che ha cambiato i modelli linguistici
Una delle applicazioni più rivoluzionarie del reinforcement learning degli ultimi anni è l’RLHF. In questo approccio, un modello linguistico pre-addestrato viene ulteriormente affinato usando un processo in tre fasi. Prima si raccolgono feedback umani su coppie di risposte generate dal modello, chiedendo alle persone quale preferiscono. Poi si addestra un modello di ricompensa separato che apprende a predire le preferenze umane. Infine si usa PPO per ottimizzare il modello linguistico originale massimizzando le ricompense stimate dal modello di ricompensa.
Questo processo è quello che ha trasformato GPT-3, un potente ma spesso incoerente generatore di testo, in ChatGPT, un assistente conversazionale utile e allineato. Anthropic ha sviluppato una variante chiamata RLAIF (Reinforcement Learning from AI Feedback), dove il feedback viene fornito da un altro modello AI invece che da umani, riducendo i costi e i tempi di addestramento.
Per approfondire come questi modelli vengono sviluppati, puoi leggere il nostro articolo su il prompt engineering e come comunicare con i modelli AI.
Le applicazioni reali del reinforcement learning
Il reinforcement learning non è solo teoria: le sue applicazioni pratiche stanno trasformando interi settori.
Nel campo dei giochi, i risultati sono stati spettacolari. AlphaGo e AlphaZero di DeepMind hanno dimostrato capacità sovrumane negli scacchi, nel Go e nello shogi. OpenAI Five ha battuto i campioni mondiali di Dota 2. Questi successi hanno dimostrato che il RL può risolvere problemi complessi con spazi di stati enormi e pianificazione a lungo termine.
Nella robotica, il reinforcement learning permette ai robot di imparare a muoversi, afferrare oggetti e navigare in ambienti fisici senza programmare esplicitamente ogni movimento. Boston Dynamics e OpenAI hanno usato il RL per addestrare robot che imparano a manipolare oggetti con una destrezza sorprendente.
In ambito finanziario, gli algoritmi di trading algoritmico usano il RL per ottimizzare strategie di investimento in mercati dinamici. Nella gestione dell’energia, DeepMind ha usato il RL per ridurre del 40% il consumo energetico dei data center di Google.
Nella guida autonoma, il reinforcement learning viene combinato con altri approcci per addestrare veicoli a prendere decisioni in situazioni complesse del traffico reale.
I framework per implementare il reinforcement learning
Per chi vuole sperimentare con il reinforcement learning, esistono diversi framework e librerie open source. OpenAI Gym (ora Gymnasium) è il punto di partenza più popolare: fornisce una collezione di ambienti standardizzati, dai semplici giochi Atari a simulatori fisici complessi, su cui testare gli algoritmi. Stable-Baselines3 offre implementazioni affidabili di algoritmi come PPO, SAC e A2C pronte all’uso. RLlib di Ray è una libreria scalabile per il RL distribuito, adatta a esperimenti su larga scala.
Per l’apprendimento pratico, il percorso consigliato è partire da ambienti semplici come CartPole (bilanciare un’asta su un carrello) con Q-Learning o DQN, poi passare ad ambienti più complessi con PPO, e infine esplorare applicazioni specifiche al proprio dominio di interesse. Se ti interessa approfondire l’apprendimento automatico in generale, leggi anche la nostra guida completa al machine learning.
Le sfide aperte del reinforcement learning
Nonostante i successi spettacolari, il reinforcement learning ha ancora importanti limitazioni. Il problema del sample efficiency è il più critico: gli algoritmi RL richiedono tipicamente milioni o miliardi di interazioni con l’ambiente per imparare, mentre un essere umano impara molto più velocemente. AlphaZero ha giocato 4,9 milioni di partite di scacchi contro se stesso in 9 ore; un bambino impara a giocare a scacchi guardando pochi esempi.
Il problema del reward shaping è altrettanto delicato: definire la funzione di ricompensa giusta è difficile. Un robot addestrato a massimizzare una ricompensa mal specificata può trovare scorciatoie inaspettate: un robot addestrato a muoversi velocemente potrebbe imparare a saltare invece di camminare, se “velocità” è misurata in modo ingenuo.
La generalizzazione rimane una sfida aperta: molti agenti RL sono iper-specializzati nell’ambiente su cui sono stati addestrati e falliscono in varianti anche piccole dello stesso problema. La ricerca su RL generalizzabile e transfer learning nel RL è oggi una delle aree più attive del campo.
Il futuro: model-based RL e fondamento teorico
La frontiera attuale del reinforcement learning si sta spostando verso approcci model-based: invece di imparare direttamente quale azione compiere (policy), l’agente impara prima un modello interno dell’ambiente, poi usa quel modello per pianificare. Questo approccio è molto più sample-efficient e ha portato a risultati impressionanti con MuZero di DeepMind, che ha imparato a giocare a Go, scacchi e Atari senza nemmeno conoscere le regole dei giochi.
L’integrazione del reinforcement learning con i Large Language Models sta aprendo nuove possibilità: modelli come GPT-4 possono essere usati come agenti che ragionano in linguaggio naturale e prendono decisioni in ambienti complessi. Il deep learning, di cui puoi leggere nella nostra guida completa, fornisce le basi su cui il RL moderno costruisce le sue architetture neurali.
Il reinforcement learning rappresenta forse il paradigma più vicino a come gli esseri biologici imparano: per tentativi, errori e feedback dall’ambiente. Man mano che gli algoritmi diventano più efficienti e scalabili, il suo impatto sul mondo reale è destinato a crescere enormemente nei prossimi anni.
Intelligenza Artificiale Tutto su AI e machine learning