Chess will never be solved, here's why

Sort:
MEGACHE3SE

The mirror move  plausibility is directly derived from the rules of chess

shimel42

It can likely be 'solved," as the possible positions and games are finite.

It's also worth noting that, while computers seem to have clearly surpassed humans in terms of play*, they are (afaik), programmed by humans; and thus the determinations of optimal play could still be flawed, even for computing power (until you can map every possible game and analyze that data set).

Even moves that are seemingly obvious (eg - taking a free piece with no obvious giveback in material or position) doesn't necessarily mean the play is optimal, or that taking the piece is correct, as you'd need to examine ever branch to know that for certain (I would think).

 

* not sure if this is correct but I thought I read that no human has beaten the top computers in more than a decade or something (though I don't know how many games that encompasses or if the top computers are free to play against).  It's a little surprising if true, as you'd think that by analyzing computer games you could see what was happening enough to actually compete. 

BigBoiChesster
tygxc skrev:

Has chess been solved? No
Can chess be solved? Yes, it takes 5 years on cloud engines.
Will chess be solved? Maybe, it depends on somebody paying 5 million $ for the cloud engines and the human assistants during 5 years.

Have humans walked on Mars? No
Can humans walk on Mars? Yes
Will humans walk on Mars? Maybe, it depends on somebody paying billions of $ to build and launch a spacecraft.

You are wrong. And if do not believe so, then I would love for you to prove that your postulate is not wrong. Take quantum computing, which is by far the fastest type of computing available right now, with approximately a trillion calculations per second. If we just assume the first answer on Google is correct, then we need to calculate some ~10^40 moves. 

Computational speed = 10^12*s^-1
Moves to be calculated = ~10^-40

I want to leave it as an exercise to you to figure out how many years that would take. Sure, there might exist certain algorithms, which have a great efficiency in terms of solving this issue, but I don't think anything that we know and possess right now will be able to solve chess in 5 years. 

tygxc

@8731

"love for you to prove"

"Take quantum computing" ++ Not even necessary: existing engines can do it.

Computational speed = 10^9*s^-1
Positions to be calculated = 10^17 = Sqrt (10^37 *10 / 10^4) for weakly solving Chess

"how many years that would take" = 5
3 engines * 10^9 nodes/s/engine * 3600 s/h * 24 h/d * 365.25 d/a * 5 a = 4.7 * 10^17

shimel42
BigBoiChesster wrote:
tygxc skrev:
 



Computational speed = 10^12*s^-1

 

Just to clarify, is this a single top computer, or all of the world's computers.  If the latter, couldn't you start chopping away by using multiple devices?

shimel42
tygxc wrote:

@8731

"love for you to prove"

"Take quantum computing" ++ Not even necessary: existing engines can do it.

Computational speed = 10^9*s^-1
Positions to be calculated = 10^17 = Sqrt (10^37 *10 / 10^4) for weakly solving Chess

"how many years that would take" = 5
3 engines * 10^9 nodes/s/engine * 3600 s/h * 24 h/d * 365.25 d/a * 5 a = 4.7 * 10^17

 

Is this just to map positions/games, or does it include some sort of analysis?

DiogenesDue
tygxc wrote:

@8731

"love for you to prove"

"Take quantum computing" ++ Not even necessary: existing engines can do it.

Computational speed = 10^9*s^-1
Positions to be calculated = 10^17 = Sqrt (10^37 *10 / 10^4) for weakly solving Chess

"how many years that would take" = 5
3 engines * 10^9 nodes/s/engine * 3600 s/h * 24 h/d * 365.25 d/a * 5 a = 4.7 * 10^17

Bad info in Red.  Bad calculations derived from bad info in Orange.  There is no credible source for 10^17, this is the personal opinion of Tygxc...and nobody else.  Repeating it 500 times doesn't change that.

tygxc

@8700

"its staggering branching factor" ++ The branching factor of Chess is much smaller than you think. Chess has many transpositions, leading to the same node via different branches.

"This factor creates an exponential number of possible game states"
++ There are no more game states than there are positions.
Legal positions have been counted to be 10^44. Of these only 10^38 result from restricting promotions to either a queen, or a previously captured piece. Of these only 10^34 result from reasonable moves. E.g. 1 e4 e5 2 Ba6? is not a reasonable move.

"making it impossible to solve the game completely" ++ Strongly solving to a 32-men table base is not feasible with present technology. Weakly solving as has been done for Checkers is possible in 5 years, but costs $ 3,000,000 to rent 3 cloud engines and hire 3 grandmasters.

"The number of possible game states is determined by raising the branching factor to the power of the tree's depth, where the branching factor represents the average number of possible legal moves in each position, and the depth is proportional to the average length of the game in half-moves."
++ That is correct: N = w^(2d)
All legal moves: N = 10^44
Promotions restricted to either queen, or previously captured piece: N = 10^38 
Moves restricted to reasonable moves: N = 10^34

For weakly solving only: Nweak = w^d = Sqrt (w^(2d)) = Sqrt (N)

"Using Shannon's number" ++ That is outdated and wrong.

"the game tree for chess has approximately 10^120 nodes" ++ No. There are only 10^44 legal positions, 10^38 with restricted promotions, 10^34 from reasonable moves.

"implausible to search through the game tree exhaustively"
++ With present technology it is not feasible to strongly solve the game for all 10^44 legal positions, but existing computers can exhaust all 10^17 positions relevant to weakly solving Chess: showing how black can draw against any white opposition.

"the optimal move may not exist in every case" ++ In most positions there are several optimal moves. In the initial position white has 19 optimal moves that draw and 1 error that loses: 1 g4?

"predicting the ultimate conclusion of a game, even with complete knowledge of the game state and all possible moves, is entirely impossible"
++ It is correct that no algorithm is possible to evaluate any position being a draw / win / loss except for calculating all the way to the 7-men endgame table base.
That is also how Schaeffer weakly solved Checkers.

tygxc

@8734

"Is this just to map positions/games, or does it include some sort of analysis?"
++ The essence is the roadmap from to initial position to other drawn positions until reaching a 7-men endgame table base draw.
Some imperfect analysis speeds up the process.

DiogenesDue
shimel42 wrote:

Just to clarify, is this a single top computer, or all of the world's computers.  If the latter, couldn't you start chopping away by using multiple devices?

1. Quantum computers cannot be used to solve chess as they currently exist, or even as they are predicted to evolve in the foreseeable future.

2. If you spent the entire world's collected wealth (estimated at ~80 trillion dollars) on the fastest supercomputers (over a quarter million of them), the combined petaFLOPS still take more than a million years to solve the 10^44 unique positions. 

3. There's no basis for 10^17.  It's a made-up number.

DiogenesDue
btickler wrote:

1. Quantum computers cannot be used to solve chess as they currently exist, or even as they are predicted to evolve in the foreseeable future.

2. If you spent the entire world's collected wealth (estimated at ~80 trillion dollars) on the fastest supercomputers (over a quarter million of them), the combined petaFLOPS still take more than a million years to solve the 10^44 unique positions. 

3. There's no basis for 10^17.  It's a made-up number.

Here's some numbers I posted in 2015 and reposted later on...they have not actually changed much for the purposes of this topic.  10^46 is now 10^44, and the supercomputers are faster, but not very much faster:

"100 PetaFLOPS is 10^17 floating point operations/sec. Evaluating a chess position is not 1 operation, mind you, nor is it 10, so let's be kind and say it falls in the 100s order of magnitude, which knocks 10^17 back down to 10^15 positions/second, which is 8.64^19 positions/day, 3.15^22 positions/year.

At that processing rate (assuming infinite memory/storage and ignoring all the issues thereof) you would solve chess in...3.175^24 years. I guess you could amortize a loan for the duration on the $273 million for the supercomputer...

Adding in storage, you solve chess...never (in this scenario).

The fastest supercomputer could solve checkers in a matter of seconds (10^17 FLOPS vs. calculating 10^14 positions), but it will take 3.175^24 years to solve chess. If you spend the entire wealth of the planet (approx. $80 Trillion in currency) to build an array of these supercomputers, approx. 290,000 of them, and use them all for solving chess leaving the human race to starve and die (so we'll also leave as aside the question of who would run the giant computer array), it still would take 3.8 million years to get your answer."

x-3886918705

What?

tygxc

@8739

"1. Quantum computers cannot be used to solve chess as they currently exist, or even as they are predicted to evolve in the foreseeable future." ++ Quantum computers are commercially available and they can run Stockfish if translated from C++ to Python. Quantum computers may be much faster in generating 8- or 9- men endgame table bases in the foreseeable future.

"2. If you spent the entire world's collected wealth (estimated at ~80 trillion dollars) on the fastest supercomputers (over a quarter million of them), the combined petaFLOPS still take millions of years to solve the 10^44 unique positions." ++ Solving Chess does not need a single Floating Point Operation, so petaFLOPS are irrelevant. Indeed strongly solving Chess to a 32-men table base with all 10^44 legal positions is beyond existing technology.

"3. There's no basis for 10^17." ++ There is solid basis for that. Per Tromp there are 10^44 legal positions, but as the 3 displayed randomly sampled positions show, the vast majority has > 3 rooks and / or bishops per side, so they never can result from optimal play from both sides.
Therefore Gourion's 10^37 is a better estimate. It is a bit too restrictive: positions with 3 or 4 queens do occur in perfect games with optimal play from both sides. So multiply by 10 to incorporate these. That is where the * 10 comes from.
However, a random sample of 10,000 positions as counted by Gourion show none can result from optimal play by both sides. That is where the / 10,000 comes from.
Weakly solving only needs 1 strategy to draw for black, not all black moves.
So instead of w^(2d) positions only w^d = Sqrt (w^(2d)) positions
That is where the square root comes from.
So

  • 10^37 from Gourion
  • * 10 to accomodate positions with 3 or 4 queens
  • / 10,000 to remove positions that cannot result from reasonable play
  • Square root as the difference between strongly and weakly solving

Yields: Sqrt (10^37 * 10 / 10,000) = 10^17 positions relevant to weakly solving Chess.

shimel42
btickler wrote:
btickler wrote:

1. Quantum computers cannot be used to solve chess as they currently exist, or even as they are predicted to evolve in the foreseeable future.

2. If you spent the entire world's collected wealth (estimated at ~80 trillion dollars) on the fastest supercomputers (over a quarter million of them), the combined petaFLOPS still take more than a million years to solve the 10^44 unique positions. 

3. There's no basis for 10^17.  It's a made-up number.

Here's some numbers I posted in 2015...they have not actually changed much for the purposes of this topic.  10^46 is now 10^44, and the supercomputers are faster, but not very much faster:

"100 PetaFLOPS is 10^17 floating point operations/sec. Evaluating a chess position is not 1 operation, mind you, nor is it 10, so let's be kind and say it falls in the 100s order of magnitude, which knocks 10^17 back down to 10^15 positions/second, which is 8.64^19 positions/day, 3.15^22 positions/year.

At that processing rate (assuming infinite memory/storage and ignoring all the issues thereof) you would solve chess in...3.175^24 years. I guess you could amortize a loan for the duration on the $273 million for the supercomputer...

Adding in storage, you solve chess...never (in this scenario).

The fastest supercomputer could solve checkers in a matter of seconds (10^17 FLOPS vs. calculating 10^14 positions), but it will take 3.175^24 years to solve chess. If you spend the entire wealth of the planet (approx. $80 Trillion in currency) to build an array of these supercomputers, approx. 290,000 of them, and use them all for solving chess leaving the human race to starve and die (so we'll also leave as aside the question of who would run the giant computer array), it still would take 3.8 million years to get your answer."

 

Never is too long.  wink.png

(and assumes things stay stagnant/progress at whatever current rates are thought possible in terms of computing...)

 

NotMorecry

Very interesting

ognjenradocaj

What a game chess is... It's almost frightening

 

MEGACHE3SE

Tygxc you do realize that a node isn’t a correctly evaluated position right?

your entire calculation is based on that a node correctly looks at a position

ardutgamersus

i eat glue

tygxc

@8740

"Here's some numbers I posted in 2015"
++ You keep repeating the same mistakes.
Weakly solving is not the same as strongly solving.
Weakly solving requires far less positions than strongly solving.
The strong solution includes all weak solutions.
A weak solution shows one way for black to draw against all white opposition, not all ways.
The weak solutions only show how to draw, not how to win if either white or black play an error.

"100 PetaFLOPS" FLOPS = ++ Floating Point Operations Per Second. Solving Chess reaquires zero Floating Point Operations. Count the nodes/s.
Cloud engines reach 10^9 nodes / s, a typical desktop 10^6 nodes/s.

tygxc

@8746

"a node isn’t a correctly evaluated position"
++ A diagram is the location of the men on the board.
A position is a diagram + side to move + castling rights + en passant flag
A node is a position + evaluation + history

"your entire calculation is based on that a node correctly looks at a position"
++ No, the entire calculation is based on jumping from node to node until reaching a 7-men endgame table base draw or a prior 3-fold repetition.
Any engine can weakly solve Chess, only a bad engine takes more time as it will run astray more.
The only real evaluation is that from the 7-men endgame table base.
That is also how Schaeffer weakly solved Checkers: calculation from 19 of the 300 openings to his 10-men endgame table base.
That is also what GM Sveshnikov said: calculate from the opening to technical endgames with modern engines piloted by good assistants.