Rhetoric - Echecs et informatique sur PC-Windows

Rechercher
Aller au contenu

Menu principal :

Moteurs

Rhetoric
Human playing style


L'augmentation de la force d'un moteur d'échecs se paye souvent par une perte de qualité du jeu.  Ed Schröder, connu pour ses moteurs commerciaux de grande qualité, a souvent évoqué ses difficultés à obtenir quelques dizaines de Elo supplémentaires pour son moteur Prodeo tout en lui conservant son style d'apparence humaine. Avec Rhetoric, l'Espagnol Alberto Sanjuan est parvenu à conjuguer force et qualité, en recourant à une technique assez nouvelle au moment où il commençait à développer Rhetoric : le moteur s'appuie sur un réseau neuronal construit, au départ, par apprentissage de parties de grands maîtres...




Rhetoric a été conçu au début des années 2010 non pour être plus fort que Magnus Carlsen (il n'en est pas loin) mais pour imiter le comportement d'un grand maître humain. Pour y parvenir, il a utilisé une méthode qui était populaire pour les moteurs de go à l'époque mais très peu encore pour les échecs (sur lesquels régnaient depuis 30 ans les algorithmes classiques) :  faire apprendre à son programme la manière de jouer de grands joueurs humains grâce à un algorithme "génétique" à apprentissage profond (voir "Réseau neuronal et algorithme classique" dans le glossaire). Il lui a ainsi fait ingurgiter des milliers de parties de Karpov contre l'élite mondiale des échecs de son temps : Anand, Kasparov, Adams, Gelfand, Bareev, Polgar...
Les premières versions étaient encourageantes mais le fichier de poids obtenu ne permettait pas d'obtenir davantage que 2200 à 2300 Elo. C'est pourquoi l'apprentissage a été enrichi en faisant jouer le programme contre lui-même avec un nouvel algorithme, inspiré de la méthode de réglage de Texel*, pour rechercher les faiblesses et erreurs de la fonction d'évaluation. Ainsi enrichi, le fichier de poids a permis à Rhetoric de faire un bond de force considérable. Alberto Sanjuan a publié la dernière version du moteur, la 1.43, en novembre 2015. Elle atteint la force non négligeable de 2800 Elo, le tout avec un style qui évoque Alexei Shirov.


*Texel est un moteur du suédois Peter Österlund. A bien des égards c'est un moteur classique ; mais la méthode de réglage automatisée de l'évaluation employée par Österlund ne l'est pas...


Style : dynamique, offensif, sacrificiel...



Rhetoric a un style de jeu assez équilibré mais dynamique et à tonalité offensive. Il est "non-matérialiste", indique l'auteur, qui précise que son moteur fera souvent des sacrifices de matériel afin d'obtenir un gain positionnel, favoriser les pions passés ou pour des raisons purement tactiques. Avec son paramètre "Material" par défaut on pourrait dire que Rhetoric a un jeu qui ressemble à celui d'Alexeï Shirov. En accentuant encore son désintérêt pour le matériel on obtiendra un style à la Mikhaïl Tal…

<- Shirov... il y a quelques années...



Pour qui ?

Rhetoric a été conçu pour jouer comme un maître ou un grand maître de manière réaliste. Ce n'est pas un moteur pour débutants. Il s'adresse davantage à un public de très bons joueurs d'échecs, en commençant par les forts joueurs de club, qui trouveront en lui un adversaire intéressant, dans un registre offensif.  Aux autres, il pourra aussi servir de moteur d'analyse. Avec ses 2800 Elo et son style agressif, il pourra explorer de façon originale une position donnée.



Téléchargement


Le site officiel de Rhetoric a disparu depuis plusieurs années. On peut encore le retrouver sur WebArchive, à cette adresse :
https://web.archive.org/web/20180820102052/http://www.chessrhetoric.com/
Mais le contenu téléchargeable a disparu. C'est pourquoi j'héberge sur mon site Echecs et Informatique la dernière version connue du moteur (la 1.43).

Télécharger Rhetoric 1.43 ?

L'auteur proposait pour accompagner Rhetoric l'excellente bibliothèque d'ouvertures de Frank Quisinsky, au format de l'interface Arena, l'Abk. Elle n'est pas livrée avec le moteur, il faut la télécharger séparément.

Télécharger la bibliothèque Quisinsky ?


Le programme est proposé en quatre versions : pour Androïd, pour Windows 32 bits, Windows 64 bits et Windows 64 bits Popcnt. Popcnt est un ensemble d'instructions typiques des architectures SSE4 (Streaming SIMD Extensions 4) utilisées par certains processeurs Intel et Amd. Le PopCnt apporte un net avantage de vitesse. Si vous ne savez pas si vos processeurs le prennent en charge ou pas, tentez de lancer d'abord la version Popcnt. Si le moteur joue un coup hors de sa bibliothèque d'ouvertures c'est que ça marche ! Sinon rabattez-vous sur la version standard.



Installation

Rhetoric fonctionne très bien avec Arena, Lucas Chess, Pychess et Mayura Chess Board, interfaces qui seront toutes en mesure d'exploiter le réglage de force UCI_Elo.

Installation dans Arena

Menu "Modules" > "Installer nouveau module" et allez chercher le fichier "Rhetoric_x64_popcnt.exe" ou "Rhetoric_x64". Si Arena demande s'il s'agit d'un moteur UCI ou Winboard, cocher "UCI". Éventuellement, collez aussi le fichier de la bibliothèque d'ouvertures ("f-quisinsky-v03__special.abk") dans le répertoire "books" d'Arena.

Installation dans Lucas Chess

Rhetoric 1.43 est déjà un moteur interne de Lucas Chess. Sauf que nous ne disposons que de la version 32 bits et que le menu de configuration, et en particulier le réglage de force interne, n'est plus accessible. C'est pourquoi il vaut mieux installer à nouveau Rhetoric en moteur externe : menu "Options" > "Configuration des moteurs" ; onglet "Moteurs externes", bouton "Nouveau" et allez chercher le fichier "Rhetoric_x64_popcnt.exe" ou, à défaut, le fichier "Rhetoric_x64". Les paramètres de configuration du moteur étant visibles ici, vous pourrez dès immédiatement modifier sa configuration.  

Installation dans PyChess

Menu "Éditer" > "Moteurs" puis bouton "Nouveau"... Utilisez le navigateur pour localiser l'un des fichiers exécutables du moteur et injectez-le dans l'interface avec "Ouvrir".  Le menu de gestion des moteurs s'ouvre et si vous cliquez sur "Options" vous pourrez dès à présent modifier la configuration du moteur.

Installation dans Mayura Chess Board Free

Menu "Engine" > "Change engine" > "Add or remove engines". Cliquez sur "Add", indiquez le nom "Rhetoric 1.43", puis allez chercher l'exécutable du moteur là où vous l'avez stocké.




Configuration

Le menu de configuration de Rhetoric est assez léger. Il s'agit essentiellement d'activer ou de désactiver le MultiPv (par défaut sur "1" donc désactivé), de déterminer la taille de la table de Hash (128 Mo par défaut) et de choisir une valeur pour "Material". Ce paramètre détermine l'importance accordée par le moteur au matériel. Par défaut, il est fixé à 100, valeur pour laquelle le jeu de Rhetoric est déjà peu matérialiste. Selon l'auteur, une valeur de 50 devrait conduire le moteur à un jeu sacrificiel comparable à celui de Tal.
A priori, vous n'avez pas besoin d'un retour du fonctionnement du moteur et donc "Use log file" devrait être décoché.



Menu de configuration de Rhetoric dans Arena...


Depuis Arena on accède au menu de configuration par : "Module" > "Module 1" et "Configurer". Si "Hash" est absent du menu c'est certainement parce qu'Arena est paramétrée pour régler ensemble tous les moteurs UCI. Voir ici à ce sujet.

Depuis Lucas Chess : menu "Options" > "Configuration des moteurs". Sélectionnez Rhetoric dans la liste des moteurs et dans la partie droite de la page changez les paramètres à votre convenance. Notez qu'un double-clic sur le nom du moteur ouvre un menu qui permet de choisir un alias, de donner quelques informations dans un champ de texte, d'indiquer le niveau Elo du moteur (2800), et de limiter le moteur soit en profondeur de recherche, soit en temps de réflexion par coup en secondes (ce que vous ne ferez pas).

Pour PyChess : menu "Editer" > "Moteurs", choisir le moteur dans la liste, onglet "Options".

Mayura Free ne permet pas d'accéder au menu de configuration (la version payante le peut).


Réglage de force

Très fort, Rhetoric ne sera que rarement affronté à sa puissance maximale. Heureusement, l'auteur a pensé à exploiter la fonction UCI_Elo de l'UCI2 qui nous permet de régler la force du moteur au Elo près. La procédure varie selon l'interface utilisée :

Pour Arena,  menu "Niveau" > "Limite Elo de la force de jeu".

Pour Lucas Chess
, menu "Options" > "Configuration des moteurs", choisissez Rhetoric dans la liste des moteurs et dans la partie droite de la fenêtre, changez la valeur de "UCI_Elo".

Pour Pychess, menu "Editer" > "Moteurs", choisir Rhetoric dans la liste, onglet "Options" et changez la valeur d'UCI_Elo.

Pour Mayura, menu "Level" > "Limite engine strength".

Dans tous les cas, soit vous conservez la force maximale du moteur, soit vous sélectionnez une valeur entre 1300 et 2600 Elo. Deux remarques, au passage :
1/ Le niveau UCI_Elo est généralement calibré pour des parties rapides. Il est probable qu'en format 40/15 par exemple, la force du moteur soit plus élevée que prévu. Il faut en tenir compte.
2/ Rhetoric n'est pas fait pour jouer à faible niveau. Je ne conseille pas de régler UCI_Elo en dessous de 1600 Elo. Comme je l'ai dit plus haut, ce n'est pas un moteur pour joueurs occasionnels.



Bibliothèque d'ouvertures

Avec Arena Alberto Sanjuan conseille d'utiliser la bibliothèque abk de Frank Quisinsky : menu "Modules" > "Gérer", choissir Rhetoric dans la liste des moteurs, onglet "Détails", onglet "Bibliothèque" ; utilisez le sélecteur de fichier pour faire un choix de bibliothèque, celle-ci ou une autre (ne pas oublier dans ce cas de décocher la bibliothèque principale).  

Avec Lucas Chess, la bibliothèque par défaut de cette interface, GMOpenings, ne sera pas un mauvais choix. Mais Lucas Chess, comme PyChess, acceptera d'utiliser n'importe quelle bibliothèque au format Polyglotte (*.bin).

Mayura utilise des bibliothèques au format *.book, moins courant.

Pour ceux qui souhaiteraient parfaire l'imitation de Shirov, je vous propose deux bibliothèques que j'ai réalisé avec près de 9800 parties du grand maître. L'une est au format Abk d'Arena, l'autre au format Polyglotte (*.bin). Ce sont des bibliothèques peu profondes (12 1/2 coups au maximum).

Télécharger Shirov.abk ?
Télécharger Small_Shirov.bin ?

Pour Mayura, je vous invite à télécharger "Books for Mayura", qui contient une bibliothèque "Kasparov" et une "bibliothèque Shirov".
Télécharger Books for Mayura ?



Rob Rob, avril 2019 (article totalement revu en août 2024).  




 
 
 
 
 
 
Retourner au contenu | Retourner au menu _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })();