Wednesday, January 7, 2015

Even Engines Need Time to Think

     33 running games. That's how many my opponent had going and quite often he replied to my move within a few minutes so he was effectively playing at a blitz pace in most of his games. He eventually got into a position where even the engine needed some time to sort things out and 2-3 minutes simply were not enough.
     Houdini, Komodo and Stockfish differ in their search and evaluation functions. Stockfish aggressively prunes the analysis tree and while it searches deeply, its search is more narrow than Komodo or Houdini. Sometimes this is an advantage, sometimes it's not.
     Komodo is the most positionally accurate of the three and it is slower in its search than either Stockfish or Houdini. It's initial evaluation can be more accurate, but it's usually a good idea to let it think a little longer just to make sure.
     All this means that if you are playing correspondence chess (need I add that I am talking about sites where engine use is allowed?) that playing an engine move after allowing it to think for a minute or two will likely lead to disaster. The temptation is strong sometimes to do exactly that though. The same thing applies when analyzing an OTB game; you won't always get the best results analyzing your game at 10 seconds a move...or even 60 seconds a move for that matter. Certain positions requite a lot of digging and even after letting the engine analyze by itself for awhile, interactive analysis is also necessary. Even then, as seen in the Hort-Alburt game I posted, engine evaluations may not always be on a par with Grandmaster opinions! Of course, most of the time we won't know what a GM opinion would be, but you know what I mean.


     In examining this position with one CPU, Stockfish 5 initially suggests 1.Bf2 then in a few seconds begins to waffle between 1.Bf2 and 1.dxc5. It finally seems to settle down with 1.Bf2 (evaluated at -0.24). However, after a couple of minutes, it settles on 1.dxc5 evaluated at -0.29 and relegates 1.Bf2 to a -0.69 score.  I have no idea why an engine would look at 1.Bf2; to me it looks 'neutral.'  But sometimes when there are no tactics they tend to play aimlessly.
     But it gets worse...after about 5 minutes the move 1.Bf2 isn't even in the top ten! Komodo 8 took about 30 seconds to discard 1.Bf2 in favor of 1.dxc5. Houdini 2 and Fritz 11 didn't do much better than Stockfish.

1.Bf2 cxd4 2.Rc7 d3 3.Qe3?
More waffling between this and the better 3.Rxe7 by Stockfish.  Komodo 8 realized immediately that 3.Rxe7 was better but even then white is at a disadvantage (-1.08). Houdini 2 and Fritz 11 both immediately recognized 3.Qe3 as a poor move.
3... d2 4.Rd1 Re5


     White resigned rather than play on in this hopeless position. The moral to the story is that when you are analyzing any position with an engine you have to give it time and you need to be interactive and try out the different moves it suggests. You also have to go to the end of the engine's analysis and do some poking around. All this is especially important if the position is one that is devoid of tactics and requires strategic play. 

No comments:

Post a Comment