Skip to content

static_evaluation: add endgame scaling - #200

Merged
hansbinderup merged 1 commit into
mainfrom
hans/add-evaluation-scale-factor
Oct 3, 2025
Merged

static_evaluation: add endgame scaling#200
hansbinderup merged 1 commit into
mainfrom
hans/add-evaluation-scale-factor

Conversation

@hansbinderup

Copy link
Copy Markdown
Owner

Meltdown has always had an issue with endgame evaluation. Often engines would flag a position as drawn quite early while Meltdown would still believe that it was a winnable position.

This commit adds piece endgame awareness to our static evaluation. I've ran a few drawn positions where "old Meltdown" would believe they were clearly winning. Now we know that they're clearly drawn.

Also we apply bonus / penalty based on positions that are often won / lost based on remaining material. This is better than simple piece evaluation as we're now context aware as well!

Bench 809831

Endgame book:
Elo   | 22.22 +- 8.09 (95%)
SPRT  | 8.0+0.08s Threads=1 Hash=32MB
LLR   | 2.96 (-2.94, 2.94) [0.00, 5.00]
Games | N: 1754 W: 421 L: 309 D: 1024
Penta | [9, 134, 474, 256, 4]
https://openbench.bunny.beer/test/631/

8 moves:
Elo   | 11.83 +- 6.61 (95%)
SPRT  | 8.0+0.08s Threads=1 Hash=32MB
LLR   | 2.98 (-2.94, 2.94) [0.00, 5.00]
Games | N: 4760 W: 1153 L: 991 D: 2616
Penta | [118, 503, 989, 639, 131]
https://openbench.bunny.beer/test/632/

Meltdown has always had an issue with engame evaluation. Often engines
would flag a position as draw quite early while Meltdown would still
believe that it was a winable position.

This commit adds piece endgame awareness to our static evaluation.
I've ran a few drawn positions where "old Meltdown" would believe they
were clearly winning. Now we know that they're clearly drawn.

Also we apply bonus / penalty based on positions that are often won /
lost based on remaining material. This is better than simple piece
evaluation as we're now context aware as well!

Bench 809831

Signed-off-by: Hans Binderup <hbinderup94@gmail.com>
@hansbinderup hansbinderup added this to the release-1.11 milestone Sep 19, 2025
@hansbinderup
hansbinderup merged commit d7b172f into main Oct 3, 2025
6 checks passed
@hansbinderup
hansbinderup deleted the hans/add-evaluation-scale-factor branch October 3, 2025 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant