diff options
| author | Scott Gasch <[email protected]> | 2026-08-30 18:51:38 -0700 |
|---|---|---|
| committer | Scott Gasch <[email protected]> | 2026-08-30 18:51:38 -0700 |
| commit | dbf71219abeb51d386b0f7294f1664f2906d2b82 (patch) | |
| tree | 77dc53e1cb3f223ee04a45130b559b08c91991cc /src/chess.h | |
| parent | fd1460b2c135f6cef502fd167d1df0edf223e312 (diff) | |
Plumb iImprovement into LMR and futiltiy and parallel search.
Fix a bug (iEval) in HelpSearch
This commit changes the heuristics for: nullmove pruning, LMR, and EFP slightly.
Diffstat (limited to 'src/chess.h')
| -rwxr-xr-x | src/chess.h | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/src/chess.h b/src/chess.h index 367100f..8a1185a 100755 --- a/src/chess.h +++ b/src/chess.h @@ -935,6 +935,8 @@ typedef struct _SPLIT_INFO INT iPositionExtend; // positional extension SCORE iAlpha; // original alpha at split SCORE iBeta; // beta at split + SCORE iEval; // static eval at split + SCORE iImprovement; // eval improvement since ply-2 (may be negative) CUMULATIVE_SEARCH_FLAGS sSearchFlags; // flags at split time // output from the split node @@ -2399,20 +2401,21 @@ InitLMRTable(void); INT GetLMRReduction(IN SCORE iRoughEval, - IN SCORE iAlpha, - IN SCORE iBeta, - IN SEARCHER_THREAD_CONTEXT *ctx, - IN ULONG uRemainingDepth, - IN ULONG uLegalMoves, - IN MOVE mv, - IN ULONG uMoveNum, - IN INT iExtend); + IN SCORE iAlpha, + IN SCORE iBeta, + IN SCORE iImprovement, + IN SEARCHER_THREAD_CONTEXT *ctx, + IN ULONG uRemainingDepth, + IN ULONG uLegalMoves, + IN MOVE mv, + IN ULONG uMoveNum, + IN INT iExtend); FLAG WeShouldTryNullmovePruning(IN SEARCHER_THREAD_CONTEXT *ctx, IN SCORE iAlpha, IN SCORE iBeta, - IN SCORE iRoughEval, + IN SCORE iEval, IN SCORE iImprovement, IN ULONG uNullDepth); @@ -2914,6 +2917,7 @@ SCORE StartParallelSearch(IN SEARCHER_THREAD_CONTEXT *ctx, IN OUT SCORE *piAlpha, IN SCORE iBeta, + IN SCORE iImprovement, IN OUT SCORE *piBestScore, IN OUT MOVE *pmvBest, IN ULONG uMoveNum, |
