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: 12538
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 »

mclane wrote: Tue Mar 24, 2020 9:11 pm
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.
Testing LC0 is therefore a waste of time. All it is doing is searching up to 15 plies[*] in a search tree. This is not chess.

[*] Yes, I know that plies are not the same either, but as long as we are counting nodes we may as well count plies.
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 »

Dann Corbit wrote: Tue Mar 24, 2020 8:59 pmI 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.
Maybe I should only count nodes with White to move as printed nodes and label Black's moves just as "reply nodes". That would make my engine seem twice as clever. Or even better, only counting full search nodes and disregarding Quiescence nodes because I could label the latter as part of the evaluation, not of the search.

mclane wrote: Tue Mar 24, 2020 9:09 pmI am relating the 1802 with the 6502.
So? The MM5 was with 6502, the Glasgow with 68k. The 1802 is irrelevant for comparing these two machines.
Performance is not important.
Just a few postings ago, you pointed out that the Glasgow was a world champion, and now performance doesn't count? You're contradicting yourself.

Plus that not understanding LC0 is only half of your reasons why you imagine human thinking into that engine; the other is of course that it's a serious rival for Stockfish. At least when LC0 enjoys 20 times the raw computing power. Uhm wait, you decried engines betting on hardware.. but that's just another point where you contradict yourself.

Of course performance matters, and we did learn a lot from that. Magnus Carlsen was probably in the first generation of super-GMs who grew up with engines, and look at his style!
Rasmus Althoff
https://www.ct800.net
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 9:11 pmTesting stockfish is a waste of time. It has no understanding about chess
Just as LC0. Or do you really think that tons of linear algebra and playing games through until the end has anything to do with chess? Not understanding neural networks isn't an argument for fantasising human thinking into them.
Rasmus Althoff
https://www.ct800.net
Dann Corbit
Posts: 12538
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 »

I will say this for what I think is mclain's attempted definition of chess.

If you take games like the Evergreen game and the Immortal game, or some of Morphy's games or any other chess genius you like and analyze them with a powerful computer engine (and yes, LC0 will work for this too) you will see that there are mistakes in these beautiful games.

In fact, if played perfectly, they would not be nearly so gorgeous. I think what mclain really wants to see is beauty.

On the other other hand, I think that chess engines make spectacularly beautiful moves about as often as humans. If you pour over the TCEC games and play through them with something like Winboard, you will see fireworks and slow strangulation and sacrifices and everything else that you would hope for in human games (OK, we rarely see pawn storms or fortresses, but some day that will come).

I think in almost every game between chess engines with a decisive outcome, the winner out calculated the loser. I think this is also true in human games. You might object, "Some human games are won by tedious opening preparation!" But of course, that is calculation too. It just wasn't done while they were sitting at the table.
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.
MonteCarlo
Posts: 188
Joined: Sun Dec 25, 2016 4:59 pm

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

Post by MonteCarlo »

Ras wrote: Tue Mar 24, 2020 8:58 pm Total playouts. Thats actually full games, so a "node" means something completely different from SF's nodes. You're comparing apples to oranges here.
This is simply wrong. Leela does not perform playouts of the whole game in its search.

A playout means navigating from the root via the PUCT algorithm until an unevaluated position is reached.

Then that position is evaluated, and the stats updated.

This can be conveniently confirmed by reading the definition of a "playout" on the same page you got the other definition from :D
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 9:17 pm
Dann Corbit wrote: Tue Mar 24, 2020 8:59 pmI 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.
Maybe I should only count nodes with White to move as printed nodes and label Black's moves just as "reply nodes". That would make my engine seem twice as clever. Or even better, only counting full search nodes and disregarding Quiescence nodes because I could label the latter as part of the evaluation, not of the search.

mclane wrote: Tue Mar 24, 2020 9:09 pmI am relating the 1802 with the 6502.
So? The MM5 was with 6502, the Glasgow with 68k. The 1802 is irrelevant for comparing these two machines.
Performance is not important.
Just a few postings ago, you pointed out that the Glasgow was a world champion, and now performance doesn't count? You're contradicting yourself.

