Simple Science

Scienza all'avanguardia spiegata semplicemente

# Informatica# Apprendimento automatico

Presentiamo Craftax: Un Benchmark Migliorato per l'Apprendimento per Rinforzo

Craftax offre un ambiente stimolante per testare gli algoritmi RL in modo efficiente.

― 7 leggere min


Craftax: Un NuovoCraftax: Un NuovoBenchmark RLrinforzo.testare algoritmi di apprendimento perCraftax offre un ambiente complesso per
Indice

I benchmark sono strumenti importanti per testare e migliorare gli algoritmi nel reinforcement learning (RL). Questi benchmark aiutano i ricercatori a verificare quanto bene funzionano i loro metodi. Tuttavia, molti benchmark esistenti per l'apprendimento aperto richiedono molta potenza di calcolo o sono troppo semplici per essere stimolanti.

Per affrontare questo, introduciamo Craftax-Classic, una versione più veloce del benchmark Crafter. È costruito usando JAX, una libreria di codice che accelera i calcoli. Con Craftax-Classic, i ricercatori possono eseguire molti test in poco tempo. Ad esempio, un metodo chiamato PPO può completare un compito che coinvolge 1 miliardo di interazioni in meno di un'ora utilizzando una GPU, raggiungendo la maggior parte dei premi desiderati.

Oltre a Craftax-Classic, presentiamo il benchmark principale Craftax, che aggiunge più complessità alla meccanica originale di Crafter. Questo nuovo benchmark include idee da un gioco impegnativo chiamato NetHack. Craftax richiede ai giocatori di esplorare a fondo, pianificare, ricordare e adattarsi a nuovi scenari mentre scoprono diverse parti del mondo. Quando abbiamo testato i metodi esistenti su Craftax, non hanno funzionato bene, indicando che Craftax offre una sfida significativa per i ricercatori con risorse limitate.

L'importanza dei benchmark

I benchmark sono fondamentali per guidare i progressi nel reinforcement learning. Aiutano i ricercatori a confrontare l'efficacia di diversi algoritmi. Esempi di benchmark di successo includono ambienti come l'Arcade Learning Environment per il deep RL basato sul valore, Mujoco per il controllo continuo e lo StarCraft Multi-Agent Challenge per il RL multi-agente.

Con l'attenzione che si sposta verso la costruzione di agenti più versatili, c'è un crescente interesse per benchmark che mostrano dinamiche aperte. Questo include elementi come la generazione procedurale del mondo, lo sviluppo delle abilità e l'apprendimento nel tempo. I benchmark esistenti come MALMO (relativo a Minecraft), l'ambiente di apprendimento NetHack, MiniHack e Crafter hanno contribuito a questa tendenza. Tuttavia, le prestazioni lente di questi ambienti li hanno resi meno accessibili, limitando la loro utilità nella ricerca.

Con l'aumento degli ambienti basati su JAX, i ricercatori hanno cominciato a riconoscere i vantaggi di pipeline di RL più rapide e più efficienti. L'eliminazione dei ritardi tra la CPU e la GPU, combinata con un'esecuzione parallela efficiente, consente esperimenti che una volta erano impraticabili su macchine standard.

Craftax combina queste due idee. È un ambiente basato su JAX che gira notevolmente più veloce rispetto ad altri benchmark simili mantenendo dinamiche complesse e aperte.

Craftax-Classic: una versione veloce di Crafter

Craftax-Classic è progettato per somigliare molto all'originale Crafter, ma funziona molto più velocemente. Le meccaniche e le caratteristiche di Crafter sono preservate, ma gli aggiornamenti tecnici migliorano le prestazioni.

In questo benchmark, i giocatori esplorano un mondo generato casualmente che include vari terreni e risorse. Devono raccogliere materiali, creare strumenti, gestire risorse come fame e sete, e ingaggiare combattimenti con i nemici. I giocatori guadagnano ricompense completando obiettivi specifici, il che incoraggia l'esplorazione e l'interazione con le meccaniche del gioco.

Craftax-Classic consente ai ricercatori di completare i test in modo significativamente più veloce rispetto a prima. Questo apre opportunità per condurre esperimenti più ampi e raccogliere dati in meno tempo.

