Wchess - Echecs et informatique sur PC-Windows

Rechercher
Aller au contenu

Menu principal :

Moteurs

WChess
Affrontez un vieux maître



Wchess est un moteur développé par David Kittinger en 1995 pour équiper le programme commercial Power Chess de Sierra. Le jeu était très grand public mais son moteur est resté célèbre pour ses qualités : très fort pour l'époque, doté d'un style vif et agressif paraissant humain, style pouvant être modifié pour imprimer au moteur une personnalité différente. Il est désormais abandonware.



Plan de l'article

Un moteur historique...
...et personnalisable
Téléchargement et installation
Fins de partie et bibliothèque d'ouvertures
Configuration
  Paramètres généraux
  Paramètres de réglage de la personnalité
     Paramètres de poids
     Paramètres de style
     Paramètres de force
  Configuration depuis Arena et Lucas Chess
Modifier la personnalité du moteur
  Wchess plus positionnel
  Wchess plus agressif
Arena Wchess
  Installation
  Contenu
  Lancement, configuration et niveau de force
  Bibliothèques d'ouvertures
  Téléchargement



David Kittinger est loin d'être un inconnu dans le domaine des échecs informatiques. En 1979, il avait mis sur le marché le moteur MyChess, le seul capable de concurrencer le Sargon des époux Spracklen sur le créneau grand public. Ce sont ses programmes qui équipaient les machines de Novag, meilleures ordinateurs d'échecs dédiées des années 80 et 90. Une décennie avant Power Chess, il avait fourni le moteur d'échecs de Chessmaster 2000, première version de la plus célèbre franchise d'échecs ; Kittinger a participé ensuite au développement de Chessmaster 3000, avant de rendre son tablier, pour se concentrer sur son partenariat avec Novag.  
Sorti en 1995, le Power Chess de Sierra, marchait dans les pas de Chessmaster. Ce vieux logiciel sous Dos se voulait pédagogique et encore plus ludique que le logiciel d'Ubisoft. Il tourne assez bien avec un émulateur Dos et il fait bien sûr partie de la liste des abandonwares d'échecs conseillés sur ce site...


Un moteur historique...

Power Chess était doté d'un excellent moteur. En 1995, Wchess a remporté haut la main la prestigieuse coupe de Harvard, tournois entre moteurs d'échecs et grands maîtres humains. Il a battu quatre grands maitres et obtenu la nullité contre les deux derniers, accumulant cinq points sur les six possibles. Aucun autre moteur n'avait jusqu'ici gagné aussi brillamment la Harvard Cup. Quelques mois plus tard, Wchess a été classé sixième au championnat du monde des programmes d'échecs. Il n'a perdu aucune partie durant cette compétition. Contre Deep Blue Jr, le super-ordinateur d'IBM qui a tenté une première fois, en 1996, de terrasser Garry Kasparov, Wchess a réussi à arracher la nullité.

La difficulté avec les vieux moteurs de cette époque éroïque est qu'ils sont rarement compatibles Winboard ou UCI ; et ne peuvent donc pas être utilisés dans une interface moderne comme Arena ou Lucas Chess. Heureusement, ce n'est pas le cas de Wchess, qui a d'abord été modifié pour "parler" le langage Winboard avant d'être converti au protocole de communication UCI grace à "Winboard to UCI". Wchess peut aujourd'hui tourner dans une interface d'échecs  avec des performances équivalentes - voire un peu supérieures à celles de la version intégrée à Power Chess. Elle est créditée d'une force de 2400 Elo.

Les amateurs de vieux programmes d'échecs prétendent que les moteurs des années "Dos", bien que moins puissants que ceux des décennies suivantes, avaient l'avantage d'offrir un jeu paraissant plus naturel. La puissance de calcul limitée des ordinateurs de l'époque conduisait à un meilleur équilibre entre connaissances positionnelles et capacités tactiques. Il y a du vrai dans cette affirmation. Et ça s'applique bien à Wchess, qui offrait un jeu équilibré et homogène, sans faiblesse manifeste, qui rappelait bien celui d'un maître humain au style mobile et agressif. Pour son époque, l'évaluation de Wchess était très sophistiquée et suffisait à résoudre nombre de positions qui auraient posé problème à beaucoup des moteurs concurrents. Bien sûr, ce n'est pas un monstre de connaissances positionnelles comme Komodo ou Stockfish. Par exemple, l'évaluation de la structure de pions ou de la menace de pions passés est rudimentaire. Un bon joueur pourrait exploiter ces faiblesses.


