Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

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

Moderators: hgm, Rebel, chrisw

OneTrickPony
Posts: 157
Joined: Tue Apr 30, 2013 1:29 am

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by OneTrickPony »

But still, ALL engines are losing games.
Only at fast time controls AND/OR from dodgy openings.
Does SF loses a game in Berlin, Ragozin or 1...e5 English mainline at long time controls on decent hardware? If so it should be easy to demonstrate, I am yet to see such game.
Here's Stockfish demonstrating his "almost" perfect chess
Shitty Laptop, shitty opening, very fast time control. Yeah, SF loses in those difficult conditions sometimes :)
The argument is not a 100 -0 sweep. Stop moving the goal post. The argument is Stockfish plays near perfect chess right now under TCEC LTC. And is within 200 Elo.
I am enjoying your demonstration on how imperfect current Stockfish even given a lot of time is. Some very interesting positions, thank you.
Still, I am not convinced it matters when it comes to playing from starting position. It seems in fact very possible that one could complicate the position enough for SF to miss something important. On the other hand if that was the case we would be seeing people or other engines sometimes stumbling into those magical ideas. As it is correspondence was dead even before SF12 came along and clicking around mainline openings it seems very very hard to get even a glimmer of hope for an interesting (in computer chess sense) game. My intuition is that drawing margin is just too big from starting position. You will keep finding positions which are very close between drawing/losing and SF will always (well, for a long time anyway) get some of them wrong. The problem is it seems very hard to get anything like that from starting position as all the mainlines end in somewhat worse but still far away from QP vs Q endgames.
Uri Blass
Posts: 10279
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by Uri Blass »

mwyoung wrote: Wed Nov 11, 2020 2:53 pm
Nay Lin Tun wrote: Wed Nov 11, 2020 2:45 pm A lot of TB positions have been shown in the previous posts where TB can find the win but not the Stockfish. In those positions, the better side already had certain advantage to win.

Practically, you cant create a 32 men TB that also stores chess knowledge about choosing a move that maximise winning chances as they only know win, draw, loss outcomes. There is no priority of choosing better move that restrict opponent play or maximise opponent blunder chance.

As TB are constructed from the same formula, behaviour of 32 men TB will be exactly the same as 7 men TB. When Stockfish play 1. e4 , TB may play Nf6. 2. d4 Ng8 ( because it knows that it could also be draw).

How can TB get a winning position/ chances by randomly choosing any draw moves. How can TB restrict opponent to maximise it's winning chance? Thus being said, TB will almost always play in inferior side of the drawing position and winning positions from multiple posts are almost never happen to TB ( unrealistic).

Thus being said 32 TB would be the easiest engine ever created in chess. Even 100 elo rated human player may even get a draw against 32 men TB by playing 1. Nf3 Nf6 2. Ng1 Ng8 ( 3 fold repetations).
No as I said before you just do the longest conversions to the next peice set in equal postions This is a proven method the caused havic to humans. Maximizing the chance for non perfect players to blunder. Games would have the potential to last 100s to over 1000 move. With max complexity.

I am not convinced that it is maximizing the chance for non perfect players to blunder and I do not see how you practically do it today even for the 5 piece tablebases or the 4 piece tablebases.

The problem is that the longest conversion is dependent on the history of the game because without history move A is good for the longest conversion but with some history move A force an immediate draw because the opponent is going to claim a draw immediately based on repetition rules.

There are easy draws when conversion is very long and I can easily show you examples when even I can make a draw but the longest conversion is very long.

The engine may like this position as white because the distance to draw is long but the fact is that I draw easily with black.

[d]7k/8/6KP/7P/6BP/7P/7P/8 w - - 0 1
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by mwyoung »

Uri Blass wrote: Wed Nov 11, 2020 11:24 pm
mwyoung wrote: Wed Nov 11, 2020 2:53 pm
Nay Lin Tun wrote: Wed Nov 11, 2020 2:45 pm A lot of TB positions have been shown in the previous posts where TB can find the win but not the Stockfish. In those positions, the better side already had certain advantage to win.

