Aronian-Karjakin, Sochi 2008

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

Moderator: Ras

jdart
Posts: 4434
Joined: Fri Mar 10, 2006 5:23 am
Location: http://www.arasanchess.org

Aronian-Karjakin, Sochi 2008

Post by jdart »

In Krasenkow's annotations to this game in CBM it is mentioned that at this point :

[d] r1b2rk1/1p1nq1p1/p1p1pp1p/3pP3/1bP2P2/PPNBP3/2QB2PP/R4RK1 b - -

Black played Bc5 and not Bxa3 because of the followup Rxa3! Qxa3 b4!. The position after Bxa3 is a reasonably hard problem:

[d] r1b2rk1/1p1nq1p1/p1p1pp1p/3pP3/2P2P2/bPNBP3/2QB2PP/R4RK1 w - -

Rybka 3 takes about 67 seconds to find Rxa3 on my dual machine.

Avoiding Bxa3 from the first position is even harder.

--Jon
kgburcham
Posts: 2016
Joined: Sun Feb 17, 2008 4:19 pm

Re: Aronian-Karjakin, Sochi 2008

Post by kgburcham »

[d] r1b2rk1/1p1nq1p1/p1p1pp1p/3pP3/1bP2P2/PPNBP3/2QB2PP/R4RK1 b - - 0 1

Rybka 3 :

1...Bc5 2.b4 Bb6 3.Na4 Ba7 (0.28) Depth: 18 00:04:40 51332kN
1...Bc5 2.b4 Bb6 3.exf6 Nxf6 (0.23) Depth: 19 00:06:17 70137kN

Deep Sjeng 3.0:

1...Bc5 2.b4 Ba7 3.exf6 Nxf6 (0.20) Depth: 15/42 00:00:29 109mN
1...Bc5 2.b4 Ba7 3.exf6 Nxf6 (0.16) Depth: 16/42 00:00:38 147mN
1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 (0.24) Depth: 17/42 00:01:01 232mN
User avatar
Eelco de Groot
Posts: 4722
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: Aronian-Karjakin, Sochi 2008

Post by Eelco de Groot »

Trying some different settings in Toga for brute pruning so probably I'm tuning for this specific position, but I hope my third try is a bit better than the first two. 'Brute pruning' not the same as 'mad pruning' from Bill Mowery's Mad Prune, I do like the name :)

Build 157 and build 158 are two competing versions, I'm trying to find out if I can do singular extensions also in other nodes than PVnodes. For the moment the experimental 158 (and up to 162) tries that only when he has to do an approximate search to decide on whether to brute prune or not.

Build 159 crashed without warning, or more precise it just stopped, I'm trying to figure how or what, that is what happens if you don't know exactly what is happening in your code, you will always see that the program will fail in exactly that place. Murphy's law in action.

r1b2rk1/1p1nq1p1/p1p1pp1p/3pP3/1bP2P2/PPNBP3/2QB2PP/R4RK1 b - -

Engine: Toga 1.4 Checkov Beta 4/Toga Mara Beta Build 157 (Athlon 2009 MHz, 256 MB)
by Fabien Letouzey, Thomas Gaksch, Taban Juma, Eelco de Groot

8/39 0:02 -0.21 1...Bxa3 2.exf6 Nxf6 3.Na4 Bb4 4.Bc3 Kh8
5.Bg6 Bxc3 6.Nxc3 e5 7.cxd5 Nxd5 (1.050.733) 505

9/39 0:04 +0.01 1...Bxa3 2.exf6 Nxf6 3.Na4 b5 4.c5 bxa4
5.Rxa3 axb3 6.Rxb3 a5 7.Rb6 Bd7
8.Qc3 a4 9.Ra1 (2.315.791) 497

10/39 0:12 +0.07 1...Bxa3 2.exf6 Nxf6 3.Bg6 Bd7 4.Na4 Bb4
5.Bxb4 Qxb4 6.Nc3 Be8 7.Bd3 Bh5 (6.010.393) 491

11/43 0:44 +0.17 1...Bxa3 2.exf6 Nxf6 3.Na4 b5 4.c5 bxa4
5.Rxa3 axb3 6.Rxb3 e5 7.fxe5 Qxe5
8.Rf3 Qe7 9.Qc3 Kh8 10.Rg3 (21.519.138) 483

