Announcing lczero

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

koedem
Posts: 105
Joined: Fri Mar 18, 2016 10:45 pm

Re: Announcing lczero

Post by koedem »

So I just read up on the basic ideas of NNs and thought this might be a nice testbed to try it out in practice.
Sorry for the stupid question, but how do you input the position? (I got a bit lost in the code... :? ) 64 * 13 input neurons for each possible piece on each square? (that would seem a bit weird to me but I don't see anything cleaner)

And another question, it's probably a bad idea but could one also let the NN learn the rules by itself? By letting it try random square combinations and have the cost function e.g. X - legal moves played at the start? (and by minimizing the cost function it learns to only play legal moves)
That might be slow but like that one doesn't force it to take moves in whatever format and instead let it decide itself how it wants to generate them. (and in what order if that makes sense)
FWCC
Posts: 117
Joined: Wed Aug 22, 2007 4:39 pm

Re: Announcing lczero

Post by FWCC »

Nice Project,the opening of that game looks like a 5 year old was playing it(Not 5 year old Capablanca)but we are at the beginning!If I can contribute CPU power let me know.Lets watch this grow.Is any of the implication from the A0 papers as it is not open source?







FWCC
TAL WAS CORRECT
gladius
Posts: 568
Joined: Tue Dec 12, 2006 10:10 am
Full name: Gary Linscott

Re: Announcing lczero

Post by gladius »

I've created a Google Groups forum to discuss lczero: https://groups.google.com/forum/#!forum/lczero

A small progress update as well. From training so far, the network seems to be learning to draw incredibly well, but then nearly all the training samples end up being draws. This leads to a situation where predicting a draw as the value of the position is all the training learns. One potential way around the draw problem is including 33% wins, 33% losses, and 33% draws in the training set.

First though, taking a step back and going to train a net based on Stockfish self-play games (thanks gcp!), and we'll see how strong the engine is. That will hopefully flush out any major bugs in the search.
gladius
Posts: 568
Joined: Tue Dec 12, 2006 10:10 am
Full name: Gary Linscott

Re: Announcing lczero

Post by gladius »

Training from SF self-play games seems to be working well. Here is self-play game on the latest network:


It is starting to understand chess :). Still, a long, long ways to go of course.

The weights are available for download from https://github.com/glinscott/lczero-wei ... _64.txt.gz if you want to try at home. It has working UCI support, so it could even play against other engines now!
Daniel Shawul
Posts: 4186
Joined: Tue Mar 14, 2006 11:34 am
Location: Ethiopia

Re: Announcing lczero

Post by Daniel Shawul »

Here are three games against ScorpioMCTS, which uses monte-carlo-tree-search but replaces the value network with a qsearch. It doesn't have a policity network.

It seems lczero is far weeker at the moment mainly due to tactics issues i suppose.

Henk
Posts: 7251
Joined: Mon May 27, 2013 10:31 am

Re: Announcing lczero

Post by Henk »

gladius wrote:Training from SF self-play games seems to be working well. Here is self-play game on the latest network:


It is starting to understand chess :). Still, a long, long ways to go of course.

The weights are available for download from https://github.com/glinscott/lczero-wei ... _64.txt.gz if you want to try at home. It has working UCI support, so it could even play against other engines now!
Using chess knowledge is against the zero rules. It's like cheating. Of course you can rename your engine to LCFish.
Jhoravi
Posts: 291
Joined: Wed May 08, 2013 6:49 am

Re: Announcing lczero

Post by Jhoravi »

gladius wrote:Training from SF self-play games seems to be working well. Here is self-play game on the latest network:


It is starting to understand chess :). Still, a long, long ways to go of course.

The weights are available for download from https://github.com/glinscott/lczero-wei ... _64.txt.gz if you want to try at home. It has working UCI support, so it could even play against other engines now!
It's working!! The first dozen moves are no random anymore! Proof is that whites dark Bishop retreated twice when threatened by blacks h6 and g5 pawn moves and so does the Knight at Nf3 moved to Ne5 when threatened by g4.

Interesting is that the remaining moves goes back to random proving that the learning concentration starts at the opening phase then moving forward meaning it may master the endgame last.
jpqy
Posts: 554
Joined: Thu Apr 24, 2008 9:31 am
Location: Belgium

Re: Announcing lczero

Post by jpqy »

Is it possible to get a working compile Lczero for windows..

Now that we can still beat it..or to follow it up till we can't anymore :wink:

I think more people would like to play against it so long it makes crazy moves..

JP.
Rodolfo Leoni
Posts: 545
Joined: Tue Jun 06, 2017 4:49 pm
Location: Italy

Re: Announcing lczero

Post by Rodolfo Leoni »

jpqy wrote:Is it possible to get a working compile Lczero for windows..

Now that we can still beat it..or to follow it up till we can't anymore :wink:

I think more people would like to play against it so long it makes crazy moves..

JP.
+1
I'm very curious too...
F.S.I. Chess Teacher
gladius
Posts: 568
Joined: Tue Dec 12, 2006 10:10 am
Full name: Gary Linscott

Re: Announcing lczero

Post by gladius »

Daniel Shawul wrote:Here are three games against ScorpioMCTS, which uses monte-carlo-tree-search but replaces the value network with a qsearch. It doesn't have a policity network.

It seems lczero is far weeker at the moment mainly due to tactics issues i suppose.
Thanks for playing some games! Yes, it definitely doesn't have much tactical awareness yet :). I think part of that comes from training on SF games. In self-play, it would learn the probabilities of exploring each move from UCT, with SF games, it only has the best-played move to learn from.