Simple drawn endgame that Stockfish have depth problem with

Discussion of chess software programming and technical issues.

Moderator: Ras

kiroje
Posts: 68
Joined: Wed Jul 25, 2012 10:12 am
Location: Copenhagen, Denmark
Full name: Kim Jensen

Simple drawn endgame that Stockfish have depth problem with

Post by kiroje »

Hi

Im making a script for automated analysis of chess games, and ran into a "funny" problem.

In this positions which is a known drawn endgame stockfish shows a strange(as in slow) behavior which other engines dont.
[d]6k1/8/5KBP/8/8/8/8/8 w - - 0 1

Stockfish seems to "die" in a search explosion(all engines running single thread and 4Gb hashtables in the Hiarcs Pro interface, Obsidian 15 seems to show the same behaviour.)
Stockfish 17

Code: Select all

0:02: 0.00/19 1.Bc2 Kh8 2.Bd3 Kg8 3.Ke6 Kh8 4.Ke5 Kg8 5.Kf4 Kh8 6.Ke3 Kg8 7.Bg6 Kh8 8.Bc2 Kg8 9.Kf2 Kf7 10.Ke1 Kg8 11.h7+ Kh8 12.Be4 Kg7 13.Ke2 Kh8 14.Bf5 Kg7 15.Bc2 Kh8 16.Kf3 Kg7 17.Kg4 Kh8 18.Kf4 Kg7 19.Ke5 Kh8 20.Bg6 Kg7 21.Bb1 Kh8
0:06: 0.00/20 1.Bc2 Kh8
0:35: 0.00/20 1.Bc2 Kh8
0:37: 0.00/20 1.Bc2 Kh8 2.Bd3 Kg8 3.Ke6 Kh8 4.Ke5 Kg8 5.Kf4 Kh8 6.Ke3 Kg8 7.Bg6 Kh8 8.Bc2 Kg8 9.Kf2 Kh8 10.Ke1 Kg8 11.h7+ Kh8
0:40: 0.00/21 1.Bc2 Kh8 2.Bd3 Kg8 3.Ke6 Kh8 4.Ke5 Kg8 5.Kf4 Kh8 6.Ke3 Kg8 7.Bg6 Kh8 8.Bc2 Kg8 9.Kf2 Kh8 10.Ke1 Kg8 11.Ke2
0:40: 0.00/22 1.Bc2 Kh8 2.Bd3 Kg8 3.Ke6 Kh8 4.Ke5 Kg8 5.Kf4 Kh8 6.Ke3 Kg8 7.Bg6 Kh8 8.Bc2 Kg8 9.Kf2 Kh8 10.Ke1 Kg8 11.Ke2 Kh8 12.Bg6
0:40: 0.00/23 1.Bc2
0:40: 0.00/23 1.Bc2
0:40: 0.00/23 1.Ke6 Kh8 2.Bd3 Kg8 3.Ke5 Kh8 4.Bg6 Kg8 5.Kf4 Kh8 6.Bd3 Kg8 7.Ke3 Kh8 8.Bc2 Kg8 9.Bg6 Kh8 10.Bb1 Kg8 11.Kf4 Kh8 12.Kg3 Kg8 13.Kh4 Kh8 14.Bg6 Kg8 15.Kg5 Kh8 16.h7 Kg7 17.Kh4 Kh8 18.Bc2 Kg7 19.Kh3 Kh8 20.Bf5 Kg7 21.Be4 Kh8 22.Bd3 Kg7 23.Kh4 Kh8 24.Kg4 Kg7 25.Bf5
0:42: 0.00/24 1.Ke6 Kh8
0:54: 0.00/24 1.Ke6 Kh8 2.Bd3 Kg8 3.Ke5 Kh8 4.Bg6 Kg8 5.Kf4 Kh8 6.Bd3 Kg8 7.Ke3 Kh8 8.Bc2 Kg8 9.Bg6 Kh8 10.Bb1 Kg8 11.Kf4 Kh8 12.Kg5
0:54: 0.00/25 1.Ke6
0:54: 0.00/25 1.Ke6
0:54: 0.00/25 1.Ke6
4:16: 0.00/25 1.Ke6 Kh8 2.Bb1 Kg8 3.Kf6 Kh8 4.Bc2 Kg8 5.Bg6 Kh8 6.Be4 Kg8 7.h7+ Kh8 8.Ke6 Kg7 9.Kd6 Kh8 10.Kd5 Kg7 11.Ke5 Kh8 12.Bd3 Kg7 13.Bb1 Kh8 14.Bc2 Kg7 15.Kf4 Kh8 16.Kg4 Kg7 17.Bf5 Kh8 18.Bd3 Kg7 19.Kh5 Kh8 20.Bc2 Kg7 21.Bg6 Kh8 22.Bf5 Kg7 23.Bc2 Kh8 24.Be4
Beserk 13 is more as I would suspect a very high depth fast

Code: Select all

0:24: +0.10/50 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Bb1 Kg8 11.Ke3 Kh8 12.Kf2 Kg8 13.Kf1 Kh8 14.Ke1 Kg8 15.Kd2 Kh8 16.Kc1 Kg8 17.Be4 Kh8 18.Kb1 Kg8 19.Bf5 Kf7 20.Bd3 Kg8 21.Be4 Kh8 22.Kc1 Kg8 23.Kd1 Kh8 24.Bg6 Kg8 25.Bc2 Kh8 26.Ke2 Kg8 27.Kf3 Kh8 28.Kf2 Kg8 29.Kg3 Kh8 30.Bf5 Kg8 31.Kh3 Kh8 32.Be4 Kg8 33.Kg2 Kh8 34.Kf2 Kg8 35.Bd5+
0:24: +0.10/51 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Bb1 Kg8 11.Ke3 Kh8 12.Kf2 Kg8 13.Kf1 Kf7 14.Ke1 Kg8 15.Kd2 Kh8 16.Kc1 Kg8 17.Bc2 Kh8 18.Kb1 Kg8 19.Bf5 Kf7 20.Bh7 Kf6 21.Bd3 Kf7 22.Kc1 Kg8 23.Kb2 Kh8 24.Be4 Kg8 25.Kc2 Kh8 26.Kd1 Kg8 27.Ke2 Kh8 28.Kf2 Kg8 29.Kf3 Kh8 30.Bc2 Kg8 31.Kg3 Kh8 32.Bf5 Kg8 33.Bd3 Kh8 34.Kh3 Kg8 35.Bb1 Kh8 36.Be4 Kg8
0:24: +0.10/52 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Bb1 Kg8 11.Ke3 Kh8 12.Kf2 Kg8 13.Kf1 Kf7 14.Ke1 Kg8 15.Kd2 Kh8 16.Kc1 Kg8 17.Bd3 Kh8 18.Kb1 Kg8 19.Be4 Kh8 20.Bg6 Kg8 21.Ka2 Kh8 22.Bf5 Kg8 23.Kb3 Kh8 24.Kb2 Kg8 25.Kc2 Kh8 26.Bg6 Kg8 27.Kd1 Kh8 28.Ke2 Kg8 29.Kf3 Kh8 30.Kf2 Kg8 31.Ke2 Kh8 32.Be4 Kg8 33.Ke3 Kh8 34.Kf2 Kg8 35.Kg3 Kh8 36.Kg2 Kg8 37.Bd5+
0:44: +0.10/53 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Bb1 Kg8 11.Ke3 Kh8 12.Kf2 Kg8 13.Kg3 Kh8 14.Kh3 Kg8 15.Kh2 Kh8 16.Be4 Kg8 17.Bf5 Kh8 18.Kg2 Kg8 19.Bg6 Kh8 20.Kf1 Kg8 21.Ke2 Kh8 22.Kd1 Kg8 23.Kc1 Kh8 24.Bb1 Kg8 25.Be4 Kh8 26.Kd1 Kg8 27.Ke2 Kf7 28.Ke3 Kg8 29.Bc2 Kh8 30.Kf2 Kg8 31.Kg3 Kh8 32.Kg4 Kg8 33.Kg5 Kh8 34.Bf5 Kg8 35.Be4 Kh8 36.Kf6 Kg8 37.Ke6 Kh8 38.Bg6 Kg8 39.Kd5 Kh8 40.Bc2 Kg8 41.Kc4 Kh8 42.Kb3 Kg8
0:44: +0.10/54 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Bb1 Kg8 11.Ke3 Kh8 12.Kf2 Kg8 13.Kg3 Kh8 14.Kh3 Kg8 15.Kh2 Kh8 16.Be4 Kg8 17.Bf5 Kh8 18.Kg2 Kg8 19.Bg6 Kh8 20.Kf1 Kg8 21.Ke2 Kh8 22.Kd1 Kg8 23.Bc2 Kh8 24.Be4 Kg8 25.Ke2 Kh8 26.Kf3 Kg8 27.Kf4 Kh8 28.Ke5 Kg8 29.Bc2 Kh8 30.Kd6 Kg8 31.Ke6 Kh8 32.Bg6 Kg8 33.Kd5 Kh8 34.Kc4 Kg8 35.Kb3 Kh8 36.Bc2 Kg8 37.Kb2 Kh8 38.Kb1 Kg8 39.Bf5 Kf7 40.Bh7 Kf6 41.Bd3 Kf7
1:46: +0.10/55 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Bb1 Kg8 11.Ke3 Kh8 12.Kf2 Kg8 13.Kg3 Kh8 14.Kh3 Kg8 15.Kh2 Kh8 16.Be4 Kg8 17.Kg3 Kh8 18.Kh3 Kg8 19.Kg4 Kh8 20.Kh5 Kg8 21.Bg6 Kh8 22.Bf5 Kg8 23.Kg6 Kh8 24.Be4 Kg8 25.Bc2 Kh8 26.Kg5 Kg8 27.Kf4 Kh8 28.Bb3 Kh7 29.Kg5 Kh8 30.Kg4 Kh7 31.Kh5 Kh8 32.Ba2 Kh7 33.Kg5 Kh8 34.Bb1 Kg8 35.Kf4 Kh8 36.Bc2 Kg8 37.Ke3 Kh8 38.Ke2 Kg8 39.Bg6 Kh8 40.Be4 Kg8 41.Ke3 Kh8 42.Kd3 Kg8 43.Bg6 Kh8 44.Kc2 Kg8 45.Bd3 Kh8 46.Kb2 Kg8 47.Kb1
1:46: +0.10/56 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Bb1 Kg8 11.Ke3 Kh8 12.Kf2 Kg8 13.Kg3 Kh8 14.Kh3 Kg8 15.Kh2 Kh8 16.Be4 Kg8 17.Kg3 Kh8 18.Kh3 Kg8 19.Kg4 Kh8 20.Kh5 Kg8 21.Bg6 Kh8 22.Bf5 Kg8 23.Kg6 Kh8 24.Be4 Kg8 25.Bc2 Kh8 26.Kg5 Kg8 27.Kf4 Kh8 28.Bb3 Kh7 29.Kg5 Kh8 30.Kg4 Kh7 31.Kh5 Kh8 32.Ba2 Kh7 33.Kg5 Kh8 34.Bb1 Kg8 35.Kf4 Kh8 36.Ke5 Kg8 37.Be4 Kh8 38.Kd5 Kg8 39.Kc4 Kf7 40.Bh7 Kf6 41.Bc2 Kf7 42.Kb3 Kg8 43.Bf5 Kh8 44.Kb2 Kg8 45.Kb1 Kf7 46.Bh7
1:46: +0.10/57 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Ke3 Kg8 11.Ke4 Kh8 12.Bg6 Kg8 13.Kd3 Kh8 14.Kc2 Kg8 15.Bf5 Kf7 16.Kb1 Kg8 17.Be4 Kf7 18.Kb2 Kg8 19.Bc2 Kf7 20.Kc1 Kg8 21.Bd3 Kh8 22.Be4 Kg8 23.Kd2 Kh8 24.Ke2 Kg8 25.Bg6 Kh8 26.Kf1 Kg8 27.Bd3 Kh8 28.Bb1 Kg8 29.Kg2 Kh8 30.Kf2 Kg8 31.Kf3 Kh8 32.Bd3 Kg8 33.Kf4 Kh8 34.Be4 Kg8 35.Bc2 Kh8 36.Kg3 Kg8 37.Kh2 Kh8 38.Be4 Kg8 39.Bd5+ Kh7
1:48: +0.10/58 1.Ke6 Kh8 2.Kd5 Kg8 3.Ke4 Kh8 4.Bf5 Kg8 5.Ke3 Kh8 6.Kf2 Kg8 7.Kf1 Kf7 8.Ke1 Kg8 9.Kd2 Kh8 10.Ke3 Kg8 11.Ke4 Kh8 12.Bg6 Kg8 13.Kd3 Kh8 14.Kc2 Kg8 15.Bf5 Kf7 16.Kb1 Kg8 17.Be4 Kf7 18.Kb2 Kg8 19.Bc2 Kf7 20.Kc1 Kg8 21.Bd3 Kh8 22.Be4 Kg8 23.Kb2 Kh8 24.Ka2 Kg8 25.Bc2 Kh8 26.Kb3 Kg8 27.Kc4 Kh8 28.Kd5 Kg8 29.Ke5 Kh8 30.Bb1 Kg8 31.Kf4 Kh8 32.Bd3 Kg8 33.Kf3 Kh8 34.Kg4 Kg8 35.Bg6 Kh8 36.Kh4 Kg8 37.Kg3 Kh8 38.Bf5 Kg8 39.Bb1 Kh8 40.Kh4 Kg8 41.Ba2+
I know there are solutions to this, as an example just look it up in TB but again I was just surprised that it happened.

Just sharing.

With regards
“Modern chess is too much concerned with things like pawn structure. Forget it, checkmate ends the game.” – Nigel Short
User avatar
hgm
Posts: 28315
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Simple drawn endgame that Stockfish have depth problem with

Post by hgm »

I am not sure what problem you percieve. All Stockfish scores are 0.0, right? So it sees that this is a draw. What more could you want?

This is just a (particularly simple) example of a fortress. And fortresses are very difficult to recognize by conventional search. As you would have to search 100 ply before you will discover that the game is a draw by the 50-move rule, and in the mean the attacking side will continue to enjoy his material advantage. Sometimes the attacker can only maintain his advantage by repetition, but with multiple pieces around it is usually possible to avoid repetition for more than 50 moves.

A little knowledge could solve that for this case; like you mention this could come out of an EGT here, because the position is so simple. You could also make a special rule for it in evaluation, e.g. a recognizer that is called to evaluate KBPK end-games.

With only three freely moving pieces and a Pawn that can only reach two squares the total number of reachable positions is small enough to fit entirely in the hash table (64*64*32*2 = 256K for each side to move, so with 16 bytes per hash entry a 4MB hash table should suffice!).

One aspect compounding the problem is that 50 moves is usually an unnecessary long time to conclude you cannot make progress. As a rule it makes sense, because it must not interfere with cases where progress is slow (but still easily recognizable), such as in KBNK. But if there is no progress at all the conclusion that you are heading for a draw can be drawn after a much smaller number of moves.
kiroje
Posts: 68
Joined: Wed Jul 25, 2012 10:12 am
Location: Copenhagen, Denmark
Full name: Kim Jensen

Re: Simple drawn endgame that Stockfish have depth problem with

Post by kiroje »

hgm wrote: Wed Mar 12, 2025 12:49 pm I am not sure what problem you percieve. All Stockfish scores are 0.0, right? So it sees that this is a draw. What more could you want?

This is just a (particularly simple) example of a fortress. And fortresses are very difficult to recognize by conventional search. As you would have to search 100 ply before you will discover that the game is a draw by the 50-move rule, and in the mean the attacking side will continue to enjoy his material advantage. Sometimes the attacker can only maintain his advantage by repetition, but with multiple pieces around it is usually possible to avoid repetition for more than 50 moves.

A little knowledge could solve that for this case; like you mention this could come out of an EGT here, because the position is so simple. You could also make a special rule for it in evaluation, e.g. a recognizer that is called to evaluate KBPK end-games.

With only three freely moving pieces and a Pawn that can only reach two squares the total number of reachable positions is small enough to fit entirely in the hash table (64*64*32*2 = 256K for each side to move, so with 16 bytes per hash entry a 4MB hash table should suffice!).

One aspect compounding the problem is that 50 moves is usually an unnecessary long time to conclude you cannot make progress. As a rule it makes sense, because it must not interfere with cases where progress is slow (but still easily recognizable), such as in KBNK. But if there is no progress at all the conclusion that you are heading for a draw can be drawn after a much smaller number of moves.
The "problem"(i dont think its a problem as such) is the time it takes to go to next iteration - as I wrote I was surprised that stockfish suddenly is VERY slow compared to other programs.

Usually I see Stockfish go deeper faster than any other program of same strength.
“Modern chess is too much concerned with things like pawn structure. Forget it, checkmate ends the game.” – Nigel Short
Uri Blass
Posts: 10734
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Simple drawn endgame that Stockfish have depth problem with

Post by Uri Blass »

kiroje wrote: Wed Mar 12, 2025 9:49 pm
hgm wrote: Wed Mar 12, 2025 12:49 pm I am not sure what problem you percieve. All Stockfish scores are 0.0, right? So it sees that this is a draw. What more could you want?

This is just a (particularly simple) example of a fortress. And fortresses are very difficult to recognize by conventional search. As you would have to search 100 ply before you will discover that the game is a draw by the 50-move rule, and in the mean the attacking side will continue to enjoy his material advantage. Sometimes the attacker can only maintain his advantage by repetition, but with multiple pieces around it is usually possible to avoid repetition for more than 50 moves.

A little knowledge could solve that for this case; like you mention this could come out of an EGT here, because the position is so simple. You could also make a special rule for it in evaluation, e.g. a recognizer that is called to evaluate KBPK end-games.

With only three freely moving pieces and a Pawn that can only reach two squares the total number of reachable positions is small enough to fit entirely in the hash table (64*64*32*2 = 256K for each side to move, so with 16 bytes per hash entry a 4MB hash table should suffice!).

One aspect compounding the problem is that 50 moves is usually an unnecessary long time to conclude you cannot make progress. As a rule it makes sense, because it must not interfere with cases where progress is slow (but still easily recognizable), such as in KBNK. But if there is no progress at all the conclusion that you are heading for a draw can be drawn after a much smaller number of moves.
The "problem"(i dont think its a problem as such) is the time it takes to go to next iteration - as I wrote I was surprised that stockfish suddenly is VERY slow compared to other programs.

Usually I see Stockfish go deeper faster than any other program of same strength.
I see that at least stockfish latest developement version without tablebases does not show 0.00 score here.

FEN: 6k1/8/5KBP/8/8/8/8/8 w - - 0 1

