15 ms·
I have thought about this too, but I don't think there's an easy answer. To get the number of _good_ moves in a position, one might look at the search distribu
by thomasahle 7y ago
I have thought about this too, but I don't think there's an easy answer.
To get the number of _good_ moves in a position, one might look at the search distribution generated by stockfish or lc0, or a human grandmaster. They'd probably all consider at most 1-4 moves per position.
However, reducing the search to just the top four moves is not something you can do with a simple heuristic. It either takes a lot of engineering or advanced pattern matching. If we could do it easily, making a strong chess engine would be a walk in the park.
I've wondered if the accuracy I achieve stems simply from learning a reasonable opening book. If so the accuracy of the model should deteriorate in the middle and endgame.
That doesn't seem to be the case, however. You can try playing the `raw` linear model yourself by running
play_chess.py -no-mcts
It plays surprisingly reasonable moves :)