Google DeepMind explique de quelle façon son intelligence artificielle, AlphaStar, a été entraînée à jouer sur StarCraft 2.

Jeudi 24 janvier, un nouveau cap a été franchi dans le développement de l’intelligence artificielle : après son triomphe sur les meilleurs joueurs de go au monde, DeepMind — la filiale de Google dans l’IA — a fait sensation en dévoilant un système capable de battre des joueurs professionnels. Baptisé AlphaStar, il est ressorti très largement victorieux de ses deux confrontations, par le score final de 10 à 1.

À l’issue de cette rencontre, le fondateur et patron de DeepMind, Demis Hassabis a fait savoir que les éléments techniques d’AlphaStar feront l’objet d’une publication soumise à comité de relecture. Mais en attendant l’arrivée de ce papier de recherche, la société a publié sur son blog un article fort intéressant résumant de quelle façon la société a travaillé pour arriver à ce résultat.

Résultat sans appel contre Mana

Résultat sans appel contre Mana.

L’entraînement d’AlphaStar, d’abord par imitation

Le travail de DeepMind a commencé par une collecte de données. L’entreprise s’est appuyée sur des parties anonymisées jouées par de vraies personnes pour injecter des informations de manière à superviser l’apprentissage de l’IA. « Cela a permis à AlphaStar d’apprendre, par imitation, les micro et macro-stratégies de base utilisées par les joueurs dans StarCraft ».

Cette première étape a permis au système de surclasser assez vite le plus haut niveau d’IA intégré au jeu ( « Élite ») dans 95 % des matchs joués. Ce niveau correspond au rang « Or » dans le classement des joueurs. Il s’agit d’une ligue de niveau intermédiaire. On trouve au-dessus les rangs « Platine », « Diamant », « Maître » et « Grand Maître ». C’est dans cette dernière catégorie qu’évoluent les pros.

Arrivé à ce stade, DeepMind a mis en place une ligue interne dans laquelle plusieurs versions de « l’agent » se sont affrontées entre elles. C’est ce qu’on appelle de l’apprentissage par renforcement. Les IA apprennent de leurs confrontations. Mais à chaque cycle, le développement de certains agents était gelé, tandis que d’autres étaient autorisés à se consolider davantage.

StarCraft AlphaStar

Le principe de fonctionnement de la ligue AlphaStar.

Source : DeepMind

De cette façon, il y avait une grande variété de « profils » dans la ligue AlphaStar. Pour DeepMind, cela a permis de « créer un processus qui explore continuellement l’immense espace stratégique du gameplay StarCraft, tout en s’assurant que chaque agent est performant face aux stratégies les plus fortes, et n’oublie pas comment battre les précédentes ».

« Pour encourager la diversité au sein de la ligue, chaque agent avait son propre objectif d’apprentissage », ajoute l’entreprise. Par exemple, « un agent peut avoir pour objectif de battre un concurrent spécifique, tandis qu’un autre agent peut avoir à battre toute une distribution de rivaux, mais en construisant plus d’une unité de jeu particulière ». Ces objectifs évoluaient au fur et à mesure.

La ligue AlphaStar a été active pendant 14 jours et chaque agent en compétition a bénéficié d’une puissance de calcul de 16 TPU (Tensor Processing Unit), que Google met à disposition à travers son infrastructure. En clair, cela signifie que chaque version de l’IA a reçu 200 ans d’entraînement sur StarCraft 2. Plus que ce qu’aucun joueur ne pourra jamais atteindre.

L'entraînement d'AlphaStar, en juin 2018

L'entraînement d'AlphaStar, en juin 2018

Source : DeepMind

Pour sélectionner l’agent à opposer aux joueurs, DeepMind a procédé à une sorte de synthèse basée sur l’équilibre de Nash de la ligue AlphaStar. Autrement dit, « le mélange le plus efficace de stratégies qui ont été découvertes et qui fonctionnent sur un seul GPU de bureau », explicite la société.

Au bout d’une semaine d’entraînement, DeepMind a voulu tester son niveau ; il a donc convié l’Allemand Dario « TLO » Wünsch à venir disputer cinq parties. Même si TLO n’a pas pu jouer sa race fétiche (DeepMind a limité la variété des parties aux Protoss pour des raisons techniques et de temps d’entraînement), il reste un redoutable compétiteur.

