GameGAN de Nvidia génère des jeux comme Pac-Man en regardant des vidéos


Il y a deux ans, les chercheurs de Nvidia ont détaillé l’IA qui pouvait générer des visuels et les combiner avec un moteur de jeu pour créer un environnement interactif et navigable. Dans le prolongement de ce travail, des scientifiques de la société, du Vector Institute, du MIT et de l’Université de Toronto ont publié cette semaine un article décrivant GameGAN, un système qui peut synthétiser une version fonctionnelle d’un jeu. sans pour autant un moteur sous-jacent.

Bien que la génération de jeux ne semble pas être l’application la plus pratique de l’IA, des algorithmes comme GameGAN pourraient un jour être utilisés pour produire des simulateurs pour la formation de systèmes robotiques. Avant d’être déployée dans le monde réel, l’IA contrôlant le robot subit généralement des tests approfondis dans des environnements simulés, qui comprennent des modèles procéduraux qui synthétisent des scènes et des arbres de comportement spécifiant les comportements des agents de simulation. L’écriture de ces modèles et arbres nécessite à la fois du temps et des experts du domaine hautement qualifiés, ce qui se traduit par une augmentation des dépenses des entreprises qui cherchent à transférer des modèles vers des robots du monde réel.

Il convient de mentionner que GameGAN n’est pas le premier système conçu pour s’attaquer à la génération de jeux. Un article récent co-rédigé par des chercheurs de Google Brain décrit un algorithme qui utilise des techniques de prédiction vidéo pour entraîner l’IA de jeu dans des modèles appris de jeux Atari. Une étude de Georgia Tech propose un algorithme qui absorbe les images du jeu et cartographie de manière probabiliste les relations entre les objets du jeu et leur évolution. Le système de Facebook peut extraire des personnages contrôlables à partir de vidéos réelles de joueurs de tennis, d’instructeurs d’escrime, etc. Et des systèmes comme ceux proposés par des chercheurs de l’Université de Californie, de Santa Barbara et du Politecnico di Milano en Italie s’appuient sur la connaissance des étapes existantes pour créer de nouvelles étapes dans des jeux comme Doom et Super Mario Bros.

Nvidia GameGAN

Ci-dessus: un jeu de type Pac-Man synthétisé par GameGAN de Nvidia.

Crédit d’image: Nvidia

Mais GameGAN définit de manière unique la création de jeux comme un problème de génération d’images. Étant donné les séquences d’images d’un jeu et les actions correspondantes des agents (c’est-à-dire les joueurs) dans le jeu, le système imite visuellement le jeu en utilisant un modèle d’IA entraîné. Concrètement, GameGAN ingère le scénario et les actions du clavier pendant l’entraînement et vise à prédire la prochaine image en conditionnant l’action – par exemple, un bouton appuyé par un joueur. Il apprend directement des paires d’images et d’actions sans avoir accès à la logique ou au moteur sous-jacent, tirant parti d’un module de mémoire qui encourage le système à construire une carte de l’environnement de jeu. Un décodeur apprend à démêler les composants statiques et dynamiques dans les images, ce qui rend le comportement de GameGAN plus interprétable, et il permet de modifier les jeux existants à la volée en échangeant divers actifs.

VB Transform 2020 Online – 15-17 juillet. Rejoignez les principaux dirigeants de l’IA: inscrivez-vous au livestream gratuit.

Pour y parvenir, il a fallu surmonter de formidables défis de conception de la part des chercheurs, comme émuler des moteurs physiques et préserver la cohérence à long terme. (Les joueurs s’attendent généralement à ce qu’une scène à laquelle ils s’éloignent se ressemblent s’ils reviennent.) Ils devaient également s’assurer que GameGAN pouvait modéliser les comportements déterministes (prévisibles) et stochastiques (aléatoires) dans les jeux qu’il tentait de recréer.

Un modèle en trois parties

La solution de l’équipe était un modèle en trois parties composé d’un moteur dynamique, du module de mémoire susmentionné et d’un moteur de rendu. À un niveau élevé, GameGAN réagit aux actions d’un agent de l’IA jouant au jeu généré en produisant des images de l’environnement en temps réel, même des dispositions qu’il n’a jamais vues auparavant.

Le moteur de dynamique est chargé d’apprendre quelles actions ne sont pas «autorisées» dans le contexte d’un jeu (comme marcher à travers un mur) et de modéliser la réponse des objets à la suite des actions. Le module de mémoire établit une cohérence à long terme afin que les scènes simulées (comme les bâtiments et les rues) ne changent pas de façon inattendue au fil du temps, en partie en se «souvenant» de chaque scène générée. (Le modèle de mémoire récupère également les éléments statiques tels que les arrière-plans, selon les besoins.) Le moteur de rendu – la dernière étape du pipeline – rend les images simulées en fonction des cartes d’objets et d’attributs, tenant compte automatiquement de la profondeur en occluant les objets.

Nvidia GameGAN

GameGAN s’entraîne en utilisant une approche dite contradictoire, où le système tente de « tromper » les discriminateurs – un discriminateur à image unique, un discriminateur conditionné par l’action et un discriminateur temporel – pour produire des jeux réalistes et cohérents. GameGAN synthétise des images d’échantillons de bruit aléatoires à l’aide d’une distribution, puis les transmet, avec des exemples réels d’un ensemble de données d’apprentissage, aux discriminateurs, qui tentent de faire la distinction entre les deux. GameGAN et les discriminateurs s’améliorent dans leurs capacités respectives jusqu’à ce que les discriminateurs soient incapables de distinguer les vrais exemples des exemples synthétisés avec une précision supérieure à 50% attendue du hasard.

La formation se déroule sans surveillance, ce qui signifie que GameGAN déduit les modèles dans les ensembles de données sans référence à des résultats connus, étiquetés ou annotés. Fait intéressant, le travail des discriminateurs informe celui de GameGAN – chaque fois que le discriminateur identifie correctement un travail synthétisé, il indique à GameGAN comment modifier sa sortie afin qu’elle soit plus réaliste à l’avenir.

Expériences

Au cours d’expériences, l’équipe de Nvidia a alimenté GameGAN 50 000 épisodes (plusieurs millions d’images au total) de Pac-Man et de la plateforme de recherche en intelligence artificielle VizDoom basée sur Doom pendant quatre jours. (La division de recherche de Bandai Namco a fourni une copie de Pac-Man pour la formation.) Ils ont utilisé une version modifiée de Pac-Man avec un environnement la moitié de la taille normale (une grille 7 x 7 par opposition à une grille 14 x 14) ) ainsi qu’une variante baptisée Pac-Man-Maze, qui manquait de fantômes et avait des murs créés au hasard par un algorithme.

À l’exception du cas d’échec occasionnel, GameGAN a en effet livré des expériences de type Pac-Man et Doom «temporellement cohérentes» avec des fantômes et des pellets (dans le cas de l’imitation Pac-Man) et des boules de feu et des pièces (VizDoom).

Nvidia GameGAN

Ci-dessus: un jeu de type Doom généré par GameGAN.

Crédit d’image: Nvidia

Peut-être plus excitant, en raison de son étape de démêlage, le système a permis aux ennemis dans les jeux simulés d’être déplacés autour de la carte et les arrière-plans ou les premiers plans d’être échangés avec des images aléatoires.

Afin de mesurer plus quantitativement les qualités des jeux générés, les chercheurs ont déployé des agents d’apprentissage par renforcement dans les deux jeux et leur ont demandé d’obtenir des scores élevés. Par exemple, l’agent Pac-Man a dû «manger» des boulettes et capturer un drapeau et a été pénalisé chaque fois qu’un fantôme l’a consommé ou qu’il a utilisé un nombre maximum d’étapes. Au cours de 100 environnements de test, les agents ont résolu le jeu de type VizDoom – ce qui en fait le premier formé avec un cadre GAN à le faire, affirme l’équipe – et ont battu plusieurs bases de référence dans Pac-Man.

Nvidia GameGAN

Ci-dessus: échange d’arrière-plans et de sprites à l’aide de GameGAN.

Crédit d’image: Nvidia

Les chercheurs pensent que GameGAN a une applicabilité évidente à la conception de jeux, où il pourrait être utilisé aux côtés d’outils comme la plate-forme de génération artistique de Promethean AI pour créer rapidement de nouveaux niveaux et environnements. Mais ils envisagent également de futurs systèmes similaires qui peuvent apprendre à imiter les règles de conduite, par exemple, ou les lois de la physique simplement en regardant des vidéos et en voyant des agents agir. À plus court terme, comme évoqué précédemment, GameGAN pourrait écrire des simulateurs pour former des robots d’entrepôt qui peuvent saisir et déplacer des objets ou des robots de livraison qui doivent traverser les trottoirs pour livrer de la nourriture et des médicaments.

Nvidia dit qu’il rendra les jeux générés à partir de ses expériences disponibles sur sa plate-forme AI Playground plus tard cette année.