Practically, you cant create a 32 men TB that also stores chess knowledge about choosing a move that maximise winning chances as they only know win, draw, loss outcomes. There is no priority of choosing better move that restrict opponent play or maximise opponent blunder chance.

As TB are constructed from the same formula, behaviour of 32 men TB will be exactly the same as 7 men TB. When Stockfish play 1. e4 , TB may play Nf6. 2. d4 Ng8 ( because it knows that it could also be draw).

How can TB get a winning position/ chances by randomly choosing any draw moves. How can TB restrict opponent to maximise it's winning chance? Thus being said, TB will almost always play in inferior side of the drawing position and winning positions from multiple posts are almost never happen to TB ( unrealistic).

Thus being said 32 TB would be the easiest engine ever created in chess. Even 100 elo rated human player may even get a draw against 32 men TB by playing 1. Nf3 Nf6 2. Ng1 Ng8 ( 3 fold repetations).
No as I said before you just do the longest conversions to the next peice set in equal postions This is a proven method the caused havic to humans. Maximizing the chance for non perfect players to blunder. Games would have the potential to last 100s to over 1000 move. With max complexity.

I am not convinced that it is maximizing the chance for non perfect players to blunder and I do not see how you practically do it today even for the 5 piece tablebases or the 4 piece tablebases.

The problem is that the longest conversion is dependent on the history of the game because without history move A is good for the longest conversion but with some history move A force an immediate draw because the opponent is going to claim a draw immediately based on repetition rules.

There are easy draws when conversion is very long and I can easily show you examples when even I can make a draw but the longest conversion is very long.

The engine may like this position as white because the distance to draw is long but the fact is that I draw easily with black.

[d]7k/8/6KP/7P/6BP/7P/7P/8 w - - 0 1
What are you talking about. You don't think it is possible for the computer to know the move history, or the 50 move rule. :lol:

Like I said this method has already worked with tablebase we do have.

Let's setup the postion at the start again with max complexity.

And you do realize that your B.S. postion would never be played into because it would break the max conversion method.
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
Nay Lin Tun
Posts: 708
Joined: Mon Jan 16, 2012 6:34 am

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by Nay Lin Tun »

Complexity or superiority of position come from three sources of methods.

1. better winning chance ( Leela chooses 1.d4 over 1. b4 because during her training with 800 nodes per move, her opponent blundered more when she played 1. d4).

2. Hand Crafted Evaluation of Stockfish prefer 1. d4 over 1. b4 as better mobility and better centre control leads to better winning chances.

3. R- mobility.


Although these methods work only against imperfect opponents, they create better complexities and maximise realistic winning chances.

However, when TB are created, it is created as if playing two perfect opponents ( Theoretically perfect chess should end as draw) and they doesnt know how to punish imperfect opponent until opponent blunder by his own.

Stockfish rarely blunder in initial position, superior positions or drawish positions in TCEC conditions, VLTC, 6 men TB and 88 cores CPU.
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by mwyoung »

Nay Lin Tun wrote: Thu Nov 12, 2020 3:47 am Complexity or superiority of position come from three sources of methods.

1. better winning chance ( Leela chooses 1.d4 over 1. b4 because during her training with 800 nodes per move, her opponent blundered more when she played 1. d4).

2. Hand Crafted Evaluation of Stockfish prefer 1. d4 over 1. b4 as better mobility and better centre control leads to better winning chances.

3. R- mobility.


Although these methods work only against imperfect opponents, they create better complexities and maximise realistic winning chances.

However, when TB are created, it is created as if playing two perfect opponents ( Theoretically perfect chess should end as draw) and they doesnt know how to punish imperfect opponent until opponent blunder by his own.

Stockfish rarely blunder in initial position, superior positions or drawish positions in TCEC conditions, VLTC, 6 men TB and 88 cores CPU.
You are not correct. You are using positional terms to describe a 100 percent tactical game of chess. And a TB knows every position with perfect play. Even losing positions. And can play for the longest conversion.

And you have no clue if Stockfish rarely blunders in initial position. As you would need a 32 man TB to know this is true.

As was shown in are endgame examples. Stockfish does blunder against perfect play. And without TB showing the blunder. You would claim the same thing. SF did not blunder. :D
Last edited by mwyoung on Thu Nov 12, 2020 5:15 am, edited 2 times in total.
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
Collingwood
Posts: 89
Joined: Sat Nov 09, 2019 3:24 pm
Full name: .

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by Collingwood »

Alayan wrote: Wed Nov 11, 2020 10:04 am
Collingwood wrote: Wed Nov 11, 2020 9:06 am
Alayan wrote: Mon Nov 09, 2020 9:35 pm Meanwhile, SF from 1.5 years ago + 6-men got 99.999% of 7-men positions right with a few Gnodes.
This has not been tested. We don't know how many positions SF gets right. Obviously we can't test every one, but it's not obvious how to choose positions to test.
Have all the existing positions been tested ? No. But you don't need to test every position.

Statistical laws tell you that random sampling of a large number of positions will give you a good approximation of the true value over all possible positions.

Aloril did test 10 million positions, which is enough to get the order of magnitude right. I gave the detailed data earlier in this thread.
Random sampling is not good enough, because that will sample huge numbers of trivial positions where e.g. a piece is hanging. We need to cut out trivial positions. How can we do that?

And I did not initially see "+6-men". If that is what Aloril used, I agree with BJNorman that it's not impressive.
Uri Blass
Posts: 10279
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by Uri Blass »

mwyoung wrote: Thu Nov 12, 2020 3:07 am
Uri Blass wrote: Wed Nov 11, 2020 11:24 pm
mwyoung wrote: Wed Nov 11, 2020 2:53 pm
Nay Lin Tun wrote: Wed Nov 11, 2020 2:45 pm A lot of TB positions have been shown in the previous posts where TB can find the win but not the Stockfish. In those positions, the better side already had certain advantage to win.

Practically, you cant create a 32 men TB that also stores chess knowledge about choosing a move that maximise winning chances as they only know win, draw, loss outcomes. There is no priority of choosing better move that restrict opponent play or maximise opponent blunder chance.

As TB are constructed from the same formula, behaviour of 32 men TB will be exactly the same as 7 men TB. When Stockfish play 1. e4 , TB may play Nf6. 2. d4 Ng8 ( because it knows that it could also be draw).

How can TB get a winning position/ chances by randomly choosing any draw moves. How can TB restrict opponent to maximise it's winning chance? Thus being said, TB will almost always play in inferior side of the drawing position and winning positions from multiple posts are almost never happen to TB ( unrealistic).

Thus being said 32 TB would be the easiest engine ever created in chess. Even 100 elo rated human player may even get a draw against 32 men TB by playing 1. Nf3 Nf6 2. Ng1 Ng8 ( 3 fold repetations).
No as I said before you just do the longest conversions to the next peice set in equal postions This is a proven method the caused havic to humans. Maximizing the chance for non perfect players to blunder. Games would have the potential to last 100s to over 1000 move. With max complexity.

I am not convinced that it is maximizing the chance for non perfect players to blunder and I do not see how you practically do it today even for the 5 piece tablebases or the 4 piece tablebases.

The problem is that the longest conversion is dependent on the history of the game because without history move A is good for the longest conversion but with some history move A force an immediate draw because the opponent is going to claim a draw immediately based on repetition rules.

There are easy draws when conversion is very long and I can easily show you examples when even I can make a draw but the longest conversion is very long.

The engine may like this position as white because the distance to draw is long but the fact is that I draw easily with black.

[d]7k/8/6KP/7P/6BP/7P/7P/8 w - - 0 1
What are you talking about. You don't think it is possible for the computer to know the move history, or the 50 move rule. :lol:

Like I said this method has already worked with tablebase we do have.

Let's setup the postion at the start again with max complexity.

And you do realize that your B.S. postion would never be played into because it would break the max conversion method.