12/46 1:24 +0.14 1...Bxa3 2.exf6 Nxf6 3.Na4 b5 4.Rfb1 bxa4
5.b4 e5 6.Rxa3 e4 7.Be2 Bg4 8.Bxg4 Nxg4
9.h3 Nf6 10.Rxa4 (42.054.372) 498

13/71 6:24 0.00 1...Bxa3 2.cxd5 cxd5 3.Rxa3 Qxa3
4.b4 Qxb4 5.Nxd5 Qc5 6.Nc7 Rb8
7.Nxe6 Qxc2 8.Bxc2 Rf7 9.Nd8 Rf8
10.Ne6 (197.403.421) 513

14/71 9:39 -0.54 1...Bxa3 2.cxd5 cxd5 3.Rxa3 Qxa3
4.b4 Qxb4 5.Nxd5 Qc5 6.Nc7 Rb8
7.Nxe6 Qxc2 8.Bxc2 Rf7 9.Bb3 Re7
10.Nd8+ Kf8 11.Bb4 Nb6 12.Bxe7+ Kxe7
13.exf6+ gxf6 (302.766.491) 522

14/71 15:07 -0.34 1...Bc5 2.exf6 Nxf6 3.b4 Ba7 4.c5 Kh8
5.Kh1 Bd7 6.Be2 Bb8 7.e4 dxe4 8.Rad1 e5
9.f5 (478.202.561) 526

best move: Bb4-c5 time: 17:10.312 min n/s: 526.107 CPU 100.0% n/s(1CPU): 526.107 nodes: 541.940.000


Build 158 was a bit worse but that can be a coincidence. The first twelve plies are identical because brute pruning only kicks in at thirteen ply. This also means you can't test this sort of changes with short timecontrols.


r1b2rk1/1p1nq1p1/p1p1pp1p/3pP3/1bP2P2/PPNBP3/2QB2PP/R4RK1 b - -

Engine: Toga 1.4 Checkov Beta 4/Toga Mara Beta Build 158 (Athlon 2009 MHz, 256 MB)
by Fabien Letouzey, Thomas Gaksch, Taban Juma, Eelco de Groot

8/39 0:02 -0.21 1...Bxa3 2.exf6 Nxf6 3.Na4 Bb4 4.Bc3 Kh8
5.Bg6 Bxc3 6.Nxc3 e5 7.cxd5 Nxd5 (1.050.733) 491

9/39 0:04 +0.01 1...Bxa3 2.exf6 Nxf6 3.Na4 b5 4.c5 bxa4
5.Rxa3 axb3 6.Rxb3 a5 7.Rb6 Bd7
8.Qc3 a4 9.Ra1 (2.315.791) 491

10/39 0:12 +0.07 1...Bxa3 2.exf6 Nxf6 3.Bg6 Bd7 4.Na4 Bb4
5.Bxb4 Qxb4 6.Nc3 Be8 7.Bd3 Bh5 (6.010.393) 489

11/43 0:44 +0.17 1...Bxa3 2.exf6 Nxf6 3.Na4 b5 4.c5 bxa4
5.Rxa3 axb3 6.Rxb3 e5 7.fxe5 Qxe5
8.Rf3 Qe7 9.Qc3 Kh8 10.Rg3 (21.519.138) 483

12/46 1:24 +0.14 1...Bxa3 2.exf6 Nxf6 3.Na4 b5 4.Rfb1 bxa4
5.b4 e5 6.Rxa3 e4 7.Be2 Bg4 8.Bxg4 Nxg4
9.h3 Nf6 10.Rxa4 (42.054.372) 499

13/54 5:08 0.00 1...Bxa3 2.cxd5 cxd5 3.Rxa3 Qxa3
4.b4 Qxb4 5.Nxd5 Qc5 6.Nc7 Qxc2
7.Bxc2 Rb8 8.Nxe6 Rf7 9.Nd8 Rf8
10.Ne6 (161.271.235) 522

14/55 8:07 -0.19 1...Bxa3 2.cxd5 cxd5 3.Rxa3 Qxa3
4.b4 Qxb4 5.Nxd5 Qc5 6.Nc7 Qxc2
7.Bxc2 Rb8 8.Nxe6 Rf7 9.Bb3 Re7
10.Nd4+ Kh7 11.Bb4 Re8 (260.252.259) 534

