Pathetic lack of execution (can your engine find c4?)

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

Moderator: Ras

Robert Flesher
Posts: 1287
Joined: Tue Aug 18, 2009 3:06 am

Re: Pathetic lack of execution (can your engine find c4?)

Post by Robert Flesher »

8/8/3k1p2/p1p1n1p1/Pp2P1P1/1P1BK2P/8/8 b - - 0 1

Analysis by Rybka 3 :

1...Nxd3
-+ (-1.74) Depth: 22 00:00:00
1...Nxd3
-+ (-1.74) Depth: 23 00:00:00
1...Nxd3
-+ (-1.94) Depth: 24 00:00:00 74kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 b3 5.Kd3 b2 6.Kc2 Kd4 7.Kxb2 Kxc4 8.Kc2 Kb4 9.Kd3 Kxa4 10.e5 fxe5 11.Ke2 Kb4
-+ (-2.13) Depth: 24 00:00:18 6355kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 b3 5.Kd3 b2 6.Kc2 Kd4 7.Kxb2 Kxc4 8.Kc2 Kb4 9.Kd3 Kxa4 10.e5 fxe5 11.Ke2 Kb4 12.h4 gxh4 13.g5 h3 14.Kf2 e4 15.g6 e3+ 16.Kxe3 h2
-+ (-2.13) Depth: 25 00:00:34 11109kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 b3 5.Kd3 b2 6.Kc2 Kd4 7.Kxb2 Kxc4 8.Kc2 Kb4 9.Kd3 Kxa4 10.e5 fxe5 11.Ke2 Kb4 12.h4 gxh4 13.g5 h3 14.Kf2 e4 15.g6 e3+ 16.Kxe3 h2
-+ (-2.13) Depth: 26 00:00:57 18261kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 b3 5.Kd3 b2 6.Kc2 Kd4 7.Kxb2 Kxc4 8.Kc2 Kb4 9.Kd3 Kxa4 10.e5 fxe5 11.Ke2 Kb4
-+ (-2.13) Depth: 27 00:01:24 26247kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 b3 5.Kd3 b2 6.Kc2 Kd4 7.Kxb2 Kxc4 8.Kc2 Kb4 9.Kd3 Kxa4 10.e5 fxe5 11.Ke2 Kb4
-+ (-2.13) Depth: 28 00:02:24 45007kN

(, Microsoft 06.09.2009)
Robert Flesher
Posts: 1287
Joined: Tue Aug 18, 2009 3:06 am

Re: Pathetic lack of execution (can your engine find c4?)

Post by Robert Flesher »

The problem with this test position is that ....nxd3 seems to transpose into the same variations. So either should be considered.
Robert Flesher
Posts: 1287
Joined: Tue Aug 18, 2009 3:06 am

Re: Pathetic lack of execution (can your engine find c4?)

Post by Robert Flesher »

Hiarcs instantly!
New game
8/8/3k1p2/p1p1n1p1/Pp2P1P1/1P1BK2P/8/8 b - - 0 1

Analysis by HIARCS Paderborn 2007 MP:

1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 b3 5.Kd3 b2 6.Kc2 Kd4 7.Kxb2 Kxc4 8.Kc2 Kb4 9.Kd3 Kxa4 10.Kc4 Ka3 11.Kc3 a4 12.Kc4 Kb2
-+ (-1.51) Depth: 16/36 00:00:00 1610kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 b3 5.Kd3 b2 6.Kc2 Kd4 7.Kxb2 Kxc4 8.Kc2 Kb4 9.Kd3 Kxa4 10.Kc4 Ka3 11.Kc3 Ka4
-+ (-1.51) Depth: 17/36 00:00:00 1835kN
1...c4
-+ (-1.52) Depth: 17/36 00:00:00 2179kN
1...c4 2.Bxc4 Nxc4+ 3.bxc4 b3 4.Kd2
-+ (-1.52) Depth: 17/36 00:00:00 2295kN
1...c4
-+ (-1.77) Depth: 18/40 00:00:01 6615kN
1...c4 2.Bxc4 Nxc4+ 3.bxc4 b3 4.Kd2 b2 5.Kc2 Kc5 6.Kxb2 Kxc4 7.Kc2 Kb4 8.Kd3 Kxa4 9.Kc4 Ka3 10.Kc3 a4 11.Kc2 Kb4 12.Kb2 a3+ 13.Ka2 Ka4
-+ (-2.03) Depth: 18/40 00:00:02 9461kN
1...Nxd3
-+ (-2.33) Depth: 18/40 00:00:02 9461kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4
-+ (-2.33) Depth: 18/40 00:00:02 9515kN
1...Nxd3
-+ (-2.08) Depth: 19/40 00:00:02 9748kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 b3 5.Kd3 b2 6.Kc2 Kd4 7.Kxb2 Kxc4 8.Kc2 Kb4 9.Kd3 Kxa4 10.Kc3 Ka3 11.Kc2 Kb4
-+ (-1.85) Depth: 19/41 00:00:02 11253kN
1...c4
-+ (-1.85) Depth: 19/41 00:00:02 11395kN
1...c4 2.Bxc4 Nxc4+ 3.bxc4 b3 4.Kd2 b2 5.Kc2 Kc5 6.Kxb2 Kxc4 7.Kc2 Kb4 8.Kd3 Kxa4 9.Kc4 Ka3 10.Kc3 a4 11.Kc2 Kb4 12.Kb2 a3+ 13.Ka2 Ka4
-+ (-2.03) Depth: 19/41 00:00:02 11680kN
1...Nxd3
-+ (-2.33) Depth: 20/46 00:00:08 33403kN
1...Nxd3
-+ (-2.33) Depth: 20/46 00:00:08 33403kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4
-+ (-2.33) Depth: 20/46 00:00:08 33541kN
1...Nxd3 2.Kxd3 Ke5 3.Ke3 c4 4.bxc4 Kd6 5.Kd4 Kc6 6.c5 b3 7.Kd3 b2 8.Kc2 Kxc5 9.Kxb2
-+ (-2.14) Depth: 21/46 00:00:09 38568kN
1...c4
-+ (-2.21) Depth: 21/46 00:00:09 38568kN
1...c4 2.Bxc4 Nxc4+ 3.bxc4 b3 4.Kd2 Kc5 5.Kc3 b2 6.Kxb2 Kxc4 7.Kc2 Kb4 8.Kd3 Kxa4 9.Kc4 Ka3 10.Kc3 a4 11.Kc2 Kb4
-+ (-2.21) Depth: 21/46 00:00:09 38568kN

(, Microsoft 06.09.2009)
BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 5:18 am

Re: Pathetic lack of execution (can your engine find c4?)

Post by BubbaTough »

michiguel wrote:In fact, all the engines that posted here showed a very small score before c4. What is the score of Lemming before c4?
errr...when I mean instantly, I think I mean something different from others posted. c4 is selected at depth 1. Here is the output:

LearningLemming0.43c:

