The utility for comparing the generation of all possible chess moves by different board representations.
- comparing the generation of all possible chess moves by different board representations:
- representing the board:
- as an associative array of pieces with their positions as keys;
- as a plain array of pieces with exact correspondence array indices to piece positions;
- as a set of integers corresponding to a particular combination of piece color and type, and where each bit corresponds to a particular piece position (so-called a bitboard);
- parameters:
- position;
- color that moves first;
- comparing mode:
- depth-first;
- breadth-first;
- analysis deep.
- representing the board:
$ go install github.com/thewizardplusplus/go-chess-models/cmd/go-chess-comparator@latest
$ go-chess-comparator -h | -help | --help
$ go-chess-comparator [options]
Options:
-h
,-help
,--help
— show the help message and exit;-fen STRING
— board in Forsyth-Edwards Notation (default:rnbqk/ppppp/5/PPPPP/RNBQK
, i.e., Gardner's minichess);-color {black|white}
— color that moves first (default:white
);-mode {depth-first|breadth-first}
— comparing mode (default:depth-first
);-deep INTEGER
— analysis deep (should be greater than or equal to zero; default:5
).