Il Q-learning (apprendimento Q in spagnolo) si è evoluto notevolmente dai primi esperimenti comportamentali come il condizionamento classico di Pavlov, fino a diventare una delle tecniche più importanti nell’ambito del Machine Learning (apprendimento automatico). Di seguito, esploreremo come è stato il suo sviluppo e la sua applicazione nella neuroriabilitazione e stimolazione cognitiva.
Gli esperimenti di Pavlov
Ivan Pavlov, un fisiologo russo della fine del XIX secolo, è riconosciuto per aver stabilito le basi della psicologia comportamentale attraverso i suoi esperimenti sul condizionamento classico. In questi esperimenti, Pavlov dimostrò che i cani potevano imparare ad associare uno stimolo neutro, come il suono di una campana, con uno stimolo incondizionato, come il cibo, provocando così una risposta incondizionata: la salivazione.

Questo esperimento fu fondamentale per dimostrare che il comportamento può essere acquisito per associazione, un concetto cruciale che successivamente influenzò lo sviluppo delle teorie di apprendimento per rinforzo.
Le teorie dell’apprendimento per rinforzo
Queste teorie si concentrano su come gli esseri umani e gli animali apprendono comportamenti a partire dalle conseguenze delle loro azioni, il che è stato essenziale per la progettazione di algoritmi come il Q-learning.
Ci sono alcuni concetti chiave con cui dobbiamo familiarizzare prima di continuare:
- Agente: responsabile di eseguire l’azione.
- Ambiente: contesto in cui l’agente si muove e interagisce.
- Stato: situazione attuale dell’ambiente.
- Azione: possibili decisioni prese dall’agente.
- Ricompensa: premi assegnati all’agente.
In questo tipo di apprendimento, un agente prende o esegue azioni nell’ambiente, riceve informazioni sotto forma di ricompensa/penalizzazione e le utilizza per adattare il suo comportamento nel tempo.

Un esperimento classico dell’apprendimento per rinforzo è l’esperimento della gabbia di Skinner, realizzato dallo psicologo statunitense Burrhus Frederic Skinner nel 1938. In questo esperimento, Skinner dimostrò che i ratti potevano imparare a premere una leva per ottenere cibo, utilizzando il rinforzo positivo come mezzo per modellare il comportamento.
L’esperimento consiste nell’introdurre un ratto in una gabbia con una leva che può premere, un distributore di cibo e, talvolta, una luce e un altoparlante.
Ogni volta che il ratto preme la leva, un granello di cibo viene rilasciato nel distributore. Il cibo agisce come rinforzo positivo, una ricompensa per premere la leva. Con il tempo, il ratto inizierà a premere la leva più frequentemente, dimostrando di aver appreso il comportamento tramite il rinforzo.

Questo tipo di apprendimento ha servito come base per algoritmi di machine learning, come il Q-learning, che permette alle macchine di apprendere comportamenti ottimali in modo autonomo mediante il metodo di prova ed errore.
Cos’è il Q-learning?
Il Q-learning è stato introdotto da Christopher Watkins nel 1989 come algoritmo di apprendimento per rinforzo. Questo algoritmo consente a un agente di apprendere il valore delle azioni in uno stato determinato, aggiornando continuamente la sua conoscenza attraverso l’esperienza, proprio come il ratto nella gabbia di Skinner.
A differenza degli esperimenti di Pavlov, nei quali l’apprendimento si basava su associazioni semplici, il Q-learning utilizza un metodo più complesso di prova ed errore. L’agente esplora diverse azioni e aggiorna una tabella Q che memorizza i valori Q, i quali rappresentano le ricompense future attese prendendo la migliore azione in uno stato specifico.
Il Q-learning si applica in vari ambiti, come ad esempio nei sistemi di raccomandazione (come quelli utilizzati da Netflix o Spotify), nei veicoli autonomi (come droni o robot) e nell’ottimizzazione delle risorse. Ora esploreremo come questa tecnologia può essere applicata nella neuroriabilitazione.
Q-learning e NeuronUP
Uno dei vantaggi di NeuronUP, è la capacità di personalizzare le attività in base alle esigenze specifiche di ogni utente. Tuttavia, personalizzare ogni attività può essere noioso a causa dell’elevato numero di parametri da regolare.
Il Q-learning permette di automatizzare questo processo, regolando i parametri in funzione delle prestazioni dell’utente nelle diverse attività. Ciò garantisce che gli esercizi siano sfidanti ma raggiungibili, migliorando l’efficacia e la motivazione durante la riabilitazione.
Come funziona?
In questo contesto, l’agente, che potrebbe essere paragonato a un utente che interagisce con un’attività, impara a prendere decisioni ottimali in diverse situazioni per superare correttamente l’attività.
Il Q-learning permette all’agente di sperimentare con diverse azioni interagendo con il suo ambiente, ricevendo ricompense o penalità, e aggiornando una tabella Q che memorizza questi valori Q. Questi valori rappresentano le ricompense future attese prendendo la migliore azione in uno stato specifico.
La regola di aggiornamento del Q-learning è la seguente:
[Q(s,a) leftarrow Q(s,a) + alphabigl(r + gamma cdot max_{a’}bigl(Q(s’,a’)bigr) – Q(s,a)bigr)]Dove:
𝛂 – è il tasso di apprendimento.
r – è la ricompensa ricevuta dopo aver eseguito l’azione a dallo stato s.
𝛄 – è il fattore di sconto, che rappresenta l’importanza delle ricompense future.
s’ – è lo stato successivo.
(max_{a’}bigl(Q(s’,a’)bigr)) – è il valore Q massimo per lo stato successivo s’.

Iscriviti
alla nostra
Newsletter
Esempio di applicazione in un’attività di NeuronUP
Prendiamo l’attività di NeuronUP chiamata “Immagini disordinate”, che lavora abilità come la pianificazione, le prassie visoconnettive e la relazione spaziale. In questa attività, l’obiettivo è risolvere un rompicapo che è stato mescolato e tagliato in pezzi.

