Hacker News new | past | comments | ask | show | jobs | submit login
How God Plays Chess (2018) (chessbase.com)
161 points by akkartik 17 days ago | hide | past | favorite | 36 comments



> “No, no,” said God, “it was really tough. More than 10^35 legal positions

God should know there are approximately 4.8*10^44 legal positions [1].

> Secondly Ken was predicting that the game of chess was a draw, i.e. that probably a majority of all legal positions, including the starting position, would lead to a draw with perfect play.

Only the latter is what the game being drawn means. The majority of legal positions is in fact overwhelmingly to one side's advantage, as is clear from sampling a few dozen random legal positions.

[1] https://github.com/tromp/ChessPositionRanking


To be fair, 10^44 is more than 10^35.


interesting, it may be able to reduce the space -- when one sides peice count exceeds the other, a win (or bad play) could be assumed or proven

that might reduce the search space enough to find an optimal play through to the start game...

that would be fun


> interesting, it may be able to reduce the space -- when one sides peice count exceeds the other, a win (or bad play) could be assumed or proven

Chess engines already do this, just with much much better heuristics than counting number of pieces.

> that might reduce the search space enough to find an optimal play through to the start game...

Sorry, no.


might even be 10^35 ;)


So God plays backwards, so to say. He does what’s called retrograde analysis, “a technique employed to determine which moves were played leading up to a given position” (cf. https://en.wikipedia.org/wiki/Retrograde_analysis)

I had a vague intuition of doing the same (going backwards) to generate the winnable Solitaire card deals, but I didn’t get far with it… Does anyone have experience/ideas on that? FTR: a similar discussion on X, started recently by Jonathan Blow: https://x.com/Jonathan_Blow/status/1865520149891346634

I ended up generating totally random deals, then filtering-out those unsolvable by an algorithm of mine (described at https://FreeSolitaire.win/strategy#remarks). It’s fast & good enough to run on-the-fly, when a player starts a new game. But this isn’t an intellectually satisfying solution.

Note that “The probability of being able to win a game of Klondike with best-possible play is not known, and the inability of theoreticians to precisely calculate these odds has been referred to by mathematician Persi Diaconis as "one of the embarrassments of applied probability"” dixit https://en.wikipedia.org/wiki/Klondike_(solitaire)#Probabili...

We need another genius like Ken Thompson for Solitaire!


Some progress has been made on Solitaire here, although I understand it's still not fully peer-reviewed (I think)

https://arxiv.org/pdf/1906.12314v3


Many thanks for that pointer!

The whole article being ultimately an ad for chess endgame position DVDs of all things was quite a twist.


It's prosocial to mention that the market rate for endgame tablebases is $0 [0][1][2]. (And also that this particular vendor are ethically challenged weasels who steal very labor-intensive GPL projects and try to pass them off as their own [3]).

[0] https://en.wikipedia.org/wiki/Endgame_tablebase#External_lin...

[1] https://syzygy-tables.info/

[2] https://news.ycombinator.com/item?id=40949943 ("Optimizing the Lichess Tablebase Server (lichess.org)")

[3] https://news.ycombinator.com/item?id=27896386 ("Our lawsuit against ChessBase (stockfishchess.org)")


Do endgame tables take the 50 turn rule into account?


Yes and no.

The classic Nalimov bases don't, at all (pure DTM).

The Syzygy bases that are the most common now do, but in a kind of weird way (DTZ50); they try to get to the next zeroing move (pawn push or piece capture) as soon as possible, which means they play optimally from a win/draw/loss perspective no matter what the 50-move counter is but appear to play super-strangely (e.g. they may sacrifice a queen and go into a super-tricky won ending, instead of finding a mate in five).

Galen Huntington has made proper DTM50 bases (http://galen.metapath.org/egtb50/), which basically treats each position as different depending on the DTZ counter, i.e. “kings on a1 and a8 and a queen on c4” is really 100 different positions depending on who is to move and what the DTZ counter is, where some of them may have different mate distances and/or different results. That will give the shortest possible mate _and_ always take the 50-move rule into account. But they are not public, much larger than the Syzygy bases and generally more of a research project.

Any engine that uses tablebases in its search will generally end up playing pretty strangely on the “knowledge horizon”, even when using DTM50 bases, for the simple reason that they will be happy to reach anything the tablebase says is a win, by any means. (E.g., again, if you have 8 pieces and 7-man tablebases and you don't see any other way of mating, sacrificing your queen to get into a won 7-man ending will be your best move.)


The standard syzygy bases of course do, they are designed for practical play. Some table base developers in the past took pleasure announcing mate in several hundred moves in certain positions and this had made headlines in the past, hence the confusion maybe.


Ah, cool, interesting.

Does the 50 turn rule make the analysis harder or easier? My gut says easier because it creates some limit that should, I guess, let you prune some extra cases somehow… but it does add some extra state which is weird. Two otherwise identical board states become no longer identical depending on how you got there…


You don't keep track of it as extra state - positions are already processed in increasing order of shortest mate, you stop once you hit 50.


That's not really how it works, though, as the counter is reset back to 0 once a capture happens or a pawn is moved (as both of those are irreversible and thus represent some abstract proof of progress towards a resolution of the game).


I didn't know that anecdote. The point that a perfect chess engine would not necessarily be hard to play a draw against (until you accidentally play a losing move) is one that many people miss.

Although it could of course use some strong existing engine to pick a move in drawn tablebase positions. I assume Stockfish already does that.


> Although it could of course use some strong existing engine to pick a move in drawn tablebase positions. I assume Stockfish already does that.

This is commonly called “swindling” and Stockfish does not do it. There are other engines that do (you do a normal search where the losing moves are never considered, and then pick the best one from there).


Chessbase is one of those pieces of software that would be completely eaten by a cheaper alternative if the market was bigger. $400+ for a single download, selling mostly open source data, and it looks like it was made in 1998.

The thing is, there is money in chess but not that much money. There will never be a unicorn in chess software.


Open source may have eaten the other end of the market. Lichess is good: not as feature rich as Chessbase and a less complete database, last time I checked, but less buggy and faster for some purposes.

It's hard to imagine a competitor at say $50 that did say 80% of Chessbase's functionality would sell many copies. It needs to be 150% of Chessbase and cost $200.

Scid (and forks) also exists in the open source world. It works just fine but the UX is lacking; I've never met a serious player who relied on it. It's the GIMP to Chessbase's Photoshop. So the UI needs to be great or to be a clone of Chessbase's.

There's also Chessbase mobile which was an amazing product when it first came out. It has the three features people really want from Chessbase: search for a position, search for a player's games, run engine analysis. All in the cloud. For something like $6.99. Sadly Chessbase seem to underprovision servers for it and Android nerfed it by preventing you plugging in strong OS engines. But it's a sign they can give away the product if they need to get into a price war.


Scid exists of course, I've used it since forever and it works fine. But you have to find your own games to fill it with (probably from The Week In Chess) and it looks like Linux did in 1998.

Most of my opening stuff is just in a bunch of Lichess studies these days though.


Really appreciate the Leko story about the endgames. He's the top level commentator that I enjoy the most, but I don't always understand what he says in his analysis. Leno's Banter Blitz was also quite fun to watch - https://m.youtube.com/watch?v=5-eGwi2NSmY


ChessBase is a horrible program and you don’t need it to get your own tablebases. You can generate your own with:

https://github.com/syzygy1/tb

But everything up to 6 pieces is on BitTorrent these days. The 7 piece tablebase is 20TB or so, so it’ll be a few years before you can fit that one your phone. Pretty sure Lichess has an API for that. Never tried to hook it up to Stockfish or Leela though.


You definitely do not want to generate your own 7-man tablebases. It took computers with hundreds of gigabytes of RAM over a year to construct. :-) Even 6-man takes quite a while. (345 you can do easily enough now.)

You don't need to muck around with BitTorrent to get them; several mirrors have them over HTTP.


On the off chance you’re _the_ Sesse, can I thank you personally for your analysis site. Pretty sure I saw it hit 5000 viewers during Ding’s magnificent win this week.


I am, and you're welcome :-) It very briefly passed 6k, AFAIK. (The interest during Carlsen–Caruana was much higher, but that's just a natural fact of who's playing.)


I have trouble believing in God, but when I play chess, I sometimes get the sense that it’s not me and the opponent playing against each other, but God playing against himself. I guess it’s something to do with the mystery of insights.


Dunno if it’s just the timezone difference, but whenever I play, God’s drunk.


not to be confused with "Drunk Magnus", a very strong player.


Do you mean that in the sense of that old quote, "we are the universe experiencing itself"?


Yes, indeed. It’s like you are witnessing the unfolding of the universe with each move.


Love the Leko anecdote.


Dice, no; chess, yes.


Backgammon, most likely.


Maybe I'm missing the point, but this seems like a long-winded way to say "most positions are a draw, and theoretically losing material doesn't matter if you can still force a draw eventually"


e4, best by test




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: