Comment jouer contre Leela Zero sous Windows

Leela Zero est aujourd’hui l’une des intelligence artificielle les plus fortes au jeu de go. Cette version de Leela reprend l’algorithme documenté par Google dans le cadre du projet AlphaGo Zero où la machine a appris à jouer par elle même.

La procédure permettant de jouer contre Leela Zero n’est pas triviale et ce rapide tutoriel explique étape par étape la marche à suivre pour y arriver sous un Windows récent (Windows 10).

Première étape : télécharger les outils

Deux programmes sont à télécharger : l’intelligence artificielle elle même ainsi qu’une interface graphique permettant de jouer.

Leela Zero

Leela Zero, le moteur d’intelligence artificielle s’obtient ici : https://github.com/gcp/leela-zero/releases

À ce jour, la version la plus récente est la 0.15. Le fichier à télécharger pour windows est celui qui se termine par « win64.zip ».

Il faudra ensuite extraire cette archive quelque part sur votre disque

L’intélligence artificielle (le réseau)

Pour que Leela soit forte, il lui faut son cerveau qu’il est possible de télécharger ici : http://zero.sjeng.org/best-network

Il suffit d’enregistrer ce fichier quelque part sur le disque comme dans un sous répertoire « networks » à l’emplacement de Leela Zero.

Sabaki

Pour pouvoir jouer, il faudra télécharger une interface graphique. Sabaki est celle conseillée sur le site de Leela Zero et peut être téléchargé ici : https://github.com/SabakiHQ/Sabaki/releases

La dernière version à ce jour est la 0.33.4. Le fichier à télécharger pour windows est celui qui se termine par « -win-x64-setup.exe ».

Il faudra ensuite exécuter ce fichier pour l’installer en suivant la procédure qui s’affiche.

Deuxième étape : configurer Sabaki

La seconde étape est de configurer Sabaki pour utiliser notre Leela Zero ainsi que son cerveau tout juste téléchargés.

Configuration de base

Donc une fois Sabaki exécuté, il suffit d’aller dans «Engines->Manage Engines…»

Et de configurer Leela Zero.

  • Pour le nom du moteur, je propose de marquer « Leela Zero »
  • Pour le chemin (Path), il suffit de clicker sur l’icône de dossier et d’aller jusqu’au répertoire où l’on a extrait Leela Zero et sélectionner le fichier « leelaz.exe »
  • Il est ensuite nécessaire de mettre les arguments suivants (remplacez <network> par le fichier réseau téléchargé plus haut, relativement à leelaz.exe) :
    -g -t4 -q –noponder -p2500 -w <network>

Un peu de tuning

Il est possible d’affiner les différents paramètres avec lesquels est lancé Leela Zero.

  • Le -t4 peut être affiné en fonction de votre machine. Une valeur courante est le nombre de cœurs sur votre machine + 1. Par exemple, si j’ai 4 cœurs, une valeur de -t5 devrait être optimale. Bien sûr, cela peut s’affiner après plusieurs essais.
  • Le -p2500 correspond à la profondeur de calcul qu’utilisera Leela Zero. Plus cette valeur est grande et plus Leela Zero sera forte, mais plus elle mettra de temps à réfléchir.
  • Pour n’avoir aucune limite au temps de calcul de Leela Zero, il suffit de supprimer les paramètres « –noponder -p2500 »

Let’s Go ?

Pour jouer, ce n’est pas très compliqué. Il suffit de faire «File->New» et de configurer la partie en affectant Leela Zero à Blanc et/ou Noir et enfin clicker sur OK.

Et pour le reste, Noir et Blanc jouent tour à tour sur les intersections…

Bonne partie

970 to go – Lorsque le focus se perd

Presque un mois s’est déjà écoulé depuis le dernier article. Une sorte d’inertie a fait que je n’ai pas joué autant que j’aurais du, autant que j’aurais voulu. Une perte de focus sur l’objectif ? Un «désintéressement» par rapport à l’objectif initial ? C’est ce que je vais tenter d’analyser dans cet article.

