Google et DeepMind ouvrent officiellement StarCraft 2 pour en faire un environnement de travail afin d'entraîner des systèmes d'intelligence artificielle à devenir imbattables au jeu de stratégie en temps réel.

L’automne dernier, Blizzard avait créé la surprise en annonçant un partenariat avec DeepMind, la filiale de Google spécialisée dans l’intelligence artificielle. À l’époque, les deux sociétés avaient annoncé le développement à venir d’un environnement de travail pour permettre à une IA d’apprendre à maîtriser StarCraft II, l’un des jeux de stratégie en temps réel les plus populaires au monde.

Pratiquement un an a passé depuis la BlizzCon 2016. À la suite de la conférence annuelle du studio, les ingénieurs n’ont pas chômé et après plusieurs mois de travail ils ont annoncé le 9 août la disponibilité de l’interface de programmation StarCraft II pour que les joueurs, les chercheurs et les curieux puissent « utiliser le jeu comme une plateforme d’avancement de la recherche en matière d’intelligence artificielle ».

Les actions disponibles selon l’unité sélectionnée.

« Cette API comprend un mode bac à sable afin que la communauté puisse réaliser ses propres expériences avec des IA basées sur l’apprentissage et des IA scriptées et ainsi créer de nouveaux outils qui profiteront aussi bien à la communauté StarCraft qu’aux aficionados de l’intelligence artificielle », commente le studio américain. Les fonctionnalités de l’API incluent :

  • une API d’IA scriptée
  • une API d’IA basée sur l’image (affichage des différents niveaux)
  • de la documentation, avec exemples de code et exemples de bots
  • une compatibilité pour IA hors-ligne VS. jeu d’IA
  • un pack de parties classées en 1c1 enregistrées et rendues anonymes
  • une compatibilité Windows et Mac
  • un pack Linux complet de l’API

La vidéo ci-dessous montre l’intérêt d’un outil comme PySC2. DeepMind explique qu’il sert à décomposer le jeu en « couches », afin d’isoler des éléments par type (unités, barre de vie, zone visible sur la carte, etc) tout en préservant les principaux éléments visuels et spatiaux du jeu. Il s’agit de faciliter le travail des chercheurs en IA lorsqu’ils testeront leur système avec le jeu.

La vidéo suivante montre que le projet contient aussi des « mini-jeux ». Il s’agit, explique DeepMind, d’une technique visant à décomposer le jeu en blocs gérables qui peuvent être utilisés pour tester des agents sur des tâches spécifiques, comme le déplacement de la caméra, la collecte des minéraux ou la sélection d’unités.

Pour les développeurs purs et durs, la contribution à la conception logicielle est possible en se rendant sur GitHub : Blizzard met à disposition la bibliothèque de l’API StarCraft II ainsi que son protocole, la bibliothèque des liaisons de protocole Python et l’ensemble des outils de DeepMind (PySC2). Un espace de discussion sur les forums officiels de Blizzard a aussi été mis en place.

StarCraft II représente un tout autre défi pour DeepMind. La filiale, dont le système d’intelligence artificielle AlphaGo est désormais sans rival dans le jeu de go depuis qu’il a largement battu les meilleurs joueurs du monde, s’attaque en effet à un titre dans lequel il n’est pas possible d’avoir en permanence une information complète et parfaite, ce qui permet de savoir en temps réel ce que fait l’adversaire.

Au go, chaque adversaire voit en effet constamment les pierres de son adversaire ainsi que les siennes et aucun mouvement ne lui échappe. Dans StarCraft II, c’est différent : du fait du « brouillard de guerre », les positions ne sont pas toujours connues : il faut aller explorer la carte régulièrement pour essayer de deviner ce que fait l’ennemi et s’adapter en fonction de ce que l’on voit — et c’est toujours une vue partielle.

Ce n’est pas par hasard que DeepMind s’intéresse à ce type de jeu puisque le futur de l’IA passe par là. Et quitte à prendre un jeu de stratégie en temps réel où l’information n’est ni complète ni parfaite, autant prendre le titre le plus populaire du genre, celui où la communauté est la plus active et les enjeux les plus élevés, surtout en Corée du Sud, où la scène est très compétitive.

Un challenge que DeepMind reconnaît bien volontiers.

Il y a plus de 300 actions de base pouvant être prises dans StarCraft II, contre une dizaine à peine dans des jeux Atari (comme haut, bas, gauche, droite…). « En plus, les actions dans StarCraft sont hiérarchiques, peuvent être modifiées et augmentées, plusieurs nécessitant un point sur l’écran. Même en supposant une petite taille d’écran de 84×84, il existe près de 100 millions d’actions possibles disponibles ».

Une fois que le fonctionnement de StarCraft 2 aura bien été intégré par la communauté de chercheurs, on peut s’attendre à voir des matchs d’exhibition commencer à fleurir dans un avenir plus ou moins proche, exactement comme ce qui a été fait avec AlphaGo et le jeu de go. Google, via sa filiale DeepMind, est sans doute déjà en train de fabriquer son « AlphaSC2 » pour devenir imbattable à SC2.

Les joueurs n’ont qu’à bien se tenir !

Partager sur les réseaux sociaux