Always scale using pawn contribution
authorStefano80 <stefano.cardanobile@gmail.com>
Sun, 29 Apr 2018 05:23:32 +0000 (07:23 +0200)
committerStéphane Nicolet <cassio@free.fr>
Sun, 29 Apr 2018 05:26:25 +0000 (07:26 +0200)
commit213166ba225bcefbbe7dbecdacfd726dfb6c34f9
treed2d0afa3a211d47325b57079188d77e40de118ef
parentd6252ef202f43d42d05b80145f3014da4d22863e
Always scale using pawn contribution

This is a further step in the long quest for a simple way of determining
scale factors for the endgame.

Here we remove the artificial restriction in evaluate_scale_factor()
based on endgame score. Also SCALE_FACTOR_ONEPAWN can be simplified
away. The latter is a small non functional simplification with respect
to the version that was testedin the framework, verified on bench with
depth 22 for good measure.

Passed STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 49438 W: 9999 L: 9930 D: 29509
http://tests.stockfishchess.org/tests/view/5ae20c8b0ebc5963175205c8

Passed LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 101445 W: 15113 L: 15110 D: 71222
http://tests.stockfishchess.org/tests/view/5ae2a0560ebc5902a1998986

How to continue from there?

Maybe the general case could be scaled with pawns from both colors
without losing Elo. If that is the case, then this could be merged
somehow with the scaling in evaluate_initiative(), which also uses
a additive malus down when the number of pawns in the position goes
down.

Closes https://github.com/official-stockfish/Stockfish/pull/1570

Bench: 5254862
src/evaluate.cpp
src/material.cpp
src/types.h