Le variabili che definiscono la difficoltà di questa attività sono la dimensione della matrice (il numero di righe e di colonne) così come il valore del disordine dei pezzi (basso, medio, alto o molto alto).
Per allenare l’agente a risolvere il puzzle, è stata creata una matrice delle ricompense basata sul numero minimo di mosse necessarie per risolverlo, definito dalla seguente formula:
[mathrm{Min_Attempts} ;=;leftlceil frac{mathrm{factor} * mathrm{rows} * mathrm{columns}}{5}rightrceil,quad mathrm{factor}in{1,3,5,7}]La variabile factor dipende dalla variabile del disordine. Una volta creata la matrice, è stato applicato un algoritmo di Q-learning per allenare l’agente a risolvere automaticamente il puzzle.
Questa integrazione include:
- Recupero del valore Q: La funzione recupera il valore Q per una coppia stato-azione dalla tabella Q. Se la coppia stato-azione non è stata addestrata prima, restituisce 0. Questa funzione cerca la ricompensa attesa prendendo una specifica azione in uno specifico stato.
- Aggiornamento del valore Q: La funzione aggiorna il valore Q per una coppia stato-azione basandosi sulla ricompensa ricevuta e sul valore Q massimo del prossimo stato. Questa funzione implementa la regola di aggiornamento del Q-learning menzionata in precedenza.
- Decisione sull’azione da intraprendere: La funzione decide quale azione intraprendere in un dato stato, usando una strategia epsilon-greedy. Questa strategia bilancia esplorazione ed sfruttamento:
- Esplorazione: Consiste nel selezionare la migliore azione conosciuta fino a quel momento. Con una probabilità ε (tasso di esplorazione, un valore tra 0 e 1 che determina la probabilità di esplorare nuove azioni invece di sfruttare le azioni conosciute), si sceglie un’azione casuale, permettendo all’agente di scoprire azioni potenzialmente migliori.
- Sfruttamento: Consiste nel provare azioni diverse da quelle migliori conosciute per scoprire se possono offrire ricompense migliori in futuro. Con una probabilità 1−ε, l’agente seleziona l’azione con il valore Q più alto per lo stato attuale, utilizzando la sua conoscenza appresa: a’ = argmaxaQ(s,a). Dove a’ è l’azione che massimizza la funzione Q in un dato stato s dato. Ciò significa che, dato uno stato s, seleziona l’azione a che ha il valore Q più alto.
Queste funzioni lavorano insieme per permettere all’algoritmo di Q-learning di sviluppare una strategia ottimale per risolvere il puzzle.
Analisi preliminare dell’esecuzione dell’algoritmo
L’algoritmo è stato applicato a un puzzle con matrice 2×3 con un fattore di difficoltà di 1 (basso), corrispondente a un numero minimo di tentativi pari a 2. L’algoritmo è stato eseguito sullo stesso puzzle 20 volte, applicando ogni volta la stessa configurazione di mescolamento e aggiornando la tabella Q dopo ogni passo. Dopo 20 esecuzioni, il puzzle è stato mescolato in una configurazione diversa e il processo si è ripetuto, risultando in un totale di 2000 iterazioni. I valori iniziali dei parametri erano:
- Ricompensa per risolvere il puzzle: 100 punti
- Penalizzazione per ogni mossa: -1 punto
Ad ogni passo veniva applicata una ricompensa o penalizzazione aggiuntiva basata sul numero di tessere corrette, permettendo all’agente di comprendere il suo progresso verso la soluzione del puzzle. Questo veniva calcolato utilizzando la formula:
[W times bigl(N_{mathrm{correct}}^i ;-; N_{mathrm{correct}}^{,i-1}bigr)]Dove:
- W è il fattore di peso.
- (N_{mathrm{correct}}^{,i}) è il numero di tessere corrette dopo la mossa.
- (N_{mathrm{correct}}^{,i-1}) è il numero di tessere corrette prima della mossa.
Il grafico qui sotto illustra il numero di mosse necessarie per iterazione affinché il modello risolva un puzzle di dimensione 2×3. All’inizio, il modello richiede un gran numero di mosse, il che riflette la sua mancanza di conoscenza su come risolvere il puzzle in modo efficiente. Tuttavia, man mano che l’algoritmo di Q-learning viene addestrato, si osserva una tendenza al ribasso nel numero di mosse, il che suggerisce che il modello sta imparando a ottimizzare il suo processo di risoluzione.

