
Par Tommy Thompson
Expert principal en recherche en IA et jeux
YouTube @TableFlipGames
Introduction à HyperAI
Les humains ont finalement battu l'IA dans DOTA2.
Aujourd'hui, la phase à élimination directe du Ti8 (The International DOTA2 Championships), le plus grand événement DOTA2 au monde, est entrée dans sa troisième journée. Malheureusement, l'équipe chinoise VG a été éliminée. L'équipe OpenAI Ivor vs. Pain qui a suivi est devenue un moment fort. Contrairement à la dernière fois où OpenAI a été vaincu par Dendi, cette fois, OpenAI Ivor a fini par perdre lors du premier match, et l'équipe humaine a semblé voir à nouveau un peu d'espoir.
Mais en fait,OpenAILors de l'entraînement, ils utilisent généralement "StarCraft" produit par Blizzard, qui a toujours été un classique dans le cœur de nombreux joueurs et son statut n'est pas inférieur à celui de "World of Warcraft".
En tant que jeu de stratégie en temps réel, il s'appuie sur des mécanismes de jeu tels que la collaboration multiservices et la planification de macro-stratégies pour générer d'innombrables possibilités dans le même jeu, ce qui est très utile pour former la capacité de prise de décision de l'IA et l'efficacité de l'algorithme dans des scénarios incertains. Aujourd’hui, ce jeu est devenu un terrain d’essai d’IA pour des entreprises technologiques renommées telles que Google et Microsoft.
Jeux de stratégie en temps réel : les meilleurs jeux pour entraîner l'IA
Les jeux de stratégie en temps réel (RTS) sont un type de jeu de stratégie. Contrairement aux jeux au tour par tour, ce type de jeu peut être joué en temps réel. Les joueurs agissent généralement en tant que décideurs dans le jeu et doivent effectuer des opérations macro telles que le déploiement de troupes et la formulation de stratégies. Outre « StarCraft », les jeux en temps réel les plus courants incluent « Warcraft », « Red Alert », etc.
Ce type de jeu dispose généralement d'un mécanisme de brouillard, ce qui signifie que tous les joueurs ont une vision limitée et ne peuvent voir que la scène qui les entoure. Les joueurs doivent collecter des ressources en explorant le monde pour construire des bases et créer des arbres technologiques (comme la synthèse d'armes à travers divers matériaux, etc.). Ce n'est qu'en détruisant avec succès les fortifications ennemies et en éliminant les ennemis, ou en résistant à toutes les attaques, qu'ils peuvent gagner.
Au cours du jeu, la manière d'allouer raisonnablement les ressources, de formuler des plans d'attaque et de défense et le degré de compréhension de la carte deviendront tous les facteurs clés affectant l'issue de la bataille.
Cela oblige les joueurs non seulement à explorer constamment le monde inconnu tout en jouant au jeu, mais également à toujours observer l'état de la bataille et à formuler des stratégies offensives et défensives. De plus, l'espace de recherche pour ce type de jeu est énorme, et il peut y avoir d'innombrables possibilités dans un jeu. Par conséquent, les jeux RTS sont très adaptés pour entraîner la capacité de prise de décision de l'IA dans des scénarios incertains et tester l'efficacité des algorithmes d'IA.
La formation de l'IA commence par la conquête de StarCraft
Parmi tous les jeux RTS, « StarCraft » est sans aucun doute le meilleur choix.
Ce jeu est bien connu et compte un grand nombre de joueurs, ce qui peut fournir une grande quantité de données sur les joueurs humains nécessaires à la formation de l'IA. De plus, ce jeu est très complexe et peut tester efficacement l’efficacité algorithmique du modèle d’IA. C'est pourquoi, dès le début, des chercheurs espèrent former des modèles d'IA grâce à « StarCraft ».
En tant que jeu joué avec des informations incomplètes, la plage de cartes 128 x 128 de « StarCraft » peut créer un espace de recherche énorme. Actuellement, l'espace de recherche pour Go est d'environ 10170, et l'espace de recherche pour StarCraft peut atteindre 101685. Il permet également la création jusqu'à 400 unités militaires. Chaque type d'unité militaire possède des attributs différents, ce qui peut créer d'innombrables possibilités dans le jeu. L’IA doit donc exécuter davantage d’algorithmes pour y faire face.
StarCraft 2017 Remasterisé
De plus, les joueurs de différents camps du jeu peuvent se rencontrer à tout moment, ce qui oblige l'IA à réagir en quelques millisecondes. Cela nécessite que l’IA ait la capacité de mémoriser et d’analyser les informations en temps réel, de pouvoir intégrer toutes les rencontres aléatoires ou situations détectées et d’ajuster en permanence les stratégies de jeu. De plus, en tant que scène virtuelle, le coût des essais et erreurs de formation est très faible. Ces facteurs font de StarCraft un endroit idéal pour la formation de l’IA.
Comment l’IA apprend-elle ?
ORTS :
Une plateforme de combat RTS conçue spécifiquement pour la recherche en IA
ORTS signifie Open Real Time Strategy, qui est une plate-forme de jeu de stratégie en temps réel avec une API RTS ouverte. Il a été développé en 2003 par Michael Buro, professeur d'informatique à l'Université de l'Alberta au Canada, spécifiquement pour former des modèles d'IA sur des jeux RTS.
Cette plate-forme de jeu RTS 3D équipée de l'API OpenGL peut imiter la plupart des jeux de stratégie en temps réel du marché et peut également traiter des graphiques 3D. Les protocoles de communication et le code source d'ORTS sont tous ouverts au public. Les utilisateurs peuvent accéder gratuitement à un grand nombre de cartes, de modèles, de données militaires, etc., et créer à distance des contrôleurs d'IA pour former des modèles d'IA.
La plateforme Open Real-Time Strategy Game (ORTS) peut être consultée sur GitHubCommande
Obtenez le lien :https://github.com/benoit-dumas/OpenRTS
ORTS crée les conditions permettant aux développeurs de créer des contrôleurs d'IA dans des jeux de stratégie en temps réel, mais il ne peut que reproduire le mécanisme de fonctionnement des jeux RTS existants et ne peut toujours pas être directement connecté aux jeux natifs. Étant donné qu'il y a si peu de joueurs humains impliqués, ORTS n'a que des joueurs IA la plupart du temps.
Finalement, l'histoire a pris une tournure positive en 2009. ORTS a conclu un accord avec Blizzard et a publié une API, BWAPI (l'API officielle de "StarCraft: Brood War"), lors de la dernière compétition d'IA RTS organisée par ORTS. Il s'agissait également de la première API d'IA externe de la série « StarCraft ».
BWAPI :
Vous pouvez créer des personnages IA directement dans « StarCraft »
BWAPI est un framework C++ open source, ce qui signifie que tous les développeurs peuvent former leurs propres modèles d'IA dans « StarCraft ». BWAPI peut fournir aux modèles d'IA des données de jeu de joueurs humains, ainsi que des informations telles que l'état actuel du jeu, les types de troupes disponibles et l'état de l'arbre technologique.
Au combat, afin d'empêcher les joueurs IA de tricher, le système stipule que ce n'est que lorsque le joueur ennemi n'est pas bloqué par le brouillard et se trouve dans le champ de vision du modèle IA que la position, les attributs et d'autres informations de l'adversaire peuvent être obtenus.
Cependant, l’IA peut effectuer plus d’actions qu’un joueur humain dans le même cadre donné. Par conséquent, vous pouvez rencontrer des comportements étranges pendant le jeu, comme des soldats terrestres marchant sur les murs et des bâtiments glissant.
Bien que BWAPI présente encore des défauts dans son application réelle, il est indéniable qu'il a réussi à concrétiser l'idée de former des modèles d'IA dans « StarCraft » et à favoriser le développement de l'IA. Il a également jeté les bases du concours « StarCraft » organisé plus tard par l'AIIDE (Artificial Intelligence and Interactive Digital Entertainment Conference).
AIDE :
Permettez à davantage de personnes de participer au concours d'IA « StarCraft »
En 2010, AIIDE, l'une des plus grandes conférences de recherche sur l'IA de jeu au monde à l'époque, a organisé le premier « StarCraft AI Championship » auquel seule l'IA a participé. La compétition est divisée en 4 jeux au total, chacun avec un objectif différent, utilisé pour démontrer les performances des modèles d'IA dans différents scénarios de combat réels.
-
Les premier et deuxième jeux se concentrent sur la gestion d’unités militaires sur un terrain complexe ;
-
Le troisième jeu utilise un mode zone sans brouillard avec une vision complète, mais les armes de haut niveau sont interdites ;
-
Le quatrième jeu est une confrontation régulière, et vous pouvez utiliser des soldats avancés même s'il y a du brouillard ;
La compétition a été un énorme succès, avec un total de 26 équipes d'IA participantes, dont 17 ont terminé l'intégralité de la compétition. Le premier championnat a été remporté par le joueur Zerg AI Overmind, développé par une équipe de recherche de l'Université de Californie.
Il convient de mentionner que le développeur d'Overmind, l'actuel chercheur scientifique de Google DeepMind, Oriol Vinyals, était autrefois le champion espagnol de « StarCraft ». Bien qu'Overmind ait remporté la compétition AIIDE, il a eu du mal à vaincre le joueur humain Oriol Vinyals.
En 2011, alors que le nombre de participants augmentait, afin de garantir l'équité de la compétition, AIIDE a demandé aux acteurs de l'IA de rendre leur code source public, et toutes les compétitions seraient menées sur des serveurs basés sur l'architecture C/S (modèle client/serveur).
Lors du deuxième « StarCraft AI Competition » organisé cette année, SkyNet du Royaume-Uni a remporté le championnat avec une stratégie axée sur la défense précoce et les charges périodiques. Ce joueur d'IA a été développé par l'ingénieur britannique Andrew Smith seul, prouvant la faisabilité des algorithmes d'IA dans la formulation de stratégies.
En 2012, la compétition AIIDE avait atteint le stockage permanent des enregistrements de jeu, ce qui signifiait que l'IA pouvait apprendre en regardant les jeux précédents. Aujourd'hui, AIIDE continue d'organiser le concours d'IA « StarCraft », dans l'espoir d'encourager davantage de personnes à participer au développement de modèles d'IA « StarCraft » pour promouvoir le développement de l'IA.
Lorsque l'AIIDE a organisé sa deuxième compétition en 2011, une autre compétition d'IA « StarCraft » spécifiquement destinée aux joueurs d'IA amateurs tels que les étudiants a également commencé discrètement.
SSCAIT :
Conçu pour les étudiants et les joueurs amateurs
SSCAIT (StarCraft Student AI Competition) a été fondé en 2011 par Michal Certicky, un docteur slovaque en philosophie. Il s'adresse principalement aux étudiants, aux étudiants diplômés et à tous les acteurs de la société intéressés par la compétition StarCraft AI.
Grâce à BWAPI, presque tout le monde peut développer son propre contrôleur d’IA interstellaire.
SSCAIT est plus ouvert que AIIDE, le format de compétition a également changé, et les matchs d'entraînement et la compétition principale peuvent être regardés en direct sur Twitch. Le jeu adopte le combat rapproché 1 contre 1. Lorsque les bâtiments d'un camp sont complètement détruits ou que le programme plante et est incapable de prendre une décision, l'équipe sera éliminée.
Même si l'IA continue de s'améliorer dans la compétition « StarCraft » et obtient de meilleurs résultats que les humains dans de nombreux autres jeux, à l'heure actuelle, les humains peuvent toujours battre l'IA dans la bataille homme-machine « StarCraft ».
Dans la bataille homme-machine, les humains ont toujours un léger avantage
AIIDE a déjà organisé un match entre des joueurs IA et humains, avec les trois meilleurs joueurs de la compétition IA « StarCraft » 2015 face au joueur professionnel russe « StarCraft » Djem5, mais aucun d'eux n'a gagné.
En 2017, l'Université Sejong de Séoul, en Corée du Sud, a également organisé une compétition homme-machine, au cours de laquelle quatre joueurs d'IA ont affronté Song Byung Gu, un joueur professionnel coréen de « StarCraft » et l'un des joueurs professionnels les plus forts au monde.
Les quatre joueurs d'IA étaient MJ Bot, ZZZKBot et tscmoo de l'Université de Sejong et CherryPi de Facebook AI Lab. Les quatre joueurs IA ont été vaincus en 27 minutes (le plus rapide a été de quatre minutes et demie).
C'est pourquoi, après avoir créé Alpha Go, l'équipe DeepMind du Google AI Lab s'est tournée vers « StarCraft », dans l'espoir de vaincre à nouveau les humains.
Google DeepMind lance l'API officielle de StarCraft 2
En août 2017, DeepMind a officiellement annoncé son partenariat avec Blizzard pour lancer conjointement l'API IA officielle pour « StarCraft II » - SC2LE (traduit par : StarCraft 2 AI Research Environment).
Il s'agit d'un ensemble d'outils conçu pour que les développeurs étudient l'IA, mais il ne fonctionne qu'avec « StarCraft II ». Tout en conservant de nombreuses fonctionnalités BWAPI, certaines nouvelles fonctionnalités ont été ajoutées :
-
Vous pouvez utiliser le langage Python pour créer des modèles d’IA dans le jeu ;
-
Vous pouvez regarder les rediffusions des matchs ;
-
La progression du jeu peut être accélérée (très utile pour entraîner l’IA) ;
-
Des cartes personnalisées peuvent être créées ;
-
Sept mini-jeux développés par DeepMind ont été ajoutés pour les tests fonctionnels des modèles d'IA ;
-
Plus de données de jeu de joueurs humains peuvent être fournies au modèle d'IA.