15/55 20:58 -0.49 1...Bxa3 2.cxd5 exd5 3.e6 Nb6 4.f5 Bd6
5.Ne2 Qc7 6.g3 Re8 7.Kh1 h5 8.Ba5 Be5
9.Ra4 Kh8 10.Bxb6 Qxb6 (672.991.255) 534

15/55 36:17 -0.36 1...Bc5 2.exf6 Nxf6 3.b4 Ba7 4.Kh1 Kh8
5.c5 Bd7 6.e4 a5 7.Qb2 b5 8.exd5 exd5
9.Rae1 Be6 10.f5 axb4 11.axb4 (1.168.421.928) 536

best move: Bb4-c5 time: 37:09.469 min n/s: 536.354 CPU 100.0% n/s(1CPU): 536.354 nodes: 1.195.650.000



Because of other changes in the extensions, I don't get much depth (extensions cause the selective depths to go up) so brute pruning, when starting at depth 13, is a bit late. Especially before the endgame starts, in the endgame you can get much higher plydepths, so also more reductions. On the other hand, a too small brute_pruning_depth is also dangerous; the remaining plydepth is too little to be accurate. But in build 162 brute pruning goes into action at twelve ply:


[d]r1b2rk1/1p1nq1p1/p1p1pp1p/3pP3/1bP2P2/PPNBP3/2QB2PP/R4RK1 b - -

Engine: Toga 1.4 Checkov Beta 4/Toga Mara Beta Build 162 (Athlon 2009 MHz, 256 MB)
by Fabien Letouzey, Thomas Gaksch, Taban Juma, Eelco de Groot


8/39 0:02 -0.21 1...Bxa3 2.exf6 Nxf6 3.Na4 Bb4 4.Bc3 Kh8
5.Bg6 Bxc3 6.Nxc3 e5 7.cxd5 Nxd5 (1.050.733) 480

9/39 0:04 +0.01 1...Bxa3 2.exf6 Nxf6 3.Na4 b5 4.c5 bxa4
5.Rxa3 axb3 6.Rxb3 a5 7.Rb6 Bd7
8.Qc3 a4 9.Ra1 (2.315.791) 485

10/39 0:12 +0.07 1...Bxa3 2.exf6 Nxf6 3.Bg6 Bd7 4.Na4 Bb4
5.Bxb4 Qxb4 6.Nc3 Be8 7.Bd3 Bh5 (6.010.393) 488

11/44 0:49 +0.17 1...Bxa3 2.exf6 Nxf6 3.Na4 b5 4.c5 bxa4
5.Rxa3 axb3 6.Rxb3 e5 7.fxe5 Qxe5
8.Rf3 Qe7 9.Qc3 Kh8 10.Rg3 (23.641.137) 475

12/61 4:18 -0.80 1...Bxa3 2.Rxa3 Qxa3 3.b4 Qxb4
4.Nxd5 Qc5 5.Bb4 Qa7 6.Ne7+ Kh8
7.Ng6+ Kg8 8.Nxf8 Nxf8 9.exf6 Qxe3+
10.Kh1 Qb6 11.Bxf8 Kxf8 (131.034.094) 506

12/61 5:22 -0.35 1...Bc5 2.exf6 Nxf6 3.b4 Ba7 4.c5 Kh8
5.Bg6 e5 6.fxe5 Qxe5 7.Ne2 Bd7 8.Nf4 Bg4 (165.453.347) 513

13/61 6:46 -0.32 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 Kh8
5.c5 Nd7 6.b4 e5 7.Bg6 e4 8.Qb2 (211.270.101) 520

14/61 8:59 -0.54 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 e5
5.fxe5 Qxe5 6.cxd5 cxd5 7.Kh1 b5
8.Bc3 Qc7 9.Nb2 Kh8 10.Bg6 (286.129.781) 529

15/61 18:19 -0.56 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 e5
5.fxe5 Qxe5 6.cxd5 cxd5 7.Kh1 b5
8.Bc3 Qc7 9.Nb2 Kh8 10.Bg6 Bg4 (595.699.492) 541

16/65 54:12 -0.18 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 e5
5.fxe5 Qxe5 6.cxd5 cxd5 7.Bc3 Qc7
8.Bd4 Qxc2 9.Bxc2 Bd7 10.Nc3 Bxd4
11.exd4 Rac8 12.Rf3 (1.740.247.195) 535

