Playing the endgame like a boss !!

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

Moderators: hgm, Rebel, chrisw

jp
Posts: 1470
Joined: Mon Apr 23, 2018 7:54 am

Re: Playing the endgame like a boss !!

Post by jp »

hgm wrote: Wed Jun 12, 2019 9:37 am EGT info is a direct result of the rules and nothing but the rules.
That doesn't mean it's an obvious result or a result obtained quickly, easily or without any thinking. And it doesn't mean Leela can just use those results and pretend it's zero. It isn't.
Are you claiming that when humans generated 7-man TBs it required zero thought about how to generate and store them?


If you want to say PUCT is non-zero, I have no objection to that.
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Playing the endgame like a boss !!

Post by hgm »

We agree that both EGT generation and PUCT are not zero in that sense, but consciously programmed techniques. But I maintain that (still in this sense) EGT generation is FAR closer to 'zero' than PUCT. There went far more thought into how to design a suitable PUCT search and how to train a NN from its results than there was ever needed for EGT generation. Orders of magnitude more.

Do you want to claim that moves Leela and Alpha gets by PUCT are "obvious result or a result obtained quickly, easily or without any thinking"?

But I think this is pretty much irrelevant, as the 'Zero' in Alpha and Leela was not meant in this sense at all. It referred to having no 'domain-specific knowledge' being programmed into them. Everything in the complex PUCT/NN scheme is quite general, equally applicable to Chess, Shogi and Go. (But probably a lot less so for Bridge or Poker...) Just like EGT generation is just as applicable to Chess, Checkers/Draughts, Arimaa, Thud... That turn-based 2-player zero-sum games with perfect information needs minimax to propagate the game result from turn to turn does not count as domain-specific knowledge. It is just too general, even though not all games fall in this class.
User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Re: Playing the endgame like a boss !!

Post by Ovyron »

But you guys have already agreed on Leela's Zero "non-zeroness", you're just discussing the degree.

I had no idea about this, so now I'll go and claim that the "Zero" name in Alpha and Leela is misleading, specially if there's different ways to do these pre-programmed things, it is not known if there are better ways to do it, and already deciding for the NN the way they should do it without using a NN to explore other methods, happened.

It's only a name, though. I suggest Leela Prime as a new one, doesn't it sound like the first version of Leela that would have been created, anyway? :mrgreen:
Your beliefs create your reality, so be careful what you wish for.
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Playing the endgame like a boss !!

Post by hgm »

You cannot seriously have thought the program would have written itself, can you? What should be next to qualify as 'Zero'? Should it also build its own hardware? Just take a scoop of sand from the beach, throw the FIDE manual on top of it, and wait until a Chess-playing machine emerges...
User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Re: Playing the endgame like a boss !!

Post by Ovyron »

hgm wrote: Wed Jun 12, 2019 2:27 pm You cannot seriously have thought the program would have written itself, can you? What should be next to qualify as 'Zero'? Should it also build its own hardware? Just take a scoop of sand from the beach, throw the FIDE manual on top of it, and wait until a Chess-playing machine emerges...
Why not? Perhaps the idea to use Neural Networks in the way Leela is doing would have sounded as ludicrous 40 years ago.

