Tetrarch v5
v5 -- quiescence check evasions. When the side to move is in check,
quiescence searches every legal move instead of standing pat, and reports mate
when there are none. Before this it could not see a mate at all.
Elo | +106.78 +- 6.88 (95%)
SPRT | none -- sprt.py not built yet; fixed-N campaign
Conf | FIXED NODES 20000, Hash=256MB, classic/Teams, 100 workers
Games | N: 10000 (2500 openings x 4 rotations) score 6490.0 (64.90%)
Dist | 28, 6, 224, 30, 832, 40, 895, 22, 423
Null | -2.64 +- 6.24 on the same harness, 10000 games
Base | vs v4
Bench | 93,846,865 perft nodes (unchanged; the bench is perft, not search)
Pins | classic d5: 7,449 -> 7,669 search nodes (103.0%)
Screened +104.68 over 2000 games and the confirm came in above the screen.
The largest single gain in the engine, on the one feature predicted to lose:
it costs nodes, wins nothing on node count, and nodes are depth. That
prediction was borrowed from two-player chess. A seat here can be checked by
three opponents at once, so checks are far more frequent and a quiescence that
stands pat through them is proportionally more broken.