mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 08:43:09 +00:00
Use moveCount history for reduction
Use less reduction for moves with larger moveCount if your opponent did an unexpected (== high moveCount) move in the previous ply... unexpected moves might need unexpected answers. passed STC: http://tests.stockfishchess.org/tests/view/599f08cc0ebc5916ff64aace LLR: 2.97 (-2.94,2.94) [0.00,5.00] Total: 9638 W: 1889 L: 1720 D: 6029 passed LTC: http://tests.stockfishchess.org/tests/view/599f1e5c0ebc5916ff64aadc LLR: 2.95 (-2.94,2.94) [0.00,5.00] Total: 28308 W: 3742 L: 3533 D: 21033 Bench: 5747429
This commit is contained in:
parent
002bf4d8db
commit
5ef94eb970
1 changed files with 4 additions and 2 deletions
|
@ -908,7 +908,8 @@ moves_loop: // When in check search starts from here
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reduced depth of the next LMR search
|
// Reduced depth of the next LMR search
|
||||||
int lmrDepth = std::max(newDepth - reduction<PvNode>(improving, depth, moveCount), DEPTH_ZERO) / ONE_PLY;
|
int mch = std::max(1, moveCount - (ss-1)->moveCount / 16);
|
||||||
|
int lmrDepth = std::max(newDepth - reduction<PvNode>(improving, depth, mch), DEPTH_ZERO) / ONE_PLY;
|
||||||
|
|
||||||
// Countermoves based pruning
|
// Countermoves based pruning
|
||||||
if ( lmrDepth < 3
|
if ( lmrDepth < 3
|
||||||
|
@ -959,7 +960,8 @@ moves_loop: // When in check search starts from here
|
||||||
&& moveCount > 1
|
&& moveCount > 1
|
||||||
&& (!captureOrPromotion || moveCountPruning))
|
&& (!captureOrPromotion || moveCountPruning))
|
||||||
{
|
{
|
||||||
Depth r = reduction<PvNode>(improving, depth, moveCount);
|
int mch = std::max(1, moveCount - (ss-1)->moveCount / 16);
|
||||||
|
Depth r = reduction<PvNode>(improving, depth, mch);
|
||||||
|
|
||||||
if (captureOrPromotion)
|
if (captureOrPromotion)
|
||||||
r -= r ? ONE_PLY : DEPTH_ZERO;
|
r -= r ? ONE_PLY : DEPTH_ZERO;
|
||||||
|
|
Loading…
Add table
Reference in a new issue