La generazione artificiale di livelli, nemici e risorse nei videogiochi non è proprio una novità. Molti titoli garantiscono una giocabilità quasi inesauribile grazie a questo metodo, ma con lo sviluppo di modelli più complessi stanno emergendo nuove idee che in futuro potrebbero trasformare completamente generi e titoli classici. Così arriviamo a MarioGPT, un progetto basato su GPT-2 che, oltre a creare livelli di Super Mario Bros. da solo, abilita anche la generazione testo-a-livello per ottimizzare i risultati usando prompt di base.

MarioGPT: livelli infiniti di Super Mario Bros. con GPT-2
Super Mario

La ripetitività è uno dei grandi problemi che ogni videogioco deve evitare. Molti sviluppatori riescono a sfuggirle con la generazione procedurale, ma in pratica non è così difficile raggiungerne i limiti. La community di giocatori ha trovato una buona soluzione in la forma dei «randomizzatori» che cambiano parzialmente o totalmente le condizioni originali di un gioco, ma come suona l'idea di lasciare questo lavoro a un'intelligenza artificiale?

Con questo in mente andiamo all'Università di Copenaghen, dove un gruppo di ricercatori ha presentato uno studio chiamato MarioGPT. A differenza dei chatbot che cercano di conquistare il mondo una ricerca alla volta, MarioGPT utilizza GPT-2 per generare livelli infiniti di Super Mario Bros., ma non è tutto: accetta anche prompt che modificano i suoi risultati.

MarioGPT: Super Mario Bros. + intelligenza artificiale

La scelta di GPT-2 è stata una semplice questione di convenienza. Shyam Sudhakaran, leader dello studio, spiega che GPT-2 è più adatto a dataset piccoli, oltre a essere più leggero e semplice da addestrare. Ma la prima sfida è stata trasformare i livelli di Super Mario Bros. in qualcosa che i modelli potessero capire. Il trucco che hanno usato è fantastico: una conversione in testo, con ogni elemento dello schermo rappresentato da una lettera o simbolo.

MarioGPT: livelli infiniti di Super Mario Bros. con GPT-2
Livelli di Super Mario Bros. in formato «Arte ASCII» per addestrare modelli di intelligenza artificiale

Il risultato include una catena di lettere x minuscole che rappresentano il percorso da seguire e la soluzione tecnica per quello scenario. Su un totale di 250 livelli, l'agente incaricato di risolverli ha avuto successo in nove casi su dieci. Tuttavia, questo non gli permette di sfuggire ad alcune limitazioni, come il fatto che possiede un solo simbolo per «nemico» mentre nel gioco esistono diverse creature (Goombas, Koopas, Buzzy Beetles e altre), e l'assenza di livelli acquatici, ma tutto questo può essere migliorato con dataset più completi.

MarioGPT: livelli infiniti di Super Mario Bros. con GPT-2
Con l'uso dei prompt, le modifiche nei livelli sono notevoli

Inoltre, la possibilità di iniettare prompt nel processo di generazione è vitale affinché i livelli non siano semplici corse orizzontali con un paio di tubi. Un modificatore come «many pipes, many enemies, little blocks, low elevation» può trasformare completamente l'esperienza finale. Tuttavia, MarioGPT è in fase sperimentale e non dovremmo aspettarci alcuno strumento nel prossimo futuro (tranne questo generatore di bitmap su HuggingFace). In effetti, credo che la cosa più importante per lo studio sarà cambiare nome. Nintendo ha una bassa tolleranza per queste cose...

Accedi allo studio: Clicca qui

Fonte: TechCrunch

MarioGPT: livelli infiniti di Super Mario Bros. con GPT-2
Super Mario