Monitoring chess computer games using LC0

Software para PC o Smartphone, ICS (Internet Chess Server), etc.
Avatar de Usuario
Mensajes: 201
Registrado: 20 Ago 2015 23:07

Monitoring chess computer games using LC0

Mensaje por tibono » 26 Jul 2020 14:08

Hello all,

While observing chess computer games I like to also run an analysis engine where I duplicate the moves, in order to better spot good moves or weak ones, better understand the reason why, and so on... I guess many of us behave the same way.

I run many rather weak chess computers (I love them as well!), and even stronger ones are light-years far away from the computing power strong engines have. Even top human players can't understand some moves from those, the justification lying tens of plies later... So, such engines are little use for commenting old chess computer games, apart from very specific assessments (such as confirming I may consider a game to be drawn without playing endless moves...).

What would better help? To my opinion, a very strong positional engine, with tactical ability good enough, slightly better or at least on par with the chess computers, but not overwhelming. Using such an engine in multi-PV mode would enable to list the few good moves the chess computer may choose. Well, doesn't it sound like using Leela?

I am happy to share my own experience.

My laptop has no GPU, but this is certainly not an issue: a fast GPU lets LC0 reach top engines strength, we would just resume the same issue as with any other strong modern engine. No, let's use BLAS version of LC0 (the basic CPU version).

As we nevertheless need tactical ability, let's select a consistent network size - neither too small nor too large. A 128x10 network is fine for CPU use with a common PC like my own laptop. It will easily reach 4 to 9 plies depth according to the position and time allowed; usually a couple of plies deeper than most chess computer programs. Fine enough for tactical ability, it will validate or refute the chess computer moves as far as tactics is concerned. And LC0 is reknown for providing best positional/human like play, to the extent of being able to play without any openings book, and as well being able to play very strong without any search (meaning playing immediately the single move suggested by the neural network policy). So, you can trust LC0 suggested moves to be good moves, strategically/positionnally strong; and tactically correct considering our chess computer capability.

So, where will you find this stuff?

LC0: download page here, I would recommend to get at least v0.26 - currently the latest one, and the code has been enhanced to be able to better see (and announce) checkmates - avoids Leela usual trolling with previous versions, playing whatever move still leading to checkmate without seeking for a faster one.

Neural network: download page here, I use the well renowned Little Demon 2 during the first part of the game, then I switch to Little Ender(download page here).

So, actually, I use two engines in analysis mode, starting with LD2 until 18 to 20 pieces are out, then moving to LE next. Little Ender is a specialized network, it has been trained (by D. Kappe) on a subset of positions starting with 18 or less chessmen, the network is therefore not "loaded" with early-to-middle game stuff, and full room has been enabled for better endgame learning.


Mensajes: 1676
Registrado: 28 Ene 2013 21:41

Re: Monitoring chess computer games using LC0

Mensaje por eltaki » 26 Jul 2020 19:35

Hola Tibono

Suelo usar Lc0 bajo Linux y con gráfica Nvidia, como interfaz para Lc0 uso Nibbler ( Interfaz específica para Lc0. El problema que tengo es que la red neuronal que puedo usar es pequeña, gráfica de 2Gbytes, por lo demás cada día juega mejor.