# Is chess fundamentally harder to "effectively" solve than Go?

• Featured
TL;DR Summary
Typically, the converse is claimed - Go is harder to solve than chess for (among other reasons) simple combinatorics. But for a perfect knowledge player to play effectively against "near perfect players" I think the reverse may be true.
It is universally admitted that error free play in Go requires enormously more information than error free play in chess. To define error free a bit, let us simply posit a complete table base for each game. Though little has been achieved with table bases for Go, in theory the problem is well defined: for any Go position, given the chosen rule set (Japanese, Chinese, etc. ) and komi, what is the final point result for each possible move, given perfect play on both sides thereafter. Then positing the existence of initial position table bases, any player using them plays without error. It is easy to compute that a complete (32 piece) table base for chess is infinitesimal in size compared to a complete Go table base.

However, the point I want to discuss is that for Go, given the absence of draws (except for rare exotic cases that exist only for some rule sets), and the fact that losing moves can be ranked within the rules (by final point score with perfect play), error free play leads to effective play against a "near perfect" opponent (by the error free player using the hypothetical Go table base).

In chess, this is not true at all based on current conjectures. Even though none of the following conjectures have been proven, for the sake of this discussion of the difference between the games I want to assume the following are true:

- the starting position in chess is a draw.
- there are a very large number of error free move sequences from the starting position for which the resulting position has many (e.g. more than 5) moves that are draws with mutual error free play.

I believe that most top chess players as well most theorists believe these are true, though unproven.

If they are true, then effective play for chess cannot even be defined within the rules of the game. The only objective advantage to one drawing move over another is the probability of provoking an error by a less perfect opponent. This is dependent on the particular imperfections of the opponent, and is in principle unrelated to the game rules without an algorithmic model of the opponent.

Last edited:
mfb, artis and Greg Bernhardt

To follow on a bit, in chess (if the proposed conjectures are true) a player using a full game table base, randomly choosing among drawing moves when there are no winning moves, would likely perform in tournaments similar to, say exaggerations of Peter Leko's play (never ever losing but almost never winning; the joke was that his chess memoir would be "My 60 memorable Draws"). Meanwhile, an imperfect player with opponent knowledge (both general, about humans, and specific about the player) could perform much better.

Mentor
One big difference in the two games is determining when to stop. For chess, its primarily a checkmate and less often a draw.

For Go, its who has control of the most regions by area on the board and that is a harder thing to determine.

Gold Member
TL;DR Summary: Typically, the converse is claimed - Go is harder to solve than chess for (among other reasons) simple combinatorics. But for a perfect knowledge player to play effectively against "near perfect players" I think the reverse may be true.

If they are true, then effective play for chess cannot even be defined within the rules of the game. The only objective advantage to one drawing move over another is the probability of provoking an error by a less perfect opponent.
If I understand correctly, you’re essentially conjecturing that a large number of openings are theoretically drawn and there’s potentially no advantage to playing e.g., the Sicilian over the Caro-Kann. I see no reason why that wouldn’t be a possibility. After all, there are certainly cases where a draw is achievable in multiple ways from a given position (a trivial example would be KR vs KB where the rook can be captured by either the king or the bishop). The starting position may be one of these positions, albeit a very nontrivial one. I wonder what the checkers community has to say about this, since checkers is a solved game, to a draw with perfect play, with a pretty extensive opening theory.

If I understand correctly, you’re essentially conjecturing that a large number of openings are theoretically drawn and there’s potentially no advantage to playing e.g., the Sicilian over the Caro-Kann. I see no reason why that wouldn’t be a possibility. After all, there are certainly cases where a draw is achievable in multiple ways from a given position (a trivial example would be KR vs KB where the rook can be captured by either the king or the bishop). The starting position may be one of these positions, albeit a very nontrivial one. I wonder what the checkers community has to say about this, since checkers is a solved game, to a draw with perfect play, with a pretty extensive opening theory.
Checkers is a good example. It is solved to the extent of the program provably never losing. However, it does not have any ability to achieve a win against a skilled imperfect player better than another skilled imperfect player. In fact, it would do worse (in winning percentage).

I am suggesting that games with reasonably wide draw 'windows' cannot be solved to play more effectively than a highly skilled imperfect player purely using the game rules. One must add knowledge of the error profile of imperfect players. This is done implicitly or explicitly in all the exceedingly strong (but imperfect) chess playing programs or AIs (note: for the self learning AIs, what is being learned is the error profile of itself, as its skill improves; the result is never perfect play or anywhere near the mathematical perfection of a 32 piece table base). Any existing chess program could be beaten nearly 100% of the time by an entity with a 32 piece table base plus perfect knowledge of the positions mis-evaluated by the program. Without the at least some of the latter type of information, the table base player would draw an extremely large number of games.

One big difference in the two games is determining when to stop. For chess, its primarily a checkmate and less often a draw.

For Go, its who has control of the most regions by area on the board and that is a harder thing to determine.
Both these issues are fully solved for both games, such that all it would take is effectively infinite compute time and storage to construct table bases. Table bases are constructed by retrogade analysis from terminal positions. For both Go and chess, it is now a well solved problem (in principle) to enumerate all terminal positions.

Gold Member
I guess I’m having a hard time following your reasoning. As I see it, a “mistake” played against a hypothetical 32-piece tablebase comes in three flavors: turning a won position into a draw, turning a drawn position into a loss, and turning a won position into a loss. Other possibilities (e.g., turning a drawn position into a draw in fewer/more moves) won’t change the outcome of the game. Evaluation of a position as we currently understand it (+3 for black, for example) doesn’t really exist for a tablebase. It’s simply “draw with best play” and as soon as the opponent makes a mistake, it’s forced mate in 143.

Human players will often choose to play either sharp openings or drawish openings in tournament settings depending on what their goals for that game are (for instance if they can win the tournament by drawing their last game, or if they need a GM norm). A tablebase comparably might conceivably choose the opening with the most chances for winning (or fewest chances for losing).

In fact, in computer play now, we see that they’re quite drawish, and in fact in tournaments such as TCEC and other demonstrations, they’re often given openings to play to make the games less boring for the human spectators.

dextercioby
I guess I’m having a hard time following your reasoning.
And me, yours.
Human players will often choose to play either sharp openings or drawish openings in tournament settings depending on what their goals for that game are (for instance if they can win the tournament by drawing their last game, or if they need a GM norm). A tablebase comparably might conceivably choose the opening with the most chances for winning (or fewest chances for losing).
The character of "sharp" or "drawish" cannot be derived from the rules of the game. It is characteristic, instead of the algorithms of the imperfect player. There is no such thing as most chances for winning without a model of the error profile of the imperfect player - which is not derivable from the rules.
In fact, in computer play now, we see that they’re quite drawish, and in fact in tournaments such as TCEC and other demonstrations, they’re often given openings to play to make the games less boring for the human spectators.
Agreed, and my claim is that though never ever losing, error free play based on a tablebase would draw even more often against todays top engines than they do against themselves. As a result, it would lose in round robin tournament play (but never in match play) against a selection of today's top engines. My observation is that it is interesting that perfect play (per tablebase) could be less effective in a tournament than imperfect play that includes accumulated knowledge of opponent error profiles (and I claim that all win probabilities and numerical positions evaluations used by top engines are effectively ways of modeling this opponent error profile).

Optimal play against any opponent could be achieved by knowledge of every position the particular opponent evaluates incorrectly (as to drawn/won for white/lost for white), along with a tablebase providing truth.

Last edited:
Gold Member
I'm having a hard time understanding some of the sentences. Note that in Go, a half integer komi (as it almost always chosen), makes the game unfair in that it avoids draws (except very rare cases as pointed out). If I remember well, the game complexity of chess is comparable to that of 13x13 go (chess is only a 8x8 board though). Go on 5x5 boards has been solved, black wins the full board with perfect play, so that the correct fair komi should be 25 points. But even pro players still lose/win on that board.

Gold Member
The character of "sharp" or "drawish" cannot be derived from the rules of the game. It is characteristic, instead of the algorithms of the imperfect player.
This discussion will have to get a heck of a lot more precise in order for us not to talk past each other. When I say tablebase, I’m probably being sloppy but I mean an engine equipped with the entire game tree of chess with every possible branch from any position.

(There’s certainly a sense in which one can precisely define “sharp” or “drawish,” though it might be a digression at this point. Given a starting position with a game tree with ##n## termini, call the position sharp if at least ##n/2## of those termini are a win/loss, and drawish otherwise.)

my claim is that though never ever losing, error free play based on a tablebase would draw even more often against todays top engines than they do against themselves.
There are a few interesting points here. The minimum score that a tablebase would achieve (assuming perfect chess is drawn) in an ##n##-player round robin is ##\frac{n}{2}##, and the maximum is ##n##. For every other algorithm, the minimum score is ##0## and the maximum is ##n-\frac{1}{2}##. So assuming the engines are all roughly equivalent in strength, they will on average score around ##\frac{n}{2}## and the tablebase would score a little higher. However, if one or a few engines are dominant over all the others, then it’s conceivable that they could in fact score higher than the tablebase. Of course, it would have to be the case that the engine wins against opponents that the tablebase draws against, which would seem unlikely (if the opponent turns a drawn position into a lost one, the tablebase always wins whereas any other engine merely might win).

I'm having a hard time understanding some of the sentences. Note that in Go, a half integer komi (as it almost always chosen), makes the game unfair in that it avoids draws (except very rare cases as pointed out). If I remember well, the game complexity of chess is comparable to that of 13x13 go (chess is only a 8x8 board though). Go on 5x5 boards has been solved, black wins the full board with perfect play, so that the correct fair komi should be 25 points. But even pro players still lose/win on that board.
On a 5x5 board, 25 is an unachievable score (it would require no stones played and one player arbitrarily claiming the whole board as territory, in Japanese rules; in Chinese, it would require that white had no surviving stones). Thus, 25 komi is nonsense. The ideal komi is the score difference between black and white with perfect play, plus or minus 1/2.

This discussion will have to get a heck of a lot more precise in order for us not to talk past each other. When I say tablebase, I’m probably being sloppy but I mean an engine equipped with the entire game tree of chess with every possible branch from any position.
Tablebase is a precisely defined term in game theory, and that is not what it is. In some sense, access to tree is needed to construct it (but shortcuts are possible, so less than the whole tree is needed; also, retrograde analysis from terminal positions is used in contruction while a game tree typically uses forward analysis). In chess, it is a list of (position descriptor, resolution). Resolution in Nalimov tables is simply (white wins in x moves with mutual perfect play, draw, or black wins in x move with mutual perfect play). Its size is exceedingly small compared to a complete game tree.

For Go, one would typically use some choice of "area rules" e.g. Chinese, because these require no knowledge of game history (i.e. captured stones) to score a position (relying on the fact that there are theorems characterizing the scoring difference between Japanese rules and Chinese assuming no handicap - thus the Japanese case could be reconstructed without recourse to game history for a normal, non-handicap game). Note that all the landmark AIs like alphago, alphazero etc. used Chinese rules. Then, a table base is a list of (position, final "black score - white score" with mutual perfect play). You need only one table for all komi, since that komi just means subtracting the komi from the recorded difference.
(There’s certainly a sense in which one can precisely define “sharp” or “drawish,” though it might be a digression at this point. Given a starting position with a game tree with ##n## termini, call the position sharp if at least ##n/2## of those termini are a win/loss, and drawish otherwise.)
I don't think this is a meaningful definition. Consider, for a simple specific, the case of a position K+P vs K. Consider a case where the side with P wins. Then, a huge part of the drawn result tree is nonsense where both kings meander away from the pawn for no reason, potentially resulting in draws. This has nothing to do with human or machine play.

Instead, drawish is a characteristic of human (or machine) player knowledge - how reliably a skilled player can find the drawing moves in a theoretically drawn position. If it is easy/reliable, then the position is drawish. Note that this is function of human (or specific program type) playing "algorithm".

There are a few interesting points here. The minimum score that a tablebase would achieve (assuming perfect chess is drawn) in an ##n##-player round robin is ##\frac{n}{2}##, and the maximum is ##n##. For every other algorithm, the minimum score is ##0## and the maximum is ##n-\frac{1}{2}##. So assuming the engines are all roughly equivalent in strength, they will on average score around ##\frac{n}{2}## and the tablebase would score a little higher
So far, I agree completely. A key point is the assumption of engine equivalence.
. However, if one or a few engines are dominant over all the others, then it’s conceivable that they could in fact score higher than the tablebase. Of course, it would have to be the case that the engine wins against opponents that the tablebase draws against, which would seem unlikely (if the opponent turns a drawn position into a lost one, the tablebase always wins whereas any other engine merely might win).
Here is where I disagree substantially. The issue is that the engines position scoring (or win probability scoring in the case of neural nets) causes the engine to effectively seek positions in which broadly similar - but not identical - engines are likely to err. As a result, the likely result is that the winning engine would typically have significant winning advantage over some other engines (e.g. 60/40), while tablebase player would be e.g. 52/48 over all the other engines. Then, such an engine would easily win the tournament over the table base player.

The only way out of this for the tablebase player is to also include a model of imperfect player error profile. Note, that in chess analysis, one often speaks of a position "pressuring" the opponent, even if drawn. This simply means that an opponent of some type (human, engine category) is more likely to err. And, as I keep repeating, this is not derivable from the rules of chess. Instead, it requires modeling classes of imperfect opponent algorithms.

For Go, none of this problem exists. A tablebase player would win 100% of the time against any existing AI, while the AIs win 100% against humans.

Last edited:
To make one of my points concrete, I propose a class of imperfect player whose degree of imperfection is specified by a positive integer k (lower k is more imperfect). No matter the choice of k, this player would lose a sufficiently long match with a tablebase player. However, none of the position evaluations of current strong engines would in any way be relevant to this player. To them, for high k, it would be essentially indistinguishable from a table base player.

So, the algorithm of this new type of imperfect player is to use a table base as follows:
- if the current position is winning, pick a move with the smallest moves to mate
- if the current position is losing, pick a move with largest moves to mate
- if the position is drawn, with probability (k-1)/k pick a random move preserving the draw; else pick a losing move with maximum moves to mate.

Random and probability to be based on true random source, e.g. radioactive decay.

The fundamental distinction between this type of imperfect player and humans or machines is that its error profile is purely random in the deepest sense - no systematic component. Instead, the error profile for any existing machine is completely systematic and (in principle) subject to perfect modeling. For humans, there is both a systematic and random component, with variation in both over the course of a game or from one day to the next.

For this new class of imperfect player, a tablebase player would have no need or possibility of improving on simple use of a tablebase. However, for humans or machines, a substantially greater winning percentage is achievable with knowledge of opponent error profile. Further, this is necessary to match or beat the tournament performance of the strongest existing engine against several somewhat weaker engines.

apostolosdt
Draw in chess is always the players’ agreed upon decision. That’s why there are only a couple of formal rules to enforce a draw, like no legal moves left or repetition of the position. And the opening position is not a draw; had it had been a draw, it would have deprived of both White and Black some of the beauty of the game.

As far as I understand it, the draw situation is necessary in the algorithmic approach of any game on a computer.

Gold Member
On a 5x5 board, 25 is an unachievable score (it would require no stones played and one player arbitrarily claiming the whole board as territory, in Japanese rules; in Chinese, it would require that white had no surviving stones). Thus, 25 komi is nonsense. The ideal komi is the score difference between black and white with perfect play, plus or minus 1/2.
That's exactly what I'm claiming. With perfect play, it's been demonstrated that 5x5 go yields black wins the whole board across, none of white stone can survive. There is no nonsense, no contradiction. Therefore the fair komi should be 25 for this board size.

A quick google search yields http://erikvanderwerf.tengen.nl/5x5/5x5solved.html

That's exactly what I'm claiming. With perfect play, it's been demonstrated that 5x5 go yields black wins the whole board across, none of white stone can survive. There is no nonsense, no contradiction. Therefore the fair komi should be 25 for this board size.

A quick google search yields http://erikvanderwerf.tengen.nl/5x5/5x5solved.html
Thanks, I didn't know that (never heard of playing on less than 9x9).

Last edited:
Draw in chess is always the players’ agreed upon decision. That’s why there are only a couple of formal rules to enforce a draw, like no legal moves left or repetition of the position.
Actually, several major tournaments have banned agreed draws in chess. Theoretically, all draws are stalemate or repetition. For practical reasons, "insufficient material" is added, but it would ultimately be a draw anyway by repetitions. Similarly, the 50 move rule is added as shortcut - in this case, though, it actually changes some positions from wins to draws; but in most cases it simply allows faster resolution than repetition. Programs can deal with the 50 move rule or its removal (for theoretical purity). Without it, you have pure piece mates in e.g. 435 moves, that become draws with the 50 move rule. Finally, perpetual check is obviously repetition or 50 move rule in disguise. Summary: for game theory purposes, no draws are by agreement - all are determined by rules.
And the opening position is not a draw; had it had been a draw, it would have deprived of both White and Black some of the beauty of the game.
Well, almost all experts believe the opening position is a draw, though, as I said, it hasn't been proven.
As far as I understand it, the draw situation is necessary in the algorithmic approach of any game on a computer.

I don't know what you are referring to here. For games without draws (like Go) algorithms have no "draw situation". Chess and checker algorithms find lots of draws because there are so many drawn positions. In chess, for positions far from the terminal draw (as defined by the rules - not by agreement), the "draw with best play" result is rarely formally proven, but there is great confidence when human and multiple machine analyses agree. For checkers, draw with best play from many positions including the start is proven.

apostolosdt
PAllen, thanks for the reminder, but I'm aware of the rules.

Regarding the opening position, what experts do you have in mind? There is no theory proper in chess; the only "theorists", and experts for that matter, are the good players. Openings, statistics, and discussions among players indicate that White has a slight advantage, among others the first move and thus the opening for which he/she has been prepared---no need to expand on that.

As for my last paragraph, yes, I should have been more accurate. I meant that, for a computer program to be declared superior over a human player in an official event, like the computer game olympiads for instance, the program should achieve at least a draw.

Regarding the opening position, what experts do you have in mind? There is no theory proper in chess; the only "theorists", and experts for that matter, are the good players. Openings, statistics, and discussions among players indicate that White has a slight advantage, among others the first move and thus the opening for which he/she has been prepared---no need to expand on that.
In my OP I stated that opening position being drawn and many positions with best play from opening having multiple moves that maintain a draw were conjectures supported by experience, not proven. I wanted the thread to assume these were true, to discuss their implications, not the conjectures themselves. However, in my experience, a vast majority of top GMs and top chess programmers believe these conjectures are true. There is no tension between this and the fact that white has a slight practical advantage.

Supporting the conjectures are the following:

- the stronger the engines the higher the draw rate; as noted by @TeethWhitener , TCEC has even adopted the long established checkers tournament trick of prescribed opening sequences (played for both sides) to avoid ridiculous draw percentages. Human top player experience is largely consistent with this.

- seven piece table bases establish that there are huge numbers of provable draws for different combinations of pieces and pawns [even some for positions where pieces are equal and one side is 2 pawns up]. Further, the results strongly match what human players had concluded earlier - which makes the exceptions interesting (positions previously believed drawn that are not, and positions previously believed won that are actually drawn). Unless the character of the game undergoes some shift for more pieces, this is pretty strong evidence.

Last edited:
Gold Member
In my OP I stated that opening position being drawn and many positions with best play from opening having multiple moves that maintain a draw were conjectures supported by experience, not proven. I wanted the thread to assume these were true, to discuss their implications, not the conjectures themselves. However, in my experience, a vast majority of top GMs and top chess programmers believe these conjectures are true. There is no tension between this and the fact that white has a slight practical advantage.

Supporting the conjectures are the following:

- the stronger the engines the higher the draw rate; as noted by @TeethWhitener , TCEC has even adopted the long established checkers tournament trick of prescribed opening sequences (played for both sides) to avoid ridiculous draw percentages. Human top player experience is largely consistent with this.

- seven piece table bases establish that there are huge numbers of provable draws for different combinations of pieces and pawns. Further, the results strongly match what human players had concluded earlier - which makes the exceptions interesting (positions previously believed drawn that are not, and positions previously believed won that are actually drawn). Unless the character of the game undergoes some shift for more pieces, this is pretty strong evidence.
I fully agree with what you wrote here. As a funny fact that would favor black though, if two players play uniformly randomly, then black has a sligthly higher chance to win than white. But yeah, all points towards draws with perfect play. Might not be the case with all chess 960/Fischer random chess positions though, despite the high symmetry?

I fully agree with what you wrote here. As a funny fact that would favor black though, if two players play uniformly randomly, then black has a sligthly higher chance to win than white. But yeah, all points towards draws with perfect play. Might not be the case with all chess 960/Fischer random chess positions though, despite the high symmetry?
I agree that it is likely (or at least plausible) that a few of the chess 960 starting positions are forced wins for one side.

There was a chess variant I found far more interesting than chess 960 (with prescribed starting positions and complex castling rules), that never caught on. There was one famous match played between GM Arthur Bisguier and GM Pal Benko in this variant, that was surprisingly convincingly won by the former (Benko had much better overall results in conventional chess). The idea was to start with 16 pawns in their standard starting position. The first 8 moves (16 half moves) of the game were each player putting the pieces on the back rank wherever they wanted to, one at a time, responding to where the opponent put them, so far. There were no castling rules at all, since you were supposed to figure king safety into your placement strategy.

Gold Member
One way to test your hypothesis in some way, is to create a program that play worse moves with respect to the stronger program, but plays with a different style, such as more agressively. This weaker program could perform better against a large class of players, yet clearly lose against the top program. I'm sure this has been tested in chess (and possibly reported in talkchess website). For go, I do not know.

Maybe it would be possible to know, by looking at the histogram of ratings (in some suitable ranking system), use.the same parameters in the ranking system for.chess and go and check whether.the.strength of players spans a larger scale for go than in chess.

PAllen
Mentor
Years ago I used to play chess with my friend who while not rated, was exceptional at the game. He was a NY MAA champion and focused on chess as much as his math.

I lost pretty much all of fifty or so games I played with him to the point where he got sloppy and forgot to record our final game. He had a special tell, flipping his pen while playing. If the pen-flip stopped I knew I did some move right and he was stuck in thought.

During our last game, I made a divinely inspired queen sacrifice, he took it and surprise surprise I happened to see a checkmate move and won. He was floored and I’m sure even if he had recorded it, he would have dropped his pen. He couldn't recall the moves we made and wanted an immediate rematch.

I wisely chose to retire from chess realizing this was my highpoint and never played chess against him again having recalled the famous chess game of the amateur playing against GM Lasker for beer.

Lasker let the amateur win thinking that this guy would come back again and again to play providing Lasker with an endless supply of free beer. When the stranger was leaving, Lasker asked when he’d be back for their next game and he said “Why? I just beat a grandmaster. “

Klystron and berkeman
Hornbein
Friend Paul beat friend Arnold 126 times in a row in Scrabble. I happened to be there when Arnold finally won.

Last edited:
sbrothy
Draw in chess is always the players’ agreed upon decision.
A stalemate could be forced be either player without an outright agreement or an (admittedly rookie-ish) error could it not?

sbrothy
Friend Paul beat friend Arnold 126 times in a row in Scrabble. I happened to be there when Arnold finally won.

I'm not a doctor but I suspect we're entering rainman-land or some kind of synesthesia with this guy:

https://en.wikipedia.org/wiki/Nigel_Richards_(Scrabble_player)

Especially this little show-off of his:

"In 2015, despite not speaking French, Richards won the French World Scrabble Championships, after reportedly spending nine weeks studying the French dictionary. He won it again in 2018, and multiple duplicate titles from 2016."

PeroK
Gold Member
Somewhat related to this thread, human player games AI go program. Wins 14 of 15 games.

https://arstechnica.com/information...beats-machine-at-go-in-human-victory-over-ai/
Nice... I myself used to beat the top go AI back in 2016 just before Alphago (it was called Zen, or Zenith Go, and was slighlty stronger than Crazystone, i.e. 6 dan level on KGS). I was a slightly under-average player, and I would do a sort of mirror game, with very few moves not mirrored. The program had a "blind" spot, or weakness, in that it had no special code to counter mirror strategy. A human can quickly learn how to counter the mirror strategy. I was thinking that maybe this person had also tried mirror go, but apparently not. That's a feat.

Last edited:
jedishrfu
Mentor
The strategy sounded like building a big wall around enemy pieces and then closing the trap.

Reminds me of the Tholian Web episode of Star Trek or the Zulu horns of the bull attack.