When will the chess programmers write an engine that plans ?

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

Moderators: hgm, Rebel, chrisw

Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: When will the chess programmers write an engine that plans ?

Post by Dann Corbit »

Stockfish on a wimpy cellphone plays very good chess. This is on alpha-beta.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
Ras
Posts: 2487
Joined: Tue Aug 30, 2016 8:19 pm
Full name: Rasmus Althoff

Re: When will the chess programmers write an engine that plans ?

Post by Ras »

mclane wrote: Tue Mar 24, 2020 8:11 pmThe 6502 Ed Schröder used is faster. And it ran on 5 MHz.
Thre's no way that a 6502 at 5 MHz is anywhere as fast as a 68k at 12 MHz. Not only because of the clock frequency, but the 6502 is an 8 bit processor while the 68k is 32 bit internally (with 16 bit data bus).

OK, the language is there - MM5 was in assembly while Glasgow was in CDL, which was claimed to be only 1.5-2 times slower than assembly, which still doesn't make up for the more powerful 68k.
And the MM5 came out 1990. that’s 7 years later.
With much inferior hardware. So the progress must have been in the software (traditional AB!), something that you usually deny.
Thomas nitsches Concept of trying a human way of thinking computerchess is not wrong. It was ahead of its time.
It turned out to be a dead end that just played inferior chess compared to AB engines even if these ran on much slower hardware. And then you wonder why this wasn't the future?

Performance oriented programming is not about humans and human thinking. It's about making ideas as native as possible to how computers actually work.
Rasmus Althoff
https://www.ct800.net
jp
Posts: 1470
Joined: Mon Apr 23, 2018 7:54 am

Re: When will the chess programmers write an engine that plans ?

Post by jp »

Dann Corbit wrote: Tue Mar 24, 2020 8:13 pm
Ras wrote: Tue Mar 24, 2020 6:21 pm If NN had anything to do with the (still weak!) human way of thinking, then you wouldn't need a super high-end graphic card with all its raw computing power to run LC0. And if AB is blindly throwing cr*p against the wall and see what sticks, then NN with MCTS is rolling dice to decide which cr*p to throw against the wall and see what sticks.
If, indeed, Stockfish is a "bean counter" engine (as they say) then LC0 is the "beaniest of bean counters".
That is because a really good GPU like the 2080 TI will do 26.90 TFLOPS in 16 bit mode :
https://www.techpowerup.com/gpu-specs/g ... 0-ti.c3305
So a pair of them has 53.8 TFLOPS in 16 bit mode (which LC0 can use).
Now, a state of the art CPU like the 3990x gives 1571 Gflops in double precision:
https://www.pugetsystems.com/labs/hpc/A ... Linux-1666
So about 3000 Gflops in single precision. That is 3 TFLOPS, Now, that is a staggering number for a CPU. But it is 18 times slower than the two GPUs.
So, if we are to talk about bean counters, the LC0 program is four fold "beanier" than Stockfish.
Yes, you'd think the massive computation Leela is doing would be obvious to everyone just from the extreme heat and noise produced when it's computing, but for some reason many have magical thinking and ignore it all.
Last edited by jp on Tue Mar 24, 2020 8:57 pm, edited 2 times in total.
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: When will the chess programmers write an engine that plans ?

Post by Dann Corbit »

the measurement at Pohl's site:
https://www.sp-cc.de/
Shows that SF has gone from 3020 Elo in May of 2013 to 3495 in March 2020.
Since Elo is an exponential scale, this is incredible progress.
Now, this measures only software progress and not hardware progress.

Which makes me wonder if LC0 can keep up. The reason I say that is by looking at the Elo of the learning curves for NN programs. Those graphs look like a square root function in that they rise very rapidly and then tail off to very small gain. Stockfish growth looks almost linear on the same exponential scale (though not quite).

On the other hand, the NN algorithms are in their infancy, and there is no reason to think that they will not have sustained improvement as well.

An interesting topic.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
Ras
Posts: 2487
Joined: Tue Aug 30, 2016 8:19 pm
Full name: Rasmus Althoff

Re: When will the chess programmers write an engine that plans ?

Post by Ras »

mclane wrote: Tue Mar 24, 2020 8:18 pmLC0 running on the ARM cpu of my cheap tablet doing Arround 1-5 NPS plays very good chess.
Match it against SF on the same tablet and see what happens.