17/65 84:10 -0.24 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 e5
5.fxe5 Qxe5 6.cxd5 cxd5 7.Bc3 Qc7
8.Bd4 Qxc2 9.Bxc2 Bg4 10.h3 Rfc8
11.Bxf6 Rxc2 12.hxg4 gxf6 13.Rxf6 Re8 (2.717.984.388) 538


I think 165 million nodes for build 162 compares favourably to Rybka 3s 51332kN! Even though Rybkas number is smaller the actual 'raw' nodecount must be higher, even if Rybka 3 would be run on a single core, I'm assuming K.G.'s output was on more than one core or at least a faster machine.

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
User avatar
Eelco de Groot
Posts: 4722
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: Aronian-Karjakin, Sochi 2008

Post by Eelco de Groot »

I had several versions that seemed to be regressing at best or had exploding searchtrees at worst causing the engine to be closed down. Now finally I have a version again that at least can find the solution 1...Bc5 within the hour again. I changed the name of the development version so as to stay closer to our Fruit sources but in essence the engine is still a Toga II 1.4beta5c Fruit derivative. I'm not calling it Toga Mara anymore as everyone would be better of with a real version from Taban Juma if he is serious about his claims.

But this is Blueberry :!:

First version with this shortened name :)

[d]r1b2rk1/1p1nq1p1/p1p1pp1p/3pP3/1bP2P2/PPNBP3/2QB2PP/R4RK1 b - -

Engine: Blueberry Beta 4 DM70 (Build 179 on Athlon 2009 MHz, 256 MB)
by F. Letouzey, T.Gaksch, E. de Groot

8/45 0:09 -0.16 1...Bxa3 2.exf6 Rxf6 3.Rf3 Bb4 4.Rg3 Kh8
5.Kh1 a5 6.Be2 Rf5 7.cxd5 cxd5 (4.631.589) 489

9/45 0:15 -0.01 1...Bxa3 2.exf6 Nxf6 3.Na4 Bb4 4.Nb6 Bxd2
5.Qxd2 Rb8 6.Rfc1 Bd7 7.Kh1 Kh8
8.Qc3 (7.766.281) 488

10/50 0:59 +0.20 1...Bxa3 2.exf6 Nxf6 3.Rfe1 dxc4
4.Bxc4 Kh8 5.Ne4 Nd5 6.h4 Bd7 7.Bc3 e5
8.Bxe5 Qxh4 9.Bxd5 cxd5 (28.906.452) 482

11/62 4:37 -0.97 1...Bxa3 2.Rxa3 Qxa3 3.b4 dxc4
4.Bxc4 Nb6 5.Bb3 Qxb4 6.Nd5 Nxd5
7.Bxb4 Nxb4 8.Qg6 fxe5 9.f5 Rf6
10.Qe8+ Rf8 11.Bxe6+ Bxe6 12.Qxe6+ Kh8
13.Qxe5 Nd3 14.Qe7 (146.398.907) 527

11/62 4:53 -0.73 1...Bxc3 2.Bxc3 fxe5 3.fxe5 Kh8
4.cxd5 exd5 5.Rf4 Rb8 6.Rxf8+ Nxf8
7.Qf2 Ne6 8.Qg3 Nc5 9.Bb4 g5 (155.278.168) 528

11/62 5:07 -0.38 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 Bd7
5.Bc3 c5 6.b4 Bxa4 7.Qxa4 Kh8 8.Bxf6 Rxf6
9.cxd5 exd5 (162.512.139) 527

12/62 6:09 -0.46 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 dxc4
5.bxc4 Qxa3 6.Ra1 Qe7 7.c5 e5 8.Bg6 Kh8
9.Kh1 (196.750.894) 532

13/62 9:06 -0.28 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 dxc4
5.bxc4 Qxa3 6.Ra1 Qe7 7.c5 e5 8.Bg6 Kh8
9.Kh1 e4 (293.560.075) 537

14/62 12:32 -0.44 1...Bc5 2.exf6 Nxf6 3.Na4 Ba7 4.Rae1 Kh8
5.Bb4 c5 6.Bc3 Bd7 7.Bxf6 Qxf6 8.Nb2 Bb6
9.Rd1 Ba5 10.Bg6 (406.756.141) 540

