In generale, agenti capaci emergono da un gioco senza fine

Gli agenti emergono dai giochi infiniti.

Negli ultimi anni, gli agenti di intelligenza artificiale sono riusciti ad avere successo in una serie di ambienti di gioco complessi. Ad esempio, AlphaZero ha battuto programmi campioni del mondo negli scacchi, nello shogi e nel Go dopo aver iniziato senza sapere altro che le regole di base del gioco. Attraverso il reinforcement learning (RL), questo singolo sistema ha imparato giocando partita dopo partita attraverso un processo ripetitivo di tentativi ed errori. Ma AlphaZero è ancora stato addestrato separatamente su ogni gioco, incapace di imparare semplicemente un altro gioco o compito senza ripetere il processo di RL da zero. Lo stesso vale per altri successi del RL, come Atari, Capture the Flag, StarCraft II, Dota 2 e Hide-and-Seek. La missione di DeepMind di risolvere l’intelligenza per avanzare nella scienza e nell’umanità ci ha spinto a esplorare come poter superare questa limitazione per creare agenti di intelligenza artificiale con comportamenti più generali e adattabili. Invece di imparare un gioco alla volta, questi agenti sarebbero in grado di reagire a condizioni completamente nuove e giocare a un’intera galassia di giochi e compiti, inclusi quelli mai visti prima.

Oggi, abbiamo pubblicato “Open-Ended Learning Leads to Generally Capable Agents”, un preprint che dettaglia i nostri primi passi per addestrare un agente in grado di giocare a molti giochi diversi senza aver bisogno di dati di interazione umana. Abbiamo creato un vasto ambiente di gioco che chiamiamo XLand, che include molti giochi multiplayer all’interno di mondi 3D coerenti e comprensibili per gli esseri umani. Questo ambiente rende possibile formulare nuovi algoritmi di apprendimento, che controllano dinamicamente come un agente si allena e su quali giochi si allena. Le capacità dell’agente migliorano in modo iterativo come risposta alle sfide che sorgono durante l’addestramento, con il processo di apprendimento che continua a affinare i compiti di addestramento in modo che l’agente non smetta mai di imparare. Il risultato è un agente con la capacità di avere successo in un’ampia gamma di compiti, dai problemi di ricerca di oggetti semplici a giochi complessi come nascondino e capture the flag, che non sono stati incontrati durante l’addestramento. L’agente mostra comportamenti generali ed euristici, come l’esperimentazione, che sono ampiamente applicabili a molti compiti anziché specializzati in un compito individuale. Questo nuovo approccio rappresenta un passo importante verso la creazione di agenti più generali con la flessibilità di adattarsi rapidamente in ambienti in continua evoluzione.

L’agente gioca una varietà di compiti di test. L’agente è stato addestrato su una vasta varietà di giochi e di conseguenza è in grado di generalizzare a giochi di test mai visti prima durante l’addestramento.

Un universo di compiti di addestramento

La mancanza di dati di addestramento, dove i “dati” sono diversi compiti, è stato uno dei principali fattori che limitano il comportamento degli agenti addestrati con RL a essere sufficientemente generale da poter essere applicato a tutti i giochi. Senza la possibilità di addestrare gli agenti su un insieme sufficientemente ampio di compiti, gli agenti addestrati con RL non sono stati in grado di adattare i loro comportamenti appresi a nuovi compiti. Ma progettando uno spazio simulato che consente la generazione procedurale di compiti, il nostro team ha creato un modo per addestrare e generare esperienza da compiti creati in modo programmato. Ciò ci consente di includere miliardi di compiti in XLand, tra giochi vari, mondi e giocatori.

I nostri agenti di intelligenza artificiale abitano avatar in prima persona in un ambiente multiplayer che cerca di simulare il mondo fisico. I giocatori percepiscono l’ambiente osservando immagini RGB e ricevono una descrizione testuale del loro obiettivo, e si allenano su una serie di giochi. Questi giochi sono semplici come giochi cooperativi per trovare oggetti e navigare in mondi, in cui l’obiettivo per un giocatore potrebbe essere “stare vicino al cubo viola”. I giochi più complessi possono essere basati sulla scelta tra diverse opzioni di ricompensa, come “stare vicino al cubo viola o mettere la sfera gialla sul pavimento rosso”, e i giochi più competitivi includono il gioco contro altri giocatori, come nascondino simmetrico in cui ogni giocatore ha l’obiettivo “vedere l’avversario e impedire all’avversario di vedermi”. Ogni gioco definisce le ricompense per i giocatori e l’obiettivo finale di ciascun giocatore è massimizzare le ricompense.

