Clause de non-responsabilité : je sais que très peu sur les échecs : en gros, comment placer des pièces sur l'échiquier, comment les déplacer et comment perdre (je suis un pro en la matière). Je n'ai aucune idée de mon classement Elo, mais je suppose qu'il est de l'ordre de deux chiffres. Je vous prie donc de bien vouloir excuser les éventuelles maladresses que je pourrais commettre dans ma question.
L'une des rares choses que j'ai cru savoir, c'est qu'aujourd'hui les ordinateurs sont plus forts que les humains aux échecs. Des programmes tels que Stockfish , Komodo y Leela Chess Zero devrait être capable de battre régulièrement des Grands Maîtres, et même de donner du fil à retordre au champion du monde. Cependant, une connaissance qui est un bien meilleur joueur que moi, m'a dit que vous pouvez faire match nul contre n'importe quel programme d'échecs informatique en utilisant simplement la triple répétition. En d'autres termes, vous jouez votre coup, le programme d'échecs joue le sien, vous revenez en arrière, le programme d'échecs fait de même ( ??), vous répétez trois fois et voilà, vous obtenez votre match nul. Il a dit qu'il avait utilisé cette stratégie contre des moteurs d'échecs avec lesquels on peut jouer sur Internet, et que cela fonctionnait.
Cela semble incroyable :
-
Même moi, je pourrais écrire un programme qui ne tombe pas dans un tel piège. Il suffit de comparer le coup actuel avec le précédent : s'ils sont identiques, on augmente un compteur, sinon on le met à 0. Lorsque le compteur arrive à 2, on supprime ce coup de la liste des coups candidats. En d'autres termes, il ne faut jamais effectuer trois fois le même coup. Bien sûr, il peut y avoir des cas où exécuter le même coup trois fois pourrait être la meilleure stratégie : dans ce cas, il suffit d'offrir un match nul à l'adversaire humain. Mais en moyenne, il suffit d'éviter de jouer le même coup trois fois de suite.
-
Les différents moteurs d'échecs utilisent également des algorithmes très différents (par exemple, Leela Chess Zero est basé sur des réseaux neuronaux, RL et MCTS, tandis que Stockfish et Komodo utilisent d'autres approches, y compris des bases de données d'ouvertures, une liste d'heuristiques codées en dur, etc.), de sorte qu'il semble très improbable qu'une approche unique puisse exister qui puisse forcer un match nul contre tous les moteurs d'échecs existants.
-
Le prochain coup d'un moteur d'échecs ne dépend évidemment pas uniquement de mon coup actuel (celui de l'adversaire humain). Je suppose qu'il dépend de l'historique complet des coups de la partie en cours, ainsi que de l'estimation, faite par le moteur d'échecs, des coups qui ont le plus de chances de mener à la victoire à un stade ultérieur de la partie. Pourquoi mon coup actuel serait-il si important pour le moteur d'échecs qu'il répéterait le même coup simplement parce que je le fais ?
J'en conclus qu'il s'agit d'une "fake news", ou tout au plus d'un bug stupide dans les moteurs d'échecs contre lesquels cette connaissance a joué (peut-être pas un bug majeur, parce que les gens qui jouent aux échecs sur Internet ne sont probablement pas intéressés par une astuce bon marché pour faire match nul contre l'ordinateur, mais c'est tout de même un bug). Mais ce n'est certainement pas quelque chose qui se produit lorsque l'on joue contre les principaux moteurs d'échecs, tels que les trois que j'ai mentionnés initialement. Ai-je raison ?