15/62 41:49 -0.30 1...Bc5 2.exf6 Nxf6 3.Na4 Bd6 4.Kh1 b5
5.c5 Bc7 6.Nb6 Rb8 7.Bg6 Kh8 8.Nxc8 Rfxc8
9.Rad1 Ng4 10.Bc3 Nxe3 (1.324.323.608) 527


DM70 = Delta Margin 70, in essence all settings are as in Toga Checkov and not further tuned for this version.

Blueberry in this build has some asymmetric extensions, if I got it right they should work only if it is the opponent's move in a PV node, so the move has the potential of refuting your PV. It turns out to be very tricky not to overdo this and not explode the searchtree and I have only tested it in this position, this is the first version of the extensions that at least works in one position...

I publish most of my experimental changes here in posts because the Blueberry source as a whole still contains a lot of old code and/or so far undocumented changes and will be hard to read for anyone interested if it is ever published, sorry.

Code: Select all

	  // Re-search or extend moves close to best_move in PV-nodes where opponent has the move

      if (node_type == NodePV  && ((height+1) % 2 == 0) && (height <= SearchCurrent[ThreadId]->act_iteration) 
		  && best_value != ValueNone && new_depth < depth && (value > MAX(best_value - 25, alpha)) 
		  && move_is_tactical(move,board) && value > fourthbest_value /*&& (value < best_value)*/){ // && value < beta
         value = -full_search(board,-beta,-alpha,new_depth,height+1,new_pv,NodePV,cap_extended,false,ThreadId);
		   new_depth++;
		   value = -full_search(board,-beta,-alpha,new_depth,height+1,new_pv,NodePV,cap_extended,false,ThreadId);
      }



It can be seen from the output that this version also goes to 3...Bd6 after a while, I'm not sure if it is possible (for Toga Blueberry flavour) to discern between 3...Bd6 and 3...Ba7 because it depends too much on your evaluation function and on random fluctuations in positional searches, a very difficult problem I think that we have not read very much about.

Regards,
Eelco

Addendum: some results with Rybka 2.2n2 trying to find out what is the best continuation:

After

[FEN "r1b2rk1/1p1nq1p1/p1p1pp1p/3pP3/1bP2P2/PPNBP3/2QB2PP/R4RK1 b - -"]

1... Bc5 2. exf6 Nxf6 3. Na4 *


[d]r1b2rk1/1p2q1p1/p1p1pn1p/2bp4/N1P2P2/PP1BP3/2QB2PP/R4RK1 b - -

Engine: Rybka 2.2n2 mp 32-bit PVtips5menbases (256 MB)
by Vasik Rajlich

15 3:37 -0.36 3...Bd6 4.c5 Bc7 5.Nb6 Rb8 6.Rae1 e5
7.Nxc8 Rbxc8 8.b4 Rcd8 9.Bc3 Ra8
10.Qb3 e4 11.Be2 a5 12.f5 axb4
13.Qxb4 (18.673.977) 87

15 2:49 -0.38 3...Ba7 4.c5 e5 5.Nb6 e4 6.Be2 Bxb6
7.cxb6 Qd8 8.Bb4 Rf7 9.Bc3 Qxb6
10.Bd4 Qc7 11.f5 Bd7 (14.195.167) 85
__________________________________________________________________

16 8:24 -0.25 3...Ba7 4.c5 e5 5.Nb6 e4 6.Be2 Bxb6
7.cxb6 Qd8 8.Bc3 Qxb6 9.Bd4 Qc7
10.f5 Bd7 11.Qc3 Rae8 12.Rf4 (44.609.558) 90

16 7:07 -0.35 3...Bd6 4.c5 Bc7 5.Nb6 Rb8 6.Rae1 e5
7.Nxc8 Rbxc8 8.b4 Rce8 9.Bf5 Ra8
10.e4 d4 11.fxe5 Bxe5 (37.499.139) 89
__________________________________________________________________

17 12:17 -0.19 3...Ba7 4.c5 e5 5.Nb6 e4 6.Be2 Bxb6
7.cxb6 Qd8 8.Qc5 Nd7 9.Qd6 Qxb6
10.b4 Nf6 11.f5 Ne8 (65.348.535) 90