Stockfish_25022808_x64_avx2:
Available processors: 0-7
Using 1 thread
NNUE evaluation using nn-1c0000000000.nnue (133MiB, (22528, 3072, 15, 32, 1))
NNUE evaluation using nn-37f18f62d772.nnue (6MiB, (22528, 128, 15, 32, 1))
1/4 00:00 21 21k +0.06 Bg6-h7+ Kg8xh7
2/3 00:00 41 41k +0.06 Bg6-h7+ Kg8xh7
3/5 00:00 90 90k +0.27 Bg6-f7+ Kg8-h7
4/5 00:00 161 161k +0.32 Bg6-f5
5/5 00:00 219 219k +0.39 Bg6-f5 Kg8-h8 Bf5-b1
6/7 00:00 294 294k +0.43 Bg6-d3 Kg8-h8 Bd3-b1
7/8 00:00 354 354k +0.66 Bg6-f5 Kg8-h8 Kf6-g6
8/9 00:00 494 494k +0.67 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8
9/15 00:00 5k 676k +0.59 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-g6 Kg8-h8 Kf6-g5 Kh8-g8 Bg6-c2 Kg8-h8 h6-h7 Kh8-g7
10/15 00:00 5k 685k +0.60 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-g6 Kg8-h8 Kf6-g5 Kh8-g8 Bg6-c2 Kg8-h8 h6-h7 Kh8-g7 Bc2-g6 Kg7-h8
11/16 00:00 33k 876k +0.59 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-d6 Kg7-h8
12/31 00:00 217k 1,519k +0.40 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-e5 Kg8-h8 Ke5-d6 Kh8-g8 Bg6-d3 Kg8-h8 Kd6-e5 Kh8-g8 Ke5-e6 Kg8-h8 Bd3-g6 Kh8-g8
13/48 00:00 255k 1,557k +0.41 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-g5 Kg8-h8 Bg6-b1 Kh8-g8 h6-h7+
14/36 00:00 476k 1,755k +0.35 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-g5 Kg8-h8 Bg6-b1 Kh8-g8 Bb1-c2 Kg8-h8 Kg5-g6 Kh8-g8 Bc2-a4 Kg8-h8 Ba4-e8 Kh8-g8 Be8-f7+ Kg8-h8 Kg6-h5 Kh8-h7 Bf7-c4 Kh7-h8 Bc4-d3 Kh8-g8 Kh5-g5 Kg8-h8 h6-h7 Kh8-g7 h7-h8Q+ Kg7xh8
15/49 00:00 476k 1,758k +0.38 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-g5 Kg8-h8 Bg6-b1 Kh8-g8 Bb1-c2 Kg8-h8 Kg5-g6 Kh8-g8 Bc2-e4 Kg8-h8 Be4-d3 Kh8-g8 Bd3-a6 Kg8-h8 Ba6-c8 Kh8-g8 Bc8-b7 Kg8-h8 Bb7-e4 Kh8-g8 Be4-c2 Kg8-h8 Kg6-h5
16/48 00:00 619k 1,815k +0.36 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Bg6-c2 Kg8-h8 Kf6-g6 Kh8-g8 Bc2-b3+ Kg8-h8 Kg6-h5 Kh8-h7 Bb3-d1 Kh7-h8 Kh5-g6 Kh8-g8 Bd1-a4 Kg8-h8 Ba4-c6
17/66 00:00 852k 1,932k +0.36 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-f5 Kg8-h8 Kf5-g5 Kh8-g8 Kg5-h4 Kg8-h8 Kh4-g3 Kh8-g8 Kg3-f2 Kg8-h8 Bg6-e4 Kh8-g8 Kf2-g3 Kg8-h8 Kg3-g2 Kh8-g8 Kg2-h3 Kg8-h8 Kh3-g3 Kh8-g8 Kg3-h4 Kg8-h8 Be4-f5 Kh8-g8 Kh4-h3 Kg8-h8 Bf5-d3 Kh8-g8 h6-h7+ Kg8-h8 Bd3-b1 Kh8-g7 Bb1-f5 Kg7-h8 Bf5-g6 Kh8-g7 Kh3-h4 Kg7-h8 Kh4-h5 Kh8-g7 Bg6-d3 Kg7-h8 Bd3-f5
18/51 00:00 855k 1,934k +0.54 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Bg6-d3 Kg7-h8 Bd3-c2 Kh8-g7 Ke6-d7 Kg7-h8 Kd7-c8 Kh8-g7 Bc2-d3 Kg7-h8 Kc8-b7 Kh8-g7 Kb7-a6 Kg7-h8 Ka6-b5 Kh8-g7 Kb5-c6 Kg7-h8 Bd3-e4 Kh8-g7 Kc6-c7 Kg7-h8 Be4-d3 Kh8-g7 Bd3-c2 Kg7-h8 Bc2-b1 Kh8-g7 Bb1-d3 Kg7-h8 Bd3-e4 Kh8-g7 Kc7-b8 Kg7-h8 Be4-d3 Kh8-g7 Bd3-c2
19/56 00:01 2,279k 2,275k +0.41 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-f5 Kg8-h8 Kf5-g5 Kh8-g8 Kg5-h4 Kg8-h8 Kh4-g3 Kh8-g8 Kg3-f2 Kg8-h8 Bg6-f5
20/45 00:01 3,110k 2,353k +0.41 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-e5 Kg8-h8 Ke5-d6 Kh8-g8 Bg6-e4 Kg8-h8 Be4-d3 Kh8-g8 Bd3-g6 Kg8-h8 Kd6-e6 Kh8-g8 Bg6-d3 Kg8-h8 Ke6-f6 Kh8-g8 Bd3-b1 Kg8-h8 Bb1-c2 Kh8-g8 Kf6-e5 Kg8-h8 Bc2-b1 Kh8-g8 Ke5-e6
21/65 00:01 4,618k 2,519k +0.55 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Bg6-c2 Kg8-h8 Kf6-g6 Kh8-g8 Bc2-b1 Kg8-h8 Bb1-f5 Kh8-g8 Bf5-h3 Kg8-h8 Bh3-d7 Kh8-g8 Bd7-b5 Kg8-h8 Bb5-a4 Kh8-g8 Ba4-b3+ Kg8-h8 Kg6-f5 Kh8-h7 Kf5-g5 Kh7-h8 Bb3-c2 Kh8-g8 Bc2-b1 Kg8-h8 Bb1-g6 Kh8-g8 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Kg5-g4 Kg8-h8 Kg4-h5 Kh8-g8 Bb1-d3 Kg8-h8 Bd3-e4 Kh8-g8 Be4-b1 Kg8-h8 Bb1-g6 Kh8-g8 Bg6-c2 Kg8-h8 Bc2-d3 Kh8-g8 Kh5-g4 Kg8-h8
22/9- 00:03 10,447k 2,804k +0.53 Bg6-d3 Kg8-h8
22/9- 00:08 24,313k 3,025k +0.50 Bg6-d3 Kg8-h8
22/65 00:11 35,489k 3,004k +0.50 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-e7 Kg8-h8 Ke7-d8 Kh8-g8 Bg6-d3 Kg8-f7 Kd8-d7 Kf7-f8 Kd7-e6 Kf8-g8 Bd3-f5 Kg8-h8 Bf5-c2 Kh8-g8 Bc2-g6 Kg8-h8 Ke6-d6
23/31+ 00:11 35,808k 3,003k +0.53 Bg6-d3
23/54+ 00:11 35,819k 3,003k +0.55 Bg6-d3
23/67 00:11 35,822k 3,003k +0.50 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-e6 Kg8-h8 Ke6-d6 Kh8-g8 Bg6-e4 Kg8-h8 Be4-d3 Kh8-g8 Bd3-g6 Kg8-h8 Kd6-d7 Kh8-g8 Bg6-b1 Kg8-f7 Bb1-c2 Kf7-g8 Kd7-e6
24/9+ 00:11 35,822k 3,003k +0.54 Bg6-d3
24/61 01:32 332,486k 3,578k +0.54 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Bg6-b1 Kg8-h8 Bb1-e4 Kh8-g8 Kf6-e6 Kg8-h8 Be4-g6 Kh8-g8 Bg6-d3 Kg8-h8 Ke6-e7 Kh8-g8 Bd3-f5 Kg8-h8 Bf5-c2 Kh8-g8 Bc2-d3 Kg8-h8 Ke7-e6 Kh8-g8 Bd3-b1 Kg8-h8 Ke6-e5 Kh8-g8 Bb1-e4 Kg8-h8 Ke5-f4 Kh8-g8 Kf4-g4 Kg8-h8 Kg4-g3 Kh8-g8 Be4-b1 Kg8-h8 Kg3-h4 Kh8-g8 Bb1-f5 Kg8-h8 Kh4-g3 Kh8-g8 Bf5-d3 Kg8-h8 Kg3-g4
25/67+ 01:32 332,489k 3,578k +0.56 Bg6-d3
25/67+ 01:32 332,489k 3,578k +0.61 Bg6-d3
25/68 01:32 332,491k 3,578k +0.56 Bg6-d3 Kg8-h8 Bd3-e4 Kh8-g8 Be4-b1 Kg8-h8 Bb1-g6 Kh8-g8 Bg6-e4 Kg8-h8 Be4-b1 Kh8-g8 Bb1-g6 Kg8-h8 Kf6-g5 Kh8-g8 Bg6-f5 Kg8-h8 Kg5-f6 Kh8-g8 Kf6-e7 Kg8-h8 Bf5-e4 Kh8-g8 Be4-d3 Kg8-h8 Bd3-f5 Kh8-g8 Bf5-g6 Kg8-h8 Bg6-c2 Kh8-g8 Bc2-b1 Kg8-h8 Ke7-d7 Kh8-g8 Kd7-e6 Kg8-h8 Ke6-d6 Kh8-g8 Bb1-e4 Kg8-f7
26/65+ 01:32 332,496k 3,578k +0.60 Bg6-d3
26/66+ 01:32 332,497k 3,578k +0.62 Bg6-d3
26/67 01:33 332,990k 3,577k +0.63 Bg6-d3 Kg8-h8 Bd3-e4 Kh8-g8 Be4-b1 Kg8-h8 Bb1-g6 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-d6 Kg7-h8 Bg6-e4 Kh8-g7 Be4-d3 Kg7-h8 Kd6-c5 Kh8-g7 Kc5-c6 Kg7-h8 Kc6-c7 Kh8-g7 Kc7-b6 Kg7-h8 Kb6-a5 Kh8-g7 Bd3-c2 Kg7-h8 Ka5-b4 Kh8-g7 Kb4-a4 Kg7-h8 Bc2-d3 Kh8-g7 Bd3-b1 Kg7-h8 Ka4-a5 Kh8-g7 Ka5-b6 Kg7-h8 Kb6-c6 Kh8-g7 Kc6-c7 Kg7-h8 Kc7-d8 Kh8-g7 Bb1-d3 Kg7-h8 Bd3-f5 Kh8-g7 Bf5-c2 Kg7-h8 Kd8-c8 Kh8-g7 Bc2-d3 Kg7-h8 Bd3-b1 Kh8-g7 Bb1-f5 Kg7-h8 Kc8-c7 Kh8-g7 Kc7-b6
27/87+ 02:34 527,743k 3,413k +0.64 Bg6-d3
27/87+ 02:34 527,743k 3,413k +0.66 Bg6-d3
27/87 02:34 527,962k 3,413k +0.63 Kf6-g5 Kg8-h8 Bg6-b1 Kh8-g8 Kg5-f4 Kg8-h8 Kf4-g3 Kh8-g8 Bb1-d3 Kg8-h8 Bd3-g6 Kh8-g8 Kg3-f2 Kg8-h8 Bg6-f5 Kh8-g8 Kf2-g3 Kg8-h8 Kg3-h4 Kh8-g8 Bf5-g6 Kg8-h8 Bg6-c2 Kh8-g8 Bc2-f5 Kg8-h8 Bf5-b1 Kh8-g8 Kh4-h5 Kg8-h8 Kh5-g4 Kh8-g8 Bb1-e4 Kg8-h8 Kg4-g3 Kh8-g8 h6-h7+ Kg8-h8 Be4-d3 Kh8-g7 Kg3-f2 Kg7-h8 Bd3-c2 Kh8-g7
28/87 02:34 527,962k 3,413k +0.60 Bg6-b1 Kg8-h8 Bb1-e4 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-d7 Kg7-h8 Kd7-c7 Kh8-g7 Kc7-b6 Kg7-h8 Kb6-b7 Kh8-g7 Kb7-c6 Kg7-h8 Be4-c2 Kh8-g7 Kc6-c5 Kg7-h8 Bc2-g6 Kh8-g7 Kc5-d4 Kg7-h8 Bg6-e4 Kh8-g7 Kd4-d5 Kg7-h8 Kd5-c6 Kh8-g7 Kc6-b7 Kg7-h8
28/83+ 02:34 527,962k 3,413k +0.61 Bg6-b1
28/83+ 02:34 527,965k 3,413k +0.64 Bg6-b1
28/83 02:34 528,006k 3,413k +0.67 Bg6-b1 Kg8-h8 Bb1-e4 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-d7 Kg7-h8 Kd7-c7 Kh8-g7 Kc7-b6 Kg7-h8 Kb6-b7 Kh8-g7 Kb7-c6 Kg7-h8 Be4-f5 Kh8-g7 Kc6-c5 Kg7-h8 Bf5-d3 Kh8-g7 Kc5-c6 Kg7-h8 Bd3-g6 Kh8-g7 Bg6-c2 Kg7-h8 Kc6-d5 Kh8-g7 Kd5-c5 Kg7-h8 Bc2-e4
29/72+ 02:34 528,007k 3,413k +0.71 Bg6-b1
29/80+ 02:44 551,926k 3,361k +0.75 Bg6-b1
29/80+ 02:44 551,926k 3,361k +0.81 Bg6-b1
29/91 02:44 551,932k 3,361k +0.83 Bg6-b1 Kg8-h8 Bb1-e4 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-e7 Kg7-h8 Ke7-d6 Kh8-g7 Kd6-c6 Kg7-h8 Be4-c2 Kh8-g7 Bc2-b1 Kg7-h8 Kc6-b5 Kh8-g7 Kb5-a4 Kg7-h8 Ka4-b3 Kh8-g7 Bb1-e4 Kg7-h8 Kb3-c2 Kh8-g7 Be4-f5 Kg7-h8 Kc2-b2 Kh8-g7 Kb2-b3 Kg7-h8 Bf5-d3 Kh8-g7 Kb3-a4 Kg7-h8 Bd3-b1 Kh8-g7 Bb1-e4 Kg7-h8 Ka4-b5 Kh8-g7 Kb5-c5 Kg7-h8 Be4-f5 Kh8-g7 Kc5-b6 Kg7-h8 Kb6-c7 Kh8-g7 Bf5-d3 Kg7-h8 Kc7-c6 Kh8-g7 Bd3-f5 Kg7-h8 Kc6-d5 Kh8-g7 Kd5-c4 Kg7-h8 Kc4-b3 Kh8-g7 Kb3-c3 Kg7-h8 Bf5-b1 Kh8-g7 Bb1-e4
kiroje
Posts: 68
Joined: Wed Jul 25, 2012 10:12 am
Location: Copenhagen, Denmark
Full name: Kim Jensen