Craftax: un ambiente più impegnativo

Per creare una sfida più coinvolgente, abbiamo sviluppato l'ambiente principale di Craftax, che include molte nuove caratteristiche ispirate a NetHack e al genere Roguelike. Ecco alcuni aspetti notevoli di Craftax:

Livelli multipli

A differenza di Crafter, dove i giocatori sono limitati a una mappa, Craftax ha nove livelli unici. Ogni livello offre un insieme di sfide distintive, richiedendo ai giocatori di adattare le loro strategie mentre progrediscono più in profondità nel gioco. I giocatori possono viaggiare tra i livelli trovando scale, rendendo l'esplorazione essenziale.

Meccaniche di combattimento

Il sistema di combattimento in Craftax è più complesso, con diversi tipi di danni e difesa. I giocatori possono creare armi e armature avanzate, usare attacchi a distanza e imparare incantesimi. Questa varietà incoraggia i giocatori a sviluppare strategie basate sulle risorse che trovano.

Una varietà di creature

Craftax presenta 19 diverse creature, ognuna con comportamenti e debolezze uniche. I giocatori devono imparare a contrastare efficacemente diversi tipi di nemici, aumentando la profondità e la sfida del gioco.

Pozioni e incantesimi

Durante i livelli, i giocatori possono trovare pozioni che hanno effetti casuali ogni volta che giocano. Questo incoraggia la sperimentazione mentre i giocatori scoprono come queste pozioni influenzano le loro abilità. I giocatori possono anche potenziare le loro armi e armature con gemme, introducendo un ulteriore livello di strategia.

Abilità e attributi

Man mano che i giocatori progrediscono, guadagnano punti esperienza che possono migliorare le loro abilità. Questi miglioramenti possono cambiare il modo in cui i giocatori affrontano le sfide, permettendo loro di adattare le loro tattiche mentre imparano sul gioco.

Sfide dei boss

Alla fine del gioco, i giocatori affrontano una sfida contro un boss che mette alla prova la loro capacità di applicare tutto ciò che hanno imparato durante il loro viaggio. I giocatori di successo devono adattare le loro strategie precedenti per questa sfida finale.

In generale, Craftax offre un livello di difficoltà bilanciato, presentando una sfida significativa pur rimanendo accessibile a chi è disposto a investire tempo nell'esplorare le sue meccaniche.

Reinforcement Learning in Craftax

Craftax adotta l'interfaccia Gymnax, rendendo facile per i ricercatori integrarlo con i framework esistenti. Lo Spazio di Osservazione è composto da rappresentazioni basate su pixel e simboliche, consentendo flessibilità nel modo in cui l'ambiente viene percepito.

Spazio di osservazione

Lo spazio di osservazione fornisce una vista dell'ambiente circostante del giocatore e delle loro statistiche attuali. Le osservazioni basate su pixel sono immagini a bassa risoluzione del mondo di gioco, mentre le osservazioni simboliche utilizzano array per trasmettere informazioni essenziali sullo stato e sull'inventario del giocatore.

Spazio d'azione

I giocatori possono eseguire azioni in base a un insieme discreto di opzioni, ciascuna corrispondente a interazioni specifiche o movimenti nel gioco. Questo design consente una vasta gamma di strategie e approcci per risolvere le sfide.

Struttura delle Ricompense

Craftax segue un sistema di ricompense simile a Crafter, dove il completamento di obiettivi concede punti. Gli obiettivi sono categorizzati per difficoltà, incoraggiando i giocatori a perseguire compiti progressivamente più impegnativi.

Framework di valutazione

Per valutare le prestazioni in Craftax, proponiamo due benchmark distinti:

Craftax-1B Challenge

Questa sfida consente un budget di 1 miliardo di interazioni nell'ambiente Craftax-Symbolic. L'obiettivo è incoraggiare l'esplorazione, l'apprendimento continuo e la pianificazione a lungo termine. È progettata per trovare un equilibrio tra fornire abbastanza interazioni per un'esplorazione significativa e rimanere gestibile per i ricercatori con risorse limitate.

Craftax-1M Challenge

