mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 08:43:09 +00:00
Stat score initialization: children
Let the parent node initialize stat score to zero once for all siblings. Initialize statScore to zero for the children of the current position. So statScore is shared between sibling positions and only the first sibling starts with statScore = 0. Later siblings start with the last calculated statScore of the previous sibling. This influences the reduction rules in in LMR which are based on the statScore of parent position. STC: LLR: 2.96 (-2.94,2.94) [0.00,4.00] Total: 22683 W: 5202 L: 4946 D: 12535 http://tests.stockfishchess.org/tests/view/5a93315f0ebc590297cc894f LTC: LLR: 2.95 (-2.94,2.94) [0.00,4.00] Total: 48548 W: 8346 L: 8035 D: 32167 http://tests.stockfishchess.org/tests/view/5a933ba90ebc590297cc8962 Bench: 5833683
This commit is contained in:
parent
29bc128384
commit
1463881153
1 changed files with 7 additions and 1 deletions
|
@ -514,10 +514,16 @@ namespace {
|
|||
Thread* thisThread = pos.this_thread();
|
||||
inCheck = pos.checkers();
|
||||
moveCount = captureCount = quietCount = ss->moveCount = 0;
|
||||
ss->statScore = 0;
|
||||
bestValue = -VALUE_INFINITE;
|
||||
maxValue = VALUE_INFINITE;
|
||||
|
||||
// Initialize statScore to zero for the childs of the current position.
|
||||
// So statScore is shared between sibling positions and only the first sibling
|
||||
// starts with statScore = 0. Later siblings start with the last calculated
|
||||
// statScore of the previous sibling. This influences in LMR the reduction rules
|
||||
// which based on the statScore of parent position.
|
||||
(ss+1)->statScore = 0;
|
||||
|
||||
// Check for the available remaining time
|
||||
if (thisThread == Threads.main())
|
||||
static_cast<MainThread*>(thisThread)->check_time();
|
||||
|
|
Loading…
Add table
Reference in a new issue