Hélas pour lui, AlphaStar l’a surclassé le 12 décembre, par 5 à 0.

Une semaine plus tard, c’est le Polonais Grzegorz « MaNa » Komincz qui a été défié. Entretemps, AlphaStar a bénéficié d’une nouvelle session d’entraînement. Une décision sage : contrairement à TLO, MaNa est un expert des Protoss — on le dit dans le top 10 des meilleurs Protoss au monde. Le classement des deux joueurs n’a rien à voir lorsqu’il s’agit de les comparer sur cette race.

Là encore, AlphaStar a écrasé MaNa 5 à 0.

MMR StarCraft AlphaStar

Comparaison du niveau des joueurs et des agents.

Source : DeepMind

Observation du jeu

Pour que les parties soient équilibrées, DeepMind avait établi certaines règles, que ce soit sur le temps de réaction (« AlphaStar réagit avec un délai entre l’observation et l’action de 350 millisecondes en moyenne ») que le nombre d’actions par minute (« AlphaStar avait un APM moyen d’environ 280, nettement inférieur à celui des joueurs professionnels »), afin d’approcher le comportement humain.

Cependant, DeepMind admet que les actions de l’IA « peuvent être plus précises », et donc probablement moins réalistes. C’est ce que les deux commentateurs mais aussi les deux joueurs ont relevé en faisant le débriefing des différents matchs, les uns jugeant la micro-gestion parfois surhumaine, les autres estimant qu’elle n’est pas envisageable tout en gérant sa base.

En outre, au cours des dix premières parties, AlphaStar avait une vision globale du jeu : l’IA était certes soumise au brouillard de guerre — c’est-à-dire les zones de la carte qui sont dissimulées lorsque le joueur n’a pas d’unité ou de bâtiment dans les environs –, mais elle n’était pas limitée par la taille de l’écran lui-même. Elle pouvait savoir ce qui se passait pour chacune de ses unités même sans avoir la caméra dessus.

« Pendant les matchs contre TLO et MaNa, AlphaStar interagissait directement avec le moteur de jeu StarCraft via son interface brute, ce qui signifie qu’il pouvait observer les attributs de ses propres unités visibles et de celles de son adversaire sur la carte directement, sans avoir à déplacer la caméra – jouant efficacement avec une vue zoomée du jeu », raconte ainsi la firme.

En clair, les humains doivent arbitrer en permanence où placer la caméra du jeu sur la carte. Cependant, DeepMind déclare que « l’analyse des parties d’AlphaStar suggère que l’IA gère un centre d’attention implicite. En moyenne, les agents ‘changent de contexte’ environ 30 fois par minute, comme MaNa ou TLO ». Bref, cet avantage serait à nuancer.

Cela étant, décision a été précise de développer une autre version d’AlphaStar dont la connaissance de ce qui se passe est limitée à ce qui apparaît effectivement à l’écran, de façon à ce que l’algorithme ait aussi à choisir où et quand déplacer la caméra. Et bien sûr, les actions que l’IA peut prendre sont limitées à la zone visible. Impossible de diriger une unité qui est hors champ.

Comparaison des deux versions d'AlphaStar

Comparaison des deux versions d'AlphaStar.

Source : DeepMind

Cette nouvelle version du système a bénéficié d’un entraînement similaire, mais sur une période raccourcie de sept jours. Il s’avère, selon les estimations de niveau de DeepMind, que cette déclinaison limitée à la caméra du jeu rivalise avec celle ayant accès aux données brutes. Elle serait donc aussi bien plus forte que TLO et MaNa. Du moins est-ce la théorie.

Mais lors du match d’exhibition organisé jeudi soir, MaNa a déjoué les prévisions. Le joueur polonais a battu l’IA, qualifiée de « prototype » par l’entreprise. Ce qui a, au passage, permis de sauver l’honneur des humains. Il reste toutefois à savoir si celui-ci restera sauf lorsque DeepMind développera une version de l’IA pleinement entraînée à fonctionner avec une interface limitée à la caméra.


Abonnez-vous gratuitement à Artificielles, notre newsletter sur l’IA, conçue par des IA, vérifiée par Numerama !