Polugayevsky v Tal Moscow 1969

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

mishmash

Polugayevsky v Tal Moscow 1969

Post by mishmash »

A Classic game but is the sacrifice Bxh7+ good enough for the win?



Polugaevsky,L - Tal,M, URS-ch37 Moscow 1969

[d]2rq1rk1/pb3ppp/1p6/3pP3/5Q2/3B1N2/Pn3PPP/3RR1K1 w - - 0 1

Analysis by spark-0.3a mp:

19.Rd2 Nxd3 20.Rxd3 Rc2 21.Rd2 Rxd2 22.Qxd2
-/+ (-1.06) Depth: 6/8 00:00:00 40kN
19.Bf5 Rc4 20.Rd4 Re8 21.Qg3 Na4
-/+ (-0.86) Depth: 6/8 00:00:00 48kN
19.Rd2 Nxd3 20.Rxd3 Ba6 21.Rd2 Re8 22.Red1 Rc5
-/+ (-1.06) Depth: 7/10 00:00:00 68kN
19.Rd2
-/+ (-0.81) Depth: 8/10 00:00:00 104kN
19.Rd2 Nxd3 20.Rxd3 Qc7 21.Ra3 a5 22.Nd4 f6 23.Qg3 fxe5 24.Rxe5
-/+ (-0.78) Depth: 8/10 00:00:00 118kN
19.Rd2 Nxd3 20.Rxd3 Qc7 21.Qf5 g6 22.Qh3 Rfe8 23.Ng5 h5
=/+ (-0.67) Depth: 9/12 00:00:00 175kN
19.Rd2 Nxd3 20.Rxd3 Qe7 21.Nd4 Qb4 22.Qe3 Rfe8 23.e6 fxe6 24.Nxe6
-/+ (-0.80) Depth: 10/14 00:00:00 285kN
19.Rd2 Nxd3 20.Rxd3 Qe7 21.Nd4 Qb4 22.Qe3 Rfe8 23.f4 Qb2 24.Qd2 Qxd2 25.Rxd2
-/+ (-0.85) Depth: 11/16 00:00:00 468kN
19.Rd2 Nxd3 20.Rxd3 Qe7 21.Nd4 Qb4 22.Qe3 Rfe8 23.f4 Qb2 24.Qd2 Qxd2 25.Rxd2
-/+ (-0.85) Depth: 12/22 00:00:00 1065kN
19.Rd2 Nxd3 20.Rxd3 Re8 21.Ra3 a5 22.Nd4 Qf6 23.Qxf6 gxf6 24.Rg3+ Kf8 25.f4 fxe5 26.Rxe5 Rxe5 27.fxe5
-/+ (-0.93) Depth: 13/22 00:00:00 2981kN
19.Rd2 Nxd3 20.Rxd3 Re8 21.Ra3 a5 22.Qf5 h6 23.Nd4 Qg5 24.f4 Qxf5 25.Nxf5 Rc2 26.Rg3
-/+ (-0.99) Depth: 14/26 00:00:00 4687kN
19.Rd2 Nxd3 20.Rxd3 Re8 21.Nd4 Qf6 22.Qxf6 gxf6 23.f4 fxe5 24.Rxe5 Rxe5 25.fxe5 Rc4 26.Kf2 Kf8 27.Rd1 Ke7 28.Ke3
-/+ (-0.84) Depth: 15/28 00:00:01 11204kN
19.Rd2 Nxd3 20.Rxd3 Re8 21.Nd4 Qf6 22.Qxf6 gxf6 23.f4 fxe5 24.Rxe5 Rxe5 25.fxe5 Rc4 26.Kf2 Kf8 27.Rd1 Ke7 28.Ke3 a6
-/+ (-0.84) Depth: 16/32 00:00:01 15496kN
19.Rd2 Nxd3 20.Rxd3 Re8 21.Nd4 Qf6 22.Qxf6 gxf6 23.f4 fxe5 24.Rxe5 Rxe5 25.fxe5 Rc4 26.Kf2 Kg7 27.Rg3+ Kf8 28.Ke3 a6 29.Rf3 Ke7
-/+ (-0.78) Depth: 17/32 00:00:03 27950kN
19.Rd2 Nxd3 20.Rxd3 Re8 21.Nd4 Qf6 22.Qxf6 gxf6 23.f4 fxe5 24.fxe5 Rc4 25.Kf2 h5 26.Ree3 Kg7 27.Rg3+ Kf8 28.Rg5 h4 29.Rf5 Kg7
-/+ (-0.99) Depth: 18/34 00:00:05 46566kN
19.Rd2 Nxd3 20.Rxd3 Re8 21.Nd4 Qf6 22.Qxf6 gxf6 23.f4 fxe5 24.fxe5 Rc4 25.Rg3+ Kf8 26.Rg4 Bc8 27.Rf4 Kg8 28.g3 Bb7 29.Ref1 Rxe5 30.Rxf7 Rxd4 31.Rxb7
-/+ (-0.90) Depth: 19/36 00:00:10 85864kN
19.Bxh7+
-/+ (-0.74) Depth: 19/38 00:00:13 115mN
19.Bxh7+
= (-0.24) Depth: 19/38 00:00:14 121mN
19.Bxh7+ Kxh7 20.Ng5+ Kg6 21.h4 f5 22.h5+ Kxh5 23.Ne6 Qe7 24.Qh2+ Qh4 25.Nxg7+ Kg5 26.Ne6+ Kh5 27.Ng7+
= (0.00) Depth: 19/51 00:00:16 142mN
19.Bxh7+ Kxh7 20.Ng5+ Kg6 21.h4 f5 22.h5+ Kxh5 23.Ne6 Qe7 24.Qh2+ Qh4 25.Nxg7+ Kg5 26.Ne6+ Kh5 27.Ng7+
= (0.00) Depth: 20/51 00:00:22 185mN
19.Bxh7+ Kxh7 20.Ng5+ Kg6 21.h4 Qe7 22.Re3 Rc4 23.h5+ Kh6 24.Ne4+ Kh7 25.Qf5+ Kh6 26.Qf4+
= (0.00) Depth: 21/52 00:00:38 310mN
19.Bxh7+
= (0.25) Depth: 22/52 00:00:52 408mN
19.Bxh7+ Kxh7 20.Ng5+ Kg6 21.h4 Qe7 22.Re3 Rc4 23.Rd4 Bc8 24.Rxc4 dxc4 25.e6 fxe6 26.Qe4+ Rf5 27.g4 Qd7 28.Kh2 Bb7 29.gxf5+ exf5 30.Qf4 Nd3 31.Qxc4 Nxf2 32.Re6+ Kh5
+/= (0.50) Depth: 22/52 00:01:10 552mN
19.Bxh7+ Kxh7 20.Ng5+ Kg6 21.h4 Qe7 22.Re3 Rc4 23.Rd4 Rxd4 24.Qxd4 Rc8 25.Rg3 Rc1+ 26.Kh2 Rc4 27.Qxb2 Rxh4+ 28.Kg1 Kh5 29.Qe2+ Kh6 30.Qd2 Qb4 31.Qxb4 Rxb4 32.Nxf7+ Kh7 33.Nd6 Ba6 34.e6
+/- (0.71) Depth: 23/52 00:02:01 966mN
19.Bxh7+ Kxh7 20.Ng5+ Kg6 21.h4 Rc4 22.h5+ Kh6 23.Nxf7+ Kh7 24.Qf5+ Kg8 25.e6 Qf6 26.Qxf6 gxf6 27.Rd2 Rb4 28.e7 Kxf7 29.exf8Q+ Kxf8 30.h6 Kf7 31.a3 Rh4 32.Rxb2 Ba6 33.Rd2 Bc4 34.Re3 Rxh6
+/- (0.83) Depth: 24/56 00:04:24 2150mN
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Polugayevsky v Tal Moscow 1969

