Moteur d'échecs
Un moteur d'échecs ou module d'échecs désigne un programme informatique d'échecs.
Présentation
Un moteur d'échecs contient le code informatique, l’algorithme, qui calcule le meilleur coup dans une position donnée. Ces programmes sont différents entre eux, ont un style de jeu paramétrable, un nom et des systèmes d’évaluations spécifiques, en bref ils ont une "personnalité". Il en existe de tout niveau. Ils peuvent être commerciaux, open source ou libres[1].
Il faut distinguer l'interface graphique du moteur d'échecs. Cette interface utilisateur (ou chess GUI) est le programme qui va accueillir, faire fonctionner ces moteurs, gérer l'environnement visible par l'utilisateur (échiquier, information issus du calcul des modules, évaluation de la position, utilisation des tablebases, profondeur de la recherche, animation des variantes, etc.). Ces interfaces permettent aussi aux moteurs de se rencontrer entre eux lors de tournois. Un autre avantage est que les programmeurs peuvent se concentrer sur les performances de leur moteur sans devoir gérer la représentation visuelle de l'échiquier. Ces interfaces peuvent être XBoard/WinBoard, Arena, ou Chessbase (commercial).
Enfin le protocole est une norme commune nécessaire pour faire dialoguer entre eux les moteurs et l'interface graphique. Actuellement, 3 types de protocoles dominent les modules d’échecs :
- Protocole UCI (Universal Chess Interface) est le plus répandu de tous (Arena, Rybka Aquarium, ChessGui, José Chess, etc.)
- Protocole Winboard, le premier interface libre (GnuChess, Crafty)
- Protocoles commerciaux (Fritz, Junior, Shredder, Hiarcs, etc. avec une extension .eng ou .exe du moteur)
Principes généraux
Compte tenu du nombre astronomique de parties d'échecs possibles (10120), et donc de la probable impossibilité de les expliciter toutes, deux voies, dans les années 60-70, se sont dessinées pour la conduite d'une partie d'échecs : les partisans de la « force brute » contre ceux de l’intelligence artificielle. Les tenants de cette dernière, conduit par le chercheur français Jacques Pitrat préconisaient le développement de systèmes experts capables de reproduire les raisonnements humains. En pratique, les progrès fulgurants des programmes basés sur la « force brute » ont fait disparaître cette approche et tous les moteurs actuels utilisent la voie du calcul brut. Ainsi le principe de base des modules est de calculer tous les coups possibles et leurs conséquences à des profondeurs toujours plus grandes.
Plus exactement, au lieu de calculer toutes les variantes possibles, les programmes éliminent les positions jugées moins favorables par l'expertise des programmeurs alliés aux champions d'échecs. Avec le temps, ces méthodes heuristiques prennent en compte de plus en plus de paramètres augmentant le niveau des moteurs[2].
Palmarès
En 2015, le Thoresen Chess Engines Competition (aujourd'hui Top Chess Engine Championship, ou TCEC, tournoi principal des moteurs d'échecs)[3], indiquait que les trois meilleurs moteurs étaient Komodo, puis Stockfish et enfin Houdini[4]. Lors de la 20e saison du TCEC, déroulée entre et , Stockfish a remporté la compétition contre LCZero[5].
Références
- « Les moteurs d’échecs », sur Club d’Echecs Castelsarrasin-Moissac (consulté le )
- « Les échecs électroniques : histoire d’une confrontation entre l’humain et la machine », sur Interstices (consulté le )
- (en) « The Real Kings of Chess Are Computers », sur wsj.com, (consulté le )
- (en) « Komodo Is Computer Chess Champion Again », sur i-programmer.info, (consulté le )
- « You are being redirected... », sur www.panaynews.net (consulté le )
Voir aussi
Articles connexes
Liens externes
- (en) Computer Chess Rating Lists 40/40 un comparateur de logiciels d'échecs basé sur des parties jouées entre eux.
- Le fou numérique, le site de référence francophone sur les moteurs d'échecs
- Portail de l’informatique
- Portail des échecs
- Portail du jeu vidéo