...et personnalisable

Comme "The King", Wchess était un moteur personnalisable - c'est-à-dire que l'on pouvait jouer sur certains paramètres afin de changer le style de jeu du moteur. Cette capacité, qui avait permis à Sierra de lui faire endosser le role de nombreux joueurs de force et de style différents dans le jeu, a été conservée avec la version 1.6 et même un peu améliorée. Les paramètres sont plus pertinents.


Téléchargement et installation

Wchess 1.6 UCI a disparu du Web depuis la première mouture de cet article. La plupart des pages mènent à une erreur 404. C'est pourquoi je l'héberge à présent sur l'espace Mega d'Echecs & Informatique.

Télécharger Wchess 1.6 ?

Dans l'archive, vous trouverez la version originale Winboard et sa conversion UCI grâce à l'adaptateur "Winboard to UCI", un fichier de configuration (
"Wb2Uci.eng"), une bibliothèque d'ouvertures, un fichier "EndTb" vide et une vignette-logo.

Installation dans Arena : menu "Modules", "Installer nouveau module" et allez chercher le fichier "WChessUCI.exe".
Installation dans Lucas Chess : menu "Options" > "Configuration des moteurs" ; onglet "Moteurs externes", bouton "Nouveau" et allez chercher le fichier "WChessUCI.exe". Les paramètres de configuration du moteur étant visibles ici, vous pourrez immédiatement modifier sa configuration.  
Wchess fonctionne avec Pychess, Crafty Chess Interface et Mayura Chess Board Free mais ces interfaces ne permettant pas d'accéder au menu de configuration (le menu est incomplet avec Pychess), il sera impossible de régler le moteur ou de créer une personnalité alternative. Je déconseille donc de les employer.


Fins de partie et bibliothèque d'ouvertures

Le dossier du moteur contient un répertoire "EndTb" et un répertoire "OpenBk". Dans le premier on trouve ce qui semble être un fichier de données de fins de partie mais il est vide. Il ne se remplit pas lors du fonctionnement de Wchess et je n'ai pas trouvé comment l'utiliser ou le remplacer. Je suppose que cela signifie que Wchess sera un peu moins bon que prévu dans la phase finale des parties.
Le second dossier contient une bibliothèque d'ouvertures au format "*.bin" que vous pouvez activer ou désactiver depuis le menu de configuration de l'interface. Si la bibliothèque interne est désactivée, il est très facile, avec Lucas Chess ou Arena d'obliger le moteur à recourir à une autre bibliothèque.
Avec Arena : menu "Modules" > "Gérer" puis choix du moteur dans la liste, onglet "Détails", onglet "Bibliothèque" et cocher "Utiliser bibliothèque principale d'Arena" - ou utilisez le sélecteur de fichiers pour en choisir une autre.
Avec Lucas Chess : Avant de débuter une partie avec un moteur, l'interface propose un menu d'où il est possible de changer la bibliothèque utilisée. Si la bibliothèque de Wchess est désactivée, l'interface va utiliser sa bibliothèque "GMopening.bin". Mais n'importe quelle bibliothèque Polyglot valide pourra être utilisée : menu "Jouer" > "Jouer contre un moteur" ; choisissez Wchess dans la liste des moteurs installés et ouvrez l'onglet "Coups initiaux". Dans la section "Activer répertoire : adversaire" cliquez sur le petit "+" bleu et allez chercher une bibliothèque au format Polyglot (*.bin).



Configuration


Le menu de configuration de Wchess rassemble quelques paramètres généraux et des paramètres de personnalisation du moteur.


Paramètres généraux