Post by zullil »

mishmash wrote:A Classic game but is the sacrifice Bxh7+ good enough for the win?

Polugaevsky,L - Tal,M, URS-ch37 Moscow 1969

[d]2rq1rk1/pb3ppp/1p6/3pP3/5Q2/3B1N2/Pn3PPP/3RR1K1 w - - 0 1
Stockfish-1.7.1 (8 threads) is enthusiastic:

Code: Select all

Searching: 2rq1rk1/pb3ppp/1p6/3pP3/5Q2/3B1N2/Pn3PPP/3RR1K1 w - -
infinite: 0 ponder: 0 time: 0 increment: 0 moves to go: 0
 2     -0.97   00:01     1004 Rd2 Nc4 Bxc4 Rxc4 
 2     -0.89   00:01     1063 Bf5 Nxd1 Bxc8 
 3     -0.69   00:01     1562 Bf5 Rc4 Rd4 
 4     -0.93   00:01     2699 Bf5 Rc5 Rd4 Nc4 
 5     -0.77   00:01     5192 Bf5 Rc5 Rc1 Nc4 Nd4 
 6  <  -1.05   00:01     8142 Bf5 Rc5 Rc1 g6 Rb1 Nc4 
 6     -0.93   00:01     9903 Bf5 Rc5 Rc1 g6 Bc2 Nc4 
 7  >  -0.69   00:01    21087 Bf5 Rc5 Rc1 g6 Bc2 Nc4 Bd3 
 7     -1.05   00:01    22031 Bf5 Rc5 Rc1 g6 Bc2 Nc4 Ba4 
 8  >  -0.85   00:01    25468 Bf5 Rc5 Rc1 g6 Bc2 Nc4 Bd3 
 8  >  -0.65   00:01    26826 Bf5 Rc5 Rc1 g6 Bc2 Nc4 Bd3 
 8     -0.61   00:01    30236 Bf5 Rc5 Rc1 g6 Bc2 Nc4 Bd3 Qc7 Nd4 
 9  <  -1.13   00:01    83943 Bf5 Nxd1 Bxc8 Qxc8 Rxd1 Qc4 
 9  <  -1.66   00:01   109974 Bf5 Nxd1 Bxc8 Qxc8 Rxd1 Qc2 Rc1 Qxa2 Qb4 Rc8 
 9     -1.13   00:01   157353 Rd2 Nxd3 Rxd3 Rc4 Qd2 Re8 Nd4 Qd7 f4 Qe7 Rb1 
10     -1.05   00:01   272199 Rd2 Nxd3 Rxd3 Rc4 Qd2 Re8 Nd4 Qd7 f4 Qe7 Rb1 Qf8 
                              Nf5 Qc5+ Nd4 Rc8 
11     -0.97   00:01   420920 Rd2 Nxd3 Rxd3 Rc4 Nd4 Re8 Rg3 g6 Qd2 Qd7 e6 fxe6 
                              Rge3 Qe7 Nxe6 
12     -1.01   00:01   583707 Rd2 Nxd3 Rxd3 Re8 Qf5 g6 Qg4 Rc4 Nd4 Qd6 Qe2 Qc5 
                              Qd2 Qb4 Qxb4 Rxb4 e6 fxe6 Nxe6 
13  <  -1.09   00:01   659937 Rd2 Nxd3 Rxd3 Re8 Qf5 g6 Qg4 Rc4 Nd4 Qd6 Qe2 Qc5 
                              Qd2 Qb4 Qxb4 Rxb4 e6 Kf8 
13  <  -1.17   00:01   967112 Rd2 Nxd3 Rxd3 Re8 Qf5 Qe7 Ng5 g6 Qg4 Rc4 
13     -1.13   00:01    1395k Rd2 Nxd3 Rxd3 Re8 Qf5 Qe7 a3 Rc4 Nd4 Ba6 Qf3 Rc5 
                              Rdd1 Bc4 e6 Qc7 exf7+ Qxf7 
14  >  -0.97   00:01    2513k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 Rxe5 
                              Rxe5 fxe5 Re8 Ra3 
14     -0.97   00:01    2616k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 Rxe5 
                              Rxe5 fxe5 Rc4 Kf2 Kg7 Ke3 Kg6 Kf4 Bc8 Rg3+ Kh5 
15     -1.09   00:02    3351k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 Rxe5 
                              Rxe5 fxe5 Rc4 Kf2 Kg7 Rd2 Kg6 Nb5 Rc1 Nd6 Bc6 Ke3 
                              Re1+ Kd4 
16     -1.17   00:02    4379k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 Rxe5 
                              Rxe5 fxe5 Rc4 Kf2 Kg7 Rd2 Kg6 Nb5 Rc5 Nd6 Bc6 Ke3 
                              d4+ Rxd4 Rxe5+ Kf4 
17  >  -1.01   00:02    5832k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 Rxe5 
                              Rxe5 fxe5 Rc4 Kf2 Kg7 Rd2 Kg6 Nb5 Rc5 Nd6 Bc6 Ke3 
                              d4+ Kxd4 Rd5+ 
17     -1.09   00:02    6118k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 Rxe5 
                              Rxe5 fxe5 Rc4 Kf2 Kg7 Rd2 Kg6 Nb5 Rc1 Rb2 a6 Nd6 
18     -1.17   00:03   10910k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 Rxe5 
                              Rxe5 fxe5 Rc4 Kf2 Kg7 Rd2 Kg6 Nb5 Rc5 Nd6 Bc6 Ke3 
                              d4+ Kxd4 Rd5+ Ke3 Rxe5+ Kf4 
19  >  -1.05   00:03   14818k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 fxe5 
                              Rc4 Nf5 Rc2 a4 Ba6 Rd4 
19  >  -0.93   00:04   18029k Rd2 Nxd3 Rxd3 Qc7 Ra3 a6 Rae3 Rfe8 Nd4 f6 g3 fxe5 
                              Rxe5 Rxe5 Rxe5 Qc3 Re7 
19     -1.05   00:05   26018k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 fxe5 
                              Rc4 Nf5 Rc2 a4 Ba6 Rd4 Rc5 Kf2 Re6 Rdd1 Rc2+ Kf3 
                              Bc4 Nd6 
20  >  -0.89   00:06   33371k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 fxe5 
                              Rc4 Nf5 Rc2 a4 Ba6 Rd4 Rc5 Nd6 Re6 Rf4 Rc2 Nxf7 
                              Rg6 g3 
20     -0.85   00:07   35593k Rd2 Nxd3 Rxd3 Re8 Nd4 Qf6 Qxf6 gxf6 f4 fxe5 fxe5 
                              Rc4 Nf5 Rc2 a4 Ba6 Rd4 Rc5 Nd6 Re6 Rf4 Rc2 Nxf7 
                              Bd3 Ng5 Re7 e6 h5 Rd1 
20  >  -0.73   00:08   44469k Bxh7+ Kxh7 Ng5+ Kg6 h4 Nxd1 h5+ Kxh5 g4+ Kg6 Qf5+ 
                              Kh6 Nxf7+ Rxf7 Qh5# 
20  >  -0.40   00:08   45732k Bxh7+ Kxh7 Ng5+ Kg6 h4 Nxd1 h5+ Kxh5 g4+ Kg6 Qf5+ 
                              Kh6 Nxf7+ Rxf7 Qh5# 
20     +0.00   00:12   78976k Bxh7+ Kxh7 Ng5+ Kg6 h4 f5 h5+ Kxh5 Ne6 Qe7 Qh2+ 
                              Qh4 Nxg7+ Kg5 Ne6+ Kh5 g4+ fxg4 Ng7+ Kg5 Ne6+ Kh5 
21     +0.61   00:30  210679k Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Na4 Nd6 Bc6 f3 Nc5 e7 
                              Re8 Nxe8 Bxe8 Rxd5 Kf7 Kf2 Rc2+ Re2 Rxe2+ Kxe2 
                              Kxe7 h6 Bg6 Ke3 Bh7 Kf4 Kf7 
22     +0.44   00:38  270818k Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Na4 Nd6 Bc6 f3 Rc5 e7 
                              Re8 Re6 Rc1+ Kf2 Nc5 Ree2 Na4 Rc2 Rxc2 Rxc2 Nc5 
                              Nxe8 Bxe8 Rd2 Bxh5 Ke3 Be8 Rxd5 
23  >  +0.93   00:47  338193k Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Na4 Nd6 Bc6 f3 Rc5 e7 
                              Re8 Re6 Rc1+ Kf2 Nc5 Ree2 Na4 Rc2 Rxc2 Rxc2 Nc5 
                              Nxe8 Bxe8 g4 Kf7 h6 d4 Rc4 d3 Rd4 Kxe7 h7 
23     +0.65   00:47  340234k Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Na4 Nd6 Bc6 f3 Rc5 e7 
                              Re8 Re6 Rc1+ Kf2 Nc5 Ree2 Na4 Rc2 Rxc2 Rxc2 Nc5 
                              Nxe8 Bxe8 g4 Kf7 Rd2 Kxe7 Rxd5 Kf7 Rd6 Bb5 Kg3 
24     +0.81   01:04  476124k Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Na4 Nd6 Bc6 f3 Rc5 e7 
                              Re8 Re6 Rc1+ Kf2 Nc5 Ree2 Na4 Rc2 Rxc2 Rxc2 Nc5 
                              Nxe8 Bxe8 h6 Kh7 Ke3 Kxh6 Kd4 Kg6 Kxd5 Kf7 Kd6 f5 
                              Rc1 
25     +0.93   01:19  585283k Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Na4 Nd6 Bc6 f3 Rc5 e7 
                              Re8 Re6 Rc1+ Kf2 Nc5 Re3 Na4 Nxe8 Bxe8 Rxd5 Kf7 
                              Rd6 Nc3 Kg3 Nxa2 Ree6 Nc3 Rxf6+ Kxe7 Rde6+ Kd7 h6 
                              Rh1 Re5 b5 Kf4 
26  <  +0.73   01:44  780999k Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Re8 Nh6+ Kh7 
                              Nf5 Rcxe6 Rxe6 Rxe6 f3 Ba6 Kf2 Rc6 Rd2 Rc5 Ke3 
                              Bc4 Kf4 Ra5 Nd6 Kg7 
26     +0.77   01:51  825945k Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Re8 Nh6+ Kh7 
                              Nf5 Rcxe6 Rxe6 Rxe6 f3 Ba6 Kf2 Rc6 Rd2 Rc5 Ke3 
                              Bc4 g4 Ra5 Nd6 Ra3+ Kf4 Kg7 Nf5+ Kf7 Ne3 Ke6 
27     +0.77   03:06    1426M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Bc8 Nh6+ Kh8 
                              Nf5 Rxe6 Rd1 Rg8 Ne3 Bb7 Rb4 Re5 Ra4 Rxh5 Rxa7 
                              Rg7 Rd4 Kh7 f4 Kg6 Rb4 Rhh7 f5+ Kh6 Kf2 Rc7 Rxb6 
                              Kg5 Ra4 
28  >  +0.85   03:44    1725M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 
28     +0.73   04:22    2020M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Bc8 Nh6+ Kh8 
                              Nf5 Rxe6 Rd1 Rg8 Ne3 Bb7 Rb4 Re5 Ra4 Rxh5 Rxa7 
                              Rg7 Rd4 Kh7 f4 Kg6 f5+ Kh7 Raa4 Bc6 Ra6 Re7 Nxd5 
                              Bxd5 Rxd5 
29  >  +0.81   05:28    2524M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 
29  >  +0.89   05:38    2598M Bxh7+ Kxh7 Ng5+ Kg6 h4 Qe7 Rb1 Nc4 Rb3 Kh6 Rg3 f6 
                              Ne6+ Kh7 Rxg7+ Qxg7 Nxg7 Kxg7 exf6+ Kg8 Qg4+ Kh7 
29     +0.89   06:28    2990M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Re8 Nh6+ Kf8 
                              Nf5 Rexe6 Rxe6 Rxe6 Rd2 Rc6 g4 Rc5 f3 Bc8 Ne3 Be6 
                              Kf2 Kg7 Kg3 Ra5 a4 Rxa4 Nxd5 Bxd5 Rxd5 
30  >  +1.09   07:21    3396M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Re8 Nh6+ Kf8 
                              Nf5 Rexe6 Rxe6 Rxe6 Rd2 Rc6 f3 Bc8 Rxd5 Bxf5 Rxf5 
                              Kg7 g4 Rc1+ Kf2 Rc2+ Kg3 Rxa2 Rd5 a6 Rd7+ Kh6 Rd6 
30     +1.09   08:05    3750M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Re8 Nh6+ Kf8 
                              Nf5 Rexe6 Rxe6 Rxe6 Rd2 Rc6 f3 Bc8 Rxd5 Bxf5 Rxf5 
                              Kg7 g4 Rc2 a4 Ra2 Rf4 Rb2 Rc4 Kh6 Rc7 a6 Ra7 a5 
                              Rb7 
31     +1.05   16:02    7768M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Re8 Nh6+ Kf8 
                              Nf5 Rexe6 Rxe6 Rxe6 Rd2 Rc6 f3 Kf7 Kf2 Bc8 Ne3 
                              Be6 g4 Kg7 Kg3 Rc5 Kf4 Kf7 a4 Ra5 Rd4 Rc5 Rd1 Ra5 
                              Kg3 Rxa4 Nxd5 Kg7 