Plus that not understanding LC0 is only half of your reasons why you imagine human thinking into that engine; the other is of course that it's a serious rival for Stockfish. At least when LC0 enjoys 20 times the raw computing power. Uhm wait, you decried engines betting on hardware.. but that's just another point where you contradict yourself.

Of course performance matters, and we did learn a lot from that. Magnus Carlsen was probably in the first generation of super-GMs who grew up with engines, and look at his style!
The program thomas nitsche made came out in 1983 first on a 6.1 MHz 1802 and later on a 8 MHz 1807,
In 1984 it participated in Glasgow in the championship,

On a 68000 MHz with wait states (rom and ram were not so fast at that time).
So thomas nitsche made the program in 1983.

Bringing out a commercial chess program in 1983 that has such a different method of Working is IMO a big success.
Especially if we consider that in Glasgow richard Lang also participated with a 68000 hardware (8 MHz) and the other competitors used 6502 with up to 6.5 at that time .

One of the participants used A strategy. The direct opposite of thomas nitsches ideas.

I do not see mephisto III as an example for a chess engine that is doing planning.
But I see it as an example of a commercial chess computer engine that used a human like approach.

This was 1983.
Today is 2020.

Hardware and Software have made almost infinite progress. It’s IMO time to start an AI approach today.
In 1983 it was difficult to do so.
Last edited by mclane on Tue Mar 24, 2020 10:06 pm, edited 3 times in total.
What seems like a fairy tale today may be reality tomorrow.
Here we have a fairy tale of the day after tomorrow....
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 »

MonteCarlo wrote: Tue Mar 24, 2020 9:44 pmThis can be conveniently confirmed by reading the definition of a "playout" on the same page you got the other definition from :D
Thanks for the hint. :-)
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 »

mclane wrote: Tue Mar 24, 2020 9:52 pm Hardware and Software have made almost infinite progress. It’s IMO time to start an AI approach today.
In 1983 it was difficult to do so.
Someone will need to sponsor a prize as incentive.
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 9:52 pmBringing out a commercial chess program in 1983 that has such a different method of Working is IMO a big success.
Only that it was rapidly overtaken by others because AB did make a lot of progress in software, something that you usually deny. Glasgow's method simply turned out to be a dead end, which is why that approach didn't make it. Worse result even with more powerful hardware just isn't a good recipe.

But even if you are finally ready to admit that AB software progress has been huge, then we can still take the Mephisto Amsterdam from the same era (world champion of 1985, one year later). Also 68k at 12 MHz, and instead of the 1776 Elo of the Glasgow, the Amsterdam already delivered 1936 Elo.

Also, even with wait states, the 68k was a lot faster because it had 32 bit registers, and a lot of them compared to the 6502, and a pretty orthogonal instruction set instead of the accumulator design. Also, it could fetch 16 bit of data at once on the external data bus. 6502 at 5 MHz was no match for a 68k at 12 MHz. What do you think why Ed was so, ahem, annoyed when HG nailed him to the 6502 line while giving Lang all the goodies of the 68k power?
Rasmus Althoff
https://www.ct800.net
carldaman
Posts: 2283
Joined: Sat Jun 02, 2012 2:13 am

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

Post by carldaman »

jp wrote: Tue Mar 24, 2020 11:21 am
carldaman wrote: Tue Mar 24, 2020 5:43 am I for one have always been interested in a chess program that can emulate human play, including some of the human weaknesses.
The challenge is to emulate strong humans. The more a programmer is happy to sacrifice in playing strength, the easier it becomes to make it fake (weak) humans.
Yes, I am biased towards strength rather than weakness, but we would need to have human error sprinkled into the chess moves. Some mistakes should be refutable [by that I mean by other humans, and not engines], others not as easily, just like with a strong human player's moves. AFAIC, I would like to see a human-emulator somewhere between master and average GM strength. One's mileage may vary, of course.