Besides, you're misinterpreting what a node even means for LC0. From the Github page:
NPS: Nodes per second, including NNCache hits and terminal node hits, but excluding nodes carried over from tree reuse. In other words, total playouts generated per second.
Total playouts. Thats actually full games, so a "node" means something completely different from SF's nodes. You're comparing apples to oranges here.
Rasmus Althoff
https://www.ct800.net
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: When will the chess programmers write an engine that plans ?

Post by Dann Corbit »

jp wrote: Tue Mar 24, 2020 8:48 pm Yes, you'd think the massive computation Leela is doing would be obvious to everyone just from the extreme heat and noise produced when it's computing, but for some reason many have magical thinking and ignore it all.
I think it comes from the unfortunate definition of node for NN programs. But it does make them look clever. I guess it is kind of like Rybka nodes, which had *cough* a little fudge factor.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
jp
Posts: 1470
Joined: Mon Apr 23, 2018 7:54 am

Re: When will the chess programmers write an engine that plans ?

Post by jp »

Dann Corbit wrote: Tue Mar 24, 2020 8:59 pm I think it comes from the unfortunate definition of node for NN programs. But it does make them look clever.
Even if they were defined the same way, it wouldn't say anything about how much computation is needed per node. It's a terrible measure of computation. We could create a "great" engine just by making it compute for days or weeks on a supercomputer for each node. I wonder how impressed everyone would be by our super-engine.
User avatar
mclane
Posts: 18748
Joined: Thu Mar 09, 2006 6:40 pm
Location: US of Europe, germany
Full name: Thorsten Czub

Re: When will the chess programmers write an engine that plans ?

Post by mclane »

Ras wrote: Tue Mar 24, 2020 8:23 pm
mclane wrote: Tue Mar 24, 2020 8:11 pmThe 6502 Ed Schröder used is faster. And it ran on 5 MHz.
Thre's no way that a 6502 at 5 MHz is anywhere as fast as a 68k at 12 MHz. Not only because of the clock frequency, but the 6502 is an 8 bit processor while the 68k is 32 bit internally (with 16 bit data bus).
______________

I am relating the 1802 with the 6502.

OK, the language is there - MM5 was in assembly while Glasgow was in CDL, which was claimed to be only 1.5-2 times slower than assembly, which still doesn't make up for the more powerful 68k.
And the MM5 came out 1990. that’s 7 years later.
With much inferior hardware. So the progress must have been in the software (traditional AB!), something that you usually deny.



________________

The 6502 is not inferior then the 1802.
and yes MM5 came out 1990 and mephisto III 1983. that’s 7 years of software development and hardware development.

Thomas nitsches Concept of trying a human way of thinking computerchess is not wrong. It was ahead of its time.
It turned out to be a dead end that just played inferior chess compared to AB engines even if these ran on much slower hardware. And then you wonder why this wasn't the future?

Performance oriented programming is not about humans and human thinking. It's about making ideas as native as possible to how computers actually work.
Performance is not important. We cannot learn anything from performance.
Or from the 150th Stockfish Clone.

Computerchess Must make a qualitative step.
What seems like a fairy tale today may be reality tomorrow.
Here we have a fairy tale of the day after tomorrow....
User avatar
mclane
Posts: 18748
Joined: Thu Mar 09, 2006 6:40 pm
Location: US of Europe, germany
Full name: Thorsten Czub

Re: When will the chess programmers write an engine that plans ?

Post by mclane »

Ras wrote: Tue Mar 24, 2020 8:58 pm
mclane wrote: Tue Mar 24, 2020 8:18 pmLC0 running on the ARM cpu of my cheap tablet doing Arround 1-5 NPS plays very good chess.
Match it against SF on the same tablet and see what happens.

Besides, you're misinterpreting what a node even means for LC0. From the Github page:
NPS: Nodes per second, including NNCache hits and terminal node hits, but excluding nodes carried over from tree reuse. In other words, total playouts generated per second.
Total playouts. Thats actually full games, so a "node" means something completely different from SF's nodes. You're comparing apples to oranges here.
Testing stockfish is a waste of time.
It has no understanding about chess, all it is doing is searching up to 20 plies in a search tree. This is not chess.
What seems like a fairy tale today may be reality tomorrow.
Here we have a fairy tale of the day after tomorrow....
Dann Corbit
Posts: 12540
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: When will the chess programmers write an engine that plans ?

Post by Dann Corbit »

Or we can define nodes as "decided moves from the root", so at 40moves/2hrs gives about 40/7200=1/180 nodes per second for whatever engine/player is playing at that time control. Which is not an unreasonable definition. It took me 3 minutes to decide on one node what we ought to do.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.