32  <  +0.89   29:31   14801M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 
32     +0.97   33:16   16595M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Re8 Nh6+ Kh7 
                              Nf5 Rexe6 Rxe6 Rxe6 f3 Ba6 Kf2 Rc6 g4 Bd3 Ne7 Rc5 
                              Ke3 Bc4 a4 Ba6 Rd2 Bc4 f4 Bb3 Rd3 Bc4 Ra3 Bf1 Kf2 
                              Bc4 Nf5 Ra5 g5 d4 g6+ Kg8 
33  >  +1.09   39:07   19440M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 
33     +1.13   48:42   24371M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 h5+ Kh6 Nxf7+ Kh7 Qf5+ 
                              Kg8 e6 Qf6 Qxf6 gxf6 Rd2 Rc6 Rxb2 Bc8 e7 Re8 Nd8 
                              Rc7 Rd2 Rexe7 Rxe7 Rxe7 Rxd5 Kh7 f3 f5 Nc6 Rd7 
                              Re5 Kg7 Kf2 Rd2+ Kg3 Kh6 Nxa7 Bd7 Nb5 Kxh5 Nc3 
                              Kg6 Rd5 Rxd5 Nxd5 Be6 Nf4+ Kf6 Nxe6 Kxe6 
34  >  +1.33 1:42:48   51693M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 Rd4 Qe7 Re3 Rxd4 Qxd4 
                              Qc7 Qxb2 Rc8 Kh2 Qc4 Rg3 Qxh4+ Kg1 Qxg3 fxg3 Kxg5 
                              Qa3 Kf5 
34  >  +1.54 2:01:11   60736M Bxh7+ Kxh7 Ng5+ Kg6 h4 f5 Rd4 
34     +1.58 2:38:30   79822M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 Rd4 Rxd4 Qxd4 Bc8 Qxb2 
                              Bf5 Qb4 d4 Rd1 a5 Qc4 f6 Nf3 fxe5 Nxe5+ Kh7 Qxd4 
                              Qxd4 Rxd4 Rc8 Nf3 Bb1 a4 Bc2 g4 Bg6 Rd6 Be8 Ng5+ 
                              Kg8 Rxb6 Bxa4 Ra6 Bd1 Rxa5 Rf8 Kh2 Bxg4 Kg3 Be2 
                              Ra7 Rf6 Rd7 Bc4 Ne4 
35  >  +2.10 5:09:14  158087M Bxh7+ Kxh7 Ng5+ Kg6 h4 Rc4 Rd4 Rxd4 Qxd4 Bc8 Re3 
                              f6 e6 Qe8 Qxb2 fxg5 Qc2+ Kf6 Qc3+ 
35  >  +2.63 6:56:21  212775M Bxh7+ Kxh7 Ng5+ Kg6 h4 
35    +2.55 10:24:10  319765M Bxh7+ Kxh7 Ng5+ Kg8 Qh4 Qxg5 Qxg5 Nxd1 Rxd1 Rce8 
                              h4 f6 exf6 Rxf6 Rd3 Ref8 Rg3 R8f7 f3 Bc6 Kf2 Re6 
                              Qd8+ Kh7 Rg5 Rh6 Re5 b5 h5 Rhf6 a3 Rd7 Qa5 Rdf7 
                              Ke3 Rd6 Qd2 Kg8 Qd4 Rh6 Kf2 Rhf6 Qg4 

Nodes: 320011975541
Nodes/second: 8537818
Best move: Bxh7+
Ponder move: Kxh7
User avatar
Eelco de Groot
Posts: 4697
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: Polugayevsky v Tal Moscow 1969

Post by Eelco de Groot »

Stand Pat Futility Pruning and Early Move Extensions in Rainbow Serpent are not doing worse than 8 threads Stockfish:


[d]2rq1rk1/pb3ppp/1p6/3pP3/5Q2/3B1N2/Pn3PPP/3RR1K1 w - -

Engine: Rainbow Serpent 1.7.1s(dc) Build 009B (Athlon 2009 MHz, 256 MB)
by Tord Romstad, Marco Costalba, Joona Kiiski

1.00 0:00 -0.72 1.Qf5 (933) 3

2.00 0:00 -0.72 1.Rd2 Nxd3 2.Rxd3 (975) 3

3.00 0:00 -0.80 1.Rd2 Nxd3 2.Rxd3 Rc2 (4.636) 14

3.00 0:00 -0.76 1.Ng5 Nxd1 2.Bxh7+ Kh8 3.Rxd1 f6 (5.361) 17

4.00 0:00 -0.68 1.Ng5 Nxd1 2.Bxh7+ Kh8 3.Rxd1 f6 (6.015) 19

5.00 0:00 -0.60 1.Ng5 Nxd3 2.Rxd3 h6 3.Ne4 d4 (8.419) 25

6.00 0:00 -0.87-- 1.Ng5 Nxd3 2.Rxd3 h6 3.Ne4 Ba6 (12.654) 36

6.00 0:00 -0.36++ 1.Bxh7+ Kxh7 2.Rb1 (22.885) 61

6.00 0:00 -0.12++ 1.Bxh7+ Kxh7 2.Rb1 (25.611) 65

6.00 0:00 -0.36-- 1.Ng5 Nxd3 2.Rxd3 h6 3.Ne4 Ba6 (31.229) 79

6.00 0:00 -0.12 1.Bxh7+ Kxh7 2.Rb1 d4 3.Rxb2 Bxf3
4.Qxf3 d3 5.Rd1 (41.867) 99

7.00 0:00 -0.44 1.Bxh7+ Kxh7 2.Rb1 Rc4 3.Qf5+ g6
4.Qh3+ Kg8 5.Rxb2 d4 6.Rd2 d3 7.e6 (56.927) 125

8.00 0:00 -0.80 1.Bxh7+ Kxh7 2.Rb1 Rc4 3.Qf5+ g6
4.Qh3+ Kg7 5.Rxb2 Bc8 6.e6 Bxe6
7.Qg3 Re4 8.Rc1 (101.429) 180

9.00 0:00 -1.25 1.Bxh7+ Kxh7 2.Rb1 Rc4 3.Qf5+ g6
4.Qh3+ Kg7 5.Rxb2 Bc8 6.e6 Qf6
7.Rbe2 Bxe6 8.Qg3 Rg4 9.Qe5 Rh8
10.Qxf6+ Kxf6 11.Ne5 (157.190) 223

9.33 0:01 -0.84 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ng5 Qf6
4.Qe3 Qf5 5.e6 fxe6 6.Nxe6 (315.591) 284

10.01 0:01 -0.40++ 1.Rd2 Nxd3 2.Rxd3 Re8 3.Qf5 h6 4.Nd4 Rc4
5.e6 (451.180) 310

10.01 0:01 -0.52 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 (503.630) 318

10.02 0:02 +0.04++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Nxd1
4.h5+ Kxh5 5.g4+ Kg6 6.Qf5+ Kh6
7.Nxf7+ Rxf7 8.Qh5+ (714.449) 341

