Dann Corbit wrote:Code: Select all
Program Elo + - Games Score Av.Op. Draws
1 Fruit-reloaded-sf-null-pruning : 3175 31 30 788 83.0 % 2900 5.6 %
2 Fruit-reloaded : 2917 25 25 788 34.5 % 3029 5.7 %
3 Fruit-reloaded-mingw : 2907 25 25 788 32.6 % 3034 6.0 %
Current standings.
I suspect that I have some configuration problem if others cannot reproduce the result.
Has to be something broken. I restored the old adaptive null-move code from an old version of Crafty, one which is significantly less aggressive than Stockfish however, and it MIGHT have added 10-15 Elo over the straight R=3 version.
Using the same exact formula I used back in the 90's when this first came along, I get the following R values in a game using 90 seconds for this move:
null-move (R): 3/75.0M 4/6.7M 5/210.7K 6/7.4K 7/66
In this search, R was 3 in 75M NM searches, 4 in 6.7M and so forth. For this data, the nominal search depth was 28 plies, and without fractional plies, the numbers could be anywhere between 3 and 9, but
apparently > 7 was never hit for whatever reason, perhaps LMR as much as anything.
The formula is very simple and I have not yet tried anything more complex since I have completely rewritten the parallel search and have been tuning that for a while... Here's my simple one:
int R = null_depth + depth / null_divisor;
Currently both parameters are tunable, with null_depth being set to 3 as always (back when it was 2 of course) and null_divisor is currently 4, where it was 6 back in the 90's as well. However, except for unusual searches back then, the usual values were 2 to 3, but with fractional plies (back then, not now) it could vary in that range fractionally as well.