d

27 janv. 2019 - Scribble StarCraft 2

AlphaStar : l'IA qui met des clics et des claques

AlphaStar : l'IA qui met des clics et des claques

Ce jeudi 24 janvier, les équipes de DeepMind ont donné à voir les progrès réalisés sur leur IA, AlphaStar. Elle est ressortie de cette première bataille face aux humains sur le score de 10-1. Sans pour autant convaincre de sa réelle supériorité.

Voilà deux ans que le partenariat entre Blizzard et DeepMind a été scellé. Deux ans pendant lesquels beaucoup attendaient avec impatience de premiers résultats pour l’IA de la société britannique tombée dans les mains du géant Google. Et puis soudain, voilà qu’une annonce est prévue pour le 24 janvier, 19 heures. Aucun détail n’est vraiment donné, on ne sait trop à quoi s’attendre, le nom d’AlphaStar, est finalement lâché dans l’après-midi du 24 par Demis Hassabis, le fondateur de DeepMind.

19 heures pétantes. Le stream se lance. Artosis et Rotterdam apparaissent à l’écran, commencent à spéculer sur le déroulement de la soirée. Très vite, ils sont rejoints par LiquidTLO. Il sera le premier à affronter AlphaStar dans un meilleur des cinq manches en Protoss versus Protoss. On apprend alors que l’IA n’a été entraînée que sur la race d'Aiur, pour des raisons évidemment pratiques (Protoss OP).

À ce moment, personne ne sait à quoi s’attendre. D’un côté, TLO ne joue pas sa race principale, et les dernières nouvelles des travaux de DeepMind, à la BlizzCon, soit deux mois plus tôt (1 mois en réalité, les matchs ayant été joués à la mi-décembre) ne montrent rien de très probant. Pourtant, d’entrée de jeu, AlphaStar montre les crocs. Et vas-y que je sors trois probes pour attraper la probe de scouting de TLO, comme si elle craignait un canon rush. Ou surévaluait la menace ? Difficile à dire encore. Peu à peu, alors que la partie suit son cours, on sent l’IA en parfait contrôle. Sa macro-gestion est correcte, sa micro aux petits oignons, ses mouvements d’armées, bien que parfois étranges, sont très réactifs. Rapidement, TLO est débordé. AlphaStar prend la première manche, puis la seconde, et enfin toutes les autres.

De retour sur le plateau, David Silver, l'un des chercheurs de DeepMind, cache difficilement sa joie. Sourire aux lèvres, il explique voir dans cette performance le fruit de longs mois de travail. Mais la soirée ne s’arrête pas là. « Avec TLO, il y avait toujours le “on a gagné mais” » note de son côté un autre chercheur, Oriol Vinyals, dans une vidéo de présentation du second match, en référence au fait que l'Allemand ait joué en offrace. Après TLO, on apprend donc que MaNa s’est lui-aussi confronté à l’IA, toujours en PvP, mais cette fois-ci, c‘est sa race principale. Difficile donc de l’imaginer perdre sur des erreurs aussi grossières que celles commises par l’Allemand. D’autant plus que l’IA, si elle a fait montre d’une incroyable micro-gestion, a aussi montré certaines limites, tant au niveau de la macro-gestion que de la prise de décision.
 

 

Et pourtant, la déroute est totale. AlphaStar n’a que faire des immortels du Polonais, il lui règle son compte avec un mass stalkers micro-gérés sur plusieurs fronts. C’est encore un 5-0 net, mais pas sans bavures. Le contrôle des disrupteurs a été loin d’être parfait (tuant parfois ses propres unités) son entêtement à vouloir monter les rampes lui a certes permis de surprendre MaNa sur la première partie, mais elle s’est souvent retournée contre lui. Pour finir, la toute dernière partie, jouée et diffusée en direct, a révélé pour la première fois une faille béante dans le jeu de l’IA. MaNa a été malin et a su l’exploiter, encore et encore, pour retenir l’armée d’AlphaStar à la maison et défendre un simple prisme de transfert équipé de deux immortels. « On a bien vu qu’AlphaStar ne savait pas comment réagir face aux immortal drops de MaNa, faisant des va-et-vient avec ses stalkers plutôt que de faire un phoenix rapidement ou même simplement détacher 3 stalkers de son groupe » explique Florian Richoux, chercheur au Laboratoire des Sciences du Numérique de Nantes et concepteur de bots pour StarCraft, révélant selon lui une réelle incapacité d’adaptation.