10.02 0:02 +0.92++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Nxd1
4.h5+ Kxh5 5.g4+ Kg6 6.Qf5+ Kh6
7.Nxf7+ Rxf7 8.Qh5+ (797.895) 344

10.01 0:02 +1.37-- 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (822.930) 346

10.01 0:02 +0.48-- 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (907.107) 351

10.01 0:03 -0.52 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (1.134.911) 359

10.02 0:03 +0.48 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.h5+ Kh6 5.Nxf7+ Kh7 6.Qxc4 Nxc4
7.Nxd8 Rxd8 8.e6 Re8 9.Kh2 (1.138.427) 360

11.01 0:03 +0.60 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.h5+ Kh6 5.Nxf7+ Kh7 6.Qf5+ Kg8
7.Nxd8 Rxf5 8.Rd2 Bc6 9.Rxb2 Rxh5
10.Nxc6 Rxc6 11.e6 Rc8 12.g4 Rh6
13.f4 (1.180.461) 359

12.01 0:04 +0.04 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.h5+ Kh6 5.Nxf7+ Kh7 6.Qf5+ Kg8
7.Nxd8 Rxf5 8.Rd2 Re4 9.Rxe4 dxe4
10.Nxb7 Nd3 11.e6 Rxh5 12.f3 Re5
13.Nd6 Nc5 14.Nxe4 (1.850.550) 380

13.01 0:07 +0.08 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.h5+ Kh6 5.Nxf7+ Kh7 6.Qf5+ Kg8
7.e6 Qf6 8.Qxf6 gxf6 9.Rd2 Rb4
10.Nd6 Nc4 11.Rd4 Nxd6 12.Rxb4 Nc4
13.Kh2 Re8 14.Rb3 (2.960.531) 406

14.01 0:11 0.00 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Qe7
4.Rd2 Nc4 5.Rd4 Kh6 6.Ne4+ Kh7
7.Nf6+ gxf6 8.Qf5+ Kh6 9.Qf4+ Kh7 (4.963.192) 416

15.01 0:14 +0.20++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Qe7
4.Rb1 Nc4 5.Rb3 f6 6.h5+ Kh6 7.Qf5 Nxe5
8.Ne6 (6.149.537) 416

15.01 0:15 +0.40++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Qe7
4.Rb1 Nc4 5.Rb3 f6 6.h5+ Kh6 7.Qf5 Nxe5
8.Ne6 (6.312.410) 416

15.01 0:15 +0.40-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.h5+ Kh6 5.Nxf7+ Kh7 6.Qf5+ Kg8
7.e6 Qf6 8.Qxf6 gxf6 9.Rd2 Rc6
10.Rxb2 Re8 11.Rbe2 Bc8 12.Nh6+ Kh8
13.Ng4 Rexe6 14.Rxe6 (6.384.932) 416

15.01 0:17 +0.36 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.h5+ Kh6 5.Nxf7+ Kh7 6.Qf5+ Kg8
7.e6 Qf6 8.Qxf6 gxf6 9.Rd2 Rc6
10.Rxb2 Re8 11.f4 Rexe6 12.Rxe6 Rxe6
13.Nd8 Re7 14.Nxb7 (7.224.484) 420

16.01 0:25 +0.76 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Na4 6.e6 Qf6 7.exf7 Re4
8.Rxe4 dxe4 9.Qe3 Qc3 10.Qf4 Qf6
11.Qd2 Qe7 12.Qe3 g6 13.Rb5 Nc5
14.Nxe4+ (10.947.215) 421

17.01 0:42 +0.76 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Qe7 6.Rxb2 f6 7.Nh3 fxe5
8.Rxe5 Qxh4 9.Qd3 Qf6 10.Rbe2 Re4
11.R2xe4 dxe4 12.Qe3+ Kh7 13.Ng5+ Kg8
14.Qb3+ (17.725.688) 417

18.01 0:54 +0.72 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Qe7 6.Rxb2 f6 7.Nf3 Re4
8.Rxe4 dxe4 9.exf6 Qxf6 10.Ne5 Kh7
11.Nd7 Qxb2 12.Nxf8+ Kg8 13.Ne6 Kh7
14.Qd6 (22.737.097) 420

19.01 1:15 +0.80++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Qe7 6.Rxb2 f6 7.Nf3 Re4
8.Rbe2 Kh7 9.h5 Kg8 10.h6 Rxe2
11.Rxe2 Ba6 12.Re1 Bc4 13.e6 g5
14.a4 (31.614.657) 420

19.01 1:20 +0.88++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Qe7 6.e6 Na4 7.exf7 Re4
8.f3 Re3 9.Rxe3 Qxe3+ 10.Kh2 Qe7
11.Re1 Qf6 12.Re6 (33.654.423) 420

19.01 1:26 +0.88-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6 (36.350.083) 421

19.01 1:30 +0.80-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6 (38.100.011) 422

19.01 1:32 +1.05++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6
10.g3 Re4 11.Rxe4 dxe4 12.e7 Qxe7
13.Rb5+ Ke6 14.Re5+ (38.975.371) 423

19.01 1:33 +1.21-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6
10.g3 Re4 11.Rxe4 dxe4 12.e7 Qxe7
13.Rb5+ Ke6 14.Re5+ (39.634.528) 423

19.01 1:33 +0.88-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6
10.g3 Re4 11.Rxe4 dxe4 12.e7 Qxe7
13.Rb5+ Ke6 14.Re5+ (39.684.995) 423

19.01 1:34 +0.76 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6
10.g3 Re4 11.Rxe4 dxe4 12.e7 Qxe7
13.Rb5+ Ke6 14.Re5+ (40.027.745) 424

20.01 1:43 +0.64-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6
10.g3 Rg4 11.Qh7+ Kf6 12.exf7 Rxf7 (44.125.685) 428

20.01 1:53 +0.52-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6
10.g3 Rg4 11.Qh7+ Kf6 12.exf7 Rxf7 (48.535.443) 429

20.01 2:06 +0.88++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6
10.g3 Rg4 11.Qh7+ Kf6 12.exf7 Rxf7
13.Qh5 Rfg7 14.Qh6+ (54.482.176) 430

20.01 2:19 +0.76-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Qh7+ Kxg5 8.Qxg7+ Kf5 9.e6 Qd6
10.g3 Rg4 11.Qh7+ Kf6 12.exf7 Rxf7
13.Qh5 Rfg7 14.Qh6+ (59.976.456) 430

20.01 2:45 +1.01++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Nf3 Re4 8.Qa3 Rxe1+ 9.Nxe1 Qb8
10.Qh3+ Kg6 11.Nf3 (71.414.101) 432

20.01 2:46 +1.01-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Nf3 Re4 8.Qa3 a5 9.Rxe4 dxe4 10.e6 fxe6
11.Qe3+ g5 12.Rxb6 Bd5 13.Ne5 Kg7
14.Ra6 (72.218.023) 432

20.01 4:05 +1.05 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Nf3 Re4 8.Qa3 a5 9.Red1 Re8
10.Qc1+ g5 11.Nxg5 Qxg5 12.Rxb6+ Kh5
13.Qa3 R8xe5 14.Qh3+ (105.153.978) 428

21.01 4:33 +0.84 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Nf3 Re4 8.Qa3 a5 9.Red1 Re8
10.Qc1+ g5 11.Rb3 Re6 12.Rbd3 Rf4
13.Rd4 Qc8 14.Qxc8 (117.298.914) 428

22.01 6:23 +0.96 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Nd3 6.Qxd3 Rxh4
7.Nf3 Re4 8.Qa3 a5 9.Red1 Re8
10.Qc1+ g5 11.Rb3 Re6 12.Qc2 d4
13.Qd2 Rg6 14.Nxd4 (165.075.398) 430

23.01 12:29 +0.52-- 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Na4 6.e6 Qf6 (316.485.219) 422

23.01 13:34 +1.37 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Qg3 Kh6 5.Rb1 Qe7 6.e6 f6 7.Nf7+ Rxf7
8.exf7 Qxf7 9.Rxb2 Qc7 10.Qe3+ Kh7
11.Qd3+ Kh6 12.Qh3 Re4 13.Rxe4 Qc1+
14.Kh2 (343.603.848) 421

24.01 22:44 +1.45 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Rd4 Rxd4 5.Qxd4 Bc8 6.Qxb2 Rh8
7.g3 f6 8.Nf3 Kf7 9.Qa3 Re8 10.Qxa7+ Kg8
11.exf6 Rxe1+ 12.Nxe1 Qxf6 13.Qb8 Qc3
14.Nf3 (575.430.372) 421

25.01 39:50 +1.65 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Rd4 Rxd4 5.Qxd4 Bc8 6.Qxb2 Rh8
7.g3 f6 8.Nf3 Kf7 9.Qa3 Re8 10.Qxa7+ Kg8
11.Qa4 fxe5 12.Rxe5 Rxe5 13.Nxe5 Bf5
14.f4 (1.029.301.487) 430

26.01 78:13 +2.14++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.Rd4 Rxd4 5.Qxd4 Bc8 6.Re3 (2.054.682.626) 437

26.01 103:29 +2.22 1.Bxh7+ Kxh7 2.Ng5+ Kg8 3.Qh4 Qxg5
4.Qxg5 Nxd1 5.Rxd1 Rce8 6.Qf4 Re7
7.Qa4 a6 8.Qd4 f6 9.Qxb6 fxe5 10.Rb1 e4
11.h3 Ref7 12.Rb2 Re8 13.Kh2 Ref8
14.Qa7 (2.712.350.397) 436


best move: Bd3xh7 time: 110:35.047 min n/s: 436.753 nodes: 2.897.880.367
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
metax
Posts: 344
Joined: Wed Sep 23, 2009 5:56 pm
Location: Germany

Re: Polugayevsky v Tal Moscow 1969

Post by metax »

Eelco, what's happening here?

Code: Select all

10.01 0:01 -0.40++ 1.Rd2 Nxd3 2.Rxd3 Re8 3.Qf5 h6 4.Nd4 Rc4
5.e6 (451.180) 310

10.01 0:01 -0.52 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 (503.630) 318

10.02 0:02 +0.04++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Nxd1
4.h5+ Kxh5 5.g4+ Kg6 6.Qf5+ Kh6
7.Nxf7+ Rxf7 8.Qh5+ (714.449) 341

10.02 0:02 +0.92++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Nxd1
4.h5+ Kxh5 5.g4+ Kg6 6.Qf5+ Kh6
7.Nxf7+ Rxf7 8.Qh5+ (797.895) 344

10.01 0:02 +1.37-- 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (822.930) 346

10.01 0:02 +0.48-- 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (907.107) 351

10.01 0:03 -0.52 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (1.134.911) 359

10.02 0:03 +0.48 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.h5+ Kh6 5.Nxf7+ Kh7 6.Qxc4 Nxc4
7.Nxd8 Rxd8 8.e6 Re8 9.Kh2 (1.138.427) 360 
User avatar
Eelco de Groot
Posts: 4697
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: Polugayevsky v Tal Moscow 1969

Post by Eelco de Groot »

metax wrote:Eelco, what's happening here?

Code: Select all

10.01 0:01 -0.40++ 1.Rd2 Nxd3 2.Rxd3 Re8 3.Qf5 h6 4.Nd4 Rc4
5.e6 (451.180) 310

10.01 0:01 -0.52 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 (503.630) 318

10.02 0:02 +0.04++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Nxd1
4.h5+ Kxh5 5.g4+ Kg6 6.Qf5+ Kh6
7.Nxf7+ Rxf7 8.Qh5+ (714.449) 341

10.02 0:02 +0.92++ 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Nxd1
4.h5+ Kxh5 5.g4+ Kg6 6.Qf5+ Kh6
7.Nxf7+ Rxf7 8.Qh5+ (797.895) 344

10.01 0:02 +1.37-- 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (822.930) 346

10.01 0:02 +0.48-- 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (907.107) 351

10.01 0:03 -0.52 1.Rd2 Nxd3 2.Rxd3 Re8 3.Ra3 Rc4
4.Nd4 Qf6 5.Qxf6 gxf6 6.Rxa7 Rxd4
7.Rxb7 fxe5 8.Rxb6 Kg7 (1.134.911) 359

10.02 0:03 +0.48 1.Bxh7+ Kxh7 2.Ng5+ Kg6 3.h4 Rc4
4.h5+ Kh6 5.Nxf7+ Kh7 6.Qxc4 Nxc4
7.Nxd8 Rxd8 8.e6 Re8 9.Kh2 (1.138.427) 360 
Hi Luca,

Yes, I still am trying to decipher that myself, the brilliant scheme Joona has thought of for resolving the Fail high and Fail low occurences that are a consequene of the very narrow search windows he uses. The aspiration windows in 1.7.1 are roughly halved compared with Stockfish 1.6.3, I've actually gone back to the old scheme but still there are a lot of fail highs and fail lows visible. In the previous Stockfish versions and in most chess programs, fail highs from the nullwindow searches are only output if confirmed by a PV-search. This alternative scheme can lead to false fail highs, as for instance some of the famous Rebel 9 or 10 experimental versions were prone to.

What seems to be done in Stockfish is that any fail high of the PV will be re-searched immediately, with the same depth, but a wider window, but a PV fail low is not ignored as before but first the other moves are tried to see if they now fail high against alpha, if not or if these prove to be false fail highs, a fail low re-search of the PV move is initiated with a delay. Move numbers seem to roll back, engine seems to be traveling back in time, it's a miniature Groundhog Day experience :)

At least that is how the fail high and fail low loops now seem to work in Rainbow Serpent, probably in Stockfish it's almost identical to this, but there may be some side-effects there that I introduced myself by changing the search depths and window sizes for the root search. It could be that I missed something and I'm actually missing some fail low output for Rd2 in the output as you posted, that I would expect to be there if the search worked as I think it should.