1 00:00 38 2.000 +0.30 c5c4
2+ 00:00 114 7.000 +0.70 c5c4
2 00:00 173 11.000 +0.74 c5c4 Bd3c2
3 00:00 1.079 71.000 +0.81 c5c4 b3xc4 Ne5xd3
4 00:00 4.220 281.000 +0.57 c5c4 Bd3xc4 Ne5xc4+ b3xc4 Kd6c5 Ke3d3 Kc5c6 Kd3e3 Kc6d6
5 00:00 6.402 426.000 +0.48 c5c4 Bd3xc4 Ne5xc4+ b3xc4 Kd6c5 Ke3d3 Kc5b6 Kd3d4 Kb6c6 c4c5
6 00:00 14.912 994.000 +0.41 c5c4 Bd3xc4 Ne5xc4+ b3xc4 Kd6c6 Ke3d4 Kc6b7 Kd4d3 Kb7c7 Kd3d4 Kc7c6 c4c5 Kc6d7 Kd4c4
7 00:00 25.859 1.723.000 +0.36 c5c4 Bd3xc4 Ne5xc4+ b3xc4 Kd6c6 Ke3d4 Kc6b7 Kd4d3 Kb7c7 Kd3d4 Kc7c6 c4c5 Kc6c7 Kd4c4 Kc7c6 Kc4d4
8 00:00 43.857 1.414.000 +0.36 c5c4 Bd3xc4 Ne5xc4+ b3xc4 Kd6c6 Ke3d4 Kc6b7 Kd4d3 Kb7b6 e4e5 f6xe5 h3h4
9 00:00 147.887 2.385.000 +0.36 c5c4 Bd3xc4 Ne5xc4+ b3xc4 Kd6c6 Ke3e2 Kc6b6 Ke2e3 Kb6c7 Ke3d3 Kc7b6 Kd3e3
10+ 00:00 214.646 1.969.000 +0.76 c5c4 Bd3xc4 Ne5xc4+ b3xc4 b4b3 Ke3d3 b3b2 Kd3c2 b2b1Q
10 00:00 298.947 2.391.000 +0.90 c5c4 Bd3xc4 Ne5xc4+ b3xc4 b4b3 Ke3d3 b3b2 Kd3c2 b2b1Q
11 00:00 416.812 2.423.000 +1.21 c5c4 Bd3c2 c4c3 Bc2d1 Kd6c6 Bd1c2 Kc6c5 Bc2b1 Kc5b6 Ke3d4 Kb6c6
12 00:00 522.648 2.574.000 +1.23 c5c4 Bd3c2 c4c3 Bc2d1 Ne5d7 Ke3d3 Nd7c5+ Kd3e3 Nc5e6 Ke3f2 Ne6f4 Kf2g3
13 00:00 724.412 2.577.000 +1.21 c5c4 Bd3c2 c4c3 Bc2b1 Ne5d7 Ke3d3 Nd7c5+ Kd3c4 Kd6c6 Bb1c2 Kc6b6 Kc4d4 Nc5e6+ Kd4e3 Kb6c5
14 00:00 1.219.499 2.790.000 +1.23 c5c4 Bd3c2 c4c3 Bc2b1 Ne5d7 Ke3d3 Nd7c5+ Kd3c4 Kd6c6 Bb1c2 Nc5e6 Bc2d3 Kc6d6 Kc4b5 Ne6c5
15 00:00 1.923.791 2.862.000 +1.23 c5c4 Bd3c2 c4c3 Bc2b1 Ne5d7 Ke3d4 Nd7c5 Kd4c4 Kd6c6 Bb1c2 Nc5e6 Bc2d3 Ne6f4
16 00:01 4.139.579 2.978.000 +1.42 c5c4 Bd3xc4 Ne5xc4+ b3xc4 b4b3 Ke3d3 b3b2
17 00:02 7.304.263 2.921.000 +1.63 c5c4 Bd3c2 c4c3 Bc2b1 Ne5g6 Ke3d4 Ng6f4 Kd4c4 Kd6c6 Kc4d4 Nf4xh3
18 00:04 13.344.363 2.895.000 +1.75 c5c4 Bd3c2 c4c3

The eval at depth 0 is: 0.213
User avatar
fern
Posts: 8755
Joined: Sun Feb 26, 2006 4:07 pm

Re: Pathetic lack of execution (can your engine find c4?)

Post by fern »

Mighuel:
¿Qué tal si escribes una subrutina que le entregue el mando a un engine de finales una vez alcanzadas ciertas condiciones?
La ventaja de eso es que no tienes que contaminar el engine que ya tienes con heuristicas que pueden afectar su buen juego en otras fases.
Un abrazo
Fern
jarkkop
Posts: 198
Joined: Thu Mar 09, 2006 2:44 am
Location: Helsinki, Finland

Re: Pathetic lack of execution (can your engine find c4?)

Post by jarkkop »

[d]8/8/8/pk2p3/6Pp/4K3/8/8 w - - 0 1

1... c4 2. Bxc4 Nxc4+ 3. bxc4 Kc5 4. Kd3 b3 5. Kc3 b2 6. Kxb2 Kxc4 7. Kc2 Kb4
8. Kd3 Kxa4 9. Ke3 Kb5 10. e5 fxe5 11. h4 gxh4 *


I end up in position which is Mate in 82

This can't solved probably by the programs without tablebases, so draw.
BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 5:18 am

Re: Pathetic lack of execution (can your engine find c4?)

Post by BubbaTough »

fern wrote:Mighuel:
¿Qué tal si escribes una subrutina que le entregue el mando a un engine de finales una vez alcanzadas ciertas condiciones?
La ventaja de eso es que no tienes que contaminar el engine que ya tienes con heuristicas que pueden afectar su buen juego en otras fases.
Un abrazo
Fern
Fernando, that would ruin the fun! Do you want to rob Miguel of the joy of trying to put that knowledge in the engine himself? :).