Entraînement intensif

Des dizaines d’agents qui s’affrontent dans une arène virtuelle une à deux semaines durant pour n’en retenir que les tous meilleurs. Voilà le petit entraînement (l’équivalent de 200 ans d’entraînements pour nous autres humains) auquel s’est plié AlphaStar avant d’affronter TLO et MaNa. Ou les AlphaStar devrait-t-on plutôt dire, compte tenu du fait que DeepMind a envoyé dans chaque BO5, ses cinq meilleurs agents l’un après l’autre.

Très concrètement, l’entraînement d’AlphaStar est d’abord passé par une phase d’apprentissage par l’imitation (et donc supervisée) d’une durée de trois jours. « Nous avons soumis nos agents à une multitude de replays pour qu’ils comprennent les bases de jeu de StarCraft et voient comment l’humain réagit dans différentes situations pour ensuite l’imiter » explique un des ingénieurs. Ensuite, DeepMind a créé un tournoi virtuel baptisé « AlphaStar League » afin de se faire rencontrer les différents agents qui ont appris de l’humain et y ajouter des techniques d’apprentissage par renforcement. Au fur et à mesure des parties qui sont jouées entre les différents agents (chacun mobilisant 16 unités de traitement du Cloud de Google, soit une cinquantaine de CPU), les réseaux de neurones s’adaptent et se mettent constamment à jour. Au terme de ce processus d’une semaine (pour la seconde rencontre), et de deux semaines pour la première, l’équipe n’a gardé que les cinq meilleurs agents. Ceux-là même qui ont affronté TLO et MaNa.
 



 

À la question de savoir si le fait de ne jouer qu’un seul match-up (le PvP) sur une seule et même carte a été la condition du succès de AlphaStar, Florian Richoux, répond que « le point le plus important est qu'il ne s'agissait pas d'un bot qui jouait contre TLO et MaNa mais de 11 bots, pour 11 parties au total ». Or, « DeepMind n'a même pas prévenu TLO de ceci avant les matchs, c’est pourquoi nous l’avons vu tenter des stratégies en fonction des parties précédentes sans savoir qu'il ne jouait en fait pas contre la même IA ». Pour lui, AlphaStar a peut-être battu des joueurs pros, elle n’a pas « vaincu le jeu » comme elle l’a fait pour les échecs ou le jeu de Go. « Il faudra qu’une même IA gagne un Bo5 ou Bo7 contre un pro, dans plusieurs matchs-up, et pas 5 ou 7 fois sur la même map ».

Une prestation douce-amer ?

La prestation d’AlphaStar n’a apparemment laissé personne insensible. Certains, dont je tairai le nom, dénonçant le manque total d'inventivité et de stratégie dans le jeu de l’IA, qui, il est vrai, s’est bornée à s’appuyer sur sa principale force qu’est la micro-gestion. D'ailleurs, l'IA ne s'y est pas trompée, le graphique ci-dessous montre, au fil de son apprentissage, les unités qu'elle préfère produire. Pas folle la guêpe, plus ça va, et plus elle tend vers le mass stalkers et leur capacité d'outmicro grâce au blink. AlphaStar s'est tout de même montrée parfois audacieuse, par exemple lors de la cinquième manche face à MaNa, remportée en brisant la défense du polonais à l'aide d'un proxy immortel agrémenté de battery shields.


 

D’autres vantent les progrès réalisés par DeepMind en si peu de temps. C’est en partie le cas de Dave Churchill, l'organisateur des compétitions de bots sur StarCraft 1 qui a félicité sur Twitter les équipes de DeepMind tout en soulignant que « comme attendu, la force d’AlphaStar est très centrée sur la microgestion pour le moment, mais la macro a aussi été très bonne ». Dans un post un peu plus étoffé, il a toutefois insisté sur le fait que cette performance se cantonnait encore à une seule carte, dans un unique match-up, limitant de facto le nombre de possibilités et de paramètres à prendre en compte.

L'autre point de crispation pour bien des observateurs et notamment relevé par notre cher Imre, c'est celui des actions par minute (APM) de AlphaStar. Les équipes de DeepMind ont avancé une moyenne d'APM relativement basse pour leur IA, entre 200-300 APM, arguant qu'ils avaient mis un point d'honneur à ce que les capacités de leur programme ne soient pas hors d'atteinte pour un humain. Sans même parler de l’optimisation de chacune de ces APM au millimètre près par une machine, lui conférant obligatoirement un net avantage de micro, ce chiffre est tout simplement trompeur. Celui-ci étant une moyenne, les APM de l’IA en début de partie tournent entre 100 et 200 compte tenu du peu d'éléments à manipuler. En revanche dès qu'on progresse dans la partie et qu'un combat a lieu, elles peuvent rapidement culminer à plus de 800 voire 1500. Cela a notamment été le cas lors de la confrontation qui a marqué les esprits entre le mass blink stalkers de AlphaStar et les immortels de MaNa (game 5), tenus en échecs par la microgestion forcément supérieure de l’IA.

Néanmoins, pour Florian Richoux, la question des limitations imposées à l’IA (comme un plafond d'APM ou l'impossibilité de voir toute la map en simultané) sont un « non-problème ». « Le but n'est pas de faire une IA qui joue dans les mêmes conditions qu'un humain : ça n'existe pas et ça n'est de toute façon pas possible. Le bot n'a pas de clavier à gérer, ni de souris, ni de stress, de fatigue, etc. Limiter les APM d'un bot, donc les avantages d'une machine sur l'homme, ça serait comme limiter les avantages de l'homme sur la machine (pas d'intuition, pas d'expérience, ...) pour avoir un match "équitable". Ça n'a simplement pas de sens » nous explique le chercheur. 

 

Ressources et replays


Télécharger les replays. 
Lire la note de blog de DeepMind. Elle explique notamment les méthodes d'apprentissage et d'entraînement des agents, mais aussi l'évolution du choix des stratégies de l'IA (qui tend de plus en plus vers le mass stalkers).

Visionner l'intégralité de la démo : 

3 commentaires

Limarwinn
Limarwinn - 31/01/2019 13h46

Très bon article, mais du coup, sait-on ce que veulent en faire les gens de chez Blizzard concernant le jeu SC2 ? C'est juste des études comme ça pouvant aider à la conception de futurs jeux ou bien est-ce pour apporter des modes de jeu contre IA dans SC2 lui-même, ou pour préparer des IA de fous sur un SC3 ou WARCRAFT4 ??? Hmmm ?

Scribble
Scribble - 31/01/2019 16h54

Comme tous les terrains sur lesquels ils se sont aventurés, (échecs, jeu de Go, Starcraft...), ce ne sont justement que des terrains de jeu, pour développer et tester des algorithmes et modèles qui serviront à bien autre chose. Dans leur notre de blog, linkée à la fin de l'article, Deepmind évoque plusieurs pistes d'application, notamment en matière de prévision météo, de compréhension du langage naturel, de modélisations climatiques...

Scribble
Scribble - 31/01/2019 16h59

Dans une précédente interview, Florian Richoux m'expliquait que ce qui l'intéressait dans le développement de bots du Starcraft, c'était la recherche de "l'optimisation", notamment sous incertitude. Or dans la vraie vie, tout est toujours plongée dans un certain brouillard de guerre comme dans Starcraft, quelque soit le domaine (économie, finances...) on a jamais TOUTES les informations. Toute technique d'optimisation développée dans starcraft peut donc ensuite servir dans une la vie réelle.

Poster un commentaire

Vous devez être connecté pour pouvoir poster un commentaire.