SC2LE Fonctionnalités du jeu capturées
SC2LE est divisé en deux ensembles différents, l'un similaire à BWAPI, qui peut accéder à des informations spécifiques dans un cadre donné. L'autre est spécialement préparé pour les algorithmes d'IA tels que l'apprentissage automatique, qui peuvent analyser les informations obtenues dans le jeu et faciliter l'accès de l'algorithme à ces données.
Bien que SC2LE puisse permettre à davantage de personnes de participer à la création de modèles de jeux d'IA, il est toujours difficile pour l'IA de vaincre les humains dans des jeux de stratégie en temps réel tels que « StarCraft ». Cependant, avec la participation d’entreprises technologiques de renommée internationale telles que Google, Microsoft et Facebook, tout cela pourrait être inversé.
En juin de cette année, OpenAI, une organisation à but non lucratif d'IA cofondée par Elon Musk et de nombreux autres magnats de la Silicon Valley, a battu des joueurs humains professionnels dans le jeu de combat multijoueur en temps réel « DOTA 2 » et a battu des joueurs semi-professionnels en août.
« DOTA » a été développé sur la base du moteur de jeu de « World of Warcraft III ». Comme « StarCraft », « World of Warcraft » est également un jeu RTS développé par Blizzard. Bien que « DOTA 2 » ait été séparé de ce moteur, certains mécanismes de jeu sont toujours conservés.
Bien que les mécanismes de jeu de « World of Warcraft » soient plus complexes et que la gamme de cartes soit plus grande que celle de « DOTA 2 », la victoire de l'IA dans « DOTA 2 » prouve que l'IA a fait un autre pas en avant dans les jeux de stratégie en temps réel. À l’avenir, à mesure que de plus en plus de grandes entreprises technologiques se joindront à elles, l’IA pourrait créer de nouveaux mécanismes de jeu, transformant les jeux compétitifs existants en batailles entre les humains et l’IA.
Venez jouer une partie et réviser les points de connaissances d'aujourd'hui