mcostalba wrote:Denis P. Mendoza wrote:
I noticed that Stockfish 1.1 performs well on blitz on these settings compared to default (I could be wrong):
Futility Margin 2 = 200
Maximum Razoring Depth = 2
Razoring Margin = 200
It's just preliminary, and results may vary. The one thing I like is, it is beating the latest Togas, go toe-to-toe with some old Rybkas, and giving the new sensation, 'Inert Thinker' a taste of Glaurung's medicine!
Thanks Denis for testing, I will try use your settings and see if I can confirm your results.
Actually I also noticed that Stockfish is strong with strong engines, the problem is that it is weak with engines ranked at lower positions! Perhaps too much pruning??
The version now in development uses a less aggressive pruning, so far results are not bad. Lately I have started to be very very cautious with pruning, my rule now is: if test with a more aggressive pruning formula does not give clear and important results then discard. My guess is that is better to stick to a safe algorithm as long as the agressive one is just few ELO points of difference (also if positive).
Due to practical reasons I am testing at fast time controls, so if the pruning is dubious I would guess will be much more dubious or even a regression at longer time controls (where I cannot properly test).
Marco
Thanks much Tord for Glaurung 2.2! I'm glad that improvements were found after all in the version for the OPCCC, although it sometimes is hard to do all the testing well!
I just wanted to say something to Denis and Marco here about the Maximum Razoring Depth; I'm not 100% sure anymore if it applied to Toga Razoring (copied from Glaurung) exactly as in the original Glaurung version but I do
hope I remember well that in Glaurung 2.1 if you use Razoring only when initial conditions for starting Nullmove pruning do not apply, Razoring only started at remaining depths 3 and below, so Maximum Razoring Depth = 3 (+1) was
exactly the same as Maximum Razoring Depth = 2 (+ 1 * OnePly internally added). I believe that after I changed the conditions for Razoring by removing the
from
Code: Select all
} // End of Null move search
// Razoring:
else if (depth < RazorDepth
I could increase the Maximum Razoring Depth and now get different results too for higher Maximum Razoring Depths.
I thought removing this Else made some sense as razoring preconditions seemed to be fairly different from nullmove pruning conditions. But I added some safety margins in the pruning conditions (that is also in Toga Checkov Beta 3 and later, but maybe for fast time controls you will not like it; sorry I never test much, and will not test much in with fast games, because you really need 1,000s of games for statistical good results, and for long time controls it still does not mean much
)
Code now reads:
Code: Select all
} // End of Null move search
// Razoring:
if (depth < RazorDepth && approximateEval < beta - RazorMargin &&
evaluate(pos, ei, threadID) < beta - (RazorMargin + depth * 25)) {
Value v = qsearch(pos, ss, beta-1, beta, Depth(0), ply, threadID);
if (v < beta - 0x100)
return v;
} // [EdG: was: else if (depth...]
Eelco