AlphaZero est un programme informatique développé par la société de recherche en intelligence artificielle DeepMind pour maîtriser les jeux de société que sont les échecs, le shogi et le go. Contrairement aux systèmes de jeu antérieurs, il a appris entièrement par auto-jeu, sans aucune connaissance humaine au-delà des règles du jeu. Le programme utilise un réseau neuronal combiné à une recherche arborescente de Monte-Carlo, une approche démontrée pour la première fois dans son prédécesseur AlphaGo Zero. La société a publié un article prépublié présentant AlphaZero le 5 décembre 2017, suivi d'une publication évaluée par les pairs dans la revue Science le 7 décembre 2018.
La méthode d'entraînement d'AlphaZero ne nécessitait ni livres d'ouvertures, ni tables de finales, ni heuristiques conçues par des humains. Au lieu de cela, il générait sa propre expérience en jouant contre lui-même des millions de fois, guidé par un algorithme d'apprentissage par renforcement. Cette approche lui a permis d'atteindre des performances surhumaines dans les trois jeux en quelques heures, malgré la recherche d'un nombre de positions bien inférieur par seconde par rapport aux moteurs traditionnels. DeepMind a décrit le style de jeu résultant comme inhabituel, certains coups paraissant contre-intuitifs aux observateurs humains.
Méthode d'entraînement
Le processus d'entraînement utilisait 5 000 unités de traitement tensoriel (TPU) de première génération pour générer des jeux d'auto-jeu et 64 TPU de deuxième génération pour mettre à jour les poids du réseau neuronal, le tout fonctionnant en parallèle. Le système en cours d'entraînement était périodiquement confronté à un programme de référence lors de courtes parties d'exhibition pour évaluer ses progrès. Contre le moteur d'échecs Stockfish, AlphaZero a dépassé les performances de référence après environ quatre heures d'entraînement ; contre le moteur de shogi Elmo, il a fallu environ deux heures ; contre la version de trois jours d'AlphaGo Zero, environ huit heures.
Le réseau neuronal était mis à jour en continu pendant l'entraînement. Contrairement à son prédécesseur système, AlphaZero n'utilisait pas les symétries du jeu pour augmenter ses données d'entraînement, et il intégrait la possibilité de parties nulles, absentes au go mais possibles aux échecs et au shogi. L'algorithme généralise l'approche antérieure d'AlphaGo Zero pour gérer ces parties nulles supplémentaires.
Résultats des matchs
Aux échecs, après neuf heures d'entraînement, AlphaZero a joué un match de 100 parties contre Stockfish 8 (champion du monde TCEC 2016), chaque camp disposant d'une minute par coup. Stockfish utilisait 64 threads et une taille de hachage de 1 Go, tandis qu'AlphaZero fonctionnait sur une seule machine avec quatre TPU. Le résultat était de 28 victoires, 0 défaite et 72 parties nulles. Dans une série de douze matchs de 100 parties commençant par des ouvertures humaines populaires, AlphaZero a gagné 290 parties, fait 886 nulles et perdu 24.
Au shogi, après deux heures d'entraînement, AlphaZero a vaincu le moteur Elmo (version du championnat du monde d'informatique de shogi 27, été 2017, avec YaneuraOu 4.73) en 100 parties, gagnant 90, perdant 8 et faisant 2 nulles. Au go, après 34 heures d'auto-apprentissage, AlphaZero a joué contre la version de trois jours d'AlphaGo Zero, gagnant 60 parties et en perdant 40.
Le nombre de positions évaluées était radicalement différent. AlphaZero recherchait environ 80 positions par seconde aux échecs et 40 000 au shogi, contre 70 millions pour Stockfish et 35 millions pour Elmo. Il compensait par la focalisation sélective de son réseau neuronal profond sur des variantes prometteuses.
Évaluation des performances
Les chercheurs de DeepMind ont déclaré que les algorithmes démontraient qu'une approche générique de apprentissage par renforcement pouvait atteindre des niveaux surhumains dans plusieurs jeux de société sans connaissances spécifiques au domaine au-delà des règles. Ils ont noté que les moteurs d'échecs de pointe recherchaient généralement des millions de positions en utilisant une expertise artisanale, tandis qu'AlphaZero en recherchait mille fois moins en quelques heures. Demis Hassabis de DeepMind, lui-même amateur d'échecs, a décrit le style d'AlphaZero comme étranger, faisant référence à des sacrifices contre-intuitifs comme offrir une dame et un fou pour des avantages positionnels.
Cependant, certains experts ont exprimé des réserves. Le grand maître Hikaru Nakamura et le développeur de Komodo, Larry Kaufman, ont suggéré que les résultats auraient pu être plus disputés si Stockfish avait utilisé une base de données d'ouvertures, car le moteur était optimisé pour ce scénario. Le développeur de Stockfish, Dario Romstad, a noté qu'il n'était pas optimisé pour un temps fixe rigide, et que la version utilisée était déjà obsolète au moment du match. De même, certains observateurs du shogi pensaient que la taille de hachage d'Elmo était trop faible, et que les paramètres d'abandon ou d'entrée pouvaient être inappropriés.
Héritage
DeepMind n'a jamais publié le code complet d'AlphaZero. La description algorithmique dans l'article de Science a cependant permis au public de reproduire des systèmes similaires. En 2019, DeepMind a publié une généralisation plus puissante appelée MuZero, qui a obtenu de bonnes performances sur les jeux Atari et les jeux de société sans qu'on lui apprenne les règles ou une représentation du jeu, montrant que l'idée centrale n'est pas limitée aux règles de jeu définies par les humains.
Les observateurs ont comparé les débuts d'AlphaZero à des jalons historiques dans le développement de l'ordinateur d'échecs. En 1997, Deep Blue est devenu le premier ordinateur à battre le champion du monde Garry Kasparov lors d'un match. AlphaZero représentait une frontière différente : au lieu d'utiliser des heuristiques spécialisées et axées sur la recherche de millions de positions, il a appris son propre code et surpassé par apprentissage automatique, où des réseaux neuronaux entraînés par auto-jeu dépassaient les performances des systèmes conçus par des humains.