
30 Luglio 2020
Nvidia ha sviluppato in collaborazione con Bandai Namco GameGAN, un particolare sistema di reti neurali che imita le caratteristiche di un motore di gioco ed è quindi in grado di generare un videogame anche senza disporre di alcuna conoscenza in ambito di programmazione.
Il protagonista di questo esperimento è stato niente meno che PAC-MAN, che - in occasione dei suoi 40 anni - è stato ricostruito dall'intelligenza artificiale attraverso l'utilizzo di GameGAN. Ma come funziona esattamente GameGAN? Quali sono le sue potenziali applicazioni all'interno dell'industria videoludica?
Cominciamo innanzi tutto spiegando il significato di quel GAN nel nome. Si tratta dell'acronimo di Generative Adversarial Networks, che identifica un particolare sistema di reti neurali utilizzate per l'allenamento degli algoritmi di deep learning.
Normalmente questi vengono allenati al riconoscimento di un determinato oggetto attraverso l'analisi di una enorme mole di informazioni che, a loro volta, devono essere descritte e classificate da personale umano. Ad esempio, se dovessimo allenare un algoritmo al riconoscimento delle foto che contengono dei gatti, dovremmo sottoporgli migliaia di foto di gatti - classificando le loro caratteristiche principali - prima che il modello sia in grado di riconoscerli autonomamente.
GAN, invece, adotta un approccio che riduce al minimo il bisogno di fornire dei dati esterni, dal momento che il sistema è composto da due reti neurali in competizione tra loro. La prima (generatrice) ha il compito di creare un'immagine del soggetto da riconoscere, mentre la seconda (discriminatrice) l'analizza e stabilisce se il dato prodotto può risultare credibile o meno.
Riprendendo l'esempio felino, la rete generatrice produrrà immagini di gatti sino a quando la discriminatrice non li giudicherà credibili: tutti i dati vengono condivisi tra le due reti, che quindi si allenano a vicenda in maniera del tutto autonoma. A differenza dell'altro modello, questo richiede una quantità di input iniziali minore, visto che il materiale da analizzare verrà generato automaticamente.
Nel caso di GameGAN, però, le cose si fanno decisamente più complicate. Parliamo infatti di un sistema che si pone l'obbiettivo di osservare, studiare e ricreare da zero un gioco che risulti funzionante e credibile. Ciò comporta l'entrata in scena di tantissimi altri fattori. In PAC-MAN, ad esempio, l'IA deve capire da sola che i fantasmi colorati sono pericolosi, che lo scopo è quello di mangiare più pallini possibili per incrementare il punteggio totale, che le pillole di grandi dimensioni invertono il ruolo preda/predatore tra PAC-MAN e i fantasmi, e così via.
Tutti questi elementi vengono dedotti da GameGAN, in quanto gli unici suoi dati a disposizione sono delle registrazioni di sessioni di gioco (in questo caso ne sono state fornite 50.000, analizzate da 4 GPU nel corso di 4 giorni) e i dati sui tasti premuti durante queste sessioni che - in questo caso - sono state giocate da una IA e non da una persona reale.
Partendo da questi dati, l'IA generativa crea un frame che possa risultare credibile, mentre l'IA discriminatrice proverà a giocare quel particolare frame. L'interazione tra le due intelligenze artificiali porta quindi alla continua produzione di nuove immagini, che vengono accettate o rigettate in base alla loro credibilità e al fatto che rispondano o meno alle regole del sistema che sono state interpretate da GameGAN.
Il risultato finale porta alla creazione di un gioco completamente originale e funzionante, ma alla sua base non vi è alcun codice o motore di gioco, bensì solo una serie di pixel (quindi potenzialmente in grado di essere visualizzati da qualsiasi hardware). Ciò significa che ogni azione svolta all'interno del gioco darà origine a nuovi frame composti in base alle regole che il modello IA ha dedotto, quindi il tutto si svolge in tempo reale. Questo permette anche di creare NPC (i personaggi non giocanti, come i fantasmi di PAC-MAN) in grado di reagire a ciò che accade, senza che il loro comportamento sia scriptato.
Il modello alla base di GameGAN è generico e non è stato costruito attorno ad un titolo in particolare, quindi può essere utilizzato per lavorare su qualsiasi gioco 2D. Al momento ci troviamo ancora in una fase iniziale del suo sviluppo, motivo per cui è maggiormente efficace se applicato a titoli semplici, ma il suo team è al lavoro per renderlo compatibile anche con i giochi 3D e, in futuro, per permettergli di analizzare più giochi alla volta e di fonderli tra loro.
Nvidia GameGAN, infatti, non si limita a riprodurre ciò che vede, ma è persino in grado di creare layout completamente originali, basandosi sui risultati delle sue precedenti analisi. Il modello, infatti, apprende autonomamente quali sono le regole del gioco ed è in grado di scollegare gli elementi di background dai personaggi in movimento; ciò rende possibile la sostituzione di ognuno di essi (potremmo quindi cambiare lo sfondo del titolo, lo sprite di PAC-MAN o dei fantasmi e così via), utilizzando le informazioni provenienti da altre fonti.
Le applicazioni di GameGAN sono molto varie e spaziano in tanti ambiti. Restando in quello videoludico, le future versioni del modello permetteranno agli sviluppatori di semplificare la creazione di nuovi livelli e - in un futuro ancora lontano - persino di interi giochi. Ma queste conoscenze possono essere applicate anche ad altri settori, come ad esempio quello della guida autonoma, della gestione dei magazzini e molto altro ancora, grazie alla possibilità di addestrare robot e algoritmi.
Il cuore del modello è infatti incentrato sulla sua capacità di apprendimento delle regole e di creare risposte coerenti. Nvidia afferma che l'obiettivo finale è quello di permettere a GameGAN - o ad una sua versione infinitamente più evoluta - di creare simulazioni che rispondano esattamente a tutte le leggi che regolano il mondo. Chissà che un giorno non riesca a sviluppare una riproduzione credibile del nostro Pianeta e di tutte le interazioni che avvengono sulla sua superficie.
La versione giocabile di PAC-MAN creata da GameGAN sarà disponibile sul portale AI Playground di Nvidia, dove gli utenti potranno scaricare delle dimostrazioni per provare con mano un titolo completamente generato dall'intelligenza artificiale.
Il progetto GameGAN, frutto della collaborazione tra Nvidia AI Research Lab di Toronto e l'Università di Toronto, è stato sviluppato dal team di Seung-Wook Kim e ha ricevuto supporto da parte di Bandai Namco Research. In FONTE trovate la pagina Github del progetto, mentre nel VIA è presente il post ufficiale sul blog Nvidia.
Commenti
Complimenti per l'articolo
non posso che accodarmi ai complimenti per aver scritto in modo semplice e chiaro (ma non semplicistico) di un argomento così complesso.
Ti ringrazio!
Grazie!
Un complimento a Gabriele per aver spiegato benissimo concetti molto complessi rendendo fruibile questo argomento a persone anche completamente a digiuno dell'argomento..
Bell'articolo. Spiegato anche bene a livello tecnico. I LIKE.