Menu principal :
The King, moteur de Chessmaster
Le moteur The King a été développé par le programmeur néerlandais Johan de Koning, à la fin des années 80. La première version a été publiée en 1987. Écrit en C, très fort pour l'époque, doté d'un style de jeu vif et d'apparence humaine, qu'il a gardé jusqu'aux versions les plus récentes, il a été rapidement adopté pour équiper plusieurs machines d'échecs dédiées. Mais le succès le plus marquant de The King aura été de fournir à Chessmaster 4000, en 1993, le moteur de réflexion de la franchise d'échecs la plus vendue au monde à ce jour. The King a ensuite accompagné Chessmaster jusqu'à la dernière version, la 11, commercialisée en 2007.
Menu
Le moteur "The King"
Téléchargement et Installation
Configuration
Contenu d'un profil
Modification/création de profils : sur quoi agir ?
49 profils de grands maîtres d'échecs
Le problème des bibliothèques d'ouvertures
L'une des innovations remarquables de Chessmaster aura été de permettre la modification de l'évaluation du moteur pour lui faire endosser des personnalités "machine" de force et de style différents. Le jeu proposait ainsi outre une centaine de profils lamba, la simulation de nombreux grands maîtres du passé ou contemporains. De plus, l'utilisateur pouvait créer de nouveaux profils grâce à un module facile à utiliser et assez intuitif.
Malheureusement, depuis 14 ans, plus de nouveaux Chessmaster ! Je n'ai d'ailleurs pas acheté CM 11, Ubisoft n'ayant pas fait l'effort d'une traduction française complète. Mais je pense avoir acquis à peu près toutes les versions depuis la 4000 de 1993. Et c'est avec Chessmaster autant qu'avec moi que mes fils ont appris à jouer aux échecs.
The King est un moteur Winboard mais il ne peut pas être extrait du programme Chessmaster. Les bibliothèques d'ouvertures sont dans un format inutilisable et les profils de personnalité ne sont pas non plus lisibles - à l'exception des textes de commentaire. Depuis plusieurs années déjà des versions déprotégées de The King circulent, certaines converties à l'UCI à l'aide de Wb2Uci. J'en ai déjà eu plusieurs en main mais elles n'étaient accompagnées d'aucun profil. Récemment un ami m'a fait parvenir The King 3.33 (Chessmaster 10) et The King 3.50 (Chessmaster 11), avec la totalité des simulations de GM de Chessmaster 10 et 11. Soit une petite cinquantaine. Je vous propose ici la version 3.33, datant de 2004. Les deux versions ne diffèrent pratiquement que par le niveau de force. Officiellement, The King 3.33 était situé autour de 2800 Elo mais s'il était confronté aujourd'hui aux moteurs récents au classement CCRL 40/15, il est probable qu'il soit plus proche de 2700 Elo. Malgré des qualités qui restent précieuses, The King est à présent un vieux moteur, bien moins performant que, par exemple, Rodent IV.
Téléchargement et Installation
Vous pourrez télécharger The King 3.33 Uci sur mon espace Mega. L'archive contient 61 fichiers: le moteur en version UCI ("KingUCI.exe"), le moteur non-converti ("TheKing333.exe"), le fichier de configuration de Winboard to Uci ("Wb2Uci.eng"), quelques vignettes-images au format Jpg ou Bmp et 49 fichiers de texte : les profils des joueurs.
The King s'installe comme n'importe quel moteur Uci, en prenant comme exécutable le fichier "KingUci.exe". Nous sommes pratiquement contraints d'utiliser l'interface Arena pour le faire tourner. Lucas Chess en effet donne accès au menu de configuration mais ne permet pas de choisir une personnalité. Scid a du mal à faire fonctionner les moteurs convertis avec Wb2Uci et Crafty Chess Interface comme Mayura Chess Board ne donnent pas accès au menu de configuration.
Installation dans Arena : menu "Modules" > "Installer nouveau module" et allez chercher le fichier "KingUCI.exe".
Le menu de configuration du moteur est assez peu fourni.
➤Le champ "Personality" permet de choisir une personnalité parmi les 49 présentes dans le répertoire du moteur (et déclarées dans le fichier "Wb2Uci.eng").
➤"CPUPower", par défaut à 100%, permet de ralentir le processeur. Diminuer ce chiffre peut être un bon choix pour limiter la force d'un profil de joueur.
➤"Hash" détermine la taille de la table de hachage. Par défaut elle est à 64 Mo, une valeur suffisante pour une partie rapide. Porter à 128 Mo pour une partie longue, surtout si le profil utilisé est réglé sur la force maxi du moteur (voir plus loin). Vous pouvez aller jusqu'à 256 Mo. Je ne suis pas sûr que The King gère des tables plus grandes car c'est la limite affichée dans Chessmaster. A vérifier…
➤"Ponder" : par défaut la pondération - ou réflexion sur temps adverse - est activée. Si vous affrontez un joueur de The King, le moteur continuera à explorer l'arborescence de la partie pendant que vous réfléchirez à votre coup. Cela augmente sensiblement sa force.
Plus loin nous verrons comment modifier le fichier "Wb2Uci.eng"
➤"ShowThinkingMove". Si ce choix est coché, l'interface affichera la réflexion du moteur.
➤"LogFile". Si coché, le moteur enregistrera dans un fichier texte un certain nombre d'informations relatives à son fonctionnement. Le fichier s'appelle "Wb2Uci.log" et se trouve dans le répertoire du moteur. Si vous n'en avez pas besoin, laissez LogFile décoché.
Le moteur est accompagné de 49 fichiers à l'extension "txt", de simples fichiers de texte pouvant être modifiés avec n'importe quel éditeur de textes, y compris le bloc-note ou le Wordpad de Windows. Il comporte 5 lignes de paramètres, chaque ligne, précédée de "cm-parm", portant 5 paramètres - six pour la dernière. Voici par exemple le profil de la personnalité "Chessmaster" :
cm_parm opp=100 opn=100 opb=100 opr=100 opq=100
cm_parm myp=100 myn=100 myb=100 myr=100 myq=100
cm_parm mycc=100 mymob=100 myks=100 mypp=100 mypw=100
cm_parm opcc=100 opmob=100 opks=100 oppp=100 oppw=100
cm_parm cfd=0 sop=100 avd=0 rnd=0 sel=9 md=99
Nous nous trouvons donc devant une collection de 26 paramètres :
➤Des paramètres de poids des pièces : myp (My pawn), myn (My knight), myb (My bishop), myr (My rook), myq (Kings queen), opp (Opponents pawn), opn (Opponents Knight), opb (Opponents bishop), opr (Opponents rook), opq (Opponents queen)
➤Des paramètres de style : mycc (My center control), mymob (My mobility), myks (My king safety), mypp (My passed pawn), mypw (My pawn weakness), opcc (Opponents's center control), opmob (Opponents's mobility), opks (Opponents's king safety), oppp (Opponents's passed pawn), oppw (Opponents's weakness), avd (Attack defense), cfd (Contempt) et md (Randomness)
➤Des paramètres de niveau de force : sop (Strength), sel (Selective search) et md (Max depth)
Comme nous utilisons The King indépendamment de l'interface, nous ne bénéficions pas du module de création / modification de personnalités de Chessmaster. J'ai pu penser un moment que pour créer ou modifier une personnalité, il me suffirait d'écrire de nouvelles valeurs directement dans un ancien profil mais en fait cela s'est avéré plus compliqué. En édition de personnalité, il semble que l'interface de Chessmaster combinait la valeur de l'option material/position avec la valeur attribué aux pièces pour calculer le poids de opp, opn, opb, opr, opq et de myp, myn, myb, myr et myq ; peut-être même en association avec d'autres paramètres.
(ci-dessus, le menu de création de personnalité de Chessmaster. Le réglage "Matériel / Position" ne correspond à aucun paramètre dans les profils).
Malheureusement, dans les profils, la valeur de material/position, qui peut être comprise entre -100 et +100, n'est pas donnée. Pas plus que la valeur des pièces. Nous avons seulement le résultat du calcul, qui n'est pas facile à interpréter. Changer ces poids devient un exercice difficile et périlleux. J'ai cherché un moment à établir une règle générale à partir des poids attribués à des joueurs dont je connais (au moins un peu) le style puis j'ai renoncé. Les possibilités de programmation de The King restent modestes et s'il s'agit de créer de nouvelles personnalités, je préfère le faire avec Rodent IV. Par ailleurs, nous avons déjà une collection de 49 joueurs balayant à peu près tout le spectre des styles. Néanmoins, si vous souhaitez créer de nouveaux profils ou en modifier un, il reste encore beaucoup de possibilités de réglage.
Modification/création de profils :
sur quoi agir ?Agir sur le niveau de force
La première chose sur laquelle vous pouvez agir est le niveau de force du joueur simulé. Nous avons vu plus haut que pour l'abaisser, vous pouvez ralentir le processeur. Mais il est plus rationnel d'utiliser les possibilités offertes par les profils. On peut joueur sur trois paramètres :
➤La force brute - sop (Strength). Choisir un chiffre entre 1 et 100 pour sop. A 1 le niveau de jeu est très faible, à 100, la force du moteur sera utilisée à plein.
➤La recherche sélective - sel (Selective Search). Il s'agit de régler la puissance des routines d'élagage de The King. Rappelons que l'élagage est un ensemble de techniques permettant au moteur d'éviter certaines branches sur la base de certains indices de performance, grâce à quoi il pourra explorer beaucoup plus en profondeur.
Le niveau de l'élagage se règle entre zéro (pas d'élagage) et 16 (recours maximal). A 16, le moteur gagne en force mais perd en qualité de jeu. Il peut sacrifier d'excellentes branches sans s'en apercevoir et commettra plus facilement de grossières erreurs. C'est pourquoi d'ailleurs le profil standard de la personnalité Chessmaster est réglé sur 10 et les profils de GM sur 9 voire moins - et non sur 16. Une valeur de 5 ou 6 produira un jeu de qualité, qui préservera le style du joueur mais se paiera pas une baisse sensible du niveau de force. On pourra compenser partiellement en portant la taille de la table de Hash à 256 Mo.
➤La profondeur d'exploration - md (Max Depth). Tous les profils GM sont réglés sur 99, ce qui veut dire que le moteur continuera à explorer jusqu'à sa limite de temps. A l'époque de Chessmaster, on utilisait souvent cette technique pour régler la force d'un moteur. Personnellement, je ne conseille pas de l'employer. Pour une meilleure qualité de jeu, mieux vaut permettre au moteur d'aller au maximum des possibilités que lui laisse le temps de jeu de la partie, la vitesse du processeur, le niveau de force, le niveau de la recherche sélective…
Le graphique ci-dessous établit une correspondance approximative entre la valeur de sop (Strength) et le niveau Elo réel du moteur.
Approximative notamment car cela suppose d'abord que vous disposiez d'un ordinateur assez puissant pour permettre à The King de donner le meilleur de lui-
Bien que l'on ne dispose pas de toutes les clefs, il est possible d'agir aussi sur le style du joueur simulé via les 16 autres paramètres :
➤Contrôle du centre (My center control) -
➤Contrôle du centre de l'opposant (Opponents's center control) -
Dans la grande majorité des cas, pour les profils GM, mycc et opcc ont des valeurs identiques. Lorsque les valeurs sont différentes, elles restent assez proches. Des écarts importants seraient synonyme d'incohérence, car il y aurait contradiction à se battre pour contrôler le centre et le laisser à l'adversaire (ou l'inverse).
➤Mobilité (My mobility) -
La plage de la mobilité s'étend de 0 à 600. La fourchette raisonnable se situe entre 70 et 240.
➤Mobilité adverse (Opponents's mobility) -
➤Sécurité du roi (My king safety) -
La plage de réglage s'étend de 0 à 600 ; la fourchette raisonnable se situe entre 50 et 180. Salo Flohr et Peter Léko, joueurs au style prudent et positionnel, affichent le King safety le plus élevé : 169. Suivis par Rechevsky (156), Seirawan (163), Steinitz (155), Petrossian (150) et Korchnoï (144).
➤Sécurité du roi adverse (Opponents's king safety) -
➤Pions passés (My passed pawn) -
➤Pions passés adverses (Opponents's passed pawn) -
➤Faiblesses de pions (My pawn weakness) -
Inversement, les joueurs très offensifs consacrent en général moins d'effort à préserver une bonne structure de pions. Valeurs les plus faibles classiquement chez les joueurs romantiques (Blackburne, 55, Zukertort et Anderssen, 84, Bird, 88) et les joueurs très offensifs (Najdorf, 75, Short, 76, Kashdan, 81, Tal et Shirov, 84).
Plage de réglage entre 0 et 600. Fourchette raisonnable entre 70 et 200.
➤Faiblesses de pions adverses (Opponents's weakness) -
➤Attaque / Défense (Attack / defense) -
➤Mépris du match nul (Contempt) -
Contempt ne joue pas sur l'évaluation mais va néanmoins influer indirectement sur le style du moteur, en le rendant plus ou moins optimiste.
Joueur les plus audacieux : Fischer, Kramnik, Zukertort, Alekhine, 300, Larsen, Chigorin, Capablanca, Ivanchuk, 250.
Les plus frileux : Flohr, -
➤Caractère aléatoire (Randomness) -
Créer un nouveau profil
Pour créer un nouveau profil, le plus simple est de partir d'un profil existant en l'ouvrant avec le bloc-
Wb2Uci.eng
Le fichier "Wb2Uci.eng" détermine ce qui sera affiché et comment sur le menu de configuration de The King. Voici comment il se présente :
[ENGINE]
Name=The King
Author=Johan de Koning
Filename=Wb2Uci.exe
[OPTIONS]
Program=TheKing333.exe
InitString=cm_parm default_parm opk=202307
HashCommand=cm_parm tts=%i
HashFormula=Hash*1048576
Hash=64
InitTime=4
Priority=normal
Protocol=1
ShowThinkingMove=false
Logfile=false
Visible=Ponder,Hash,ShowThinkingMove,Logfile,Extras
[EXTRAS]
Personality=<readfile>|combo|Default|Chessmaster 10 |Alekhine|Anand|Anderssen|
Bird|Blackburne|Bogoljubow|Botvinnik|Capablanca|Chigorin|Christiansen|Euwe|Evans|Fine|Fischer|Flohr|Geller|Ivanchuk|Kamsky|Karpov|Kashdan|Kasparov|Keres|Korchnoi|Kramnik|Larsen|Lasker|Leko|Marshall|Morphy|Najdorf|Nimzowitsch|Paulsen|Petrosian|Pillsbury|Polgar|Reshevsky|Reti|Rubinstein|Seirawan|Shirov|Short|Smyslov|Spassky|Steinitz|T al|Tarrasch|Tartakower|Timman|Zukertort|Waitzkin|
CPUPower=%i|spin|100|1|100
Je n'entre pas dans le détail, juste quelques remarques :
➤Dans la section [OPTIONS], vous observerez la commande "Hash=64". Cela fixe la taille standard de la table de hachage, par défaut 64. Si vous utilisez fréquemment The King a haut niveau, portez là à 128 Mo, par exemple.
➤InitTime=4. Si vous utilisez un ordinateur peu puissant, donnez plus de temps à The King pour démarrer en augmentant ce chiffre.
➤ShowThinkingMove=false et Logfile=false. L'affichage de la réflexion du moteur et le fichier Logfile sont décochés par défaut. remplacer false par true pour qu'ils soient cochés par défaut.
➤Enfin, dans la section [EXTRAS], sont égrenés les noms des fichiers des 49 personnalités imitées. Comme vu plus haut, vous pouvez en rajouter autant que vous voulez, séparés par un "|". L'orthographe doit être identique à celle du profil et celui-
Enfin, au cas où quelqu'un serait intéressé, je mets à votre disposition une version différente du fichier "Wb2Uci.eng" n'affichant pas les personnalités mais tous les paramètres de réglage d'un profil. Ça peut être utile pour tester à la volée un réglage particulier.
Télécharger la version alternative de "Wb2Uci.eng" ?
49 profils de grands maîtres d'échecs
Chessmaster proposait la plus belle collection de simulations de GMI jamais associée à un moteur : 48 en tout, des vieux de la vieille (Anderssen, Morphy, Blackburn…) à l'avant dernière génération (Anand, Kramnik, Polgar…). Évidemment, vous ne trouverez pas Carlsen, Vachier-Lagrave, Ding Liren ou autres joueurs actuels de premier plan. Chessmaster est trop vieux pour cela. Il y avait aussi un grand absent dans la collection : Kasparov. Le fait que celui-ci ait prêté son concours à la franchise concurrente (Kasparov's gambit) n'y est sans doute pas étranger. On peut raisonnablement supposer que Kasparov s'y est opposé ou bien qu'Ubisoft à anticipé une réaction. Un profil Kasparov a néanmoins été ajouté ultérieurement à la liste mais j'avoue que les paramètres choisis ne m'ont pas vraiment convaincu.
On peut aussi observer une nette sur-représentation des GMI américains, dont certains restent tout de même des joueurs relativement mineurs. Mais Chessmaster étant une franchise américaine... Voici donc ce qui nous est finalement proposé :
Alekhine, Anand, Anderssen, Bird, Blackburne, Bogoljubow, Botvinnik, Capablanca, Christiansen, Euwe, Evans, Fine, Fischer, Flohr, Geller, Ivanchuk, Kamsky, Karpov, Kashdan, Kasparov, Keres, Korchnoï, Larsen, Lasker, Leko, Marshall, Morphy, Najdorf, Nimzowitsch, Paulsen, Petrosian, Pillsbury, Polgar, Reshevsky, Reti, Rubinstein, Seirawan, Shirov, Short, Smyslov, Spassky, Steinitz, Tal, Tarrasch, Tartakower, Tchigorin, Timma, Waitzkin, Zukertort.
Ce qui fait tout de même une belle collection.
Compte tenu du faible nombre de paramètres mobilisables, ces simulations peuvent-elles encore être considérées comme valables ? La réponse est oui car elles ont été élaborées par une équipe d'excellents professionnels, parmi lesquels plusieurs grands maîtres. Ils ont su tirer le maximum des possibilités de The King en la matière. Bien sûr, ils n'auront pas la précision d'un bon profil pour Rodent IV, mais on peut compter sur une bonne approximation.
Le problème des bibliothèques d'ouvertures
Le plus embêtant sera ici le manque des bibliothèques d'ouvertures spécifiques de ces joueurs, qui n'ont malheureusement pas pu être récupérées de Chessmaster. Par ailleurs, je n'ai trouvé aucun moyen de forcer le moteur à utiliser les nombreuses bibliothèques au format Polyglot (.bin) dont je dispose déjà. La solution me semble être d'utiliser la possibilité qu'offre Arena de guider chaque personnalité vers une bibliothèque spécifique, à son format, l'abk. Comme la plupart de ces bibliothèques n'existent pas, je les ai créées pour vous. Elles ont toutes été réalisées à partir de collections de jeu des personnalités imitées. Mieux, je vous les offre en deux ou trois formats.
En trois formats pour tous les joueurs qui ne sont pas présents dans la collection de personnalités de Rodent III ou IV.
Small : bibliothèque de petit format, allant jusqu'à 12 ½ coups seulement. A utiliser lorsque la force de la personnalité utilisée est limitée à 1500 Elo ou moins.
Medium : format moyen, jusqu'à 30 ½ coups. Pour joueurs entre 1600 et 2000 Elo;
Big : grand format, jusqu'à 60 ½ coups. Pour les joueurs forts, supérieurs à 2000 Elo.
En deux formats, pour les GM déjà présents dans la collection de Rodent.
Small : jusqu'à 18 ½ coups.
Big : jusqu'à 45 ½ coups.
Pour utiliser une bibliothèque, la copier dans le répertoire "Books" d'Arena. Puis menu "Module" > "Gérer" (ou F11), onglet "Détails". Cherchez "KingUci" dans la liste des moteurs, puis ouvrez l'onglet "Bibliothèque". Ici, utilisez le sélecteur de fichier de "Bibliothèque module" pour aller sélectionner la bibliothèque que vous souhaitez associer à la personnalité sélectionnée.
Télécharger le pack de bibliothèques pour les grands maîtres de Chessmaster ?
Voilà, je pense avoir fait à peu près le tour du sujet.
Rob Robinson, juillet 2021