I did not touch the actual fail high and fail low outer loops from Joona but re-searches can be to a higher depth or include an intermediate PV search, I changed the delta margins determining window size. This should not change the behaviour of the loops themselves though. The larger search windows are still not very resistent to instabilities in Rainbow Serpent as you can see and several users have reported they see the same thing in Stockfish. It reminds me of Shredder too, it had similar behaviour that is actually not so good for resolving difficult positions but probably helps in games, by not keeping the search fixed on a single move. That is my interpretation anyway...

Regards,
Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
jarkkop
Posts: 198
Joined: Thu Mar 09, 2006 2:44 am
Location: Helsinki, Finland

Re: Polugayevsky v Tal Moscow 1969

Post by jarkkop »

Are you sure Bxh7+ is best. Robbo says 1. Ng5 is better.

19/55+ 00:58 80.150.175 1.379.000 -0.36 Bd3xh7+ Kg8xh7 Nf3g5+ Kh7g8
19/55+ 01:18 106.928.659 1.357.000 -0.16 Bd3xh7+ Kg8xh7 Nf3g5+ Kh7g8
19/57 01:38 133.920.067 1.359.000 0.00 Bd3xh7+ Kg8xh7 Nf3g5+ Kh7g6 h2h4 Rc8c4 h4h5+ Kg6h6 Ng5xf7+ Kh6h7 Qf4xc4 Nb2xc4 Nf7xd8 Rf8xd8 e5e6 g7g6 h5xg6+ Kh7xg6 e6e7 Rd8e8 Rd1d4 Kg6f7 Rd4f4+ Kf7g7 Rf4g4+ Kg7f7 Rg4f4+
20/57+ 02:22 195.528.701 1.375.000 +0.08 Rd1d2
20/57+ 02:25 199.429.038 1.375.000 +0.16 Rd1d2
20/57+ 02:45 227.554.647 1.371.000 +0.46 Rd1d2
20/57 04:18 350.382.761 1.357.000 +0.51 Rd1d2 Rc8c3 Qf4d4 Qd8c7 Rd2xb2 g7g6 Bd3f1 Rc3c1 Re1xc1 Qc7xc1 Rb2e2 Qc1c5 Qd4a4 Bb7c6 Qa4b3 Qc5a5 Re2d2 Rf8c8 Rd2c2
20/57 05:50 473.176.007 1.351.000 +0.69 Qf4d4 Rc8c5 Qd4xb2 Bb7c8 Nf3d4 Qd8g5 Nd4b5 Bc8g4 Qb2d2 Qg5e7 Rd1b1 Bg4c8 Nb5d6 g7g6 Qd2f4 f7f6 e5xf6 Qe7xf6 Qf4xf6 Rf8xf6 Re1e8+
20/57+ 06:39 539.120.447 1.349.000 +0.73 Nf3g5
20/65+ 11:15 898.820.529 1.330.000 +1.73 Nf3g5
20/65 15:34 1.241.682.807 1.328.000 +1.99 Nf3g5 h7h6 Ng5h7 Qd8e7 Nh7xf8 Qe7xf8 Qf4f5 g7g6 Qf5d7 Bb7c6 Qd7xa7 Qf8c5 e5e6 Bc6e8 Bd3b1 h6h5 Qa7b7 Rc8c7 Qb7a8 Rc7c8 Qa8xd5 Qc5xd5 Rd1xd5 Kg8g7 e6xf7 Be8xf7 Rd5d7 Rc8c1 Kg1f1
21/65+ 22:34 1.805.212.824 1.332.000 +2.07 Nf3g5 h7h6 Ng5h7 Qd8e7 Nh7xf8 Qe7xf8 Qf4f5 g7g6 Qf5d7 Bb7c6
21/65+ 29:50 2.389.558,128 1.334.000 +2.15 Nf3g5 h7h6 Ng5h7 Qd8e7 Nh7xf8 Qe7xf8 Qf4f5 g7g6 Qf5d7 Bb7c6 Qd7xa7 Qf8c5 e5e6 Bc6e8 Bd3b1 h6h5 Qa7b7 Rc8c7 Qb7xd5 Qc5xd5 Rd1xd5 Kg8g7 f2f3 f7xe6 Rd5d2 Rc7c1
21/65 38:00 3.048.634,204 1.336.000 +2.19 Nf3g5 h7h6 Ng5h7 Qd8e7 Nh7xf8 Rc8xf8 Qf4d2 Bb7c8 Qd2xb2 Rf8d8 Qb2d4 Qe7c5 Qd4f4 Bc8e6 Re1e2 d5d4 Re2c2 Qc5a5 h2h3 Qa5a3



1. Bxh7+ Kxh7 2. Ng5+ Kg6
FEN: 2rq1r2/pb3pp1/1p4k1/3pP1N1/5Q2/8/Pn3PPP/3RR1K1 w - - 2 3
3. h4 Qe7 4. Re3 *


Robbo009:

16/34 00:00 279.050 1.965.000 +0.46 h2h4 f7f5 Rd1d4 Qd8e7 e5e6 Rf8f6 Re1e5 Rc8h8 g2g4 Rh8f8 h4h5+ Kg6h6 Ng5e4+ Kh6h7 Ne4xf6+ g7xf6 Qf4xf5+ Kh7g8 Re5e1 Nb2c4 Kg1g2 Kg8h8 a2a4 Rf8g8 h5h6 Nc4d6 Qf5h5 Nd6e4
17/43 00:05 7.029.386 1.311.000 +0.52 h2h4 Rc8c4 h4h5+ Kg6h6 Ng5xf7+ Kh6h7 Qf4f5+ Kh7g8 e5e6 Qd8f6 Qf5xf6 g7xf6 Rd1d2 Rc4c6 Rd2xb2 Rf8e8 Nf7h6+ Kg8h7 Nh6f5 Rc6xe6 Re1xe6 Re8xe6 f2f3 Bb7a6 Kg1f2 Ba6d3 Nf5d4 Re6e8 g2g4 Kh7h6 Nd4c6 a7a5 Rb2xb6
18/44 00:09 13.285.728 1.342.000 +0.44 h2h4 Rc8c4 h4h5+ Kg6h6 Ng5xf7+ Kh6h7 Qf4f5+ Kh7g8 e5e6 Qd8f6 Qf5xf6 g7xf6 Rd1d2 Rc4c6 Rd2xb2 Rf8e8 Nf7h6+ Kg8h7 Nh6f5 Rc6xe6 Re1xe6 Re8xe6 f2f3 Bb7a6 Kg1f2 Ba6d3 Nf5d4 Re6e8 g2g4 Kh7h6 Nd4c6 a7a5 Rb2xb6 Re8e2+ Kf2g3 Re2xa2 Nc6d4
19/50+ 00:30 40.858.572 1.344.000 +0.52 h2h4 Rc8c4 h4h5+ Kg6h6 Ng5xf7+ Kh6h7 Qf4f5+ Kh7g8 e5e6 Qd8f6 Qf5xf6 g7xf6 Rd1d2 Rc4c6 Rd2xb2 Rf8e8 Nf7h6+ Kg8h7 Nh6f5 Rc6xe6 Re1xe6 Re8xe6 f2f3 Bb7a6 Kg1f2 Ba6d3 Nf5d4 Re6e8 g2g4 Kh7h6 Nd4c6 a7a5 Rb2xb6 Re8e2+ Kf2g3 Re2xa2 Nc6d4
19/50 00:31 42.683.748 1.351.000 +0.49 h2h4 Rc8c4 h4h5+ Kg6h6 Ng5xf7+ Kh6h7 Qf4f5+ Kh7g8 e5e6 Qd8f6 Qf5xf6 g7xf6 Rd1d2 Rc4c6 Rd2xb2 Rf8e8 Nf7h6+ Kg8h7 Nh6f5 Rc6xe6 Re1xe6 Re8xe6 f2f3 Bb7a6 Kg1f2 Ba6d3 Nf5d4 Re6e7 g2g4 Kh7h6 Rb2d2 Bd3b1 Kf2g3 Re7e3 Kg3f4
20/51 00:57 78.743.269 1.359.000 +0.49 h2h4 Rc8c4 h4h5+ Kg6h6 Ng5xf7+ Kh6h7 Qf4f5+ Kh7g8 e5e6 Qd8f6 Qf5xf6 g7xf6 Rd1d2 Rc4c6 Rd2xb2 Rf8e8 Nf7h6+ Kg8h7 Nh6f5 Rc6xe6 Re1xe6 Re8xe6 f2f3 Bb7a6 Kg1f2 Ba6d3 Nf5d4 Re6e7 g2g4 Kh7h6 Rb2d2 Bd3b1 Kf2g3 Re7e3 Kg3f4
21/81 52:41 4.657.849,809 1.473.000 -23.05 h2h4 Qf4f3
metax
Posts: 344
Joined: Wed Sep 23, 2009 5:56 pm
Location: Germany