Questa tendenza è un segnale positivo del potenziale dell’algoritmo di migliorare nel tempo. Tuttavia, devono essere considerate diverse limitazioni importanti:
- Dimensione specifica del puzzle: L’algoritmo dimostra efficacia principalmente nei puzzle di una dimensione specifica, come la matrice 2×3. Cambiando la dimensione o la complessità del puzzle, le prestazioni dell’algoritmo possono diminuire significativamente.
- Tempo di calcolo: Quando l’algoritmo viene applicato a configurazioni diverse o più complesse, il tempo necessario per eseguire i calcoli e risolvere il puzzle aumenta considerevolmente. Ciò limita la sua applicabilità in situazioni che richiedono risposte rapide o in puzzle con una maggiore complessità.
- Numero di mosse ancora elevato: Nonostante il miglioramento osservato, il numero di mosse richieste per risolvere il puzzle rimane relativamente alto, anche dopo molteplici iterazioni. Nelle ultime esecuzioni, il modello richiede una media di 8 a 10 mosse, il che indica che c’è ancora margine per migliorare l’efficienza dell’apprendimento.
Queste limitazioni sottolineano la necessità di un ulteriore affinamento dell’algoritmo, sia regolando i parametri di apprendimento, migliorando la struttura del modello o incorporando tecniche complementari che consentano un apprendimento più efficiente e adattabile a diverse configurazioni di puzzle. Nonostante queste limitazioni, non dobbiamo dimenticare i vantaggi che il Q-learning offre nella neuroriabilitazione, tra cui:
- Personalizzazione dinamica delle attività: Il Q-learning è in grado di regolare automaticamente i parametri delle attività terapeutiche in base alle prestazioni individuali dell’utente. Ciò significa che le attività possono essere personalizzate in tempo reale, assicurando che ogni utente lavori a un livello che sia sfidante ma raggiungibile. Questo è particolarmente utile nella neuroriabilitazione, dove le capacità degli utenti possono variare considerevolmente e cambiare nel tempo.
- Un aumento della motivazione e dell’impegno: Man mano che le attività si adattano costantemente al livello di abilità dell’utente, si evita la frustrazione per compiti troppo difficili o la noia per compiti troppo semplici. Questo può aumentare significativamente la motivazione dell’utente e il suo coinvolgimento nel programma di riabilitazione, il che è cruciale per ottenere risultati di successo.
- Ottimizzazione del processo di apprendimento: Utilizzando il Q-learning, il sistema può apprendere dalle interazioni precedenti dell’utente con le attività, ottimizzando il processo di apprendimento e riabilitazione. Ciò consente che gli esercizi siano più efficaci, concentrandosi sulle aree in cui l’utente necessita di maggiore attenzione e riducendo il tempo necessario per raggiungere gli obiettivi terapeutici.
- Efficacia nelle decisioni cliniche: I professionisti possono beneficiare del Q-learning ottenendo raccomandazioni basate sui dati su come adattare le terapie. Ciò facilita decisioni cliniche più informate e precise, migliorando a sua volta la qualità dell’assistenza fornita all’utente.
- Miglioramento continuo: Nel tempo, il sistema basato sul Q-learning può migliorare le sue prestazioni attraverso l’accumulo di dati e l’esperienza dell’utente. Ciò significa che, quanto più viene utilizzato il sistema, più efficace diventa nella personalizzazione e ottimizzazione degli esercizi, offrendo così un vantaggio a lungo termine nel processo di neuroriabilitazione.
In conclusione, il Q-learning è evoluto dalle sue radici nella psicologia comportamentale fino a diventare uno strumento potente nell’intelligenza artificiale e nella neuroriabilitazione. La sua capacità di adattare le attività in modo autonomo lo rende una risorsa preziosa per migliorare l’efficacia delle terapie di riabilitazione, anche se esistono ancora sfide da superare per ottimizzarne completamente l’applicazione.
Bibliografia
- Bermejo Fernández, E. (2017). Applicazione di algoritmi di reinforcement learning ai giochi.
- Giró Gràcia, X., & Sancho Gil, J. M. (2022). L’intelligenza artificiale nell’educazione: Big data, scatole nere e soluzionismo tecnologico.
- Meyn, S. (2023). Stability of Q-learning through design and optimism. arXiv preprint arXiv:2307.02632.
- Morinigo, C., & Fenner, I. (2021). Teorie dell’apprendimento. Minerva Magazine of Science, 9(2), 1-36.
- M.-V. Aponte, G. Levieux e S. Natkin. (2009). Measuring the level of difficulty in single player video games. Entertainment Computing.
- P. Jan L., H. Bruce D., P. Shashank, B. Corinne J., & M. Andrew P. (2019). The Effect of Adaptive Difficulty Adjustment on the Effectiveness of a Game to Develop Executive Function Skills for Learners of Different Ages. Cognitive Development, pp. 49, 56–67.
- R. Anna N., Z. Matei & G. Thomas L. Optimally Designing Games for Cognitive Science Research. Computer Science Division and Department of Psychology, University of California, Berkeley.
- Toledo Sánchez, M. (2024). Applicazioni dell’apprendimento per rinforzo nei videogiochi.






Smontando la sindrome di Myhre
Lascia un commento