Display PV : affichage de la réflexion du moteur. Vous avez le choix entre afficher toutes les données ("all") ou seulement le meilleur coup courant ("few").
Learn mode : Wchess apprend de ses erreurs. Il ne se fera pas piéger deux fois de la même façon. Pour cela il mémorise l'historique des affrontements dans deux fichiers, appelés "losses" et "oldmoves", créés dans le dossier du moteur. Mieux vaut donc laisser Learn mode sur "on".
Ponder : autorise ou pas le moteur à continuer à réfléchir pendant que vous préparez votre prochain coup.  Le plus simple et de le laisser sur "on" et de l'activer ou le désactiver depuis l'interface. Pour Arena : menu "Modules", > "Réflexion permanente" ou Shift+Ctrl+P.
OwnBook : permet d'activer ou de désactiver la bibliothèque d'ouvertures interne.
Logfile, s'il est coché, génère une fichier appelé "Wb2Uci.log" qui vous renseignera sur le fonctionnement du moteur. Ne le laissez pas coché si vous n'en avez pas l'utilité car le fichier devient vite très volumineux.


Menu de configuration de Wchess affiché par l'interface Arena



Paramètres de réglage de la personnalité

Il est possible en agissant sur 16 paramètres pour modifier le style de la personnalité ou limiter son niveau de force.

Paramètres de poids

Les premiers paramètres, au nombre de 10, concernent le poids des pièces. Il s'agit de :
WChess pawn (CP) et Opponents pawn (OP)
WChess knight (CN) et Opponents knight (ON)
WChess bishop (CB) et Opponents bishop (OB)
WChess rook (CR) et Opponents rook (OR)
WChess queen (CQ) et Opponents queen (OQ)
Les poids sont par défaut ceux que la théorie estime comme standard : 1 point pour les pions, 3 pour les cavaliers et les fous, 5 pour les tours et 9 pour la dame. Le premier réglage indique la valorisation que le moteur donne à ses propres pièces et le second celle qu'il donne aux pièces de son adversaire. Souvent la valorisation est la même mais il peut y avoir de petites différences. J'y reviendrai plus bas, avec la création de quelques personnalités alternatives.

Paramètres de style

King Safety (KS) : ce paramètre règle entre 0 et 100 l'attention que le moteur va consacrer à la protection de son roi. Par défaut il est à 100, valeur maximale pour laquelle le moteur a l'attitude la plus protectrice possible. On ne peut donc que diminuer la protection accordée au roi.  
Pawn Weakness (PW) : réglage du niveau de tolérance du moteur envers les faiblesses de pions. Là encore, le réglage par défaut est à 100, le moteur consacrant le maximum d'effort pour maintenir une bonne structure de pions. On ne peut que diminuer cet effort.
Material vs positional (MP) : ce critère très important permet de déterminer l'équilibre entre une évaluation qui privilégie le matériel et une évaluation qui privilégie la position. La réglette s'étend de -100 à +100 et cette fois il est positionné par défaut sur la valeur moyenne (0). En principe, augmenter MP au dessus de zéro rend le style du moteur davantage positionnel ; diminuer MP rend au conraire le jeu plus tactique.
Contempt for draw (CD) : ce paramètre règle la volonté du moteur d'éviter une partie nulle. La plage de réglage va de zéro (la nullité est raisonnablement tolérée) à 100 (le moteur refusera toujours de s'incliner et se battra jusqu'au bout, même dans une situation désespérée).

Paramètres de force

Fixed depth (FD) : ce paramètre n'agit pas sur le style mais sur la profondeur maximale en 1/2 coups que le moteur sera autorisé à explorer.  A 0, valeur par défaut, il n'y a pas de limitation. Mieux vaut le laisser ainsi.

Play Strength (EL) : ici se règle la force du moteur, entre 0 et 100.  La relation entre la valeur choisie et la force n'est toutefois pas exactement linéaire. Pour le dire autrement, un moteur réglé à 50 ne sera pas deux fois moins fort que le moteur à 100. Pour établir les niveaux de force réel en Elo par rapport aux choix du paramètre "Play Strength" j'ai fait jouer les moteurs aux réglages  20, 30, 40, 50, 60, 70, 80, 90 et 100 un tournoi de 675 parties 40/5, ce qui donne 135 parties par niveau. Assez pour que Bayeselo détermine le niveau réel de chaque niveau, en prenant comme référence les 2400 Elo du moteur à pleine force. Après lissage de la courbe (pour éliminer les petites irrégularités) j'ai obtenu ce graphe :



Je m'en suis ensuite servi pour déterminer le réglage "Play Strength" correspondant aux niveaux 600 à 2400 par cran de 200 Elo. Ce qui m'a permis d'extrapoler un second graphe, plus facile à utiliser, qui permet de relier un réglage quelconque de "Play Strength" avec un niveau Elo plus parlant.




J'ai employé notamment ce graphe pour créer 12 Wchess de 1200 à 2400 Elo, par cran de 100 Elo (voir plus bas, "Arena Wchess").

Ne pas oublier que cette mesure vaut pour Wchess dans sa configuration par défaut. Faire évoluer fortement les paramètres de la personnalité standard équivaut toujours à une baisse de force plus ou moins importante.


Configuration depuis Arena et Lucas Chess

La présentation varie mais ce sont toujours les mêmes paramètres, quelle que soit l'interface. Voici le chemin pour afficher le menu de configuration de Wchess :
Pour Arena
: menu "Module" > "Module 1" > "Configurer". Pour activer ou désactiver la pondération : "Modules" >"Réflexion permanente" ou Shift+Ctrl+P
Pour Lucas Chess : menu "Options" > "Configuration des moteurs". Cliquez sur le moteur dans la liste des moteurs installés et dans la partie droite de la page changez les paramètres à votre convenance.



Modifier la personnalité du moteur

Clairement, Wchess n'est pas le moteur que je conseillerais pour créer de nouvelles personnalités. Il manque trop de paramètres pour faire ce que l'on souhaite. Le moteur The King de Chessmaster utilisait les mêmes que Wchess mais en y ajoutant le réglage attaque/défense, la mesure du contrôle central, la mesure de la mobilité et celle de l'attention aux pions passés. Les capacités de programmation de Wchess sont néanmoins suffisantes pour faire varier sensiblement le style du moteur. Voici à titre d'exemple deux personnalités alternatives, l'une davantage positionnelle et l'autre plus offensive :


Wchess plus positionnel

Poids des pions augmenté, poids des cavaliers augmenté, poids des fous réduit, protection du roi au maxi et forte structure de pions, évaluation très fortement positionnelle.

Wchess pawn 1,2 (+20% -  aime ses pions)
Opponents pawn 1.1 (+10%)
Wchess knight  3.6 (+20% - aime les cavaliers)
Opponents knight  3.3 (+10%)
Wchess bishop  2.7 (-10% - n'apprécie pas les fous)
Opponents bishop  3.0
Wchess rook 5.0
Opponents rook 5.0
Wchess queen 9.0
Opponents queen 9.0
King safety 100 (protection maximale)
Pawn weakness 100 (structure de pions solide)
Material vs positional 45 (positionnel ++)
Contempt for draw 0



Wchess plus agressif

Poids de toutes les pièces en baisse de 10% (échange facilement les pièces et préfère les parties ouvertes), protection du roi fortement réduite, faiblesses de pions tolérées, évaluation privilégiant le matériel, refus de nullité plus marqué...

Wchess pawn 0,9 (-10%)
Opponents pawn 0,9 (-10%)
Wchess knight  2.7 (-10%)
Opponents knight 2.7 (-10%)
Wchess bishop  2.7 (-10%)
Opponents bishop  2.7 (-10%)
Wchess rook 4.5 (-10%)
Opponents rook 4.5 (-10%)
Wchess queen 8.1 (-10%)
Opponents queen 8.1 (-10%)
King safety 50 (Protection fortement réduite)
Pawn weakness 50 (protection du roi fortement amoindrie)
Material vs positional -20 (Materiel +)
Contempt for draw 30 (mépris +)


Remarque : le Wchess de Power Chess avait un jeu très fortement attaquant. Il me semble que le Wchess UCI que je vous propose ici est moins féroce - ce qui s'expliquerait par le fait que King safety et Pawn weakness auraient été postérieurement bloqués sur 100, valeur maximale. C'est un point que je vérifierai lorsque j'aurai fini d'évaluer les niveaux de force.




Arena Wchess

Pour les besoins de cet article j'ai installé Wchess dans Arena et installé de nombreuses déclinaisons du moteur. Si le vieux maître numérique vous intéresse et que vous souhaitiez faire l'économie d'une longue installation, le mieux est que vous téléchargiez le tout sur mon espace Mega.


Installation

Arena est portable. Pour l'utiliser, il suffit de décompresser l'archive quelque part sur votre disque dur et de créer un raccourci vers le fichier "Arena.exe" du répertoire principal. En principe, tout devrait fonctionner sans problème sur n'importe quel PC / Windows. Vous n'aurez rien d'autre à faire que de lancer l'interface et de choisir un adversaire avec le niveau de force qui vous convient.


Contenu

Wchess avec sa personnalité par défaut est décliné en 13 niveaux de force, de  1200 à 2400 Elo. Par ailleurs, j'ai installé deux personnalités alternatives, l'une plus tactique et agressive, l'autre davantage positionnelle et prudente.
Par ailleurs, j'ai collé dans le répertoire "Books" d'Arena trois bibliothèques, deux petites généralistes que j'ai créées à partir de la base de parties O-Deville offerte avec l'interface. "Mini.bak", n'a que 8 1/2 coups de profondeur ; "Maxi.bak" est un peu plus grosse, pouvant donner jusqu'à 12 1/2 coups.  Ce sont des bibliothèques qui seront bien adaptées aux niveaux les plus faibles de Wchess.
"Perfect2018.abk" est une bibliothèque ramassée autour de quelques ouvertures très productives. Elle sera utilisée aux niveaux élevés du moteur pour obtenir la force maximale dans l'ouverture.


Lancement, configuration et niveau de force

Pour lancer une personnalité, il faut d'abord la choisir : menu "Modules" > "Gérer", sélectionner une personnalité dans la liste et cliquer sur "Appliquer".
Si vous avez besoin d'accéder au menu de configuration du moteur utilisé : menu "Modules" > "Module 1" (ou "Module 2") > "Configurer".  Après toute modification,  redémarrer le moteur : menu "Modules" > "Module 1" (ou "Module 2") > "Démarrage" (ou Shift +F11).
Au cas où vous voudriez changer le niveau de force d'une des deux personnalités alternatives, changez la valeur de "Play strength" en vous basant, ci-dessus, sur le graphe des niveaux normalisés.


Bibliothèques d'ouvertures

Au dessus de 1400 Elo, Wchess utilise sa bibliothèque interne. J'ai procédé différemment pour les niveaux de force les plus faibles afin que le moteur ne soit pas trop fort dans l'ouverture. Ainsi, Wchess 1200 et Wchess 1300 emploient la bibliothèque "Mini" tandis que Wchess 1300 et Wchess 1400 s'appuiront sur "Maxi". Autre exception : Wchess tactique est dirigé vers "Perfect2018".
Si vous souhaitez utiliser une autre bibliothèque, ouvrez le menu de configuration du moteur (Menu "Module" > "Module1" > "Configurer" ou Ctrl + 1) et décochez "Ownbook". Puis  menu "Modules" > "Gérer", choisir la personnalité de Wchess à qui vous souhaitez une autre bibliothèque, onglet "Détails", onglet "Bibliothèque" ; cocher "Utiliser bibliothèque principale d'Arena" ou faire un autre choix de bibliothèque avec le sélecteur de fichiers (ne pas oublier dans ce cas de décocher la bibliothèque principale).  


Téléchargement

Si vous souhaitez télécharger l'interface Arena avec Wchess pré-installé, remplissez le formulaire ci-dessous pour me communiquer une adresse mail valide ; le lien de téléchargement vous sera aussitôt renvoyé... C'est gratuit, bien sûr, ne vous engage à rien et vous ne serez pas inondé pour autant d'une multitude d'offres publicitaires.






Formateur clubJoueur de clubSimple amateur
Formateur scolaireJoueur scolaireAutre
Formateur indépendantJoueur en ligne


IMPORTANT : je répond TOUJOURS aux demandes qui me sont faites. Donc si vous ne recevez rien, c'est qu'il y a eu un problème d'acheminement du message. Il se trouve probablement dans votre boîte à spams, comme quelques personnes me l'on signalé. Boîte à spams, jamais reçu ou encore oubli de ma part (ça peut arriver aussi), merci de me le faire savoir en envoyant un message à : commerobinson (arobase) franceserv.com

Rob

 
 
 
 
 
 
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); })();