Chess will never be solved, here's why

Sort:
tygxc

@7018

"then Stockfish algorithm with search depth tweaked to something like 10000 ply"
++ There is no need or even use for such a depth. Depth 200 ply is more than enough.

"play perfect games, and also in analysis mode trivially tell you which moves, in any position are winning/drawing/losing." ++ In any position would be strongly solving and that is not feasible as 10^44 legal positions are too much. However, all paths from the initial position to a 7-men endgame table base draw is doable in 5 years and weakly solves chess.

Here is an example:
https://www.iccf.com/game?id=1164344
A perfect game in 57 moves from the initial position to a 7-men table base draw with optimal play from both sides.

tygxc

@6988

"Without a definition, in fact, even with a definition, even only one assistant will give different answers at different times. Humans just aren't as consistent as you believe."
++ An ICCF (grand)master will not resign in a drawn position or agree on a draw in a won position. The human intervention is the equivalent of either resigning or agreeing on a draw. After 1 e4 e5 2 Ba6? white resigns. The question is not about evaluating a position, that cannot be done neither by a human, not by an engine, only by calculating towards the 7-men endgame table base. The question is about dismissing certain legal possibilities like 1 e4 e5 2 Ba6? or about terminating calculation like in a drawn opposite color bishop endgame.

"It could very well be that starting pos is a draw, and after Ba6 it is still draw."
++ No. The initial position is a draw. The position after 1 e4 e5 2 Ba6? is a loss for white.
I have even given a proof game above.

"So most of the time the assessment of the assistant is unnecessary"
++ The assistants do not assess positions. They launch the calculation from  meaningful starting points (not from 1 e4 e5 2 Ba6?) and they occasionally terminate a calculation when they know for sure a draw is inevitable, like in opposite colored bishop endgames.

"all of the time it is an incredible slowdown" ++ No, the humans speed up the process by not launching pointless calculations like from 1 e4 e5 2 Ba6? and by occasionally terminating pointless calculations like in drawn opposite colored bishop endgames.

"Deep Blue was capable of evaluating 200 million positions per second"
++ Modern cloud engines reach 1 billion nodes per second.

"You want to put a human in there to evaluate every position where there is a clear material difference." ++ No. The human launches the calculation from a meaningful starting point, preferably with 26 men and either equal material, or unequal material with identifyable compensation. Then the engine calculates until the 7-men endgame table base essentially without any human intervention. In rare cases the human intervenes to terminate a calculation when the outcome of a draw is inevitable like in opposite colored bishop endgames. It is the humans from 32 to 26 men, the engine from 26 to 7 men, and the table base at 7 men.

"Lets say something like e4 a6 Bxa6 Nxa6"
++ That is a clear loss for white. No need to launch any calculation from there.
1 e4 a6 might be enough to draw or not, but it would not be the first choice of the assistants, that would be 1 e4 e5. So 1 e4 a6 would not be calculated at all.

"I hope you are aware that computers typically do selective search already, so they do spend less time on weak moves?" ++ Once a calculation is launched, the humans do not intervene, except in rare cases like after reaching a drawn opposite colored bishop endgame.

"Or the Alpha Zero algorithm, which will use neural nets to do super fast and often superior guesses of the value of a position without the need for a human?"
++ The point is that in solving Chess, for most positions we cannot depend on any evaluation, either human, or AlphaZero algorithm, as all such evaluations are known to be wrong once in a while. The only way is to calculate with enough depth to reach the 7-men endgame table base.
That is also what GM Sveshnikov said: "I will bring all openings to technical endgames".
So start from a meaningful opening (not 1 e4 e5 2 Ba6?) and then calculate until the 7-men endgame table base.

Botlosenik
tygxc wrote:

@7018

"then Stockfish algorithm with search depth tweaked to something like 10000 ply"
++ There is no need or even use for such a depth. Depth 200 ply is more than enough.

"play perfect games, and also in analysis mode trivially tell you which moves, in any position are winning/drawing/losing." ++ In any position would be strongly solving and that is not feasible as 10^44 legal positions are too much. However, all paths from the initial position to a 7-men endgame table base draw is doable in 5 years and weakly solves chess.

Here is an example:
https://www.iccf.com/game?id=1164344
A perfect game in 57 moves from the initial position to a 7-men table base draw with optimal play from both sides.