Re: Simple drawn endgame that Stockfish have depth problem with

Post by kiroje »

Uri Blass wrote: Thu Mar 13, 2025 1:48 am
kiroje wrote: Wed Mar 12, 2025 9:49 pm
hgm wrote: Wed Mar 12, 2025 12:49 pm I am not sure what problem you percieve. All Stockfish scores are 0.0, right? So it sees that this is a draw. What more could you want?

This is just a (particularly simple) example of a fortress. And fortresses are very difficult to recognize by conventional search. As you would have to search 100 ply before you will discover that the game is a draw by the 50-move rule, and in the mean the attacking side will continue to enjoy his material advantage. Sometimes the attacker can only maintain his advantage by repetition, but with multiple pieces around it is usually possible to avoid repetition for more than 50 moves.

A little knowledge could solve that for this case; like you mention this could come out of an EGT here, because the position is so simple. You could also make a special rule for it in evaluation, e.g. a recognizer that is called to evaluate KBPK end-games.

With only three freely moving pieces and a Pawn that can only reach two squares the total number of reachable positions is small enough to fit entirely in the hash table (64*64*32*2 = 256K for each side to move, so with 16 bytes per hash entry a 4MB hash table should suffice!).

One aspect compounding the problem is that 50 moves is usually an unnecessary long time to conclude you cannot make progress. As a rule it makes sense, because it must not interfere with cases where progress is slow (but still easily recognizable), such as in KBNK. But if there is no progress at all the conclusion that you are heading for a draw can be drawn after a much smaller number of moves.
The "problem"(i dont think its a problem as such) is the time it takes to go to next iteration - as I wrote I was surprised that stockfish suddenly is VERY slow compared to other programs.

Usually I see Stockfish go deeper faster than any other program of same strength.
I see that at least stockfish latest developement version without tablebases does not show 0.00 score here.

FEN: 6k1/8/5KBP/8/8/8/8/8 w - - 0 1

Stockfish_25022808_x64_avx2:
Available processors: 0-7
Using 1 thread
NNUE evaluation using nn-1c0000000000.nnue (133MiB, (22528, 3072, 15, 32, 1))
NNUE evaluation using nn-37f18f62d772.nnue (6MiB, (22528, 128, 15, 32, 1))
1/4 00:00 21 21k +0.06 Bg6-h7+ Kg8xh7
2/3 00:00 41 41k +0.06 Bg6-h7+ Kg8xh7
3/5 00:00 90 90k +0.27 Bg6-f7+ Kg8-h7
4/5 00:00 161 161k +0.32 Bg6-f5
5/5 00:00 219 219k +0.39 Bg6-f5 Kg8-h8 Bf5-b1
6/7 00:00 294 294k +0.43 Bg6-d3 Kg8-h8 Bd3-b1
7/8 00:00 354 354k +0.66 Bg6-f5 Kg8-h8 Kf6-g6
8/9 00:00 494 494k +0.67 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8
9/15 00:00 5k 676k +0.59 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-g6 Kg8-h8 Kf6-g5 Kh8-g8 Bg6-c2 Kg8-h8 h6-h7 Kh8-g7
10/15 00:00 5k 685k +0.60 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-g6 Kg8-h8 Kf6-g5 Kh8-g8 Bg6-c2 Kg8-h8 h6-h7 Kh8-g7 Bc2-g6 Kg7-h8
11/16 00:00 33k 876k +0.59 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-d6 Kg7-h8
12/31 00:00 217k 1,519k +0.40 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-e5 Kg8-h8 Ke5-d6 Kh8-g8 Bg6-d3 Kg8-h8 Kd6-e5 Kh8-g8 Ke5-e6 Kg8-h8 Bd3-g6 Kh8-g8
13/48 00:00 255k 1,557k +0.41 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-g5 Kg8-h8 Bg6-b1 Kh8-g8 h6-h7+
14/36 00:00 476k 1,755k +0.35 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-g5 Kg8-h8 Bg6-b1 Kh8-g8 Bb1-c2 Kg8-h8 Kg5-g6 Kh8-g8 Bc2-a4 Kg8-h8 Ba4-e8 Kh8-g8 Be8-f7+ Kg8-h8 Kg6-h5 Kh8-h7 Bf7-c4 Kh7-h8 Bc4-d3 Kh8-g8 Kh5-g5 Kg8-h8 h6-h7 Kh8-g7 h7-h8Q+ Kg7xh8
15/49 00:00 476k 1,758k +0.38 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-g5 Kg8-h8 Bg6-b1 Kh8-g8 Bb1-c2 Kg8-h8 Kg5-g6 Kh8-g8 Bc2-e4 Kg8-h8 Be4-d3 Kh8-g8 Bd3-a6 Kg8-h8 Ba6-c8 Kh8-g8 Bc8-b7 Kg8-h8 Bb7-e4 Kh8-g8 Be4-c2 Kg8-h8 Kg6-h5
16/48 00:00 619k 1,815k +0.36 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Bg6-c2 Kg8-h8 Kf6-g6 Kh8-g8 Bc2-b3+ Kg8-h8 Kg6-h5 Kh8-h7 Bb3-d1 Kh7-h8 Kh5-g6 Kh8-g8 Bd1-a4 Kg8-h8 Ba4-c6
17/66 00:00 852k 1,932k +0.36 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-f5 Kg8-h8 Kf5-g5 Kh8-g8 Kg5-h4 Kg8-h8 Kh4-g3 Kh8-g8 Kg3-f2 Kg8-h8 Bg6-e4 Kh8-g8 Kf2-g3 Kg8-h8 Kg3-g2 Kh8-g8 Kg2-h3 Kg8-h8 Kh3-g3 Kh8-g8 Kg3-h4 Kg8-h8 Be4-f5 Kh8-g8 Kh4-h3 Kg8-h8 Bf5-d3 Kh8-g8 h6-h7+ Kg8-h8 Bd3-b1 Kh8-g7 Bb1-f5 Kg7-h8 Bf5-g6 Kh8-g7 Kh3-h4 Kg7-h8 Kh4-h5 Kh8-g7 Bg6-d3 Kg7-h8 Bd3-f5
18/51 00:00 855k 1,934k +0.54 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Bg6-d3 Kg7-h8 Bd3-c2 Kh8-g7 Ke6-d7 Kg7-h8 Kd7-c8 Kh8-g7 Bc2-d3 Kg7-h8 Kc8-b7 Kh8-g7 Kb7-a6 Kg7-h8 Ka6-b5 Kh8-g7 Kb5-c6 Kg7-h8 Bd3-e4 Kh8-g7 Kc6-c7 Kg7-h8 Be4-d3 Kh8-g7 Bd3-c2 Kg7-h8 Bc2-b1 Kh8-g7 Bb1-d3 Kg7-h8 Bd3-e4 Kh8-g7 Kc7-b8 Kg7-h8 Be4-d3 Kh8-g7 Bd3-c2
19/56 00:01 2,279k 2,275k +0.41 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-f5 Kg8-h8 Kf5-g5 Kh8-g8 Kg5-h4 Kg8-h8 Kh4-g3 Kh8-g8 Kg3-f2 Kg8-h8 Bg6-f5
20/45 00:01 3,110k 2,353k +0.41 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-e5 Kg8-h8 Ke5-d6 Kh8-g8 Bg6-e4 Kg8-h8 Be4-d3 Kh8-g8 Bd3-g6 Kg8-h8 Kd6-e6 Kh8-g8 Bg6-d3 Kg8-h8 Ke6-f6 Kh8-g8 Bd3-b1 Kg8-h8 Bb1-c2 Kh8-g8 Kf6-e5 Kg8-h8 Bc2-b1 Kh8-g8 Ke5-e6
21/65 00:01 4,618k 2,519k +0.55 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Bg6-c2 Kg8-h8 Kf6-g6 Kh8-g8 Bc2-b1 Kg8-h8 Bb1-f5 Kh8-g8 Bf5-h3 Kg8-h8 Bh3-d7 Kh8-g8 Bd7-b5 Kg8-h8 Bb5-a4 Kh8-g8 Ba4-b3+ Kg8-h8 Kg6-f5 Kh8-h7 Kf5-g5 Kh7-h8 Bb3-c2 Kh8-g8 Bc2-b1 Kg8-h8 Bb1-g6 Kh8-g8 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Kg5-g4 Kg8-h8 Kg4-h5 Kh8-g8 Bb1-d3 Kg8-h8 Bd3-e4 Kh8-g8 Be4-b1 Kg8-h8 Bb1-g6 Kh8-g8 Bg6-c2 Kg8-h8 Bc2-d3 Kh8-g8 Kh5-g4 Kg8-h8
22/9- 00:03 10,447k 2,804k +0.53 Bg6-d3 Kg8-h8
22/9- 00:08 24,313k 3,025k +0.50 Bg6-d3 Kg8-h8
22/65 00:11 35,489k 3,004k +0.50 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-e7 Kg8-h8 Ke7-d8 Kh8-g8 Bg6-d3 Kg8-f7 Kd8-d7 Kf7-f8 Kd7-e6 Kf8-g8 Bd3-f5 Kg8-h8 Bf5-c2 Kh8-g8 Bc2-g6 Kg8-h8 Ke6-d6
23/31+ 00:11 35,808k 3,003k +0.53 Bg6-d3
23/54+ 00:11 35,819k 3,003k +0.55 Bg6-d3
23/67 00:11 35,822k 3,003k +0.50 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Kf6-e6 Kg8-h8 Ke6-d6 Kh8-g8 Bg6-e4 Kg8-h8 Be4-d3 Kh8-g8 Bd3-g6 Kg8-h8 Kd6-d7 Kh8-g8 Bg6-b1 Kg8-f7 Bb1-c2 Kf7-g8 Kd7-e6
24/9+ 00:11 35,822k 3,003k +0.54 Bg6-d3
24/61 01:32 332,486k 3,578k +0.54 Bg6-d3 Kg8-h8 Bd3-b1 Kh8-g8 Bb1-e4 Kg8-h8 Be4-g6 Kh8-g8 Bg6-b1 Kg8-h8 Bb1-e4 Kh8-g8 Kf6-e6 Kg8-h8 Be4-g6 Kh8-g8 Bg6-d3 Kg8-h8 Ke6-e7 Kh8-g8 Bd3-f5 Kg8-h8 Bf5-c2 Kh8-g8 Bc2-d3 Kg8-h8 Ke7-e6 Kh8-g8 Bd3-b1 Kg8-h8 Ke6-e5 Kh8-g8 Bb1-e4 Kg8-h8 Ke5-f4 Kh8-g8 Kf4-g4 Kg8-h8 Kg4-g3 Kh8-g8 Be4-b1 Kg8-h8 Kg3-h4 Kh8-g8 Bb1-f5 Kg8-h8 Kh4-g3 Kh8-g8 Bf5-d3 Kg8-h8 Kg3-g4
25/67+ 01:32 332,489k 3,578k +0.56 Bg6-d3
25/67+ 01:32 332,489k 3,578k +0.61 Bg6-d3
25/68 01:32 332,491k 3,578k +0.56 Bg6-d3 Kg8-h8 Bd3-e4 Kh8-g8 Be4-b1 Kg8-h8 Bb1-g6 Kh8-g8 Bg6-e4 Kg8-h8 Be4-b1 Kh8-g8 Bb1-g6 Kg8-h8 Kf6-g5 Kh8-g8 Bg6-f5 Kg8-h8 Kg5-f6 Kh8-g8 Kf6-e7 Kg8-h8 Bf5-e4 Kh8-g8 Be4-d3 Kg8-h8 Bd3-f5 Kh8-g8 Bf5-g6 Kg8-h8 Bg6-c2 Kh8-g8 Bc2-b1 Kg8-h8 Ke7-d7 Kh8-g8 Kd7-e6 Kg8-h8 Ke6-d6 Kh8-g8 Bb1-e4 Kg8-f7
26/65+ 01:32 332,496k 3,578k +0.60 Bg6-d3
26/66+ 01:32 332,497k 3,578k +0.62 Bg6-d3
26/67 01:33 332,990k 3,577k +0.63 Bg6-d3 Kg8-h8 Bd3-e4 Kh8-g8 Be4-b1 Kg8-h8 Bb1-g6 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-d6 Kg7-h8 Bg6-e4 Kh8-g7 Be4-d3 Kg7-h8 Kd6-c5 Kh8-g7 Kc5-c6 Kg7-h8 Kc6-c7 Kh8-g7 Kc7-b6 Kg7-h8 Kb6-a5 Kh8-g7 Bd3-c2 Kg7-h8 Ka5-b4 Kh8-g7 Kb4-a4 Kg7-h8 Bc2-d3 Kh8-g7 Bd3-b1 Kg7-h8 Ka4-a5 Kh8-g7 Ka5-b6 Kg7-h8 Kb6-c6 Kh8-g7 Kc6-c7 Kg7-h8 Kc7-d8 Kh8-g7 Bb1-d3 Kg7-h8 Bd3-f5 Kh8-g7 Bf5-c2 Kg7-h8 Kd8-c8 Kh8-g7 Bc2-d3 Kg7-h8 Bd3-b1 Kh8-g7 Bb1-f5 Kg7-h8 Kc8-c7 Kh8-g7 Kc7-b6
27/87+ 02:34 527,743k 3,413k +0.64 Bg6-d3
27/87+ 02:34 527,743k 3,413k +0.66 Bg6-d3
27/87 02:34 527,962k 3,413k +0.63 Kf6-g5 Kg8-h8 Bg6-b1 Kh8-g8 Kg5-f4 Kg8-h8 Kf4-g3 Kh8-g8 Bb1-d3 Kg8-h8 Bd3-g6 Kh8-g8 Kg3-f2 Kg8-h8 Bg6-f5 Kh8-g8 Kf2-g3 Kg8-h8 Kg3-h4 Kh8-g8 Bf5-g6 Kg8-h8 Bg6-c2 Kh8-g8 Bc2-f5 Kg8-h8 Bf5-b1 Kh8-g8 Kh4-h5 Kg8-h8 Kh5-g4 Kh8-g8 Bb1-e4 Kg8-h8 Kg4-g3 Kh8-g8 h6-h7+ Kg8-h8 Be4-d3 Kh8-g7 Kg3-f2 Kg7-h8 Bd3-c2 Kh8-g7
28/87 02:34 527,962k 3,413k +0.60 Bg6-b1 Kg8-h8 Bb1-e4 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-d7 Kg7-h8 Kd7-c7 Kh8-g7 Kc7-b6 Kg7-h8 Kb6-b7 Kh8-g7 Kb7-c6 Kg7-h8 Be4-c2 Kh8-g7 Kc6-c5 Kg7-h8 Bc2-g6 Kh8-g7 Kc5-d4 Kg7-h8 Bg6-e4 Kh8-g7 Kd4-d5 Kg7-h8 Kd5-c6 Kh8-g7 Kc6-b7 Kg7-h8
28/83+ 02:34 527,962k 3,413k +0.61 Bg6-b1
28/83+ 02:34 527,965k 3,413k +0.64 Bg6-b1
28/83 02:34 528,006k 3,413k +0.67 Bg6-b1 Kg8-h8 Bb1-e4 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-d7 Kg7-h8 Kd7-c7 Kh8-g7 Kc7-b6 Kg7-h8 Kb6-b7 Kh8-g7 Kb7-c6 Kg7-h8 Be4-f5 Kh8-g7 Kc6-c5 Kg7-h8 Bf5-d3 Kh8-g7 Kc5-c6 Kg7-h8 Bd3-g6 Kh8-g7 Bg6-c2 Kg7-h8 Kc6-d5 Kh8-g7 Kd5-c5 Kg7-h8 Bc2-e4
29/72+ 02:34 528,007k 3,413k +0.71 Bg6-b1
29/80+ 02:44 551,926k 3,361k +0.75 Bg6-b1
29/80+ 02:44 551,926k 3,361k +0.81 Bg6-b1
29/91 02:44 551,932k 3,361k +0.83 Bg6-b1 Kg8-h8 Bb1-e4 Kh8-g8 h6-h7+ Kg8-h8 Kf6-e6 Kh8-g7 Ke6-e7 Kg7-h8 Ke7-d6 Kh8-g7 Kd6-c6 Kg7-h8 Be4-c2 Kh8-g7 Bc2-b1 Kg7-h8 Kc6-b5 Kh8-g7 Kb5-a4 Kg7-h8 Ka4-b3 Kh8-g7 Bb1-e4 Kg7-h8 Kb3-c2 Kh8-g7 Be4-f5 Kg7-h8 Kc2-b2 Kh8-g7 Kb2-b3 Kg7-h8 Bf5-d3 Kh8-g7 Kb3-a4 Kg7-h8 Bd3-b1 Kh8-g7 Bb1-e4 Kg7-h8 Ka4-b5 Kh8-g7 Kb5-c5 Kg7-h8 Be4-f5 Kh8-g7 Kc5-b6 Kg7-h8 Kb6-c7 Kh8-g7 Bf5-d3 Kg7-h8 Kc7-c6 Kh8-g7 Bd3-f5 Kg7-h8 Kc6-d5 Kh8-g7 Kd5-c4 Kg7-h8 Kc4-b3 Kh8-g7 Kb3-c3 Kg7-h8 Bf5-b1 Kh8-g7 Bb1-e4
It also seems to go deeper much faster than the official version 17.
“Modern chess is too much concerned with things like pawn structure. Forget it, checkmate ends the game.” – Nigel Short
User avatar
hgm
Posts: 28315
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Simple drawn endgame that Stockfish have depth problem with

Post by hgm »

Searches are unpredictable, and an unusual combination of events can sometimes throw them badly off track. Engines like Stockfish are not optimized to be stable, but to have high Elo, which tends to optimize the common cases at the expense of the rare cases. And if it already has the correct score and move, why would you also want it to search deeper? There is no Elo in that.

The output of Stockfish is a bit suspect, because it seems to produce a number of fail highs (PV with just one move) with a score that is equal to that of the previous iteration. Root fail highs are only possible when you use an aspiration window, and normally you would take an aspiration window that contains the previous score. So either there is something fishy with the aspiration logic, or it is simply lying about the score. That the PV move from the previous iteration can fail high is also suspect, but could be due to a critical hash entry in that line having been replaced.