Poiché XLand può essere specificato in modo programmabile, lo spazio di gioco consente di generare dati in modo automatizzato e algoritmico. E poiché i compiti in XLand coinvolgono più giocatori, il comportamento degli altri giocatori influisce notevolmente sulle sfide affrontate dall’agente di intelligenza artificiale. Queste interazioni complesse e non lineari creano una fonte ideale di dati su cui addestrarsi, poiché a volte anche piccoli cambiamenti nei componenti dell’ambiente possono comportare grandi cambiamenti nelle sfide per gli agenti.

XLand consists of a galaxy of games (seen here as points embedded in 2D, coloured and sized based on their properties), with each game able to be played in many different simulated worlds whose topology and characteristics vary smoothly. An instance of an XLand task combines a game with a world and co-players.

Metodi di allenamento

Al centro della nostra ricerca è il ruolo del deep RL nell’allenamento delle reti neurali dei nostri agenti. L’architettura della rete neurale che utilizziamo fornisce un meccanismo di attenzione sullo stato ricorrente interno dell’agente, aiutando a guidare l’attenzione dell’agente con stime di obiettivi parziali unici al gioco che l’agente sta giocando. Abbiamo scoperto che questo agente attento agli obiettivi (GOAT) impara politiche più generalmente capaci.

Abbiamo anche esplorato la domanda, quale distribuzione di compiti di allenamento produrrà l’agente migliore possibile, soprattutto in un ambiente così vasto? La generazione dinamica dei compiti che utilizziamo consente modifiche continue alla distribuzione dei compiti di allenamento dell’agente: ogni compito viene generato in modo da non essere né troppo difficile né troppo facile, ma giusto per l’allenamento. Utilizziamo quindi l’allenamento basato sulla popolazione (PBT) per regolare i parametri della generazione dinamica dei compiti in base a una fitness che mira a migliorare la capacità generale degli agenti. Infine, concateniamo più sessioni di allenamento in modo che ogni generazione di agenti possa avviarsi sulla generazione precedente.

Ciò porta a un processo di allenamento finale con deep RL al centro che aggiorna le reti neurali degli agenti ad ogni passo di esperienza:

  • i passi di esperienza provengono da compiti di allenamento generati dinamicamente in risposta al comportamento degli agenti,
  • le funzioni di generazione dei compiti degli agenti mutano in risposta alle prestazioni e alla robustezza relative degli agenti,
  • nel ciclo esterno, le generazioni di agenti si avviano l’una sull’altra, fornendo co-giocatori sempre più ricchi all’ambiente multiplayer e ridefinendo la misura della progressione stessa.

Il processo di allenamento parte da zero e costruisce iterativamente complessità, cambiando costantemente il problema di apprendimento per mantenere l’agente in fase di apprendimento. La natura iterativa del sistema di apprendimento combinato, che non ottimizza una metrica di prestazione limitata ma piuttosto lo spettro di capacità generale definito iterativamente, porta a un processo di apprendimento potenzialmente illimitato per gli agenti, limitato solo dall’espressività dello spazio dell’ambiente e dalla rete neurale dell’agente.

Il processo di apprendimento di un agente consiste in dinamiche a più scale temporali.

Misurare il progresso

Per misurare le prestazioni degli agenti in questo vasto universo, creiamo un insieme di compiti di valutazione utilizzando giochi e mondi separati dai dati utilizzati per l’allenamento. Questi compiti “tenuti separati” includono compiti progettati appositamente per gli esseri umani come nascondino e cattura la bandiera.

A causa delle dimensioni di XLand, capire e caratterizzare le prestazioni dei nostri agenti può essere una sfida. Ogni compito comporta diversi livelli di complessità, diverse scale di ricompense raggiungibili e diverse capacità dell’agente, quindi la semplice media della ricompensa sui compiti tenuti separati nasconderebbe le effettive differenze di complessità e ricompense, e trattarebbe efficacemente tutti i compiti come altrettanto interessanti, il che non è necessariamente vero per gli ambienti generati proceduralmente.

Per superare queste limitazioni, adottiamo un approccio diverso. In primo luogo, normalizziamo i punteggi per compito utilizzando il valore di equilibrio di Nash calcolato utilizzando il nostro attuale set di giocatori addestrati. In secondo luogo, teniamo conto dell’intera distribuzione dei punteggi normalizzati, osservando non solo i punteggi normalizzati medi, ma anche i diversi percentile dei punteggi normalizzati, nonché la percentuale di compiti in cui l’agente ottiene almeno una ricompensa: partecipazione. Ciò significa che un agente viene considerato migliore di un altro solo se supera le prestazioni su tutti i percentile. Questo approccio di misurazione ci offre un modo significativo per valutare le prestazioni e la robustezza dei nostri agenti.

Agenti più generalmente capaci

Dopo aver addestrato i nostri agenti per cinque generazioni, abbiamo osservato miglioramenti consistenti nell’apprendimento e nelle prestazioni in tutto il nostro spazio di valutazione tenuto separato. Giocando circa 700.000 giochi unici in 4.000 mondi unici all’interno di XLand, ogni agente nell’ultima generazione ha sperimentato 200 miliardi di passi di allenamento come risultato di 3,4 milioni di compiti unici. Al momento, i nostri agenti sono stati in grado di partecipare a ogni compito di valutazione generato proceduralmente, ad eccezione di alcuni che erano impossibili anche per un essere umano. E i risultati che stiamo osservando mostrano chiaramente un comportamento generale senza bisogno di adattamento nel nostro spazio di compiti, con il fronte dei percentile dei punteggi normalizzati che continua a migliorare.

Il progresso dell'apprendimento dell'ultima generazione dei nostri agenti, mostra come le nostre metriche di test progrediscono nel tempo, traducendosi in prestazioni senza adattamento anche su compiti di test tenuti separati creati manualmente.

Osservando qualitativamente i nostri agenti, spesso osserviamo l’emergere di comportamenti generali e euristiche, piuttosto che comportamenti altamente ottimizzati e specifici per singole attività. Invece che gli agenti sappiano esattamente quale sia la “cosa migliore” da fare in una nuova situazione, vediamo evidenze di agenti che sperimentano e modificano lo stato del mondo fino a raggiungere uno stato gratificante. Vediamo anche agenti che si affidano all’uso di altri strumenti, inclusi oggetti per occultare la visibilità, creare rampe e recuperare altri oggetti. Poiché l’ambiente è multiplayer, possiamo esaminare la progressione dei comportamenti degli agenti durante l’addestramento su dilemmi sociali sconosciuti, come in un gioco di “chicken”. Man mano che l’addestramento progredisce, i nostri agenti sembrano esibire un comportamento più cooperativo quando giocano con una copia di sé stessi. Date le caratteristiche dell’ambiente, è difficile individuare l’intenzionalità: i comportamenti che vediamo spesso sembrano accidentali, ma comunque si verificano in modo coerente.

Above: What types of behaviour emerge? (1) Agents exhibit the ability to switch which option they go for as the tactical situation unfolds. (2) Agents show glimpses of tool use, such as creating ramps. (3) Agents learn a generic trial-and-error experimentation behaviour, stopping when they recognise the correct state has been found. Below: Multiple ways in which the same agents manage to use the objects to reach the goal purple pyramid in this hand-authored probe task.
Diverse modalità in cui gli stessi agenti riescono a utilizzare gli oggetti per raggiungere la piramide viola obiettivo in questo compito di prova creato manualmente.
Diverse modalità in cui gli stessi agenti riescono a utilizzare gli oggetti per raggiungere la piramide viola obiettivo in questo compito di prova creato manualmente.
Diverse modalità in cui gli stessi agenti riescono a utilizzare gli oggetti per raggiungere la piramide viola obiettivo in questo compito di prova creato manualmente.

Analizzando le rappresentazioni interne degli agenti, possiamo dire che adottando questo approccio all’apprendimento per rinforzo in uno spazio di compiti vasto, i nostri agenti sono consapevoli delle basi del proprio corpo e del passare del tempo e comprendono la struttura di alto livello dei giochi che incontrano. Forse ancora più interessante, riconoscono chiaramente gli stati di ricompensa del loro ambiente. Questa generalità e diversità di comportamenti in nuovi compiti suggerisce la possibilità di ottimizzare questi agenti per compiti successivi. Ad esempio, nel documento tecnico dimostriamo che con soli 30 minuti di addestramento focalizzato su un compito complesso appena presentato, gli agenti possono adattarsi rapidamente, mentre gli agenti addestrati con RL da zero non riescono ad apprendere affatto questi compiti.

Sviluppando un ambiente come XLand e nuovi algoritmi di addestramento che supportano la creazione illimitata di complessità, abbiamo visto chiari segni di generalizzazione senza bisogno di addestramento da parte degli agenti di RL. Mentre questi agenti stanno iniziando a essere capaci in generale in questo spazio di compiti, guardiamo avanti per continuare la nostra ricerca e sviluppo per migliorare ulteriormente le loro prestazioni e creare agenti sempre più adattabili.

Per maggiori dettagli, consulta la preprint del nostro articolo tecnico — e i video dei risultati che abbiamo ottenuto. Speriamo che questo possa aiutare altri ricercatori a vedere un nuovo percorso verso la creazione di agenti AI più adattabili e capaci in generale. Se sei entusiasta di questi progressi, considera di unirti al nostro team .