1)I do not see how you practically have tablebases for every move history even with simple positions.
In theory it is possible but you need a lot of memory to have a history table to tell you what to do for all the possible histories of moves
and computers today do not have the memory even for tablebases position with less than 6 pieces.

2)Even if we have the tablebases that you suggest then the perfect player may allow weaker player an easy draw with the position that I posted instead of playing something when the draw happens in less moves but it is harder to find the right moves.

Longest conversion is better than random drawing moves in beating weaker players from the opening position but is not the best way to beat weaker players.

Note also that if the perfect player want to beat weaker players in every game then it needs to be not deterministic
otherwise the opponent may simply let the perfect player to draw against itself and remember this game and repeat it against the perfect player and get a draw.
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by mwyoung »

Uri Blass wrote: Thu Nov 12, 2020 8:25 am
mwyoung wrote: Thu Nov 12, 2020 3:07 am
Uri Blass wrote: Wed Nov 11, 2020 11:24 pm
mwyoung wrote: Wed Nov 11, 2020 2:53 pm
Nay Lin Tun wrote: Wed Nov 11, 2020 2:45 pm A lot of TB positions have been shown in the previous posts where TB can find the win but not the Stockfish. In those positions, the better side already had certain advantage to win.

Practically, you cant create a 32 men TB that also stores chess knowledge about choosing a move that maximise winning chances as they only know win, draw, loss outcomes. There is no priority of choosing better move that restrict opponent play or maximise opponent blunder chance.

As TB are constructed from the same formula, behaviour of 32 men TB will be exactly the same as 7 men TB. When Stockfish play 1. e4 , TB may play Nf6. 2. d4 Ng8 ( because it knows that it could also be draw).

How can TB get a winning position/ chances by randomly choosing any draw moves. How can TB restrict opponent to maximise it's winning chance? Thus being said, TB will almost always play in inferior side of the drawing position and winning positions from multiple posts are almost never happen to TB ( unrealistic).

Thus being said 32 TB would be the easiest engine ever created in chess. Even 100 elo rated human player may even get a draw against 32 men TB by playing 1. Nf3 Nf6 2. Ng1 Ng8 ( 3 fold repetations).
No as I said before you just do the longest conversions to the next peice set in equal postions This is a proven method the caused havic to humans. Maximizing the chance for non perfect players to blunder. Games would have the potential to last 100s to over 1000 move. With max complexity.

I am not convinced that it is maximizing the chance for non perfect players to blunder and I do not see how you practically do it today even for the 5 piece tablebases or the 4 piece tablebases.

The problem is that the longest conversion is dependent on the history of the game because without history move A is good for the longest conversion but with some history move A force an immediate draw because the opponent is going to claim a draw immediately based on repetition rules.

There are easy draws when conversion is very long and I can easily show you examples when even I can make a draw but the longest conversion is very long.

The engine may like this position as white because the distance to draw is long but the fact is that I draw easily with black.

[d]7k/8/6KP/7P/6BP/7P/7P/8 w - - 0 1
What are you talking about. You don't think it is possible for the computer to know the move history, or the 50 move rule. :lol:

Like I said this method has already worked with tablebase we do have.

Let's setup the postion at the start again with max complexity.

And you do realize that your B.S. postion would never be played into because it would break the max conversion method.

1)I do not see how you practically have tablebases for every move history even with simple positions.
In theory it is possible but you need a lot of memory to have a history table to tell you what to do for all the possible histories of moves
and computers today do not have the memory even for tablebases position with less than 6 pieces.

2)Even if we have the tablebases that you suggest then the perfect player may allow weaker player an easy draw with the position that I posted instead of playing something when the draw happens in less moves but it is harder to find the right moves.

Longest conversion is better than random drawing moves in beating weaker players from the opening position but is not the best way to beat weaker players.

Note also that if the perfect player want to beat weaker players in every game then it needs to be not deterministic
otherwise the opponent may simply let the perfect player to draw against itself and remember this game and repeat it against the perfect player and get a draw.
This is your issue move history. Yes if you had a 32 man TB. You would know ever game possible to reach that position.

