1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-29 16:23:09 +00:00

Prune ttMove like any other

This should reduce search inconsistencies, and doesn't seem to have a measurable ELO Impact:

STC with Hash=16
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 49264 W: 10076 L: 10007 D: 29181

LTC with Hash=64
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 82149 W: 14044 L: 14023 D: 54082

Plus an extra test, to make sure it doesn't regress with strong hash pressure:

STC with Hash=4
LLR: 2.95 (-2.94,2.94) [-4.00,0.00]
Total: 21498 W: 4327 L: 4246 D: 12925

Bench: 7302735

Resolves #100
This commit is contained in:
lucasart 2014-11-07 21:40:24 +00:00 committed by Joona Kiiski
parent 375797d51c
commit 7ebb872409

View file

@ -747,7 +747,6 @@ moves_loop: // When in check and at SpNode search starts from here
&& !captureOrPromotion
&& !inCheck
&& !dangerous
/* && move != ttMove Already implicit in the next condition */
&& bestValue > VALUE_MATED_IN_MAX_PLY)
{
// Move count based pruning
@ -813,9 +812,8 @@ moves_loop: // When in check and at SpNode search starts from here
// Step 15. Reduced depth search (LMR). If the move fails high it will be
// re-searched at full depth.
if ( depth >= 3 * ONE_PLY
&& !pvMove
&& moveCount > 1
&& !captureOrPromotion
&& move != ttMove
&& move != ss->killers[0]
&& move != ss->killers[1])
{
@ -1111,7 +1109,6 @@ moves_loop: // When in check and at SpNode search starts from here
if ( !PvNode
&& !InCheck
&& !givesCheck
&& move != ttMove
&& futilityBase > -VALUE_KNOWN_WIN
&& !pos.advanced_pawn_push(move))
{
@ -1141,7 +1138,6 @@ moves_loop: // When in check and at SpNode search starts from here
// Don't search moves with negative SEE values
if ( !PvNode
&& (!InCheck || evasionPrunable)
&& move != ttMove
&& type_of(move) != PROMOTION
&& pos.see_sign(move) < VALUE_ZERO)
continue;