What I suggest is nothing new, it's called "Busy Beavers", and stands as the best method to create the largest numbers ever conceived, so large that it's impossible to compute them, as in, you can't make a program that lists Busy Beaver numbers because they're uncomputable (due to the halting problem; you don't know if a program is stuck on an infinite loop, or eventually will output the large number.)

They use a turing machine to run all possible codes to generate big numbers, and oracle machines to check if those turing machines halt or not.

A true Leela Zero, instead of playing so many chess games, would try to produce source code that when compiled produced a program that was able to play chess. Once this is done, Leela Zero would modify the source code of this program so when compiled a program that plays stronger chess moves is compiled.

You could claim protocols like Winboard or UCI already exist, so it makes no sense to have the thing waste so much time coding those protocols so it can output its moves. I'd claim that it'd suffice for this program to output a legal chess move. Say, if it outputs e2e4, we deem it a valid chess program.

It'd then just need to run against another network that checks for move legality. Leela Zero would very soon learn that moves starting with "Z" or "9" are always rejected, because legal moves always start with a letter a-h (for pawns) or R/N/B/Q/K for pieces. Once it learns to only output legal moves, it'd learn how to play games until completion, and it'd start learning how to improve its results.

Would it learn minimax? Would it learn alpha-beta? Would it learn null moves? Who knows, but the thing would be trying every code combination as a black box, so it could come up with some secret code that allows it to play the best move is most positions, somehow, and because of its nature, it'd be the smallest piece of code that would allow it to do that.

Unfortunately, this "monkey on a type-writer" approach is too slow that it'd take it more than the age of the universe to reach the level of micro-Max, but the fact this approach exists and is worthy of the "Zero" monicker reveals that using "Zero" for what Leela is doing is misleading.
Your beliefs create your reality, so be careful what you wish for.
jp
Posts: 1470
Joined: Mon Apr 23, 2018 7:54 am

Re: Playing the endgame like a boss !!

Post by jp »

Ovyron wrote: Wed Jun 12, 2019 1:49 pm I had no idea about this, so now I'll go and claim that the "Zero" name in Alpha and Leela is misleading, specially if there's different ways to do these pre-programmed things, it is not known if there are better ways to do it, and already deciding for the NN the way they should do it without using a NN to explore other methods, happened.

It's only a name, though. I suggest Leela Prime as a new one, doesn't it sound like the first version of Leela that would have been created, anyway? :mrgreen:
Yeah, crem has posted here that the Leela guys were never very interested in the whole "zero" angle. No doubt they called it Lc "Zero" just to match the name Alpha "Zero", so DM are to blame for the very misleading marketing. (DM deserve blame for many unfortunate things.)


Leela may be soon to go extremely non-zero. They should have dropped the "zero" in the name already.

From his blog post:
test49.9
This is an experiment to see how fixed opening book affects network strength.

The plan is to take T40.T8.610 as a base network (that's why it's also id49901) and generate a few hundred thousand games with opening book on it, train with them on top, and see the result.
jhorthos from discord is running the training, so it's the only run not affected by training server being down.
And this:
What's next

Other possible changes (but unlikely, especially from the very beginning):

Instead of starting all training games from startpos, training from some kind of opening book (external or self-generated to calm down protests from "zero" activists). That depends on test49.9 results and when proper opening book support will be implemented.
User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Re: Playing the endgame like a boss !!

Post by Ovyron »

jp wrote: Tue Jun 18, 2019 3:57 pmLeela may be soon to go extremely non-zero. They should have dropped the "zero" in the name already.

From his blog post:
test49.9
This is an experiment to see how fixed opening book affects network strength.

The plan is to take T40.T8.610 as a base network (that's why it's also id49901) and generate a few hundred thousand games with opening book on it, train with them on top, and see the result.
jhorthos from discord is running the training, so it's the only run not affected by training server being down.
And this:
What's next

Other possible changes (but unlikely, especially from the very beginning):

Instead of starting all training games from startpos, training from some kind of opening book (external or self-generated to calm down protests from "zero" activists). That depends on test49.9 results and when proper opening book support will be implemented.
About time. Had I been in charge of Leela project from the beginning things like things would have been tried long ago, because what matters is the end result, not how you get there. The end justifies the means and the main priority should be getting Leela as strong as possible at all costs.
Your beliefs create your reality, so be careful what you wish for.
jp
Posts: 1470
Joined: Mon Apr 23, 2018 7:54 am

Re: Playing the endgame like a boss !!

Post by jp »

Ovyron wrote: Tue Jun 18, 2019 10:59 pm About time. Had I been in charge of Leela project from the beginning things like things would have been tried long ago, because what matters is the end result, not how you get there. The end justifies the means and the main priority should be getting Leela as strong as possible at all costs.
Well, there's also a distinction between perfect non-zeroness (e.g. tablebases) and imperfect non-zeroness (e.g. human opening theory). If possibly imperfect non-zeroness creeps in, it might get Leela stronger quicker but limit its long-term strength.
User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Re: Playing the endgame like a boss !!

Post by Ovyron »

jp wrote: Wed Jun 19, 2019 8:28 amWell, there's also a distinction between perfect non-zeroness (e.g. tablebases) and imperfect non-zeroness (e.g. human opening theory). If possibly imperfect non-zeroness creeps in, it might get Leela stronger quicker but limit its long-term strength.
Yes, in the future Leela could have discovered that after 1.e4 e5 then 2.Qf3!! is best move, but we don't know, and feeding her other opening moves would hide discoveries like this long-term.

But "self-generated" opening theory shouldn't pollute the well, you just save time because it makes no sense Leela searches the same positions in the opening over and over. I expect some huge Leela jump after this gets implemented (if it gets implemented right...) and we will not see discussions about it being stronger than Stockfish or not, because nobody will doubt it (last year I had projected Leela would "catch up" until about November of this year, and it did much sooner, so it'll probably will remain stronger than I expect for a while, but it'll require innovations like this. The "zero" approach has proven a failure.)
Your beliefs create your reality, so be careful what you wish for.
jp
Posts: 1470
Joined: Mon Apr 23, 2018 7:54 am

Re: Playing the endgame like a boss !!

Post by jp »

Ovyron wrote: Wed Jun 19, 2019 9:56 pm Yes, in the future Leela could have discovered that after 1.e4 e5 then 2.Qf3!! is best move, but we don't know, and feeding her other opening moves would hide discoveries like this long-term.

But "self-generated" opening theory shouldn't pollute the well, you just save time because it makes no sense Leela searches the same positions in the opening over and over.
Yes, and depending on what "self-generated" means, it might still be "zero" (that part of Leela). It'd need coding into the Lc training. But I don't think it's about saving time, because according to what was written it's an idea for the training, not the playing.