Well, going back from theoretic to very practical scaling, I think one essential, absolutely necessary thing to do is to scale down single rook endgames.
Reaons are simple: single rook endgames represent some 8% of all endgames, while the second most frequent endgame after single rook endgames come at only some 1-2% frequency. So that, if you do not scale single rook endgames, but scale something else instead, you are simply wasting your time.
Almost all single rook endgames are of course very drawish. How I think they could be scaled down reasonably?
1. scale down by 15-20% all single rook endgames, independently of other features (well, why not, even if you have big advantage, the game might still end in a draw, if you have small advantage, the game will certainly end in a draw, so it is better to go into any other endgame excluding opposite bishop endings)
2. scale down by 70% all single rook endgames with just 4 vs 3 pawns on one and the same side (either queen or king, usually king). This is very reasonable to do, as most such games end in a draw, no matter what the engines show
3. scale down by 90% all single rook endgames with just 3 vs 2 pawns on one wing of the board (and of course, that also means that you should scale all such endgames with equal number of pawns on one wing of the board, 3 vs 3, or all endgames with pawns just on one wing, f,g,h or a,b,c files, when the pawns are equal or one side has just a pawn more, 2 vs 2, 2 vs 1, etc.)
90% decrease of score is not big at all, as such endings are simply drawn without exception
[d]4r1k1/5pp1/7p/8/3R4/4P2P/5PP1/6K1 w - - 0 58
most likely a draw, but engines do not think like that
[d]4r1k1/6p1/7p/8/3R4/7P/5PP1/6K1 w - - 0 58
draw guaranteed, but engines do not think like that
[d]4r1k1/6p1/8/8/3R4/7P/5P2/6K1 w - - 0 58
even simpler draw, but some engines might want to play on
Are there programmers/engines among you that do not scale single rook endgames?
What do you think about single rook endgames being 10 times as frequent as the next most frequent ending?
Obligatory scaling
Moderators: hgm, Rebel, chrisw
-
- Posts: 686
- Joined: Thu Mar 03, 2011 4:57 pm
- Location: Germany
Re: Obligatory scaling
Can you backup your feeling with statistics data, I mean not that rook endgames are frequent. I'm with you about that, but that 90% of 3 vs 2 pawns end in a draw when the pawns are on one side. Seems a bit drastic to me.
The engine will probably encounter during search a lot of positions with double and even triple pawns that are not drawish at all and such a simple scaling will probably hurt quite a lot.
Thomas...
The engine will probably encounter during search a lot of positions with double and even triple pawns that are not drawish at all and such a simple scaling will probably hurt quite a lot.
Thomas...
-
- Posts: 6052
- Joined: Tue Jun 12, 2012 12:41 pm
Re: Obligatory scaling
I do not know what game to post as an example. Whatever single rook endgames you look at, they seem to be drawn, unless the stronger side has very substantial advantage.
Below a random sample game.
[pgn][PlyCount "190"]
[EventType "simul"]
[Source "Doe"]
[MLNrOfMoves "95"]
[MLFlags "010100"]
[Event "201403Stockfish5_4+0_240games"]
[Date "2014.06.01"]
[Round "23.1"]
[White "Stockfish 5 64 SSE4.2x6"]
[Black "Houdini 4 x64_st_X6_CT0"]
[Result "1/2-1/2"]
[EventDate "2014.05.31"]
[ECO "B07"]
[TimeControl "240"]
[Annotator "0.35;0.16"]
{Intel(R) Core(TM) i7 CPU X 980 @ 3.33GHz 3337 MHz W=24.6 plies; 9. 968kN/s; Perfect2014c.ctg B=20.4 plies; 12.642kN/s; 3.386 TBAs; Perfect2014c. ctg}
1. e4 {[%eval 0,0] [%emt 0:00:00]} 1... g6 {[%eval 0,0] [%emt 0:00:00]} 2. d4
{[%eval 0,0] [%emt 0:00:00]} 2... Bg7 {[%eval 0,0] [%emt 0:00:00]} 3. Nc3
{[%eval 0, 0] [%emt 0:00:00]} 3... d6 {[%eval 0,0] [%emt 0:00:00]} 4. Be3
{[%eval 0,0] [%emt 0: 00:00]} 4... Nf6 {[%eval 0,0] [%emt 0:00:00]} 5. Qd2
{[%eval 0,0] [%emt 0:00:00]} 5... c6 {[%eval 0,0] [%emt 0:00:00]} 6. Bh6
{[%eval 35,23] [%emt 0:00:15]} 6... O-O {[%eval 16,21] [%emt 0:00:07]} 7. Bxg7
{[%eval 20,23] [%emt 0:00:05] (Cf3)} 7... Kxg7 {[%eval 16,20] [%emt 0:00:01]} 8.
Be2 {[%eval 27,23] [%emt 0:00:06] (Cf3)} 8... c5
{[%eval 2,20] [%emt 0:00:05] (Db6)} 9. dxc5 {[%eval 36,23] [%emt 0:00:11] (d5)}
9... dxc5 {[%eval 12,19] [%emt 0:00:03]} 10. Qg5 {[%eval 37,24] [%emt 0:00:06]}
10... Qb6 {[%eval 18,21] [%emt 0:00:03] (Da5)} 11. O-O-O
{[%eval 63,24] [%emt 0:00:03]} 11... Nc6 {[%eval 10,21] [%emt 0:00:04] (h6)} 12.
e5 {[%eval 66,21] [%emt 0:00:03]} 12... Nd7 {[%eval 20,20] [%emt 0:00:03] (Ce8)}
13. f4 {[%eval 66,22] [%emt 0:00:04]} 13... f6 {[%eval 16,19] [%emt 0:00:03]}
14. exf6+ {[%eval 59,23] [%emt 0:00:03]} 14... Nxf6
{[%eval 35,20] [%emt 0:00:13]} 15. Nf3 {[%eval 51,23] [%emt 0:00:05]} 15... Bg4
{[%eval 18,20] [%emt 0:00:05] (Af5)} 16. Rhe1
{[%eval 74,22] [%emt 0:00:03] (Ce5)} 16... Rad8 {[%eval 36,19] [%emt 0:00:07]}
17. h3 {[%eval 67,22] [%emt 0:00:04] (Txd8)} 17... Bf5
{[%eval 16,19] [%emt 0:00:03]} 18. Ne5 {[%eval 52,23] [%emt 0:00: 09] (Txd8)}
18... Nd4 {[%eval 32,18] [%emt 0:00:08]} 19. Bd3 {[%eval 57,25] [%emt 0: 00:04]}
19... Bxd3 {[%eval 18,19] [%emt 0:00:04]} 20. Rxd3
{[%eval 44,24] [%emt 0:00: 06]} 20... Qc7 {[%eval 18,19] [%emt 0:00:02]} 21.
Rde3 {[%eval 41,25] [%emt 0:00:09] (Cf3)} 21... Nf5
{[%eval 16,20] [%emt 0:00:06] (e6)} 22. R3e2 {[%eval 41,23] [%emt 0: 00:06]}
22... Nd4 {[%eval 25,20] [%emt 0:00:03]} 23. Rf2 {[%eval 43,23] [%emt 0:00: 03]}
23... e6 {[%eval 20,20] [%emt 0:00:02]} 24. g4 {[%eval 55,23] [%emt 0:00:02]}
24... Kh8 {[%eval 40,20] [%emt 0:00:25]} 25. Nb1
{[%eval 55,23] [%emt 0:00:05] (h4)} 25... b5
{[%eval 48,18] [%emt 0:00:06] (Tde8)} 26. Qh6
{[%eval 59,24] [%emt 0:00:04] (Cd2)} 26... Kg8 {[%eval 43,16] [%emt 0:00:02]}
27. c3 {[%eval 60,26] [%emt 0:00:03] (Cd2)} 27... Nc6
{[%eval 47,16] [%emt 0:00:01]} 28. Nxc6 {[%eval 68,27] [%emt 0:00: 02]} 28...
Qxc6 {[%eval 47,15] [%emt 0:00:00]} 29. f5 {[%eval 53,26] [%emt 0:00:04]} 29...
exf5 {[%eval 38,18] [%emt 0:00:03]} 30. gxf5 {[%eval 62,28] [%emt 0:00:02]}
30... Nd7 {[%eval 48,20] [%emt 0:00:02]} 31. Rfe2 {[%eval 67,27] [%emt 0:00:04]}
31... Qf6 {[%eval 48,18] [%emt 0:00:00]} 32. fxg6 {[%eval 75,27] [%emt 0:00:02]}
32... Qxg6 {[%eval 36,18] [%emt 0:00:02]} 33. Qxg6+
{[%eval 75,25] [%emt 0:00:02] (De3)} 33... hxg6 {[%eval 33,17] [%emt 0:00:00]}
34. Nd2 {[%eval 67,25] [%emt 0:00:03]} 34... b4 {[%eval 39,21] [%emt 0:00:04]}
35. Ne4 {[%eval 63,26] [%emt 0:00:07]} 35... bxc3 {[%eval 35,20] [%emt 0:00:01]}
36. Nxc3 {[%eval 69,26] [%emt 0:00:02]} 36... c4 {[%eval 37,21] [%emt 0:00:01]}
37. Re6 {[%eval 78,26] [%emt 0:00:02]} 37... Nc5
{[%eval 31,20] [%emt 0:00:02] (Tf6)} 38. Rxg6+ {[%eval 100,23] [%emt 0:00:03]}
38... Kh7 {[%eval 31,22] [%emt 0:00:02]} 39. Reg1
{[%eval 100,26] [%emt 0:00:03]} 39... Nd3+ {[%eval 33,20] [%emt 0:00:01]} 40.
Kb1 {[%eval 91,27] [%emt 0:00:07]} 40... Rf1+ {[%eval 29,21] [%emt 0:00:02]} 41.
Rxf1 {[%eval 91,27] [%emt 0:00:01]} 41... Kxg6 {[%eval 27,20] [%emt 0:00:00]}
42. Nd1 {[%eval 91,26] [%emt 0:00:01]} 42... Re8
{[%eval 27,21] [%emt 0:00:03] (Tb8)} 43. Kc2 {[%eval 88,22] [%emt 0:00:02]}
43... Nb4+ {[%eval 28,19] [%emt 0:00:02]} 44. Kc3 {[%eval 87,24] [%emt 0:00:01]}
44... Nxa2+ {[%eval 28,18] [%emt 0:00:00]} 45. Kxc4
{[%eval 87,24] [%emt 0:00:02]} 45... Nc1 {[%eval 26,19] [%emt 0:00:01] (Tc8+)}
46. Kc3 {[%eval 79,22] [%emt 0:00:04] (Tf3)} 46... Kg5
{[%eval 21,19] [%emt 0:00:02] (Tc8+)} 47. Rf7
{[%eval 77,19] [%emt 0:00:02] (Tf3)} 47... a5 {[%eval 19,19] [%emt 0:00:04]} 48.
Kd2 {[%eval 76,23] [%emt 0:00:02] (Td7)} 48... Nb3+
{[%eval 17,20] [%emt 0:00:01]} 49. Kd3 {[%eval 70,23] [%emt 0:00:02]} 49...
Rd8+ {[%eval 17,21] [%emt 0:00:04] (Cc1+)} 50. Kc3
{[%eval 73, 24] [%emt 0:00:02]} 50... Nd4 {[%eval 23,19] [%emt 0:00:01] (Cc1)}
51. Rg7+ {[%eval 84,20] [%emt 0:00:02]} 51... Kf6
{[%eval 19,20] [%emt 0:00:01] (Rf5)} 52. Rg4
{[%eval 73,22] [%emt 0:00:03] (Tg2)} 52... Ne2+ {[%eval 14,19] [%emt 0:00:01]}
53. Kc2 {[%eval 66,25] [%emt 0:00:04]} 53... Nd4+ {[%eval 12,21] [%emt 0:00:01]}
54. Kb1 {[%eval 66,25] [%emt 0:00:01]} 54... Nc6 {[%eval 14,20] [%emt 0:00:01]}
55. Nf2 {[%eval 63,25] [%emt 0:00:01]} 55... Kf5
{[%eval 14,20] [%emt 0:00:01] (Cb4)} 56. Kc2 {[%eval 78,21] [%emt 0:00:02]}
56... Nb4+ {[%eval 19,20] [%emt 0:00:01]} 57. Kc3
{[%eval 69,22] [%emt 0:00:01] (Rb3)} 57... Nd5+
{[%eval 16,19] [%emt 0:00:01] (Te8)} 58. Kb3 {[%eval 72,22] [%emt 0:00:01]}
58... Rb8+ {[%eval 10,20] [%emt 0:00:01] (Cf4)} 59. Ka3
{[%eval 72,24] [%emt 0:00:02]} 59... Ne3 {[%eval 10,23] [%emt 0:00:02] (Cf4)}
60. Ra4 {[%eval 58,24] [%emt 0:00:01]} 60... Nc2+
{[%eval 10,22] [%emt 0:00: 01]} 61. Ka2 {[%eval 58,1] [%emt 0:00:00]} 61... Nb4+
{[%eval 11,23] [%emt 0:00:02]} 62. Kb1 {[%eval 58,25] [%emt 0:00:01]} 62... Rb5
{[%eval 11,23] [%emt 0:00:01]} 63. Ra3 {[%eval 60,25] [%emt 0:00:01]} 63... Rd5
{[%eval 11,22] [%emt 0:00:01]} 64. Rf3+ {[%eval 60,25] [%emt 0:00:01]} 64... Ke5
{[%eval 9,22] [%emt 0:00:01] (Rg5)} 65. Kc1 {[%eval 63,24] [%emt 0:00:02]} 65...
Rd8 {[%eval 12,21] [%emt 0:00:01] (Td4)} 66. Ra3
{[%eval 65,24] [%emt 0:00:01] (h4)} 66... Rd5
{[%eval 12,20] [%emt 0:00:02] (Tc8+)} 67. Nd1 {[%eval 62,21] [%emt 0:00:01]}
67... Kf4 {[%eval 12,21] [%emt 0:00:02] (Cd3+)} 68. Nc3
{[%eval 86,23] [%emt 0:00:01]} 68... Rf5 {[%eval 10,22] [%emt 0:00:01] (Td8)}
69. Ne2+ {[%eval 67,20] [%emt 0:00:01]} 69... Kg5
{[%eval 10,20] [%emt 0:00: 00]} 70. Nd4 {[%eval 67,25] [%emt 0:00:01] (Rd2)}
70... Rd5 {[%eval 9,20] [%emt 0:00: 01] (Tf1+)} 71. Nf3+
{[%eval 69,21] [%emt 0:00:01]} 71... Kf5 {[%eval 10,21] [%emt 0: 00:01] (Rf4)}
72. Ne1 {[%eval 65,23] [%emt 0:00:01]} 72... Ke4 {[%eval 10,20] [%emt 0:00:01]}
73. Rg3 {[%eval 58,23] [%emt 0:00:01]} 73... Rf5 {[%eval 10,21] [%emt 0:00: 01]}
74. Rg4+ {[%eval 58,22] [%emt 0:00:01]} 74... Ke5
{[%eval 12,20] [%emt 0:00:04] (Rd5)} 75. Kd1 {[%eval 53,21] [%emt 0:00:01] (h4)}
75... Rf1 {[%eval 12,20] [%emt 0: 00:01]} 76. Ke2
{[%eval 53,22] [%emt 0:00:01] (Th4)} 76... Rh1 {[%eval 16,18] [%emt 0:00:01]}
77. Rg3 {[%eval 48,22] [%emt 0:00:01]} 77... Kf4
{[%eval 18,19] [%emt 0:00: 01] (Th2+)} 78. Rf3+ {[%eval 54,24] [%emt 0:00:01]}
78... Ke4 {[%eval 18,20] [%emt 0: 00:01]} 79. Re3+
{[%eval 54,24] [%emt 0:00:00]} 79... Kf4 {[%eval 14,21] [%emt 0:00: 01]} 80.
Ng2+ {[%eval 54,23] [%emt 0:00:00]} 80... Kf5 {[%eval 11,21] [%emt 0:00:03]} 81.
Rg3 {[%eval 56,23] [%emt 0:00:00]} 81... Ke6
{[%eval 14,20] [%emt 0:00:01] (Re5)} 82. Nf4+
{[%eval 58,21] [%emt 0:00:00] (Ta3)} 82... Ke5
{[%eval 12,20] [%emt 0:00:01] (Rf5)} 83. Nd3+ {[%eval 58,25] [%emt 0:00:01]}
83... Nxd3 {[%eval 14,21] [%emt 0:00: 01]} 84. Kxd3
{[%eval 58,28] [%emt 0:00:00]} 84... a4 {[%eval 13,22] [%emt 0:00:01]} 85. Kc2
{[%eval 58,29] [%emt 0:00:00]} 85... Kd5 {[%eval 16,22] [%emt 0:00:01] (Rf5)}
86. Re3 {[%eval 58,32] [%emt 0:00:00] (Rc3)} 86... Kd4
{[%eval 13,24] [%emt 0:00:01]} 87. Rf3 {[%eval 58,32] [%emt 0:00:00] (Tc3)}
87... Kc4 {[%eval 13,24] [%emt 0:00:01] (Re4)} 88. Rc3+
{[%eval 17,26] [%emt 0:00:01] (Tf4+)} 88... Kd4
{[%eval 14,24] [%emt 0:00:01] (Rd5)} 89. Ra3
{[%eval 17,33] [%emt 0:00:00] (Td3+)} 89... Kd5
{[%eval 10, 24] [%emt 0:00:01] (Rc5)} 90. Rg3 {[%eval 17,30] [%emt 0:00:01]}
90... Kc5 {[%eval 12,23] [%emt 0:00:01] (Rd6)} 91. Rd3
{[%eval 17,28] [%emt 0:00:00] (Tg5+)} 91... Kb5
{[%eval 9,24] [%emt 0:00:00] (Rc4)} 92. Rc3 {[%eval 17,33] [%emt 0:00:01] (Te3)}
92... Kb4 {[%eval 9,25] [%emt 0:00:00]} 93. Re3 {[%eval 16,33] [%emt 0:00:00]}
93... Kc5 {[%eval 9,25] [%emt 0:00:01] (Rb5)} 94. Re5+
{[%eval 16,32] [%emt 0:00:00]} 94... Kd4 {[%eval 9,26] [%emt 0:00:00]} 95. Ra5
{[%eval 10,31] [%emt 0:00:00]} 95... Rh2+ {[%eval 9,25] [%emt 0:00:01]} 1/2-1/2
[/pgn]
[d]8/8/8/4k3/p7/3K2RP/1P6/7r w - - 0 85
SF thinks here it has some 60cps advantage, but this is a simple draw.
One pawn material advantage will usually not be sufficient for a win, if the weaker side is active, especially if its rook attacks enemy pawns instead of staying into the rear.
So that you can safely scale by a smaller percentage also all single rook endgames, regardless of the pawn span.
Below a random sample game.
[pgn][PlyCount "190"]
[EventType "simul"]
[Source "Doe"]
[MLNrOfMoves "95"]
[MLFlags "010100"]
[Event "201403Stockfish5_4+0_240games"]
[Date "2014.06.01"]
[Round "23.1"]
[White "Stockfish 5 64 SSE4.2x6"]
[Black "Houdini 4 x64_st_X6_CT0"]
[Result "1/2-1/2"]
[EventDate "2014.05.31"]
[ECO "B07"]
[TimeControl "240"]
[Annotator "0.35;0.16"]
{Intel(R) Core(TM) i7 CPU X 980 @ 3.33GHz 3337 MHz W=24.6 plies; 9. 968kN/s; Perfect2014c.ctg B=20.4 plies; 12.642kN/s; 3.386 TBAs; Perfect2014c. ctg}
1. e4 {[%eval 0,0] [%emt 0:00:00]} 1... g6 {[%eval 0,0] [%emt 0:00:00]} 2. d4
{[%eval 0,0] [%emt 0:00:00]} 2... Bg7 {[%eval 0,0] [%emt 0:00:00]} 3. Nc3
{[%eval 0, 0] [%emt 0:00:00]} 3... d6 {[%eval 0,0] [%emt 0:00:00]} 4. Be3
{[%eval 0,0] [%emt 0: 00:00]} 4... Nf6 {[%eval 0,0] [%emt 0:00:00]} 5. Qd2
{[%eval 0,0] [%emt 0:00:00]} 5... c6 {[%eval 0,0] [%emt 0:00:00]} 6. Bh6
{[%eval 35,23] [%emt 0:00:15]} 6... O-O {[%eval 16,21] [%emt 0:00:07]} 7. Bxg7
{[%eval 20,23] [%emt 0:00:05] (Cf3)} 7... Kxg7 {[%eval 16,20] [%emt 0:00:01]} 8.
Be2 {[%eval 27,23] [%emt 0:00:06] (Cf3)} 8... c5
{[%eval 2,20] [%emt 0:00:05] (Db6)} 9. dxc5 {[%eval 36,23] [%emt 0:00:11] (d5)}
9... dxc5 {[%eval 12,19] [%emt 0:00:03]} 10. Qg5 {[%eval 37,24] [%emt 0:00:06]}
10... Qb6 {[%eval 18,21] [%emt 0:00:03] (Da5)} 11. O-O-O
{[%eval 63,24] [%emt 0:00:03]} 11... Nc6 {[%eval 10,21] [%emt 0:00:04] (h6)} 12.
e5 {[%eval 66,21] [%emt 0:00:03]} 12... Nd7 {[%eval 20,20] [%emt 0:00:03] (Ce8)}
13. f4 {[%eval 66,22] [%emt 0:00:04]} 13... f6 {[%eval 16,19] [%emt 0:00:03]}
14. exf6+ {[%eval 59,23] [%emt 0:00:03]} 14... Nxf6
{[%eval 35,20] [%emt 0:00:13]} 15. Nf3 {[%eval 51,23] [%emt 0:00:05]} 15... Bg4
{[%eval 18,20] [%emt 0:00:05] (Af5)} 16. Rhe1
{[%eval 74,22] [%emt 0:00:03] (Ce5)} 16... Rad8 {[%eval 36,19] [%emt 0:00:07]}
17. h3 {[%eval 67,22] [%emt 0:00:04] (Txd8)} 17... Bf5
{[%eval 16,19] [%emt 0:00:03]} 18. Ne5 {[%eval 52,23] [%emt 0:00: 09] (Txd8)}
18... Nd4 {[%eval 32,18] [%emt 0:00:08]} 19. Bd3 {[%eval 57,25] [%emt 0: 00:04]}
19... Bxd3 {[%eval 18,19] [%emt 0:00:04]} 20. Rxd3
{[%eval 44,24] [%emt 0:00: 06]} 20... Qc7 {[%eval 18,19] [%emt 0:00:02]} 21.
Rde3 {[%eval 41,25] [%emt 0:00:09] (Cf3)} 21... Nf5
{[%eval 16,20] [%emt 0:00:06] (e6)} 22. R3e2 {[%eval 41,23] [%emt 0: 00:06]}
22... Nd4 {[%eval 25,20] [%emt 0:00:03]} 23. Rf2 {[%eval 43,23] [%emt 0:00: 03]}
23... e6 {[%eval 20,20] [%emt 0:00:02]} 24. g4 {[%eval 55,23] [%emt 0:00:02]}
24... Kh8 {[%eval 40,20] [%emt 0:00:25]} 25. Nb1
{[%eval 55,23] [%emt 0:00:05] (h4)} 25... b5
{[%eval 48,18] [%emt 0:00:06] (Tde8)} 26. Qh6
{[%eval 59,24] [%emt 0:00:04] (Cd2)} 26... Kg8 {[%eval 43,16] [%emt 0:00:02]}
27. c3 {[%eval 60,26] [%emt 0:00:03] (Cd2)} 27... Nc6
{[%eval 47,16] [%emt 0:00:01]} 28. Nxc6 {[%eval 68,27] [%emt 0:00: 02]} 28...
Qxc6 {[%eval 47,15] [%emt 0:00:00]} 29. f5 {[%eval 53,26] [%emt 0:00:04]} 29...
exf5 {[%eval 38,18] [%emt 0:00:03]} 30. gxf5 {[%eval 62,28] [%emt 0:00:02]}
30... Nd7 {[%eval 48,20] [%emt 0:00:02]} 31. Rfe2 {[%eval 67,27] [%emt 0:00:04]}
31... Qf6 {[%eval 48,18] [%emt 0:00:00]} 32. fxg6 {[%eval 75,27] [%emt 0:00:02]}
32... Qxg6 {[%eval 36,18] [%emt 0:00:02]} 33. Qxg6+
{[%eval 75,25] [%emt 0:00:02] (De3)} 33... hxg6 {[%eval 33,17] [%emt 0:00:00]}
34. Nd2 {[%eval 67,25] [%emt 0:00:03]} 34... b4 {[%eval 39,21] [%emt 0:00:04]}
35. Ne4 {[%eval 63,26] [%emt 0:00:07]} 35... bxc3 {[%eval 35,20] [%emt 0:00:01]}
36. Nxc3 {[%eval 69,26] [%emt 0:00:02]} 36... c4 {[%eval 37,21] [%emt 0:00:01]}
37. Re6 {[%eval 78,26] [%emt 0:00:02]} 37... Nc5
{[%eval 31,20] [%emt 0:00:02] (Tf6)} 38. Rxg6+ {[%eval 100,23] [%emt 0:00:03]}
38... Kh7 {[%eval 31,22] [%emt 0:00:02]} 39. Reg1
{[%eval 100,26] [%emt 0:00:03]} 39... Nd3+ {[%eval 33,20] [%emt 0:00:01]} 40.
Kb1 {[%eval 91,27] [%emt 0:00:07]} 40... Rf1+ {[%eval 29,21] [%emt 0:00:02]} 41.
Rxf1 {[%eval 91,27] [%emt 0:00:01]} 41... Kxg6 {[%eval 27,20] [%emt 0:00:00]}
42. Nd1 {[%eval 91,26] [%emt 0:00:01]} 42... Re8
{[%eval 27,21] [%emt 0:00:03] (Tb8)} 43. Kc2 {[%eval 88,22] [%emt 0:00:02]}
43... Nb4+ {[%eval 28,19] [%emt 0:00:02]} 44. Kc3 {[%eval 87,24] [%emt 0:00:01]}
44... Nxa2+ {[%eval 28,18] [%emt 0:00:00]} 45. Kxc4
{[%eval 87,24] [%emt 0:00:02]} 45... Nc1 {[%eval 26,19] [%emt 0:00:01] (Tc8+)}
46. Kc3 {[%eval 79,22] [%emt 0:00:04] (Tf3)} 46... Kg5
{[%eval 21,19] [%emt 0:00:02] (Tc8+)} 47. Rf7
{[%eval 77,19] [%emt 0:00:02] (Tf3)} 47... a5 {[%eval 19,19] [%emt 0:00:04]} 48.
Kd2 {[%eval 76,23] [%emt 0:00:02] (Td7)} 48... Nb3+
{[%eval 17,20] [%emt 0:00:01]} 49. Kd3 {[%eval 70,23] [%emt 0:00:02]} 49...
Rd8+ {[%eval 17,21] [%emt 0:00:04] (Cc1+)} 50. Kc3
{[%eval 73, 24] [%emt 0:00:02]} 50... Nd4 {[%eval 23,19] [%emt 0:00:01] (Cc1)}
51. Rg7+ {[%eval 84,20] [%emt 0:00:02]} 51... Kf6
{[%eval 19,20] [%emt 0:00:01] (Rf5)} 52. Rg4
{[%eval 73,22] [%emt 0:00:03] (Tg2)} 52... Ne2+ {[%eval 14,19] [%emt 0:00:01]}
53. Kc2 {[%eval 66,25] [%emt 0:00:04]} 53... Nd4+ {[%eval 12,21] [%emt 0:00:01]}
54. Kb1 {[%eval 66,25] [%emt 0:00:01]} 54... Nc6 {[%eval 14,20] [%emt 0:00:01]}
55. Nf2 {[%eval 63,25] [%emt 0:00:01]} 55... Kf5
{[%eval 14,20] [%emt 0:00:01] (Cb4)} 56. Kc2 {[%eval 78,21] [%emt 0:00:02]}
56... Nb4+ {[%eval 19,20] [%emt 0:00:01]} 57. Kc3
{[%eval 69,22] [%emt 0:00:01] (Rb3)} 57... Nd5+
{[%eval 16,19] [%emt 0:00:01] (Te8)} 58. Kb3 {[%eval 72,22] [%emt 0:00:01]}
58... Rb8+ {[%eval 10,20] [%emt 0:00:01] (Cf4)} 59. Ka3
{[%eval 72,24] [%emt 0:00:02]} 59... Ne3 {[%eval 10,23] [%emt 0:00:02] (Cf4)}
60. Ra4 {[%eval 58,24] [%emt 0:00:01]} 60... Nc2+
{[%eval 10,22] [%emt 0:00: 01]} 61. Ka2 {[%eval 58,1] [%emt 0:00:00]} 61... Nb4+
{[%eval 11,23] [%emt 0:00:02]} 62. Kb1 {[%eval 58,25] [%emt 0:00:01]} 62... Rb5
{[%eval 11,23] [%emt 0:00:01]} 63. Ra3 {[%eval 60,25] [%emt 0:00:01]} 63... Rd5
{[%eval 11,22] [%emt 0:00:01]} 64. Rf3+ {[%eval 60,25] [%emt 0:00:01]} 64... Ke5
{[%eval 9,22] [%emt 0:00:01] (Rg5)} 65. Kc1 {[%eval 63,24] [%emt 0:00:02]} 65...
Rd8 {[%eval 12,21] [%emt 0:00:01] (Td4)} 66. Ra3
{[%eval 65,24] [%emt 0:00:01] (h4)} 66... Rd5
{[%eval 12,20] [%emt 0:00:02] (Tc8+)} 67. Nd1 {[%eval 62,21] [%emt 0:00:01]}
67... Kf4 {[%eval 12,21] [%emt 0:00:02] (Cd3+)} 68. Nc3
{[%eval 86,23] [%emt 0:00:01]} 68... Rf5 {[%eval 10,22] [%emt 0:00:01] (Td8)}
69. Ne2+ {[%eval 67,20] [%emt 0:00:01]} 69... Kg5
{[%eval 10,20] [%emt 0:00: 00]} 70. Nd4 {[%eval 67,25] [%emt 0:00:01] (Rd2)}
70... Rd5 {[%eval 9,20] [%emt 0:00: 01] (Tf1+)} 71. Nf3+
{[%eval 69,21] [%emt 0:00:01]} 71... Kf5 {[%eval 10,21] [%emt 0: 00:01] (Rf4)}
72. Ne1 {[%eval 65,23] [%emt 0:00:01]} 72... Ke4 {[%eval 10,20] [%emt 0:00:01]}
73. Rg3 {[%eval 58,23] [%emt 0:00:01]} 73... Rf5 {[%eval 10,21] [%emt 0:00: 01]}
74. Rg4+ {[%eval 58,22] [%emt 0:00:01]} 74... Ke5
{[%eval 12,20] [%emt 0:00:04] (Rd5)} 75. Kd1 {[%eval 53,21] [%emt 0:00:01] (h4)}
75... Rf1 {[%eval 12,20] [%emt 0: 00:01]} 76. Ke2
{[%eval 53,22] [%emt 0:00:01] (Th4)} 76... Rh1 {[%eval 16,18] [%emt 0:00:01]}
77. Rg3 {[%eval 48,22] [%emt 0:00:01]} 77... Kf4
{[%eval 18,19] [%emt 0:00: 01] (Th2+)} 78. Rf3+ {[%eval 54,24] [%emt 0:00:01]}
78... Ke4 {[%eval 18,20] [%emt 0: 00:01]} 79. Re3+
{[%eval 54,24] [%emt 0:00:00]} 79... Kf4 {[%eval 14,21] [%emt 0:00: 01]} 80.
Ng2+ {[%eval 54,23] [%emt 0:00:00]} 80... Kf5 {[%eval 11,21] [%emt 0:00:03]} 81.
Rg3 {[%eval 56,23] [%emt 0:00:00]} 81... Ke6
{[%eval 14,20] [%emt 0:00:01] (Re5)} 82. Nf4+
{[%eval 58,21] [%emt 0:00:00] (Ta3)} 82... Ke5
{[%eval 12,20] [%emt 0:00:01] (Rf5)} 83. Nd3+ {[%eval 58,25] [%emt 0:00:01]}
83... Nxd3 {[%eval 14,21] [%emt 0:00: 01]} 84. Kxd3
{[%eval 58,28] [%emt 0:00:00]} 84... a4 {[%eval 13,22] [%emt 0:00:01]} 85. Kc2
{[%eval 58,29] [%emt 0:00:00]} 85... Kd5 {[%eval 16,22] [%emt 0:00:01] (Rf5)}
86. Re3 {[%eval 58,32] [%emt 0:00:00] (Rc3)} 86... Kd4
{[%eval 13,24] [%emt 0:00:01]} 87. Rf3 {[%eval 58,32] [%emt 0:00:00] (Tc3)}
87... Kc4 {[%eval 13,24] [%emt 0:00:01] (Re4)} 88. Rc3+
{[%eval 17,26] [%emt 0:00:01] (Tf4+)} 88... Kd4
{[%eval 14,24] [%emt 0:00:01] (Rd5)} 89. Ra3
{[%eval 17,33] [%emt 0:00:00] (Td3+)} 89... Kd5
{[%eval 10, 24] [%emt 0:00:01] (Rc5)} 90. Rg3 {[%eval 17,30] [%emt 0:00:01]}
90... Kc5 {[%eval 12,23] [%emt 0:00:01] (Rd6)} 91. Rd3
{[%eval 17,28] [%emt 0:00:00] (Tg5+)} 91... Kb5
{[%eval 9,24] [%emt 0:00:00] (Rc4)} 92. Rc3 {[%eval 17,33] [%emt 0:00:01] (Te3)}
92... Kb4 {[%eval 9,25] [%emt 0:00:00]} 93. Re3 {[%eval 16,33] [%emt 0:00:00]}
93... Kc5 {[%eval 9,25] [%emt 0:00:01] (Rb5)} 94. Re5+
{[%eval 16,32] [%emt 0:00:00]} 94... Kd4 {[%eval 9,26] [%emt 0:00:00]} 95. Ra5
{[%eval 10,31] [%emt 0:00:00]} 95... Rh2+ {[%eval 9,25] [%emt 0:00:01]} 1/2-1/2
[/pgn]
[d]8/8/8/4k3/p7/3K2RP/1P6/7r w - - 0 85
SF thinks here it has some 60cps advantage, but this is a simple draw.
One pawn material advantage will usually not be sufficient for a win, if the weaker side is active, especially if its rook attacks enemy pawns instead of staying into the rear.
So that you can safely scale by a smaller percentage also all single rook endgames, regardless of the pawn span.
-
- Posts: 5239
- Joined: Thu Mar 09, 2006 9:40 am
- Full name: Vincent Lejeune
Re: Obligatory scaling
During the world blitz championship, the commentator (a GM) gives a positions like this as a theoretical draw too :Lyudmil Tsvetkov wrote:...
4r1k1/5pp1/7p/8/3R4/4P2P/5PP1/6K1 w - - 0 58
most likely a draw, but engines do not think like that
4r1k1/6p1/7p/8/3R4/7P/5PP1/6K1 w - - 0 58
draw guaranteed, but engines do not think like that
4r1k1/6p1/8/8/3R4/7P/5P2/6K1 w - - 0 58
even simpler draw, but some engines might want to play on
Are there programmers/engines among you that do not scale single rook endgames?
What do you think about single rook endgames being 10 times as frequent as the next most frequent ending?
[d]8/1r2kpp1/7p/2R5/5PK1/5P2/8/8 w - - 0 1
-
- Posts: 6052
- Joined: Tue Jun 12, 2012 12:41 pm
Re: Obligatory scaling
Well, I would say that not 90%, but 100 of single rook endgames and 3 vs 2 pawns on just one wing end in a draw. There are simply no winning chances even if there is a double pawn for the weaker side. But I am not very good at statistics and working with applications, perhaps someone else can provide some data for me. Besides, doubled pawns really happen very infrequently with such endings.tpetzke wrote:Can you backup your feeling with statistics data, I mean not that rook endgames are frequent. I'm with you about that, but that 90% of 3 vs 2 pawns end in a draw when the pawns are on one side. Seems a bit drastic to me.
The engine will probably encounter during search a lot of positions with double and even triple pawns that are not drawish at all and such a simple scaling will probably hurt quite a lot.
Thomas...
The important thing is that you specify the scaling conditions correctly:
- pawn span less or equal to 3
- only one rook each side
- number of pawns equal or just one pawn more for one side
It would be interesting for an engine to encounter during search a triple pawn for the weaker side with 3 vs 2.
-
- Posts: 6052
- Joined: Tue Jun 12, 2012 12:41 pm
Re: Obligatory scaling
Precisely, this is a theoretical draw.Vinvin wrote:During the world blitz championship, the commentator (a GM) gives a positions like this as a theoretical draw too :Lyudmil Tsvetkov wrote:...
4r1k1/5pp1/7p/8/3R4/4P2P/5PP1/6K1 w - - 0 58
most likely a draw, but engines do not think like that
4r1k1/6p1/7p/8/3R4/7P/5PP1/6K1 w - - 0 58
draw guaranteed, but engines do not think like that
4r1k1/6p1/8/8/3R4/7P/5P2/6K1 w - - 0 58
even simpler draw, but some engines might want to play on
Are there programmers/engines among you that do not scale single rook endgames?
What do you think about single rook endgames being 10 times as frequent as the next most frequent ending?
[d]8/1r2kpp1/7p/2R5/5PK1/5P2/8/8 w - - 0 1
But let SF calculate on it, I bet it sees big black advantage.
Tablebases are still far away, and such a score could sufficiently mislead the engine.
-
- Posts: 10486
- Joined: Thu Mar 09, 2006 12:37 am
- Location: Tel-Aviv Israel
Re: Obligatory scaling
100% is obviously wrongLyudmil Tsvetkov wrote:Well, I would say that not 90%, but 100 of single rook endgames and 3 vs 2 pawns on just one wing end in a draw.tpetzke wrote:Can you backup your feeling with statistics data, I mean not that rook endgames are frequent. I'm with you about that, but that 90% of 3 vs 2 pawns end in a draw when the pawns are on one side. Seems a bit drastic to me.
The engine will probably encounter during search a lot of positions with double and even triple pawns that are not drawish at all and such a simple scaling will probably hurt quite a lot.
Thomas...
[d]5rk1/4K1pp/8/5PPP/8/8/8/1R6 w - - 12 1
white wins by 1.g6
-
- Posts: 6052
- Joined: Tue Jun 12, 2012 12:41 pm
Re: Obligatory scaling
This is a position with very big white additional advantage:Uri Blass wrote:100% is obviously wrongLyudmil Tsvetkov wrote:Well, I would say that not 90%, but 100 of single rook endgames and 3 vs 2 pawns on just one wing end in a draw.tpetzke wrote:Can you backup your feeling with statistics data, I mean not that rook endgames are frequent. I'm with you about that, but that 90% of 3 vs 2 pawns end in a draw when the pawns are on one side. Seems a bit drastic to me.
The engine will probably encounter during search a lot of positions with double and even triple pawns that are not drawish at all and such a simple scaling will probably hurt quite a lot.
Thomas...
[d]5rk1/4K1pp/8/5PPP/8/8/8/1R6 w - - 12 1
white wins by 1.g6
- all white pawns on the 5th rank, all black on the 2nd
- much better white king psqt
- very passive black rook
- side to move white
plus some very peculiar specific features also favouring white, like a mating net after g6
-
- Posts: 318
- Joined: Thu Mar 09, 2006 1:07 am
Re: Obligatory scaling
Your rule just counts the black and white pawns on one side.
I assume 4 vs. 2 or 1 or 0 pawns are not part of this rule, right?
(The same for 3 vs. 1 or 0 and 2 vs. 0.)
What if there are 5 pawns for one side?
What if there are double or triple pawns?
What if some of the pawns have already passed each other somehow?
What if white pawns are on file e (and f) and black pawns on h (and g)?
In this and other rules I am not sure how detailed you have looked
at _all_ possibilities of the distribution of pawns and pieces on the board.
This is interesting from a programmer's point of view. We need every
trick and bitmask and shortcut for an implementation of the rules
including absurd combinations that would only happen on a board
directly from a setup and not from a game.
Harald
I assume 4 vs. 2 or 1 or 0 pawns are not part of this rule, right?
(The same for 3 vs. 1 or 0 and 2 vs. 0.)
What if there are 5 pawns for one side?
What if there are double or triple pawns?
What if some of the pawns have already passed each other somehow?
What if white pawns are on file e (and f) and black pawns on h (and g)?
In this and other rules I am not sure how detailed you have looked
at _all_ possibilities of the distribution of pawns and pieces on the board.
This is interesting from a programmer's point of view. We need every
trick and bitmask and shortcut for an implementation of the rules
including absurd combinations that would only happen on a board
directly from a setup and not from a game.
Harald
-
- Posts: 686
- Joined: Thu Mar 03, 2011 4:57 pm
- Location: Germany
Re: Obligatory scaling
[d]8/5PP1/4K3/4R2p/6kp/7p/7r/8 w - - 0 1
I think I can win this as white
Thomas...
I think I can win this as white
Thomas...