17 14:32 -0.36 3...Bd6 4.c5 Bc7 5.Nb6 Rb8 6.Rae1 e5
7.Nxc8 Rbxc8 8.b4 a5 9.bxa5 Ra8
10.a6 bxa6 11.f5 e4 (77.978.687) 91
__________________________________________________________________

18 18:46 -0.19 3...Ba7 4.c5 e5 5.Nb6 e4 6.Be2 Bxb6
7.cxb6 Qd8 8.Bb4 Rf7 9.f5 Ne8 10.Rf4 Rxf5
11.Raf1 a5 (100.774.214) 91

18 30:17 -0.33 3...Bd6 4.Nb6 Rb8 5.b4 Bc7 6.Nxc8 Rbxc8
7.Bc3 b5 8.c5 e5 9.g3 Rcd8
10.a4 bxa4 (163.472.562) 92
___________________________________________________________________

19 42:24 -0.20 3...Ba7 4.c5 e5 5.b4 e4 6.Be2 Bf5
7.Bc3 Qf7 8.Bd4 Qg6 9.Qb3 Bh3
10.Rf2 Rad8 (226.336.035) 91

19 58:19 -0.35 3...Bd6 4.Nb6 Rb8 5.b4 e5 6.Nxc8 Rbxc8
7.c5 Bc7 8.Rfe1 Ra8 9.Rab1 Qd8 10.Rb2 e4
11.Be2 Qd7 (311.570.441) 91
___________________________________________________________________

20 78:10 -0.20 3...Ba7 4.c5 e5 5.b4 e4 6.Be2 Bf5
7.Bc3 Qf7 8.Bd4 Qg6 9.Kh1 Rad8 10.Rae1 Rde8
11.Rd1 Re7 (418.316.938) 91

20 100:19 -0.35 3...Bd6 4.Nb6 Rb8 5.b4 e5 6.Nxc8 Rbxc8
7.c5 Bc7 8.Rfe1 Ra8 9.Rab1 Qd8 10.Rb2 e4
11.Be2 Qd7 (542.724.562) 92
___________________________________________________________________

21 150:22 -0.21 3...Ba7 4.c5 e5 5.b4 e4 6.Be2 Bf5
7.Bc3 Qf7 8.Qc1 Qg6 9.Qe1 Rf7 10.Rd1 Raf8
11.Qf2 Bg4 (805.139.336) 91

21 231:44 -0.30 3...Bd6 4.Nb6 Rb8 5.b4 e5 6.Nxc8 Rbxc8
7.c5 Bc7 8.Rfe1 Ra8 9.Rab1 Qd8 10.Rb2 Qb8
11.Rf1 exf4 (1.262.025.688) 92
____________________________________________________________________

22 325:14 -0.19 3...Ba7 4.c5 e5 5.b4 e4 6.Be2 Bf5
7.Bc3 Qf7 8.Qc1 Qg6 9.Qe1 Rf7 10.Rd1 Raf8
11.Rd2 (1.781.218.964) 93

22 435:53 -0.31 3...Bd6 4.Nb6 Rb8 5.b4 e5 6.Nxc8 Rbxc8
7.c5 Bc7 8.Rfe1 Rce8 9.Bg6 Ra8
10.Bc3 a5 11.Ra2 Ne4 (2.399.474.118) 93
____________________________________________________________________

23 686:44 -0.16 3...Ba7 4.c5 e5 5.b4 Bg4 6.Bc3 e4
7.Be2 Bxe2 8.Qxe2 Nd7 9.Bd4 Bb8
10.Qg4 Bc7 11.Nb6 Bxb6 12.cxb6 (3.740.076.472) 92

best move: Bc5-a7 time: 690:48.953 minnodes: 3.756.865.243