Questo benchmark permette solo 1 milione di interazioni, testando l'efficienza del campionamento. Anche se le restrizioni sono più severe, il rapido feedback dagli esperimenti aumenta la velocità con cui i ricercatori possono perfezionare i loro metodi.

Tecniche di esplorazione

Nei nostri test, sono stati implementati vari metodi di esplorazione utilizzando l'algoritmo PPO. Questi includevano metodi di base, curiosità intrinseca per incoraggiare l'esplorazione e altre strategie che mirano a migliorare le prestazioni degli agenti.

Osservazioni sulle prestazioni

I test iniziali hanno rivelato che mentre alcuni metodi come PPO e PPO-RNN hanno appreso efficacemente obiettivi di base, hanno avuto difficoltà con compiti più sfidanti. È interessante notare che alcune strategie di esplorazione più avanzate non hanno mostrato miglioramenti significativi, suggerendo che la struttura di ricompensa di base fosse sufficiente per agenti che non richiedevano ricompense intrinseche aggiuntive.

Nonostante alcuni successi, gli agenti in generale non progredivano bene nei compiti più difficili, indicando che le sfide in Craftax sono significative e richiedono ulteriori progressi nelle tecniche di RL.

Progettazione di ambienti non supervisionati

Oltre alle strategie di esplorazione, abbiamo esplorato metodi di progettazione di ambienti non supervisionati (UED). Queste tecniche comportano la generazione di livelli che aumentano progressivamente in difficoltà in base alle prestazioni degli agenti.

Risultati e scoperte

Sono stati testati diversi metodi UED, mostrando successi variabili nella generazione di ambienti efficaci per l'addestramento. Alcuni metodi hanno funzionato meglio di altri, con la prioritizzazione dei livelli basata sulle prestazioni degli agenti che si è dimostrata particolarmente efficace.

Conclusione

Craftax rappresenta uno strumento prezioso per i ricercatori che cercano di far avanzare il campo del reinforcement learning. Offrendo un ambiente complesso e coinvolgente con compiti impegnativi, speriamo di ispirare ulteriori esplorazioni e innovazioni. I benchmark di Craftax forniscono opportunità per studiare elementi essenziali del RL come l'esplorazione, l'apprendimento nel tempo e l'acquisizione di abilità.

In futuro, non vediamo l'ora di vedere come la comunità di ricerca utilizzi Craftax per spingere i confini di ciò che è possibile nel reinforcement learning.

Fonte originale

Titolo: Craftax: A Lightning-Fast Benchmark for Open-Ended Reinforcement Learning

Estratto: Benchmarks play a crucial role in the development and analysis of reinforcement learning (RL) algorithms. We identify that existing benchmarks used for research into open-ended learning fall into one of two categories. Either they are too slow for meaningful research to be performed without enormous computational resources, like Crafter, NetHack and Minecraft, or they are not complex enough to pose a significant challenge, like Minigrid and Procgen. To remedy this, we first present Craftax-Classic: a ground-up rewrite of Crafter in JAX that runs up to 250x faster than the Python-native original. A run of PPO using 1 billion environment interactions finishes in under an hour using only a single GPU and averages 90% of the optimal reward. To provide a more compelling challenge we present the main Craftax benchmark, a significant extension of the Crafter mechanics with elements inspired from NetHack. Solving Craftax requires deep exploration, long term planning and memory, as well as continual adaptation to novel situations as more of the world is discovered. We show that existing methods including global and episodic exploration, as well as unsupervised environment design fail to make material progress on the benchmark. We believe that Craftax can for the first time allow researchers to experiment in a complex, open-ended environment with limited computational resources.

Autori: Michael Matthews, Michael Beukman, Benjamin Ellis, Mikayel Samvelyan, Matthew Jackson, Samuel Coward, Jakob Foerster

Ultimo aggiornamento: 2024-06-03 00:00:00

Lingua: English

URL di origine: https://arxiv.org/abs/2402.16801

Fonte PDF: https://arxiv.org/pdf/2402.16801

Licenza: https://creativecommons.org/licenses/by/4.0/

Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.

Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.

Altro dagli autori

Articoli simili