Informatique

Œil et cerveau de Lc0

2018-2019 marque une mutation irréversible dans l’architecture des logiciels de l’olympe échiquéen. Leela Chess à réseau de neurones a appris en un an les connaissances échiquéennes que les développeurs de StockFish ont codé et réglé finement dans leur moteur pendant une décennie.

La néo-Grünfeld D70 Robert Byrnevs Robert J. Fischer, championnat USA1963, est scrutée par les mini caméras-filtres 3 cases sur 3 de Leela Chess. Le fianchetto de Fischer en vert est reconnu comme fort. Celui de Robert Byrne est déserté après le sacrifice 15… Cd3xFg2 {au bout de la tentacule du Cavalier pieuvre[1]Un Cavalier pieuvre est un Cavalier noir qui a atteint la 3e rangée. Les 8 cases attaquées forment le cercle des tentacules de la pieuvre. se trouve le Fou de fianchetto}.

Compteur à rebours de la fin du jeu d’échecs sur fond de couronne de lilas

Cerné par les actions concertées de Fg7 (xCd4 ∆[2]Le triangle ∆ vers le haut signifie « avec l’idée » xf2, xg1), Te8 (xe1,xe2) et Fb7 (xg2), Rf1 subit l’attaque finale de Fischer par 21… Dd7 ∆ Dh3+ +-. Byrne répond « 0-1! » surprenant les commentateurs((Robert G. Wade, Kevin J. O’Connell, « les parties d’échecs de Boby Fischer », Tome 1, Payot, ISBN 2-228-15180-7, janvier 1974, pp. 71-73)).

Fischer avait-il en tête les mini-échiquiers 3×3 correspondant aux chunks[3]chunk : morceau, vue partielle de l’échiquier de sa perception échiquéenne de la position ?

L’architecture de Leela Chess

Leela chess estime le meilleur coup spéculatif suivant une probabilité de gain issue de son expérience d’apprentissage y compris si la position n’a jamais été rencontrée parce qu’elle comprend des structures qui sont plus ou moins reconnues avec un indice de confiance.

Architecture 256×20 du réseau neuronal de Leela Chess

L’échiquier (planes), perçu par type de pièces et par couleur, est l’entrée des 256 filtres ou caméras de résolution 3 cases sur 3 sur la position courante ainsi que l’historique des huit derniers coups.

Vingt blocs résiduels[4]Les premières expérimentations utilisaient moins de blocs résiduels favorisant la rapidité d’apprentissage mais jusqu’à un seuil qui est repoussé quand on augmente le nombre de blocs … Continue reading, dont les poids sont réglés par apprentissage, produisent le résultat dans deux sorties (têtes) du réseau neuronal :

  • value head, orientée évaluation estime la valeur v d’une position entre -1 et +1.
    Le score moyen Q du prochain état est une moyenne pondérée par le nombre de visite N :
    Q = W / N avec W = W + v pour chaque arc traversé afin d’atteindre la feuille terminale ;
  • policy head, orientée recherche arborescente, dresse la liste ordonnée des meilleurs coups candidats avec leur probabilité de gain.

Exploration et exploitation de l’arbre du jeu

L’algorithme PUCT[5]Predictor + Upper Confidence Bound((Prcuvu, Technical Explanation of Leela Chess Zero, 15 mai 2019)) Tree search : devin + limite supérieure de confiance dans l’arbre de recherche. oscille entre exploration (visite d’un nœud qui pourrait devenir prometteur) et exploitation (visite d’un nœud connu pour être prometteur). Pendant l’apprentissage, il y a un mécanisme de renforcement du choix des meilleurs coups candidats et de l’évaluation des positions. Le choix au hasard (d’où la référence à Monte-Carlo[6]MCTS : Monte Carlo Tree Search, recherche arborescente Monte Carlo heuristique pour prise de décision.) remonte aux prémices de l’apprentissage du réseau neuronal sans connaissance d’experts humains du domaine (tabula rasa).

Algorithme PUCT connecté au réseau neuronal

L’état du jeu est un nœud dans l’arbre. Chaque nœud est marqué par une valeur estimée et comprend une liste ordonnée des coups candidats incluant pour chacun une probabilité de gain. L’expansion de l’arbre apporte une meilleure compréhension du nœud racine qui est la position courante où Leela chess doit jouer dans un temps alloué.

N : nombre de visites du nœud. W : score cumulé du prochain état.

Sorties (tête) du réseau neuronal : v valeur de la position et P probabilité de sélectionner le coup.
Q : moyenne du score du prochain état.

Chaque blocs résiduel a deux couches à réseau neuronal de convolution. Leela Chess a également une vue de l’ensemble de l’échiquier avec la couche entièrement connectée à toutes les 64 cases.

Bibliographie

Notes

Notes
1 Un Cavalier pieuvre est un Cavalier noir qui a atteint la 3e rangée. Les 8 cases attaquées forment le cercle des tentacules de la pieuvre.
2 Le triangle ∆ vers le haut signifie « avec l’idée »
3 chunk : morceau, vue partielle de l’échiquier
4 Les premières expérimentations utilisaient moins de blocs résiduels favorisant la rapidité d’apprentissage mais jusqu’à un seuil qui est repoussé quand on augmente le nombre de blocs résiduels.
5 Predictor + Upper Confidence Bound((Prcuvu, Technical Explanation of Leela Chess Zero, 15 mai 2019)) Tree search : devin + limite supérieure de confiance dans l’arbre de recherche.
6 MCTS : Monte Carlo Tree Search, recherche arborescente Monte Carlo heuristique pour prise de décision.