Le 11 novembre, le Norvégien Magnus Carlsen défendra son championnat du monde d'échecs contre le Russe Sergey Karjakin. Le championnat unifié reviendra à New York et sur le sol américain pour la première fois depuis 1990, lorsque deux légendes des échecs, Kasparov et Karpov, se sont rencontrés pour la dernière fois lors d'un match de championnat du monde d'échecs. Depuis lors, la popularité des échecs aux États-Unis a lentement augmenté, tout comme la force de ses joueurs. Il y a à peine deux mois, l'équipe masculine des États-Unis a remporté la 42e Olympiade d'échecs pour la première fois en 40 ans. Ils sont désormais menés par les joueurs du Top 10 Caruana, So et Nakamura.
Néanmoins, le champion du monde Magnus Carlsen domine les échecs depuis 5 ans et est à juste titre en mesure de défendre son championnat du monde. En préparation de tournois importants comme le match de championnat du monde, les grands maîtres engagent presque toujours une équipe de « seconds » (d'autres grands maîtres) pour les aider dans leur préparation. Leur tâche principale est d'analyser les mouvements de la phase d'ouverture du jeu afin de maximiser le territoire cartographié, si vous voulez, de leur joueur. L’un des outils les plus importants qu’ils utilisent dans cette analyse est le moteur informatique. Le moteur informatique est un logiciel qui évalue objectivement toutes les positions aux échecs.
Les grands maîtres d’échecs entretiennent une relation d’amour-haine avec les moteurs d’échecs informatiques. Bien qu’il soit devenu un outil essentiel et inestimable pour l’entraînement et la préparation, nombreux sont ceux qui déplorent la perte de créativité due à la cartographie détaillée des séquences d’ouverture connue sous le nom de livre d’ouverture. Les joueurs prennent moins de risques lors des ouvertures car un adversaire bien préparé exposera facilement des idées créatives mais malsaines. La capacité des grands maîtres à mémoriser les milliers de variations d'un livre d'ouverture devient alors un facteur limitant. Certains grands maîtres, comme Carlsen, jouent intentionnellement très tôt des mouvements moins analysés mais aussi moins optimaux pour pouvoir « simplement jouer aux échecs » au lieu de mettre à l'épreuve les capacités de préparation et de mémorisation de l'adversaire.
Aujourd'hui, les grands maîtres et les amateurs utilisent les moteurs d'échecs pour l'entraînement et l'analyse. Il existe de nombreux moteurs d'échecs différents (certains payants, d'autres open source) qui font tous essentiellement la même chose : évaluer une position d'échecs. Lorsque vous jouez contre un moteur d’échecs, pour la plupart des joueurs débutants à intermédiaires, la « force » du moteur n’est pas importante. Un moteur fonctionnant sur un iPhone peut facilement battre la plupart des joueurs amateurs. Il faudrait réduire artificiellement la puissance du moteur pour obtenir un jeu compétitif. Nous sommes arrivés au point où les moteurs d’échecs peuvent battre n’importe quel humain dans une partie avec des « contrôles de temps classiques » (90 minutes pour les 40 premiers coups). Les meilleurs moteurs d'échecs ont des scores Elo de 3200 2900+, tandis que la note la plus élevée obtenue par un joueur humain est d'un peu moins de XNUMX XNUMX. Il n'est donc plus intéressant pour les humains de rivaliser avec des moteurs d'échecs. Au lieu de cela, il existe désormais des ligues qui proposent uniquement des moteurs d'échecs, dans lesquelles ils s'affrontent dans des conditions fixes.

