Regards,
CL
Warp wrote:One day I was running a Spike 1.4 vs. Stockfish 6 with moderate time controls (40 moves in 20 minutes), and by move 67 Stockfish was clearly ahead (eval over +6 for black). Then, suddenly, and surprisingly, Spike, playing white, stalemated the game in just a few moves. Stockfish completely failed to see the stalemate and avoid it.
The crucial point in the game was this (white to play and stalemate):
[d]8/5R2/1p2p1pk/p6p/P2R3P/8/r5r1/7K w - - 0 68
It turns out that for some engines (including Stockfish), it's surprisingly hard to see the stalemate, while for other engines (such as Spike) it's very easy. When I analyze that position with several engines, using 4 threads on an i5, it takes on average about this much for them to see the stalemate (it can vary quite a lot between runs):
- Stockfish (even very recent versions): Between 2 and 8 minutes.
- Texel 1.02: Between 1 and 8 minutes.
- Gull 3: Doesn't seem to ever see the stalemate, no matter how long I let it run.
- Spike 1.4: Less than a second.
- Hakkapeliitta 3.0: 6 seconds (very consistently).
- Rybka 2.3.2a: Between 2 and 14 seconds.
- Bobcat 7.1: Doesn't seem to ever see the stalemate, no matter how long I let it run.
- Ruffian 1.0.5: Less than a second.
- Hermann 2.8: About one second.
I don't have Komodo, but I have been reported that it, too, can take several minutes to see the stalemate (although I don't know about the most recent versions).
What I find fascinating and interesting about this is that it's not an artificially constructed position, but it's an actual position that came up in an engine vs. engine game (and in which the stronger engine missed victory because it didn't see it).