You seem not to have taken the time to read the conversation properly before replying. What we were talking about here was INFINITE speed/memory. 10^44 is nothing compared to infinity.

RemovedUsername333
btickler wrote:

...It's New Year's Eve.  Time to move on from your unbreakable windmill.


Brian, it's New Year's Eve. Time to move on from your idea that anyone cares what you have to say

tygxc

@7021

"10^44 is nothing compared to infinity"
++ That is right. With infinite speed chess is strongly solved in no time.
With present finite speed 10^9 nodes/s it takes 5 full years to weakly solve Chess, like done for Checkers. Weakly solving Chess takes 1000 times more than Schaeffer did for Checkers: 10^17 instead of 10^14 relevant positions.

DiogenesDue
RemovedUsername333 wrote:

Brian, it's New Year's Eve. Time to move on from your idea that anyone cares what you have to say

Are you still around?  You've been so quiet I thought you must have dropped out of high school or something.  Still going with the bad info somebody gave you, I see.   

P.S. Pretty childish, doing all those downvotes with your alt accounts.  That's 3 in as many minutes.  Whereas the downvotes you countered with upvotes on your own post came from different people.

P.P.S. "Candor"

RemovedUsername333
Botlosenik wrote:
tygxc wrote:

@7018

"then Stockfish algorithm with search depth tweaked to something like 10000 ply"
++ There is no need or even use for such a depth. Depth 200 ply is more than enough.

"play perfect games, and also in analysis mode trivially tell you which moves, in any position are winning/drawing/losing." ++ In any position would be strongly solving and that is not feasible as 10^44 legal positions are too much. However, all paths from the initial position to a 7-men endgame table base draw is doable in 5 years and weakly solves chess.

Here is an example:
https://www.iccf.com/game?id=1164344
A perfect game in 57 moves from the initial position to a 7-men table base draw with optimal play from both sides.

You seem not to have taken the time to read the conversation properly before replying. What we were talking about here was INFINITE speed/memory. 10^44 is nothing compared to infinity.


This is a fair point to make in all cander. One property of infinity is that it is always greater than any finite number. This can be demonstrated through a simple example. Imagine a counting sequence starting at 1 and continuing indefinitely. No matter what finite number you choose, there will always be a larger number in the sequence. For example, if you choose the number 10, there will be 11, 12, 13, and so on in the sequence. If you choose the number 100, there will still be larger numbers in the sequence such as 101, 102, 103, and so on. This illustrates that no matter how large a finite number you choose, there will always be a larger number in the sequence, and therefore infinity is larger than any finite number.

This idea can be extended to the concept of infinite speed or memory. If something were to have infinite speed or memory, it would be able to perform tasks or store information at a rate that is limitless and unbounded. In comparison, a finite speed or memory, no matter how large it may be, would always be limited and bounded in some way. For example, a computer with 10^44 bytes of memory would eventually fill up and be unable to store any more information, whereas a computer with infinite memory would never reach this limit.

tygxc

@7026

"what that means in ever solving the game of chess with Stockfish"
++ Just give enough time to reach enough depth to hit the 7-men endgame table base.

Elroch