COMMENT CA MARCHE
Je ne suis pas un expert en moteurs d'échecs, voici donc un aperçu de très haut niveau du fonctionnement des moteurs d'échecs.
Il existe trois étapes distinctes dans une partie d'échecs qui peuvent être gérées différemment par les moteurs d'échecs. L'ouverture utilise un livre d'ouverture, une base de données de lignes de coups prédéfinies. Une fois que le moteur est « hors livre », il utilisera ses capacités d’évaluation et de recherche arborescente pour trouver ses meilleurs mouvements. Enfin, dans les positions avec peu de pièces sur le plateau, un moteur peut utiliser un base de table de fin de partie qui stocke tous les coups gagnants pour une position donnée sur le tableau.
La partie la plus importante d'un moteur d'échecs est sa capacité à évaluer une position statique de la manière la plus efficace possible. Il utilise cette évaluation en conjonction avec une recherche arborescente pour trouver le ou les meilleurs mouvements possibles dans la position actuelle. Il peut stocker les positions évaluées dans une table de hachage afin de ne pas avoir à recalculer une position donnée plus d'une fois. En théorie, plus le moteur peut rechercher profondément dans l'arbre, plus son évaluation de la position actuelle et sa capacité à prédire le meilleur mouvement sont précises.
Quels algorithmes spécifiques dans les moteurs font un meilleur moteur d'échecs est sujet à débat. En général, pouvoir rechercher un arbre plus rapidement n'est pas utile si votre évaluation statique est inexacte. Pour cette raison, vous devez tester les moteurs par rapport à d’autres moteurs ou à différentes versions de moteurs pour vous assurer que les améliorations incrémentielles produisent l’effet souhaité. Il existe également des compétitions qui opposent les moteurs les uns aux autres. Le TCEC fait partie de ces compétitions. Ces compétitions accélèrent le développement de nouvelles techniques d'évaluation dans les moteurs d'échecs.
En général, la recherche arborescente est une manière assez brutale d'évaluer une position, même s'il existe de nombreuses théories complexes derrière l'optimisation de ce type d'algorithme. La plupart des moteurs d’échecs d’aujourd’hui sont donc des outils « stupides ». Vous lui donnez une position et il l'évalue. Lorsque les grands maîtres l'utilisent pour la préparation, il y a toujours un humain dans la boucle pour indiquer au moteur quelles positions il doit évaluer et lui dire quand il doit arrêter d'évaluer. Une prochaine étape dans le développement des moteurs d’échecs est l’inclusion de l’intelligence artificielle (IA). Comme nous l'avons vu dans AlphaGo contre Lee Sedol, l’inclusion de l’IA dans les moteurs de jeux de société augmente considérablement sa force et son utilité. L'IA permettra aux joueurs d'utiliser des moteurs à des fins spécifiques. Par exemple, nous pouvons étudier comment un adversaire spécifique réagit à certaines positions, quelles sont ses tendances et générer une stratégie spécifiquement pour cet adversaire en alimentant le moteur de tous les jeux auxquels l'adversaire a déjà joué. À un niveau élevé, nous pouvons apprendre des modèles de positions et les corréler aux résultats des jeux compte tenu de la force de chaque joueur. Avec l'inclusion de ces nouvelles technologies et la puissance accrue des moteurs, il ne fait aucun doute que le paysage des échecs compétitifs va changer.
CONSIDÉRATIONS MATÉRIELLES
Les moteurs les plus puissants d'aujourd'hui ne parallélisent pas bien, voire pas du tout, sur plusieurs nœuds en raison de l'état actuel des algorithmes de recherche d'arborescence parallèle. Certaines tentatives ont été faites pour paralléliser sur plusieurs nœuds à l'aide d'algorithmes de processus distribués, mais ces versions ne sont pas largement utilisées dans la communauté des échecs. Ainsi, l’approche actuelle consisterait à analyser différentes positions sur différentes instances du moteur d’échecs en utilisant un humain dans la boucle. La limitation à un seul nœud de nombreux moteurs d'échecs fait que les grandes machines SMP multicœurs peuvent largement surpasser, par exemple, un certain nombre d'ordinateurs portables connectés en réseau.
Avec les limitations des moteurs d'échecs à un seul nœud, les clusters peuvent toujours être utilisés pour effectuer de nombreuses évaluations en parallèle à des fins d'analyse. Les clusters peuvent également être utilisés pour développer un logiciel de moteur d'échecs. Simuler de nombreux jeux ou positions est l'un des seuls moyens de garantir que les modifications apportées au code moteur le rendent réellement plus fort.
COMMENT FAIRE FONCTIONNER UN MOTEUR D'ÉCHECS SUR RESCALE
Rescale fournit actuellement un cadre pour exécuter les moteurs d'échecs UCI. Il s'agit d'une configuration de moteur à emporter. Si vous ne fournissez pas de moteur d'échecs, il exécutera Stockfish 7 par défaut.

Une fois que vous lancez un travail avec le moteur d'échecs, il diffusera et écoutera sur le port 30000. Vous devrez mettre en place un tunnel ssh pour transférer un port local vers le port 30000 du nœud d'analyse. Voir la vidéo ci-dessous pour un aperçu complet de la façon d'exécuter Stockfish sur Rescale avec le client Scid :
Vous pouvez exécuter n’importe quel moteur UCI. Assurez-vous de nommer l'exécutable du moteur « moteur » et de le télécharger en tant que fichier d'entrée. Rescale utilisera automatiquement le moteur téléchargé :
Vous pouvez même faire fonctionner 2 moteurs l'un contre l'autre. Si vous vouliez courir, disons, Komodo contre Stockfish. Vous démarreriez deux tâches sur Rescale, chacune exécutant un moteur différent. Assurez-vous simplement de transférer un port local différent vers votre deuxième moteur :
Les composants clés de la liaison de votre client UCI au moteur exécuté sur Rescale sont votre Tunnel SSH et votre connexion brute au moteur en utilisant soit netcat (nc) sous Linux/MacOS, soit plink.exe sous Windows.
ARMCHAIR CHESS QBLa transmission de parties en direct avec « évaluation en direct » sur des sites tels que Base d'échecs or Bombe d'échecs permet à chaque passionné d'échecs d'être un quarterback en fauteuil lors de tournois tels que le prochain championnat du monde. Cette année, allez plus loin et effectuez l'analyse vous-même à l'aide des moteurs d'échecs sur Rescale.
