Rajlich stated lot of thingsOnno Garms wrote:I think there is one more ingredient which has not been mentioned so far: fine-grained evaluation.
evaluate() uses units of 1/3200 pawn internally. Most weights are not divisible by 32. This is nice to know, but is only useful when you know how to adjust the weights. This secret is not revealed by the Strelka sources. Having only the sources of Strelka's evaluate function is fairly useless unless you want to clone the evaluate function. Appart from material imbalance it contains only well known terms.
I think it's also worthwhile to note what I did not find. AFAIR Rajlich stated that Rybka prunes differently depending on whether the player to move is the same on the current node and the root node or not. Does Strelka do that? I did not find that (but I read search.c less thoroughly then eval.c).

What you see in Strelka about pruning is what is in R1.0
