Crédit :Hutsuliak Dmytro/Shutterstock
Il y a quelques années, le site Web d'échecs Chess.com a temporairement interdit le grand maître américain Hans Niemann pour avoir joué des mouvements d'échecs en ligne que le site soupçonnait de lui avoir été suggérés par un programme informatique. Il aurait auparavant interdit son mentor Maxim Dlugy.
Et à la Sinquefield Cup plus tôt ce mois-ci, le champion du monde Magnus Carlsen a démissionné sans commentaire après avoir disputé un mauvais match contre Niemann, 19 ans. Il a depuis déclaré que c'était parce qu'il pensait que Niemann avait continué à tricher récemment.
Un autre participant, le grand maître russe Ian Nepomniachtchi, a qualifié la performance de Niemann de "plus qu'impressionnante". Alors que Nieman a admis avoir parfois triché lors de jeux en ligne précédents, il a fermement nié avoir jamais triché lors d'un tournoi d'échecs en direct.
Mais comment Chess.com, le plus grand site d'échecs au monde, décide-t-il qu'un joueur a probablement triché ? Il ne peut pas montrer au monde le code qu'il utilise, sinon les tricheurs potentiels sauraient exactement comment éviter d'être détectés. Le site Web déclare:"Bien que des considérations juridiques et pratiques empêchent Chess.com de révéler l'ensemble complet des données, des mesures et du suivi utilisés pour évaluer les jeux dans notre outil de fair-play, nous pouvons dire qu'au cœur du système de Chess.com se trouve un modèle statistique qui évalue la probabilité qu'un joueur humain corresponde aux meilleurs choix d'un moteur et surpasse le jeu propre confirmé de certains des plus grands joueurs d'échecs de l'histoire."
Heureusement, la recherche peut faire la lumière sur l'approche que le site Web peut utiliser.
Humains contre IA
Lorsque la société d'intelligence artificielle DeepMind a développé le programme AlphaGo, qui pouvait jouer au jeu de stratégie Go, on lui a appris à prédire les mouvements qu'un humain ferait à partir d'une position donnée.
Prédire les mouvements humains est un problème d'apprentissage supervisé, le pain quotidien de l'apprentissage automatique. Compte tenu de nombreux exemples de positions de jeux humains (l'ensemble de données) et d'un exemple de mouvement humain à partir de chacune de ces positions (l'étiquette), les algorithmes d'apprentissage automatique peuvent être formés pour prédire les étiquettes à de nouveaux points de données. DeepMind a donc appris à son IA à estimer la probabilité qu'un humain fasse un mouvement donné à partir d'une position donnée.
AlphaGo a battu son rival humain Lee Sedol en 2017. L'un des mouvements célèbres de l'IA dans le jeu était Move 37. Comme l'a noté le chercheur principal David Silver dans le documentaire AlphaGo, "AlphaGo a déclaré qu'il y avait une probabilité de 1/10 000 que Move 37 aurait été joué par un joueur humain."
Donc, selon ce modèle d'apprentissage automatique des joueurs humains de Go, si vous voyiez une personne jouer à Move 37, ce serait la preuve qu'elle n'a pas eu l'idée elle-même. Mais bien sûr, ce ne serait pas une preuve. N'importe quel humain pourrait faites ce mouvement.
Pour devenir très sûr que quelqu'un triche à un jeu, vous devez examiner de nombreux mouvements. Par exemple, des chercheurs ont étudié comment de nombreux mouvements d'un joueur peuvent être analysés collectivement pour détecter des anomalies.
Chess.com utilise ouvertement l'apprentissage automatique pour prédire quels mouvements pourraient être effectués par un humain dans une position donnée. En fait, il propose différents modèles de joueurs d'échecs célèbres et vous pouvez réellement jouer contre eux. Vraisemblablement, des modèles similaires sont utilisés pour détecter la triche.
Une étude récente a suggéré qu'en plus de prédire la probabilité qu'un humain fasse un certain mouvement, il est également important de tenir compte de la qualité de ce mouvement. Cela correspond à la déclaration de Chess.com selon laquelle il évalue si les coups "surpassent… le jeu propre confirmé" des plus grands.
Mais comment mesurer quels mouvements sont meilleurs que d'autres ? En théorie, une position d'échecs est soit « gagnante » (vous pouvez garantir une victoire), « perdante » (l'autre joueur le peut) ou « nul » (aucun ne le peut), et un bon coup serait tout coup qui ne fait pas votre position pire. Mais de manière réaliste, bien que les ordinateurs soient bien meilleurs pour calculer et choisir les mouvements futurs que les humains, pour de nombreuses positions, ils ne peuvent même pas dire avec certitude si une position est gagnante, perdante ou nulle. Et ils ne pourraient certainement jamais le prouver - une preuve nécessiterait généralement trop de calculs, examinant chaque feuille d'un arbre de jeu exponentiel.
Ainsi, ce que les gens et les ordinateurs font, c'est utiliser des "heuristiques" (des suppositions instinctives) pour évaluer la "valeur" de différentes positions, en estimant quel joueur, selon eux, gagnera. Cela peut également être présenté comme un problème d'apprentissage automatique où l'ensemble de données est composé de nombreux postes au tableau et les étiquettes indiquent qui a gagné, ce qui entraîne l'algorithme à prédire qui gagnera à partir d'une position donnée.
En règle générale, les modèles d'apprentissage automatique utilisés à cette fin réfléchissent aux prochains mouvements probables, examinent les positions accessibles aux deux joueurs, puis utilisent le « intuition » de ces positions futures pour informer leur évaluation de la position actuelle.
Mais qui gagne à partir d'une position donnée dépend de la qualité des joueurs. Ainsi, l'évaluation d'un jeu particulier par le modèle dépendra de qui jouait aux jeux qui ont été intégrés à l'ensemble de données d'entraînement. En règle générale, lorsque les commentateurs d'échecs parlent de la "valeur objective" de différentes positions, ils veulent dire qui est susceptible de gagner à partir d'une position donnée lorsque les deux camps sont joués par les meilleures IA d'échecs disponibles. Mais cette mesure de valeur n'est pas toujours la plus utile lorsque l'on considère une position que les joueurs humains devront occuper à la fin. Il n'est donc pas clair exactement ce que Chess.com (ou nous) devrait considérer comme un "bon coup".
Si je trichais aux échecs et que je faisais quelques mouvements suggérés par un moteur d'échecs, cela ne m'aiderait peut-être même pas à gagner. Ces mouvements pourraient mettre en place une attaque brillante qui ne me viendrait jamais à l'esprit, donc je la gaspillerais à moins que je ne demande au moteur d'échecs de jouer le reste du jeu pour moi. (Lichess.org me dit que j'ai joué 3 049 parties de Blitz au moment où j'écris, et ma note ELO pas très bonne de 1632 signifie que vous pouvez vous attendre à ce que je rate de bonnes tactiques à gauche et à droite.)
Détecter la tricherie est difficile. Si vous jouez en ligne et que vous vous demandez si votre adversaire triche, vous ne pourrez vraiment pas le dire avec certitude, car vous n'avez pas vu des millions de jeux humains joués avec des styles radicalement différents. C'est un problème où les modèles d'apprentissage automatique formés avec d'énormes quantités de données ont un gros avantage. En fin de compte, ils peuvent être critiques pour l'intégrité continue des échecs.
Cet article est republié de The Conversation sous une licence Creative Commons. Lire l'article d'origine. La nouvelle IA Go-playing de Google apprend vite et s'est même battue