Qu’est-ce qui s’est passé dans les grandes lignes ?

Lorsque j’ai attaqué le projet, j’étais quasi encore en congés, encore seul chez moi, et le train train de la vie ne m’avait pas encore rattrapé. La fin de l’été s’annonçant, la vie active reprend le dessus et les obligations reviennent au goût du jour. Mais goïstement, que s’est il passé ?

Je n’avais initialement pas prévu de compter les parties jouées sur DGS mais je m’aperçois que j’en joue quand même pas mal (7 terminées depuis août). Étrangement, même si ces parties durent sur plusieurs jours, les erreurs que j’y fait ont l’air d’être les mêmes que sur des parties plus rapides (disons à 1h par joueur).

Je parlais aussi d’un apprentissage quasi quotidien de Joseki. J’en suis aujourd’hui à 7 groupes de séquences dont voici la seconde.

Début septembre a aussi repris les parties de Yunguseng où j’ai déjà joué 3 parties, dont 2 défaites.

J’avais aussi initié un entraînement à la lecture via des Tsumego classiques. J’ai opté pour l’application pour Androïd «Tsumego Pro». Mine de rien, après avoir passé quelques semaines à résoudre des exercices quasi quotidiennement,  j’ai vu mes capacités grandement augmentées. Lorsqu’au début je peinais à résoudre les exercices faciles, j’arrive aujourd’hui à voir assez aisément les exercices intermédiaires, voire à trouver les réponses à une bonne partie des exercices difficiles. Disons que je suis passé d’une lecture à 2/3 coups à une lecture à 7/8 coups, voire plus lorsque les séquences sont assez faciles. J’arrive notamment à lire des joseki jusqu’au bout avant de les jouer : cette capacité est d’une grande aide pour évaluer la direction que va prendre une partie.

Et si nous nous penchions sur le développement personnel ?

Je me suis dit que j’allais peut être trouver des pistes de recherche pour résoudre ce problème de perte de focus dans le domaine du développement personnel. J’ai notamment fait l’acquisition du livre «Laser-sharp Focus» qui a pu m’apporter de bons conseils.

Dans les grandes lignes, avant de s’attaquer à résoudre le problème de la perte de focus, il est nécessaire de prendre conscience du réel problème. Pour se faire, il convient de s’astreindre à noter sur une feuille de suivi l’ensemble des distractions qui nous écartent de nos objectifs. Un tableau convient parfaitement pour cet exercice, il faut y noter : l’heure, l’endroit où survient le problème, la tâche que l’on voulait faire, la nature de la distraction, le pourquoi de la distraction et enfin si c’est une distraction mentale, externe ou corporelle. Ce pourquoi nécessitera souvent un peu de raffinage pour trouver l’origine mentale, corporelle ou externe de la distraction.

À partir de là, il devient possible de s’attaquer au réel problème. L’auteur distingue plusieurs grandes catégories qui ont chacune leur propre stratégie de résolution : l’environnement pas adéquate, le corps qui n’est pas optimal pour une puissance cognitive (fatigue ou mal au dos par exemple), le mental et des soucis personnel, la procrastination, des distractions et interruptions extérieures, la difficulté à rester concentré assez longtemps, la gestion de l’énergie (et non du temps) ou le stress.

Comme nous sommes dans la catégorie développement personnel, je repense à un avantage non attendu que j’ai trouvé à améliorer nos capacités de lecture via des tsumego faciles. Très souvent dans le développement personnel, on entend parler de l’importance de la visualisation de notre réussite dans nos projet. J’ai pu remarquer qu’au fur et à mesure que mes capacités de lecture s’affinaient, ma capacité à visualiser clairement mes objectifs s’affinait et que l’image de la réussite s’éclaircissait de plus en plus… C’est un aspect qu’il pourra être intéressant d’explorer plus en profondeur.