Stockfish set to 10000 ply would not only be geologically slow, it would also be unreliable. It is obvious it can only get to any large depth by ignoring lines that a cursory evaluation concludes are "not promising". Such evaluations are wrong at a rate that is not only non-zero but significant to getting the right answer (hence Stockfish' unquestionable imperfection).

Note that an engine losing a game means it got the choice of a move dead wrong at some point. What it thought was a move that was the very best was actually a blunder that gave away the game. That sentence shows the degree to which engines are unreliable. This doesn't stop being true with more time per move, it just becomes rarer (at very high computational cost).

tygxc

@7028

"Stockfish set to 10000 ply"
++ There is no need for 10,000 ply. 238 ply is more than enough.
Perfect games from the ICCF WC finals lasted between 13 and 119 moves, 42 moves average, with standard deviation 16.

BrandonMcNugget

At least not in the near future

tygxc

@7030

"At least not in the near future"
++ Depending on somebody willing to fund a 5 year project of 3 million $ with 3 cloud engines and 3 grandmasters.

tygxc

@7034

"Why does stockfish need to reach the table base." ++ Because the evaluation of the 7-men endgame table base is exact draw/win/loss and the evaluation of Stockfish is only approximate.

"You have already claimed Stockfish plays perfect chess."
++ Not my claim. My claim is that at 17 s/move on a billion nodes per second engine the optimal move is always among the top 4 engine moves with 1 error in 10^20 positions.

"Can anyone tell me why Stockfish can not solve this position"
++ Stockfish can solve this position if you give it enough time to reach sufficient depth.

"And when you run Stockfish you will see Stockfish is hitting the table bases"
++ Once the 7-men endgame table base is hit play is perfect. 

tygxc

@7039

This position is not relevant and cannot result from the initial position by best play from both sides.

Botlosenik
Elroch wrote:

Stockfish set to 10000 ply would not only be geologically slow, it would also be unreliable. It is obvious it can only get to any large depth by ignoring lines that a cursory evaluation concludes are "not promising". Such evaluations are wrong at a rate that is not only non-zero but significant to getting the right answer (hence Stockfish' unquestionable imperfection).

Note that an engine losing a game means it got the choice of a move dead wrong at some point. What it thought was a move that was the very best was actually a blunder that gave away the game. That sentence shows the degree to which engines are unreliable. This doesn't stop being true with more time per move, it just becomes rarer (at very high computational cost).

For "geologically slow", you seem to not have gotten the context, someone suggested infinite speed, which obviously means nothing will be slow.

As for your bold text, it also misses the mark. The idea is, suppose you got a mate in 5 (M5) position, all opponent moves will lead to lines that are mate in five. Maybe it is easier to assume that the winning side is also forced to mate in 5 moves first, to get the point across. SF will easily find this in almost no time, and it does so by brute force testing all lines. Normally when SF does a tree search, it does not get to a mate in most leaf nodes of the search tree, and it has to use its strategy function to estimate the value of a position. But this is not the case when there is a mate or a direct draw (like stalemate) on the board. For this case, it does not have to make this estimate/guess, it will just slab on its score for win/draw/loss. If all leafnodes in its search tree are either mate or direct draw, there is zero guessing, all it has done is brute force checked every line to mate/draw. Now, you can do the same with M6, same result. But if you try something like M30, it at best will take quite some time to find this forced mate. All I am suggesting is that no matter how high you set the value n for mate in n, it will do the same thing, and find a perfect answer with no guessing. And since the maximum number of moves in a legal game is about 5000 moves, (a quick google suggested 5899, I think this is inaccurate, but it is something like that), by setting your search depth at that number, you should be able to force the engine to go this deep in every line, again giving zero guessing, only a brute force search.

Someone suggested that SF does not work exactly like that, I have not bothered to look into that. I do know that simple Alpha Beta searches work the way I described, I have not studied the latest tree search tricks, but it would surprise me quite a bit if you cannot make the engine brute force to a certain search depth quite trivially.

 

Edit: For last paragraph, after a quick google:

https://www.chessjournal.com/stockfish/#Does_Stockfish_use_Minimax_algorithm

In other words, it appears that Stockfish does not use the Shannon Type B search algorithm, but rather a variant of Minimax, meaning that my first paragraphs are correct, and the someone who suggested SF does not work like that, is mistaken.

tygxc

@7042

"the maximum number of moves in a legal game is about 5000 moves, (a quick google suggested 5899" ++ 5898.5 due to the 50-moves rule. https://wismuth.com/chess/longest-game.html However, from the initial position a 7-men endgame table base draw or a prior 3-fold repetition is reached long before 300 moves.

MARattigan
tygxc wrote:

@7039

This position is not relevant and cannot result from the initial position by best play from both sides.

Just out of interest - can the initial position be reached from the initial position by best play from both sides? 

If not, are there any positions that can be reached from the initial position by best play from both sides?

Do tell us!

tygxc

@7045

"can the initial position be reached from the initial position by best play from both sides?"
++ The initial position is the initial position.

"are there any positions that can be reached from the initial position by best play from both sides?" ++ Yes, more than 10^17 and less than 10^44.
Example
https://www.iccf.com/game?id=1164344

In 57 moves from the initial position to a 7-men endgame table base draw, from one drawn position to the other.

MARattigan

Oh thanks! Now we know.

MARattigan
btickler wrote:
...

P.P.S. "Candor"

P.P.P.S. "Candour"