I understand that once endgame tablebases get checkmates, they do retrograde analysis and are able to calculate forced wins. However, how do they calculate the checkmate in the first place? Do they just use brute force?
Asked
Active
Viewed 212 times
3
-
My understanding is that they have to first do retrograde for given mate positions, for example. So, the question about how are those generated, and how complete are they, are they restricted to legal mate positions. I don't think we know to list all the mates that are legal continuation from any of the 960 setups, including the standard initial. So, I also wonder the same as op. Which might be putting 2 conflicting questions in one. The "forcing" paths to checmate class how is that found, but how are the very inputs to retrograde, generated/restricted among all EPDs. – – dbdb Feb 23 '24 at 00:26
-
I mean the second question of brute force might be confused with a forward logic computation, as it follows the notion of forces wins, as output. I might be not understanding. – dbdb Feb 23 '24 at 00:28
2 Answers
4
Yes, endgame tablebases are calculated by brute force. That's why we only have complete 7-men tablebases today (which were published in 2012).
When stockfish finds a mate with more pieces than stockfish has calculated until only 7 men are on the board and the tablebases give stockfish the solution for the rest.
Tore Winter
- 64
- 2
2
Roughly, yes. To build a tablebase for a certain material combination you will want to have every legal configuration of those pieces in memory. (in practice one can optimize that a bit) Then you check which of the positions are already checkmate. And yes, then you work backwards and find longer and longer wins. (and then all remaining positions that aren't wins for either side are draws)
koedem
- 3,391
- 10
- 22
-
Which algorithm are they using to calculate all legal configurations for certain material?I could not think of any which would be computable in a reasonable amount of time – Shravan S Jan 11 '21 at 05:39
-
I see Stockfish getting to mates in 70 having many pieces on board. Obviously it cannot be brute force? – Yash Jain Jan 11 '21 at 22:55
-
@ShravanS what do you consider reasonable amount of time here? I mean, if you have for instance king + rook + rook + bishop vs king + rook + rook, you do have on the order of 64 * 63 * 62 * 61 * 60 * 59 * 58 positions. Yes, that is a lot, but there is a reason why we only have tablebases up to 7 pieces. – koedem Jan 11 '21 at 22:56
-
1@edit_profile well, this question is about tablebases, not about engines. Engines do not work by retrogarde analysis. – koedem Jan 11 '21 at 22:57
-
@koedem: ...which can be further brought down by storing all legal wK-bK positions first, and surely both K in check can also be calculated fast. – Hauke Reddmann Jan 14 '21 at 16:49