-Sam
User avatar
Eelco de Groot
Posts: 4669
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: Pathetic lack of execution (can your engine find c4?)

Post by Eelco de Groot »

jarkkop wrote:[d]8/8/8/pk2p3/6Pp/4K3/8/8 w - - 0 1

1... c4 2. Bxc4 Nxc4+ 3. bxc4 Kc5 4. Kd3 b3 5. Kc3 b2 6. Kxb2 Kxc4 7. Kc2 Kb4
8. Kd3 Kxa4 9. Ke3 Kb5 10. e5 fxe5 11. h4 gxh4 *


I end up in position which is Mate in 82

This can't solved probably by the programs without tablebases, so draw.
Well, why would engines without tablebases not find a win here? White has to sac at least two pawns to get an unstoppable passed pawn, but Black also has one and it is one tempo earlier. So both sides get a Queen but Black still has two extra pawns, White only a Queen if the a pawns are off.

The score does not go up very quickly, but in the end it turns out there are several winning moves. I think Nxd3 and c4 indeed transpose almost perfectly like Robert Flesher posted above, although the last 19 ply iteration did not show that anymore and 46... Nxd3 had taken a small lead, in multi-PV. In the normal analysis probably most engines will stick with 46... c4

Unfortunately the 19 ply analysis took quite a while but that was mainly for 46... Nxd3. With the hashcontents for that move now very deep, the engine now quickly sees good scores for all the moves.

Eelco


[d]8/8/3k1p2/p1p1n1p1/Pp2P1P1/1P1BK2P/8/8 b - -

Engine: Ancalagon 1.3 Weak Squares 180 Board Control middlegame 50 endgame 50 Build 254 (Athlon 2009 MHz, 64 MB)
by Romstad, Costalba, Kiiski, de Groot

17 5:23 +2.15 46...c4 47.Bxc4 Nxc4+ 48.bxc4 Kc5
49.Kd3 b3 50.Kc3 b2 51.Kxb2 Kxc4 (319.256.648) 987

17 5:23 +2.09 46...Kc6 47.Bb5+ (319.256.648) 987

17 5:23 +2.09 46...Nxd3 47.Kxd3 Ke5 48.Ke3 c4
49.bxc4 b3 50.Kd3 b2 51.Kc2 Kd4
52.Kxb2 Kxc4 53.Kc2 Kb4 54.Kb2 Kxa4
55.Kc3 Kb5 56.Kd2 a4 57.Kc2 Kb4
58.Kb2 Kc4 59.Kb1 Kd4 (319.256.648) 987

17 5:23 +1.92 46...Kc7 47.Kd2 c4 48.Bxc4 Nxc4+
49.bxc4 Kb6 50.Ke3 b3 51.Kd2 Kc5 (319.256.648) 987

17 5:23 +1.66 46...Ng6 47.Kd2 Kc6 48.Ke3 Kb6
49.Ke2 Ne5 50.Kd2 c4 51.Bxc4 Nxc4+ (319.256.648) 987

_________________________________________________________________

18 8:35 +2.47 46...c4 47.Bxc4 Nxc4+ 48.bxc4 b3
49.Kd3 b2 50.Kc2 Kc5 51.Kxb2 Kxc4
52.Kc2 Kb4 53.Kd2 Kxa4 54.e5 fxe5
55.Ke3 Kb4 56.h4 gxh4 57.g5 h3
58.Kf2 e4 59.g6 h2 (509.926.467) 988

18 8:35 +2.47 46...Nxd3 47.Kxd3 Ke5 48.Ke3 c4
49.bxc4 b3 50.Kd3 b2 51.Kc2 Kd4 (509.926.467) 988

18 8:35 +2.25 46...Kc7 47.Ke2 Kb6 48.Kd2 c4
49.Bxc4 Nxc4+ 50.bxc4 Kc5 51.Kd3 b3 (509.926.467) 988

18 8:35 +1.64 46...Kc6 47.Ke2 Ng6 48.Kd2 Kd6
49.Ke3 Ne5 50.Kd2 c4 51.Bxc4 Nxc4+ (509.926.467) 988

18 8:35 +1.60 46...Ng6 47.Kd2 Kc7 48.e5 Nxe5
49.Ba6 Kd6 50.Ke3 c4 51.Bxc4 Nxc4+ (509.926.467) 988
________________________________________________________________

18 9:16 +2.47 46...c4 47.Bxc4 Nxc4+ 48.bxc4 b3
49.Kd3 b2 50.Kc2 Kc5 51.Kxb2 Kxc4
52.Kc2 Kb4 53.Kd2 Kxa4 54.e5 fxe5
55.Ke3 Kb4 56.h4 gxh4 57.g5 h3
58.Kf2 e4 59.g6 h2 (549.912.814) 987

18 9:16 +2.47 46...Nxd3 47.Kxd3 Ke5 48.Ke3 c4
49.bxc4 b3 50.Kd3 b2 51.Kc2 Kd4 (549.912.814) 987

18 9:16 +2.25 46...Kc7 47.Ke2 Kb6 48.Kd2 c4
49.Bxc4 Nxc4+ 50.bxc4 Kc5 51.Kd3 b3 (549.912.814) 987

18 9:16 +2.11 46...Kd7 47.Bb5+ Kc7 48.Be2 Kb6
49.Bd1 Kc6 50.Bc2 c4 51.Kd4 c3 (549.912.814) 987

18 9:16 +1.64 46...Kc6 47.Ke2 Ng6 48.Kd2 Kd6
49.Ke3 Ne5 50.Kd2 c4 51.Bxc4 Nxc4+ (549.912.814) 987
________________________________________________________________

19 115:17 +3.27 46...Nxd3 47.Kxd3 Ke5 48.Ke3 c4
49.bxc4 b3 50.Kd3 b2 51.Kc2 Kd4 (5.412.396.040) 782

19 115:17 +2.94 46...c4 47.Bxc4 Nxc4+ 48.bxc4 Kc5
49.Kd3 b3 50.Kc3 b2 51.Kxb2 Kxc4
52.Kc2 Kb4 53.Kd3 Kxa4 54.Kc4 Ka3
55.h4 gxh4 56.g5 fxg5 57.e5 h3 58.e6 h2
59.e7 h1Q (5.412.396.040) 782

19 115:17 +2.43 46...Kc7 47.Bb1 c4 48.bxc4 Kd6
49.Kd4 Nc6+ 50.Ke3 Kc5 51.Ba2 Ne5
52.Bb3 Nxc4+ 53.Kd3 Ne5+ 54.Ke3 Ng6
55.e5 fxe5 56.Ke4 Kd6 57.Kf5 Nf4
58.Kxg5 Ne6+ 59.Kh4 Nc5 (5.412.396.040) 782

19 115:17 +2.39 46...Kc6 47.Bc2 Kd7 48.Bb1 c4 49.Bc2 Kd6
50.bxc4 Kc5 51.Bb3 Nxc4+ (5.412.396.040) 782

19 115:17 +2.31 46...Kd7 47.Bb5+ Kc7 48.Bd3 Kb6
49.Bc2 Kc6 50.Bd1 Kd6 51.Bc2 c4 (5.412.396.040) 782
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
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: Pathetic lack of execution (can your engine find c4?)

Post by michiguel »

fern wrote:Mighuel:
¿Qué tal si escribes una subrutina que le entregue el mando a un engine de finales una vez alcanzadas ciertas condiciones?
La ventaja de eso es que no tienes que contaminar el engine que ya tienes con heuristicas que pueden afectar su buen juego en otras fases.
Un abrazo
Fern
Si, yo creo que es una buena idea. De hecho el final de peones es como si fuese un juego distinto. Un motor dedicado al final de peones podria ser inclusive mas rapido al tener que tener en cuenta un conjuto de reglas "mas simples".

Miguel
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: Pathetic lack of execution (can your engine find c4?)

Post by michiguel »

Robert Flesher wrote:The problem with this test position is that ....nxd3 seems to transpose into the same variations. So either should be considered.
Correct. If we want to make it a position for automatic test, then moving the B to e2 should do it.

[d]8/8/3k1p2/p1p1n1p1/Pp2P1P1/1P2K2P/4B3/8 b - - 0 1 bm c4

Miguel