Et les parties dans tout ça ?

Sur ces dernières semaines, les quelques parties que j’ai jouées ont été perdues pour la plupart. Il ne me semble pas que mon jeu ait perdu en qualité, mais je pense que j’ai fait de grosses erreurs ponctuelles que mes adversaires ont réussi à exploiter. Dans pas mal des parties sur DGS notamment, j’ai perdu contre des adversaires d’un niveau plus faible alors que je menais la partie, simplement à cause d’un groupe que j’ai laissé mourir pour jouer un coup ailleurs pas si important.

Si je devais faire un résumé rapide des erreurs que j’ai pu observer sur les dernières parties, je noterais les suivantes :

  • Oublier un groupe et le laisser mourir, plusieurs fois dans la partie
  • Bâcler la lecture et jouer des séquences qui ne fonctionnent pas
  • Ne pas jouer un gros coup alors que c’était vraiment le moment
  • Vouloir suivre à tout prix le Joseki alors que ça m’oriente vers une direction qui ne m’avantage pas
  • Vouloir à tout prix punir l’adversaire sur une erreurs alors que c’est minuscule
  • Vouloir punir l’adversaire mais ne pas lire les conséquence et retourner la punition contre moi
  • Rester focalisé sur le local, sans prendre en compte la situation globale

La reprise des cours

Le Yunguseng a repris avec une nouvelle saison. Ce fut l’occasion de jouer ma première partie contre une nouvelle joueuse. J’ai eu l’occasion de gagner par abandon mais mon adversaire a abandonné trop rapidement. Voici les retours d’In-Seong.

 

Download SGF

 

Mon adversaire a abandonné au 81ème coup, lorsqu’elle a pensé que son groupe était mort. Or, il était possible de le sauver et capturer des pierres.

Au début de partie, je n’ai pas réussi à punir l’erreur de Blanc (coup 26), ce qui a provoqué une faiblesse qui a été tentée plus tard (coup 46). Ce fut un très bon coup, mais Blanc n’a pas réussi à l’utiliser pleinement.

985 to go – Le go, un jeu d’émotions

La fin de semaine arrive après un retour de vacances, le stress et la fatigue refont leur apparition, voici des sentiments qui se ressentent dans les parties de ces deux derniers jours…

Fatigue et stress

Au bilan sur Jeudi et Vendredi, 2 parties gagnées sur 7. Le point commun de ces parties est l’agressivité dont j’ai fait preuve, et les erreurs de lecture associées. Les pierres de coupe ici, le groupe attaquant là, pour au final perdre mes parties.

Voici l’une des parties que j’ai gagnées. Je jouais blanc et la victoire a été remportée lorsqu’à la fin, il n’a su capturer mon invasion quelque peu désespérée. Normalement, en début de partie, il aurait pu capturer mon groupe blanc en bas à gauche mais il a abandonné ce projet. Je pense que cette partie donne bien mon état d’esprit du moment.

Après une bonne nuit de sommeil j’ai su gagner ma 4ème partie planifiée, la 16ème de la série.

Commençons les cours théoriques

L’un de mes points faibles est devenu la théorie, en particulier les début de partie et les Joseki associés. Lors du congrès européen, j’ai fait l’achat d’un dictionnaire de Josekis.

J’ai opté pour une méthode d’apprentissage systématique à l’image de ce que propose Guo Juan sur son site : tu répètes les séquences jusqu’à les connaître par cœur, puis une fois le sans faute acquis, tu recommences à des intervalles de plus en plus longs. J’ai opté pour ces intervalles de temps : matin, soir, lendemain, 3 jours plus tard, semaine suivante, mois suivant, trimestre suivant. En plus de ça, il est important de le mettre en œuvre dans ses parties.

Donc sans plus attendre, voici le premier joseki à travailler :

 

Download SGF