I googled this question and ended up here. From previous questions, it seems Alpha Zero has not solved chess yet and if it does it will take a very long time. Nonetheless, it may be possible one day. I am wondering whether the programmers, or whichever title designers of the Alpha Zero system prefer to use, have built anything into Alpha Zero to detect if it discovers a solution. Also, even though the time required to solve chess is clearly enormous, even with the power of Alpha Zero has anyone attempted to calculate how long it might actually take? Is it likely to be more or less than 7.5 million years and is it possible it will involve the number 42? Perhaps all chess games can always be concluded in 42 moves with perfect play.
No, it can't.
Even if you had it train on a zillion self-playing games and it miraculously achieved perfect play somehow, we would have no way of proving that it had achieved perfect play without first solving chess some other way and then comparing AlphaZero's play to perfect play in all possible positions.
Its approach simply doesn't result in a solution for chess, it's just a way to find good moves. A solution is a mathematical proof.
Nope. AlphaZero's entire architecture (and the architectures of most other engines) is such that it cannot "find a solution", and in any case, if a solution was to be found it would be through programs meant to do just that. Such programs do not exist, due to the absurd complexity. Also, note that AlphaZero (as far as I know) is no longer under active development.
As for how long, I will just quote from the fundamental paper Programming a Computer for Playing Chess by Claude Shannon
However, even at this figure [prior to this, he gave a conservative estimate of how much stuff is needed for solving chess], there will be 10^120 variations to be calculated from the initial position. A machine operating at the rate of one variation per micro-second would require over 10^90 years to calculate the first move!
Doubt it'd have 42, and I'd guess quicker than 7.5 mil
No, it is impossible, even for Alpha Zero. Solving chess in a scientific sense means to prove the value of every possible move in every possible position. Without a mathematic model still to be found, that means: brute force calculation from the regular starting position (or even all 960 starting positions of Chess960) to a regular end: mate, stalemate, dead position; including the tournament rules: 5fold repetition, 75 moves rule. There will be not enough time to do this. And this is not the task Alpha Zero is created for.
It MIGHT be that Alpha Zero will not be beaten for centuries by man or engine. But that’s not solving chess.
When we talk about chess, we almost always talk about time, because for humans, that is the relevant variable. But when you talk about the space of all games, time suddenly shrinks into the background, and you suddenly realize: "this is an enormous space". When we talk about "proofs", we think of things which are a few to a few hundred pages long. So space is rarely an issue. But suppose we played a game called "Build a Snowflake". The snowflake has to be less than 1 cm in its largest dimension (so it's finite, and realistically so). It follows the physical laws of snowflake construction, so solutions to this game must be physically realizable. What kind of program could solve "Build a Snowflake"?
If we encoded quantum mechanics in a way that only allows the exact set of atomic combinations which result in a snowflake, we could likely produce a program that, while large, is much smaller than, say, the set of all "snowflake images". But what if we didn't trust this program? What if we said: "This program is so far removed from human experience that I reject the notion that it is even a proof." What if we demanded that this program actually provide a "constructive proof" of the set of all snowflakes? Well, it couldn't do it. There are too many ways to build a snowflake, and not enough fundamental particles in the universe. Nor would we live long enough to examine the boundaries of such a "proof".
So suppose that I show you this program, and I call it a "Chess Oracle". I tell you that it has solved chess, and to demonstrate, I offer to let you challenge it with any combination of human and non-human chess players you can muster. What would it take for you to accept that it has "solved chess"? The answer is: it depends on the nature of the proof. If chess turns out to have a subtle and deep symmetry which admits for a compact and comprehensible algorithm that could be described in, say, a few pages, then probably most mathematicians would ultimately accept such a proof, after analyzing it carefully. However, it seems extremely unlikely that such a proof exists.
But if it does, what exactly does that mean? Well, it means that, like the number pi, while the set of all chess games is extremely large, the space required to generate the set of all chess games is rather modest (just like many algorithms to compute the digits of pi are just a few lines long). It would mean that chess is extremely compressible, that it has a compact representation as code that fits into a human-understandable space (so, not > 1 million pages of code). Given the variety of chess games we know about, I think that almost nobody believes that chess can be compressed in this way.
Most likely, any "chess solution" will be a mix of high-level principles, medium-level tactics, and fine-grained exceptions. But let's think about what this means. Ultimately, a chess solution could simply be a collection of the set of all legal chess board states along with a set of best next moves for white or black, along with an indication of whether white or black can force a win with perfect play. And, it is theoretically possible to construct such a solution. You just need to play every possible chess game, and write down the results as you go. Since AlphaGo is just a very fancy "play lots of games and remember the outcome, sorta" system, then AlphaGo could theoretically perform this task.
The reason all the other answers say this is impossible is because the number of games you or AlphaGo would have to play to draw out the full game tree is beyond astronomical. Even if every star in every galaxy had 10 planets full of 10 billion chess players cooperatively building this chess proof non-stop, they would not finish in the lifetime of the universe. Also, they would not have enough space to write it down. But let's say that somehow, they did! When they are all finished, they wouldn't just leave it as one giant game tree. They would look for structure. They would say: "Hmm...in virtually every game, strong development of the queen predicts the winner." And this becomes a high-level principle which characterizes much of the game tree without telling you which move to make. Whereas: "don't trade your queen for a pawn" is a tactic which would appear in nearly every game. And the games where trading your queen for a pawn actually leads to a win would appear as the lowest-level "exceptions".
This tactic described above basically says: "the game tree below the point at which you foolishly traded your queen for a pawn is not worth exploring, because in most branches it leads to a loss with perfect play." And thus, it "prunes" all of those subtrees, which compresses the "proof". The exceptions allow you to develop the tactics above, while saying: "There are 3,284 games in which trading your queen for a pawn leads to a win. These are the board states in which you may make this trade for perfect play." Whereas, there may be 10^30 board states downstream of a "bad QxP", which we can basically ignore because of the tactic. This reduces the size of the proof dramatically.
So if all this is possible, AlphaZero will eventually solve chess, right? Nope. While AlphaZero does "remember" the games it plays (including games it doesn't actually play, but only "imagines" playing), it does so in a sloppy way, not unlike human memory. AlphaZero "remembers" its chess performance via a neural network, which has a rather small capacity compared to the total number of chess games. So even if it were somehow possible for AlphaZero to play every possible chess game, there is no way it could remember all of them, even if you kept expanding the size of its neural network. On the one hand, the neural network does perform the "compression" described above...in an indirect way. And so, it is trying very hard to build that ultimate "chess proof". On the other hand, its ability to distill chess knowledge is quite limited, and it appears that it isn't getting much better than it already is. Perhaps with a larger NN, its play could improve, but most likely there are strongly diminishing returns. At some point, you may need to give it 1000x more memory to increase its win rate against, say, Stockfish by 1%.
Furthermore, we know that while neural networks are very powerful optimization engines, they can get "stuck" in a non-optimal part of the search space. It's entirely possible that instances of AlphaZero running today are already stuck in a "local maximum", and would improve more if they could be nudged out of it. So the architecture of AlphaZero itself is not really conducive to finding a "final proof" of chess (nor was that ever a design goal).
At the end of the day, the real problem here is Very Big Numbers(TM). Our cave man brains are simply not equipped to reason well about numbers much bigger than a few hundred. For instance, if I told you that the majority of orderings of a standard deck of 52 playing cards has never been shuffled in the entire history of playing cards, would you believe me? There are almost 10^68 possible orderings. If the standard card deck has been shuffled a billion billion times since cards have been invented, then we have gone through no more than 10^18 such orderings. That means we would need to do that billion billion shuffles about 10^50 more times to have any chance of seeing all possible orderings. You cannot even intuit how large 10^50 is.
The number of possible chess games is also incomprehensibly large. Just storing the information about which board states lead to a win for white or black or a draw is incomprehensibly large. There are about 2^150 legal chess board states. Each board state can be encoded in about 200 bits, which is about 2^8. So it takes about 2^158 bits to represent every legal chess board state. Way back in 2014, the global computer memory storage was estimated at a ballpark of 2^83 bits. So let's say in a century, we increase storage by 1000x. Furthermore, let's say that our "chess proof" can compress the full game tree by a factor of a billion. It would still take a billion earth-interwebs to store the compressed game tree.
Needless to say, AlphaZero is not getting close to that any time soon.
We can start by asking what it means to "solve" a problem. It seems to me that this is almost an unanswerable question. It means in practice that a sufficient number of "experts" are convinced by the "proof" We have this situation in Mathematics, with the famous Haken-Appel computer proof of the four-color theorem, where a computer essentially reduces a problem about an infinite number of possibilities to a finite (but still huge) number of special cases. The role of the experts in this is to confirm that nothing has been forgotten. AFAIK the jury has almost decided that the proof is OK but slight doubt remains.
If there is to be agreement that chess has been solved, it will have to be arrived at by some process like this. At present we cannot imagine what that process could be, but never is a long time.
It seems quite improbable. The number of moves in the largest chess game possible is in the 5000s, and the number of possible positions even larger than 10^16! Alpha Xero can filter our obviously bad lines, but even afterwards, it has to get to an extremely high depth, which I estimate to be around 200.
My theory is that it is a win for White with perfect play. Black can neutralize white's opening advantage with the move. so White always plays perfectly and gains the small advantage of the tempo.