And you really seem to think chess is easy for Stockfish. It is not. Stockfish is a weak player vs perfect play.

Stockfish 12 could never even draw a match vs perfect play. Even if you had a computer with infinite speed. For the simple reason that stockfish uses a type B search.

I love that line... it is possible. I hate to break this to you. Any 32 man tablebase is impossible. Forever....but you only have a issue with myTB as not being practical :lol: :lol:

Let's change TB to god. As this might help you understand this is a mind experiment in perfect chess. Yes God would crush stockfish 12 in a game of chess.

And the funniest joke here is the claim stockfish is within 200 Elo of perfect play. And here is what is funny. Since Stockfish 12, the newest Stockfish has gained over 30 Elo. At this rate Stockfish 14 will play perfect chess! :shock:
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
duncan
Posts: 12038
Joined: Mon Jul 07, 2008 10:50 pm

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by duncan »

Uri Blass wrote: Wed Nov 11, 2020 11:24 pm
mwyoung wrote: Wed Nov 11, 2020 2:53 pm
Nay Lin Tun wrote: Wed Nov 11, 2020 2:45 pm A lot of TB positions have been shown in the previous posts where TB can find the win but not the Stockfish. In those positions, the better side already had certain advantage to win.

Practically, you cant create a 32 men TB that also stores chess knowledge about choosing a move that maximise winning chances as they only know win, draw, loss outcomes. There is no priority of choosing better move that restrict opponent play or maximise opponent blunder chance.

As TB are constructed from the same formula, behaviour of 32 men TB will be exactly the same as 7 men TB. When Stockfish play 1. e4 , TB may play Nf6. 2. d4 Ng8 ( because it knows that it could also be draw).

How can TB get a winning position/ chances by randomly choosing any draw moves. How can TB restrict opponent to maximise it's winning chance? Thus being said, TB will almost always play in inferior side of the drawing position and winning positions from multiple posts are almost never happen to TB ( unrealistic).

Thus being said 32 TB would be the easiest engine ever created in chess. Even 100 elo rated human player may even get a draw against 32 men TB by playing 1. Nf3 Nf6 2. Ng1 Ng8 ( 3 fold repetations).
No as I said before you just do the longest conversions to the next peice set in equal postions This is a proven method the caused havic to humans. Maximizing the chance for non perfect players to blunder. Games would have the potential to last 100s to over 1000 move. With max complexity.

I am not convinced that it is maximizing the chance for non perfect players to blunder and I do not see how you practically do it today even for the 5 piece tablebases or the 4 piece tablebases.

The problem is that the longest conversion is dependent on the history of the game because without history move A is good for the longest conversion but with some history move A force an immediate draw because the opponent is going to claim a draw immediately based on repetition rules.

There are easy draws when conversion is very long and I can easily show you examples when even I can make a draw but the longest conversion is very long.

The engine may like this position as white because the distance to draw is long but the fact is that I draw easily with black.

[d]7k/8/6KP/7P/6BP/7P/7P/8 w - - 0 1
Stockfish thinks white is ahead, while crafty thinks it is equal. Do you know what crafty does to realise it is equal?
OneTrickPony
Posts: 157
Joined: Tue Apr 30, 2013 1:29 am

Re: Perfect chess engine elo ( 32 men TB) can be within 200 of Stocfish in Tcec LTC conditions

Post by OneTrickPony »

And the funniest joke here is the claim stockfish is within 200 Elo of perfect play. And here is what is funny. Since Stockfish 12, the newest Stockfish has gained over 30 Elo. At this rate Stockfish 14 will play perfect chess! :shock:
Stockfish 12 didn't gain 200 ELO over the previous version playing from starting position at long time controls as long as you allow for very small (a few kilobytes) opening books so it plays Berlin, Nimzo, Ragozin and ...e5 vs English (even if you just have e4 e5, d4 d5, c4 e5 it should do just fine).
It gained 200 ELO playing blitz from various starting positions. That's the key thing which is claimed: Stockfish won't lose from starting position not that it's perfect in all positions.