Endless 300 minute or longer searches in this position testing various versions but the results were not conclusive for both the variations or the program changes :( . Probably I'd better switch to another testposition then :) ...

Most of my Toga versions preferred 3...Bd6 like this one:

r1b2rk1/1p2q1p1/p1p1pn1p/2bp4/N1P2P2/PP1BP3/2QB2PP/R4RK1 b - -

Engine: Toga 1.4 Checkov Beta 4/Toga Mara Beta Build 166 (Athlon 2009 MHz, 256 MB)
by Fabien Letouzey, Thomas Gaksch, Taban Juma, Eelco de Groot

11 0:10 -0.44 3...Bd6 4.Bc3 Kh8 5.Bxf6 Rxf6 6.Rfe1 Bc7
7.Nc3 d4 8.Ne4 dxe3 9.g3 e5 10.Nxf6 Qxf6
11.Rxe3 exf4 (4.840.890) 488

11 0:18 -0.47 3...Ba7 4.Rae1 Kh8 5.Kh1 dxc4 6.bxc4 Bd7
7.Bg6 c5 8.Nc3 Be8 9.Bxe8 Raxe8 (8.891.383) 488

_________________________________________________________________

12 1:23 -0.39 3...Ba7 4.Rae1 Kh8 5.Kh1 dxc4 6.bxc4 Qxa3
7.Bc3 Qe7 8.Rf3 b5 9.Bxf6 Rxf6 10.cxb5 cxb5
11.Qc6 Bb7 (40.375.597) 482

12 0:32 -0.45 3...Bd6 4.Bc3 Bd7 5.Nb6 Rad8 6.Rf3 Kh8
7.Qb2 Bc5 8.Nxd7 Rxd7 9.Rg3 g5 10.fxg5 (15.591.044) 482

_________________________________________________________________

13 4:23 -0.36 3...Bd6 4.Bc3 Rb8 5.c5 Bc7 6.Qb2 Ng4
7.Qe2 e5 8.h3 Nf6 9.fxe5 Bxe5
10.Bxe5 Qxe5 11.Nb6 (119.993.862) 472

13 5:41 -0.59 3...Ba7 4.Rae1 Kh8 5.Kh1 dxc4 6.bxc4 Bd7
7.c5 e5 8.Bc3 Ng4 9.h3 Qh4 10.Bxe5 Nxe5
11.fxe5 (161.261.698) 472

_________________________________________________________________

14 7:02 -0.48 3...Bd6 4.Bc3 Kh8 5.Kh1 Rb8 6.c5 Bc7
7.Qf2 e5 8.Qg3 e4 9.Be2 Be6 10.Rad1 (201.815.270) 488

14 10:23 -0.59 3...Ba7 4.Rae1 Kh8 5.Kh1 dxc4 6.bxc4 e5
7.Bb4 c5 8.Bc3 Bd7 9.fxe5 Ng4 10.Bf5 Bxa4
11.Qxa4 Nxe5 12.Bxe5 Qxe5 (304.560.203) 488

_________________________________________________________________

15 13:01 -0.42 3...Bd6 4.Bc3 Kh8 5.Kh1 Rb8 6.c5 Bc7
7.Qf2 e5 8.Qh4 Bg4 9.Rae1 e4 10.Bxe4 Qxe4
11.Bxf6 Rxf6 12.Qxg4 (382.123.933) 485

15 47:35 -0.49 3...Ba7 4.Kh1 Ng4 5.c5 e5 6.h3 e4
7.Be2 Nf6 8.Rad1 Ne8 9.Be1 Be6
10.Rd4 Kh8 (1.387.758.353) 485

_________________________________________________________________

16 211:35 -0.40 3...Bd6 4.Bc3 Kh8 5.Kh1 Bd7 6.e4 dxe4
7.Bxe4 Rad8 8.Bxf6 Rxf6 9.g3 g5
10.Rad1 gxf4 11.Qc3 Bxa3 12.Qe5 Be8
13.Ra1 Bd6 (5.930.103.711) 467

16 131:13 -0.44 3...Ba7 4.Kh1 Ng4 5.c5 e5 6.h3 e4
7.Be2 Nf6 8.Be1 Kh8 9.Bh4 Bf5
10.Rad1 Rad8 11.Bxf6 Rxf6 (3.682.037.458) 467

_________________________________________________________________

17 275:48 -0.42 3...Bd6 4.Bc3 Kh8 5.Kh1 Bd7 6.e4 Ng4
7.e5 Bc7 8.Bb4 Qh4 9.g3 Qh3 10.Bxf8 Rxf8
11.Qd2 Ba5 12.b4 (7.728.018.055) 457

17 432:36 -0.45 3...Ba7 4.Kh1 Ng4 5.c5 Qh4 6.h3 Nf2+
7.Rxf2 Qxf2 8.Rf1 Qh4 9.Be1 Qe7
10.Bc3 Bd7 11.Bg6 Be8 12.Bh7+ Kh8
13.Rd1 (11.867.164.223) 457
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