Houdini - moteur magicien - Echecs et informatique sur PC-Windows

Rechercher
Aller au contenu

Menu principal :

Moteurs

Houdini - moteur magicien


Depuis des années, Houdini est dans le peloton de tête des meilleurs joueurs d'échecs. La version 6, sortie il y a peu, est classée 3ème sur CCRL avec presque 3400 Elo. Houdini est aussi intéressant pour son style de jeu très particulier, entre Kasparov et Mikhaïl Tal. C'est un moteur commercial, donc payant. Mais la version 1.5a a été mise gratuitement à notre disposition...


Houdini 1.5a, version de 2011

La version 1.5a date de 2011. Elle est donc ancienne mais sa force est tout de même proche de 3200 Elo. Le style d'Houdini est là avec les fonctions les plus avancées: pondération, MultiPv, mode analyse, accès EGBT(1)... Reste à savoir à quoi il peut servir. Pour jouer ? Humm... Oui mais Houdini n'est clairement pas un moteur pour débutants aux échecs - ni même pour joueurs moyens. Par contre, c'est un bon moteur d'analyse et de conseil, dans un registre offensif. Ses évaluations sont parfois difficilement lisibles, car c'est un moteur tactique, très fort en calcul. Mais il s'appuie néanmoins sur une très bonne connaissance de la position. D'ailleurs, de nombreux grands maîtres utilisent et apprécient Houdini. Même si c'est un moteur pour spécialiste, il méritait bien d'être dans ma sélection.



Moteur romantique ?


Selon ses auteurs, Houdini est l'héritier de l'époque romantique et de joueurs comme Anderssen, Spielmann, Marshall, Bogoljubov, Tal, Nezhmetdinov, Shirov ou Morozevich. Ce n'est pas faux. Houdini a effectivement un style de jeu "romantique". C'est un joueur très offensif, capable de projeter des combinaisons de long terme et de sacrifier le matériel nécessaire à les mener à terme. Il s'autorise même parfois des sacrifices purement spéculatifs ! Cependant, sa capacité à comprendre les situations positionnelles - et en particulier les positions fermées - est également très importante pour un moteur tactique, ce qui en fait aussi un bon défenseur.
Son tropisme offensif peut le conduire à des situations très inconfortables du point de vue positionnel, mais il s'en sort de façon apparemment miraculeuse, obtenant au moins le nul. Cette capacité à l'échappatoire serait même à l'origine de son nom (2) et du qualificatif de "magicien". En réalité, c'est une façon positive de présenter un défaut : Houdini est un moteur tactique qui calcule très profondément, bien plus profondément que n'importe quel joueur humain. S'il a accepté de subir une situation très déséquilibrée, c'est souvent parce qu'il sait déjà comment il va en sortir. Son jeu n'est donc pas toujours facilement compréhensible. Et c'est pour cela que je trouve Komodo meilleur pour l'analyse. Reste le style, à mi-chemin entre Garry Kasparov et Mikhaïl Tal. Dans ce registre, le joueur qui me vient à l'esprit est Alexeï Shirov. Voilà sans doute une des raisons fortes qui expliquent pourquoi on l'aime !


Téléchargement et installation

On trouve la version 1.5a sur le site officiel.
Télécharger Houdini 1.5a ?
L'archive contient deux exécutables : "Houdini_15a_w32.exe" et "Houdini_15a_x64.exe".
Le premier est destiné aux vieilles machines équipées d'un Windows 32 bits et la seconde aux machines plus récentes avec Windows 64 bits. Attention : les deux fonctionnent très bien avec n'importe quel Windows 64 bits. Sauf que la version 32 bits est nettement plus lente. Ne vous trompez pas.  



Installation dans Arena

Menu "Modules" > "Installer nouveau module" et allez chercher le bon fichier exécutable. Arena vous demande si l'engine est un UCI ou un Winboard. Sélectionnez "UCI", plus performant et qui donne accès au menu de configuration.
Une fois installé, Arena vous indique qu'Houdini ne trouve pas les bases de finales Gaviota et, probablement, que trop de coeurs sont activés (8 par défaut).  Il est donc indispensable d'ouvrir le fichier de configuration (voir plus bas).




Installation dans Lucas Chess

Houdini 1.5a est déjà l'un des moteurs par défaut de Lucas Chess. Mais pour accéder au paramétrage et pour le faire tourner dans sa version 64 bits, plus performante, vous devrez le réinstaller comme moteur externe: menu "Outils" > "Moteurs" > "Moteurs externes" ; bouton "Nouveau" et allez chercher le bon fichier exécutable.


Configuration

Configuration depuis Arena

Ouvrir "Module" > "Module 1" > "Configurer". Examinons les paramètres disponibles...


Paramètres généraux

Avant d'étudier les paramètres, il faut savoir que les valeurs fixées par défaut sont assez optimistes. Il est fort probable que, sur de nombreuses configurations matérielles, il soit nécessaire de retrograder un peu le moteur...


Hash : la mémoire réservée aux tables de hachage est de 128 Mo par défaut. C'est déjà bien mais comme tous les moteurs tactiques, Houdini sature assez vite les tables de hachage. Si vous avez au moins 4 Go de mémoire vive et que vous utilisez le moteur pour le conseil et l'analyse, 256 sera meilleur.

Threads : par défaut le chiffre est à 8. Renseignez ici le nombre de threads physiques (coeurs) de votre ordinateur.

Split Depth : ce paramètre, que l'on pourrait traduire par "profondeur de division", gère la répartition des taches lorsque vous utilisez plusieurs coeurs. En clair, c'est la profondeur minimale à partir de laquelle le travail sera réparti entre les coeurs. Par défaut, elle est fixée à 10, valeur qui donne de bons résultats pour tout matériel moyen à 4 coeurs. Si votre matériel est moins bien doté, vous pouvez descendre à 8 ou 9. Dans le cas contraire, le moteur pourra être un peu plus performant avec des valeurs de 12 à 14 ou plus. Repères extrapolés à partir de discussions sur des forums :

➤portable standard : 8
➤machine de bureau à 2 coeur : 9
➤machine de bureau à 4 coeurs : 10 (défaut)
➤machine de jeux à 4 coeurs : 12 à 14
➤machine de jeux à 8 coeurs : 16 à 18



Bien évidemment cette discussion est sans objet si votre ordinateur n'a qu'un coeur.



Gestion des bases de finales

GaviotaTbPath : Houdini 1.5 utilise les EGBT Gaviota (voir mon article sur les tables de finales). Vous devez lui indiquer ici le chemin vers le répertoire où elles sont stockées - si vous les avez (si vous utilisez Arena, vous devriez avoir au moins les Gaviota à trois pièces).
Attention : pour que ça marche, vous devez indiquer le chemin non vers le dossier général ("gtb.cp4") mais vers le sous-dossier "gtb5" si vous avez installé les fichiers à 5 pièces. Ou à défaut "gtb4" ou "gtb3", selon le ''nombre de pièces" disponible.



GaviotaTBCache, Hard_Pro_Depth et Soft_Prob_depth


GaviotaTBCache : taille du cache où sont stockées les valeurs précédemment lues dans les tablebases. La valeur par défaut est de 64 Mo. Si vous avez de la mémoire à revendre, 128 Mo sera nettement mieux.  

La fonction d'évaluation des finales par Houdini étant déjà très performante, le moteur s'efforce de ne consulter les tablebases que pour les fins de partie inhabituelles. C'est un avantage si vous avez un disque dur mécanique, car l'accès aux tables de finales est très lent et Houdini perdrait de la force au lieu d'en gagner. s'il accédait aux tables à toute occasion. Il n'en est pas de même si vous avez une machine puissante à 4 coeurs ou plus équipée d'un disque dur SSD, dont les accès sont beaucoup plus rapides. Ce sont les paramètres Hard_Pro_Depth et Soft_Prob_depth qui permettent d'adapter le recours aux tables de finales à votre matériel.

Hard_Pro_Depth :
ce paramètre fixe la profondeur de recherche la plus basse à partir de laquelle le moteur tentera un accès aux tables de finales. Plus votre disque dur est lent, moins votre processeur est puissant et moins vous avez de coeurs, plus vous avez intérêt à augmenter cette valeur (par défaut 24 1/2 coups).

Soft_Prob_depth : ce paramètre fixe la profondeur de recherche la plus basse à partir de laquelle le moteur est susceptible de recourir au cache mémoire plutôt que directement aux tables de finales. Plus votre disque dur est lent, moins votre processeur est puissant et moins vous avez de coeurs, plus vous avez intérêt à réduire cette valeur (par défaut fixée à 16 1/2 coups) et à augmenter la taille du cache.

Quelles valeurs faut-il choisir ? C'est bien difficile à dire car aucune indication ne nous est donnée. Au doigt mouillé, je dirais que les valeurs standards sont adaptées à une machine moyenne à 4 coeurs dotée d'un bon disque dur mécanique.

Contempt et Analysis_Contempt : ces paramètres permettent de régler les conditions pour lesquelles le moteur pourrait accepter la nullité d'une partie.
Pour commencer, si vous laissez Analysis_Contempt décochée, Houdini refusera la nullité jusqu'au bout.  Si vous la cochez, vous aurez le choix ensuite entre trois niveaux de tolérance à la nullité : 0 (forte tolérance), 1 (valeur par défaut) et 2 (faible tolérance).

Ponder : si vous comptez utiliser la pondération, activez là ici. Ensuite, vous l'activerez ou la désactiverez depuis l'interface d'Arena : "Modules" > "Réflexion permanente" ou Shift+Ctrl+P.

MultiPv : par défaut, une seule ligne est explorée. Le MultiPv est donc sésactivé. Pour le conseil, il peut être intéressant de laisser le moteur en explorer une ou deux autres.


Des paramètres manquent ?

Si certains paramètres importantes sont absents du menu de configuration c'est certainement parce qu'Arena est paramétré pour régler ensemble tous les moteurs UCI. Voir ici à ce sujet.


Bibliothèque d'ouvertures

Houdini n'est fourni avec aucune bibliothèque d'ouvertures et ne dispose d'aucune bibliothèque interne, même rudimentaire. Si vous utilisez Arena, forcez-le à lire l'une de ses bibliothèques : "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 faîtes un autre choix avec le sélecteur de fichiers.  



Configuration depuis Lucas Chess


Pour Lucas Chess le menu de configuration est le même. Toutefois il n'y a pas de sélecteur de fichiers pour indiquer le chemin vers les tables de finales. Vous devez copier manuellement le chemin complet dans le champ "GaviotaTbPath".  
Pour ce qui concerne l'absence de bibliothèque d'ouvertures, Lucas Chess utilise automatiquement sa bibliothèque standard "GMopenings". Cela peut-être changé au lancement d'une partie depuis l'onglet "Coup initiaux" du menu.



Réglage de la force du moteur

Depuis Arena, Houdini accepte le réglage en seconde par coup, profondeur d'analyse, nombre de noeuds, temps pour toute la partie. Evitez de choisir une profondeur d'analyse fixe. Le choix du temps par coup est le meilleur choix pour limiter la force d'un moteur moderne comme Houdini.

Rob Rob, juin 2019



(1)EGBT : End Game Tables base
(2)En référence à l'illusionniste Harry Houdini, spécialiste des évasions spectaculaires.


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