Re: Polugayevsky v Tal Moscow 1969

Post by metax »

jarkkop wrote:21/81 52:41 4.657.849,809 1.473.000 -23.05 h2h4 Qf4f3
Did you experience a bug here?
jarkkop
Posts: 198
Joined: Thu Mar 09, 2006 2:44 am
Location: Helsinki, Finland

Re: Polugayevsky v Tal Moscow 1969

Post by jarkkop »

yes , All robbos have had this weird bug in long searches. It appears always around ply 21. Ivanhoe doesn't have it anymore but I can't figure out what fixed this. Anyone?
metax
Posts: 344
Joined: Wed Sep 23, 2009 5:56 pm
Location: Germany

Re: Polugayevsky v Tal Moscow 1969

Post by metax »

Eelco de Groot wrote:Stand Pat Futility Pruning and Early Move Extensions in Rainbow Serpent are not doing worse than 8 threads Stockfish:
Sorry, what exactly are "Stand Pat Futility Pruning" and "Early Move Extensions"? The name of the latter seems like the opposite of "Late Move Reductions"... :)
User avatar
Eelco de Groot
Posts: 4697
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: Stand Pat Futility Pruning

Post by Eelco de Groot »

metax wrote:
Eelco de Groot wrote:Stand Pat Futility Pruning and Early Move Extensions in Rainbow Serpent are not doing worse than 8 threads Stockfish:
Sorry, what exactly are "Stand Pat Futility Pruning" and "Early Move Extensions"? The name of the latter seems like the opposite of "Late Move Reductions"... :)
Hi Luca,

Yes, is correct, I hope the name is descriptive enough of what it does. It was all published in various posts in the forum. No big ideas or really new but I liked to come up with some new names.
  • Stand Pat Futility Pruning
  • Early Move Extensions
Maybe best discussed in parts but the code should be findable. First the 'Stand Pat Futility', the code was posted very recently as a possible addition to the Stockfish search() as a step after having generated the moves to be searched from a node, so after having passed the Nullmove, Razoring and Futility Pruning, move generation and making the first move. Having generated the moves and executed one, I thought you now can get some new information because you are already in a new node but have not yet made a new call to search() Making a call to evaluate() first is expensive, if you don't pass the eval or store it, but at the moment it seems there is enough benefit. Very preliminary still. As always I'm talking about long time searches, so I can't just store anything for lack of enough transposition table space. Even without storing the evaluation info it seems to work, but it is all still under preliminary tests and I was not even sure if doing an evaluation without node initialization was allowed and I still am not... So I first test what is actually happening in practice, as far as I can determine, worry about breaking the search later :)
To be added to search(), Step 14b :) , starting at line 1591 of Rainbow Serpent's version of search.cpp

Code: Select all

      // Step 13. Make the move
      pos.do_move(move, st, ci, moveIsCheck);

      // Step 14. Reduced search, if the move fails high
      // will be re-searched at full depth.
      bool doFullDepthSearch = true;

      if (   !isCheck // [Defensive programming, when in check evaluate can't be called]
          &&  move != ttMove
          && !dangerous
          && !captureOrPromotion
          && !move_is_castle(move)
          && !move_is_killer(move, ss[ply]))
      {
		  if (depth >= RazorDepth)
		  {
			  ss[ply].reduction = nonpv_reduction(depth, moveCount);
			  if (ss[ply].reduction)
			  {
				  value = -search(pos, ss, -(beta-1), newDepth-ss[ply].reduction, ply+1, true, threadID);
				  doFullDepthSearch = (value >= beta);
			  }
		  }
		  else
        // [Step 14b. : "Stand Pat Futility Pruning" A cross between Razoring, Futility Pruning
        // and the Stand Pat rule in quiescence search.
        // Not sure the evaluate() is actually allowed, testing this. EdG]
		  {
			  futilityValueScaled =  -evaluate(pos, ei, threadID) + futility_margin(newDepth-ss[ply].reduction, moveCount)
				  + PawnValueMidgame;
			  if (futilityValueScaled < beta)
			  {
				  value = futilityValueScaled;
				  doFullDepthSearch = (value >= bestValue); // [At the moment the condition is (value >= beta)]
			  }
		  }
      }
The !isCheck is actually generated before making the move so it only "protects" in the Defensive programming sense, if somehow evaluate() is not evaluating the postion after having made the move but the one before. But the !dangerous condition should suffice because moves giving check are always marked dangerous even if the check extensions would be disabled. depth >= RazorDepth is one ply more than depth >= 3*Oneply. The PawnValueMidgame is just a guess but is used elsewhere, in determining the R reduction for null move pruning for instance.

Basically I was a bit sceptical why "normal" Futility Pruning could ever work, using just the eval of the parent node while actually you need to classify the move from the node itself and the difference with other moves in that node, so would have much more benefit from the eval after having made the move. But it is so much more expensive... That is what prompted this experiment and seeing that there might still be a way later to actually pass the eval to search, including qsearch() or maybe store it in TT or an eval cache. Much ideas for further improvements, if this already could be shown not to break anything... A problem I see is that you also have to pass the eval info object and position info object or a pointer to those and you can't store that in a normal TT slot. The eval info object and position info object could become pretty important for any "Rybka type" improvements but maybe we are entering dangerous territory here...

So passing would seem to be the more direct approach but that should work? But first test the concept 8-)

More about Early Move Extensions later :)

Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan