Créateur | Gary Linscott |
---|---|
Développé par | Gary Linscott, Alexander Lyashuk, autres[1] |
Première version | |
Dernière version | v0.27.0 [2] () |
Dépôt | github.com/LeelaChessZero/lc0 |
Écrit en | C++, JavaScript, Go [3] |
Type | Moteur d'échecs |
Licence | GPL-3.0 |
Site web | Sur GitHub, Blog officiel |
Leela Chess Zero, parfois abrégé en LCZero ou lc0, est un moteur d'échecs neuronal libre et open source. Le développement a été notamment mené par Gary Linscott, qui est aussi un développeur du programme Stockfish, et par Alexander Lyashuk. Leela Chess Zero est adapté du moteur de go Leela Zero[4], qui est lui-même basé sur le projet AlphaGo Zero de Google[5], afin de vérifier les applications au jeu d'échecs des méthodes d'apprentissage profond décrites dans le document de Deepmind. Comme Leela Zero et AlphaGo Zero, Leela Chess Zero ne connaît que les règles et rien d'autre[4]. Leela Chess Zero est entraîné sur un site web dédié. En , il avait ainsi joué contre lui-même plus de 23 millions de parties[4].
Le projet Leela Chess Zero a été d'abord annoncé sur TalkChess.com le [4],[6] tandis que le démarrage effectif du programme débute en [7]. Après quelques mois de développement et d'entrainement, Leela Chess Zero avait déjà atteint le niveau d'un GMI, surpassant des versions précédentes de Rybka, Stockfish ou Komodo.
En , l'équipe de AlphaZero publie un nouvel article dans la revue Science révélant de nouveaux détails de l'architecture et des paramètres d'entraînement d'AlphaZero[8]. Ces changements sont aussitôt incorporés dans Leela Chess Zero et en augmentent à la fois la force et l'efficacité[9].
Lc0 utilise MCTS (Monte Carlo tree search) comme algorithme de recherche des coups et NN-based comme fonction d'évaluation[7].
En , Leela Chess Zero devient le premier moteur neuronal à entrer dans le Top Chess Engine Championship (TCEC) pendant la saison 12 dans la plus petite division, la 4[10]. Le moteur ne réussit pas bien : sur 28 parties il en gagne une, en annule deux et perd le reste, sa seule victoire survenant après le crash de son opposant Scorpio 2.82[11]. Cependant, il est amélioré rapidement et, en , il se place 7e sur 8 au Championnat du monde d'échecs des ordinateurs[12]. Dans la saison 13 du TCEC, il gagne la division 4 avec un record de 14 victoires, 12 nulles et 2 défaites[13]. Qualifié pour la division suivante, il termine deuxième à égalité avec Arasan mais ne va pas plus loin (la règle étant qu'en cas d'égalité, les résultats entre les moteurs concernés priment). Son record dans la division 3 est de 7 victoires, 17 nulles et 3 défaites[13].
À partir de , Leela Chess Zero devient compétitif avec les meilleurs moteurs du monde. En 2018, au Chess.com Computer Chess Championship (CCCC)[14], Leela Chess Zero se place 5e sur 24 participants. Les huit premiers se qualifiant au round 2, Leela se place alors quatrième[15],[16]. Leela gagna ensuite un match de 30 parties contre Komodo pour conquérir la 3e place du tournoi[17]. Parallèlement, Leela Chess Zero a participé à la coupe TCEC, un nouvel événement dans lequel des moteurs peuvent jouer contre d'autres moteurs issus de divisions différentes. Leela Chess Zero a défait des moteurs appartenant à la plus haute division comme Laser, Ethereal ou Fire avant de se faire éliminer par Stockfish en demi-finale[18].
En octobre et , Leela Chess Zero a participé au Chess.com Computer Chess Championship Blitz Battle[19] et a fini 3e derrière Stockfish et Komodo[20].
En , Leela Chess Zero participe à la saison 14 du TCEC. Elle domine les divisions 4,3 et 2 en finissant facilement première dans toutes. En première division, Stockfish a dominé tandis que Houdini, Komodo et Leela se sont disputé la seconde place. Lors de la ronde finale, Leela devait faire nulle contre Stockfish avec les Noirs pour terminer seule deuxième. Cela fut fait et elle fut ainsi qualifiée pour la Superfinale contre Stockfish [18].
En , Leela Chess Zero remporte son premier tournoi majeur en battant Houdini lors de la deuxième coupe TCEC en ne perdant aucune partie du tournoi[21],[22].
Début , Leela Chess Zero (v 32930) gagne un match (fin de saison 14 bonus final) contre Stockfish (v 190203) en rapide (12' avec 3" par coup) sur 100 parties avec aucune ouverture prédéfinie 56 - 44 (+16 -4 =80). Avec les noirs, le programme joue la berlinoise ou la partie italienne sur 1.e4, tandis que sur 1.d4, Leela joue le début du pion dame ou le gambit dame refusé. Quant à Stockfish, sur 1.e4, il a une prédilection soit pour la défense française Steinitz variante Boleslavsky, soit la défense Sicilienne Najdorf[23] .
Saison | Division 4 | Division 3 | Division 2 | Division 1 | Division P | Superfinale |
---|---|---|---|---|---|---|
12 (2018) | 8e | - | - | - | - | |
13 (2018) | 1er | 3e | - | - | - | |
14 (2018) | - | 1er | 1er | 1er | 2e | 2e |