georgerifkin wrote:Adam Hair wrote:georgerifkin wrote:I'm making some tests
I would like to make a question: why, when I set a time of 5ms, the test takes way more time with some engines, for example with stockfish, than with others
the time set is always 5ms
If I remember correctly, Stockfish searches 10 plies deep before sending its best move.
is this a correct behaviour?
shouldn't it respect always time constraints?
The tester basically runs an infinite search and then stops the program when the time is exhausted. fixed time levels are not always implemented in some programs thus this is a good way to handle it.
Also, some programs have a small startup delay between moves so if you test in milleseconds you may get signficantly better searches with some programs than others, regardless of the relative strength.
There is no practical way to compare the evaluation functions of chess programs for several reasons. Even at ridiculously fast searches some program have far superior searches, and this might even show up at 1 ply searches with various quies tricks and such. Some program extend threats (even on 1 ply search), checks, etc.
Also, if you tune an evaluation function properly it can be significantly weaker at (say) 3 ply searches than for realistic time controls where 15-25 ply searches might be done.
In fact, I personally don't like to think of the "static evaluation function" as separate from the search. They are joined at the hip. Komodo's evaluation function weakly detects some trivial tactics which many programs consider a search feature. So there is the issue of the speed vs quality tradeoff that various programs make differently that have no real bearing on the superiority of the programs, it's the mix that counts.