Thursday, December 17, 2015

[hurogcab] Chess960 castling engine details

When specifying to analyze a position with ambiguous rooks, i.e., when there are two rooks on the same side as the king and castling is possible on that side, how can the user specify with which rook to castle (i.e., which Chess960 FEN extension does the engine accept)?  The UCI protocol does specify this.

In a position with ambiguous rooks, and the user's specification is ambiguous (e.g., they used traditional FEN), what does the engine do?

For nonstandard UCI commands in which the engine emits FEN, e.g., Stockfish's "d" command, what FEN variant does the engine emit?

Moving the king to the destination square can be ambiguous if that is how a castling move is represented.  (E.g., e1g1 is as a castling move in orthodox chess.)  In positions in which both a king-only move and castling are possible, both which leave the king on the same destination square, does the move generator generate both moves as distinct possibilities?  Test MultiPV.  Test both kingside and queenside.  We need test positions in which each possibility is the best move and the other move is terrible.

When both a king-only move and castling are possible, how does the engine specify which of the two moves it wants to make?  The UCI protocol specifies that castling should be denoted as king takes his own rook.

When specifying a position as an initial position followed by a sequence of moves, what format of castling moves does the engine accept?

Does the engine accept king-takes-own-rook as a move when not in Chess960 mode?

Consider a situation in which white has a rook on a1, a king on h1, nothing in between, and the game state indicates that long castling is permitted.  (There is no legal way this could arise.)  Does the engine accept and play such a position properly?

For a UCI client (not engine), what formats of moves, especially castling, does it accept (the output of bestmove)?

For a UCI client (not engine), when specifying a position as an initial position followed by a sequence of moves, does it specify castling in the proper format, or at least, unambiguously (e.g., "O-O")?

No comments :