3 ms·
As the article discusses, there's a bit more than that to store in a position. Specifically you have to store whether or not castling is available for the two
by seanhunter 3y ago
As the article discusses, there's a bit more than that to store in a position. Specifically you have to store whether or not castling is available for the two sides and also whether any pawns are en passant targets, since both of those moves are available (or not) conditionally in a given position based on previous moves in the game.
- timerol 3y agoThere are specific types mentioned to denote rooks that the king is allowed to castle towards, and pawns that can be en passanted
- hinkley 3y agoI don’t think that’s true. Or rather, it’s only true for storing board position not for storing the move history. If you have the entire move history you know that status of each piece.
- kpozin 3y agoIf you have the entire move history, then you probably don't need to store partial board positions.
- hinkley 3y agoOf course it depends on what you're doing with the information. If you're compressing it in order to sort 100 million board positions for a minmax algorithm, it might make sense to use a representation that makes queries cheaper at the cost of size. If instead you're trying to store every competition chess game in history, then it depends on what you're trying to do with them. Look for similar board positions? If you're trying to allow inmates in a Dumas-inspired prison secretly play chess against each other over a covert channel, then detection is the problem. Which might mean compression (fewer signals to hear) or masking the signal as random noise.