Il ciclo dell’apprendimento

In questo articolo descriveremo il ciclo dell’apprendimento, ossia quella situazione ideale in cui ogni volta che il giocatore riesce a superare una sfida, il gioco ne propone una nuova che lo tenga sempre interessato, e mai annoiato.

Come abbiamo detto nel precedente articolo (il terzo della serie), possiamo modellizzare un generico videogioco come un sistema a due giocatori (il player umano e l’intelligenza artificiale). Esso può essere considerato, quindi, secondo la teoria dei giochi, un’istanza di gioco stocastico a due giocatori [1][2]. Avendo posto la condizione che il gioco sia competitivo, possiamo dire che tale gioco è a somma zero, in quanto alla vittoria di un giocatore corrisponde la sconfitta dell’altro.

Politica strategica e politica reattiva
Ognuno dei due giocatori possiederà una politica (termine che indica la corrispondenza tra lo stato in cui si trova l’agente e l’azione che sceglierà, ossia la probabilità che dato un certo stato verrà scelta una determinata azione). La politica di ogni giocatore può essere considerata come composta da due componenti:

  • una componente strategica, che rappresenta quei comportamenti che sono messi in moto da un obiettivo di medio o lungo termine del giocatore;
  • una componente reattiva, ossia quei comportamenti che avvengono in risposta a situazioni contingenti di opportunità o di pericolo.

Consideriamo l’effetto che le due componenti devono avere sull’utilità dell’avversario, che rappresenta il nostro insieme di agenti. L’utilità è il guadagno (payoff) che viene attribuito ad un certo agente (o insieme di agenti) per aver effettuato una determinata azione. Nei giochi che vogliano applicare l’adattività, la componente strategica deve avere sull’utilità un impatto molto maggiore rispetto alla componente reattiva. Ciò significa che le variazioni a breve termine della politica del giocatore (dovuti alla componente reattiva) devono avere poca influenza sull’esito del gioco (e in particolare sull’utilità degli agenti). Questo effetto si può ottenere o progettando adeguatamente il gioco, o limitando la componente reattiva del giocatore, fino (al limite) a eliminarla completamente. Per semplicità nel nostro caso prenderemo in esame giochi in cui la politica del giocatore è in gran parte strategica, come ad esempio i giochi gestionali, o in generale quelli a turni.
Questa decisione è facilmente giustificabile, come vedremo a breve, sia dal punto di vista della buona progettazione del videogioco che dal punto di vista dell’adattività.

011210-insider-1

1. CocoCrush, il gioco che abbiamo realizzato per la nostra tesi

Adattività: prospettiva del game design
Dal punto di vista del design, negli articoli precedenti abbiamo parlato della necessità che ha il giocatore, per divertirsi, di apprendere i pattern del comportamento avversario. Questo apprendimento non può essere istantaneo, ma deve avvenire attraverso una serie di tentativi ed errori da parte del giocatore: è necessario che egli si prenda del tempo per capire i pattern di comportamento e trovare una risposta adeguata. Durante questa fase di apprendimento del giocatore, il sistema dovrà comportarsi in maniera stazionaria, ossia sempre allo stesso modo.
Nei videogiochi, quando il giocatore perde una vita, si trova a ripetere una sessione di gioco identica (o molto simile) alla precedente: se il modo giusto per superarla dovesse cambiare ogni volta, il giocatore non avrebbe modo di trovare la soluzione, in quanto i suoi errori non gli darebbero un’informazione utile sul modo corretto di giocare. È necessario quindi che il comportamento degli avversari, la loro politica, rimanga stazionaria durante questa fase.
Giunti al punto in cui il giocatore ha imparato il pattern degli avversari e riesce a trovare un comportamento in risposta, egli smette di apprendere e inizia a ripetere con costanza questo comportamento vincente. Questo avviene, secondo Koster [3], prima di tutto perché l’apprendimento non è più necessario ai fini del gioco (il giocatore sta vincendo) e, a livello più profondo, perché l’uomo è fondamentalmente pigro. Questa fase, purchè non si protragga a lungo, è bene che esista: anche applicare ripetutamente una strategia vincente è divertente per il giocatore.

011210-insider-2

2. Ciclo dell'apprendimento. La linea diritta indica che il giocatore/agente sta applicando una politica stazionaria; la linea ondulata indica che il giocatore/agente sta apprendendo una politica in risposta a quella dell'avversario.

Adattività: prospettiva dell’apprendimento automatico
A questo punto entra in gioco l’adattività degli avversari: gli agenti presenti nel gioco cercheranno di modificare la loro politica, in modo da trovare la risposta migliore al comportamento del player. È molto importante, per garantire un apprendimento efficace, che durante questa fase la politica (strategica) del player rimanga stazionaria e soprattutto che le funzioni di utilità degli agenti (equivalenti al risultato percepito) rimangano invariate. È per questo motivo che la politica reattiva del giocatore deve produrre cambiamenti molto limitati sul gioco. Se questo non succedesse, pur mantenendo la componente strategica costante, la parte reattiva modicherebbe l’utilità percepita dagli agenti, inficiando l’apprendimento.
Il gioco che abbiamo create per i nostri test, CocoCrush, segue questo principio: pur essendo costruito a partire da un gioco d’azione (e quindi tipicamente reattivo), è stato progettato in modo che il giocatore non comandi direttamente il protagonista del gioco, ma decida il suo comportamento tramite dei menù, tra un turno e l’altro del gioco.

011210-insider-3

3. Diagramma del gameplay ottimo in cui sono indicati i punti A e B del ciclo dell'adattività. I punti A sono quelli in cui il giocatore inizia a perdere, e deve quindi iniziare a trovare una politica di risposta. Dai punti B, invece, la sua performance migliora ed è il sistema di apprendimento che deve attivarsi per trovare a una risposta.

Ciclo dell’apprendimento
Possiamo descrivere l’andamento fin qui descritto con un ciclo di doppio adattamento (Figura 2). Nella figura la linea più interna (blu) rappresenta la politica del player, quella più esterna (arancio) la politica degli avversari; la linea ondulata indica una politica variabile ed esplorativa, la linea diritta rappresenta invece una politica di tipo stazionario. La partita ha inizio nel punto A: gli avversari attuano una politica stazionaria, per il bene del giocatore che deve imparare a contrastarla. Durante questa fase, il giocatore esplora lo spazio delle sue azioni, finché impara una politica che riesce a rispondere a quella degli agenti: in questo istante si raggiunge il punto B. Da questo momento il giocatore reitera la politica vincente, perché non ha incentivo a cercarne una migliore. Nel frattempo il sistema di apprendimento del gioco si mette in moto per trovare una politica di risposta a quella del giocatore.

Possiamo osservare come l’andamento ciclico si sviluppa nel tempo in Figura 3. A partire dai punti A gli agenti avversari mettono in atto una politica stazionaria che mette in difficoltà il player: il grafico scende verso il basso (ossia la partita volge a favore degli avversari). Il giocatore al punto B trova la sua politica di risposta, che riporta le sorti del gioco a suo favore, e riavvicina la partita alla sua vittoria. Ovviamente l’andamento globale deve essere a favore del giocatore, sia per far percepire il progredire della partita, sia per evitare che il gioco diventi noioso.

011210-insider-4

4. Ciclo dell'apprendimento spezzato dal giocatore. Se il giocatore, una volta che ha trovato la politica di risposta a quella degli avversari, non permette il loro adattamento, la partita termina velocemente a suo favore.

Spezzare il ciclo
Poste le ipotesi di stazionarietà del player, il sistema può rimanere nel ciclo in modo indefinito. Analizziamo ora quali sono i casi di gioco in cui il ciclo si può rompere (Figura 4), ossia i casi in cui gli agenti non riescono più ad adattarsi alla politica del giocatore.

  • Un caso in cui l’adattamento degli agenti non è più efficace è quello in cui il giocatore riesce a modellare il comportamento di adattamento, e quindi a prevenirlo. Questo può avvenire solo in caso di giocatori molto esperti: nella fase da B’ ad A’, in cui gli agenti cercano la politica di risposta, questi giocatori riescono a capire in anticipo la loro contro-mossa. Essi quindi preparano una risposta, che applicano in modo immediato. In questo modo il sistema non riuscirà più a raggiungere il punto A’, perché gli agenti non troveranno una risposta stazionaria da applicare.
  • Il secondo caso è quello in cui il giocatore capisce che il sistema necessita della sua stazionarietà per poter trovare una risposta. Per contrastare gli avversari egli quindi deve comportarsi il più possibile in modo reattivo. Avendo ipotizzato che la componente reattiva abbia poca influenza sull’andamento della partita, la possibilità a disposizione del giocatore è quella di utilizzare la componente strategica come se fosse reattiva, ossia modificare continuamente la propria strategia. Questo significa rendere la propria politica non stazionaria, e quindi impossibile da apprendere da parte degli agenti avversari, che non potranno trovare una politica di risposta.

Nonostante questi possibili problemi, il ciclo dell’apprendimento permette di modellizzare la situazione ottima per i giochi che vogliono utilizzare l’adattività per migliorare l’esperienza di gioco offerta..

Nel prossimo articolo, elencheremo le proprietà che deve avere un gioco affinchè si possa manifestare il ciclo dell’adattività.

Riferimenti bibliografici:
[1] L. S. Shapley. Stochastic games. In Proceedings of the National Academy
of Sciences of the United States of America, volume 39, pages 1095
1100, Washington, DC, October 1953. National Academy of Sciences.
[2] J. van der Wal. Stochastic dynamic programming. Mathematical Centre
Tracts, 139, 1981.
[3] R. Koster. A theory of fun for game design. Paraglyph press, 2005.
Questo articolo è un estratto (leggermente adattato) della tesi “Studio di tecniche di apprendimento per rinforzo per il coordinamento di sistemi multiagente nella realizzazione di videogiochi adattivi” (2008) di Marco Canala e Paolo Tajè. Sono entrambi membri del team indipendente BloodyMonkey
Leggi i 4 commenti a questo articolo