Beginner question about null-move

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Jouni
Posts: 3293
Joined: Wed Mar 08, 2006 8:15 pm

Beginner question about null-move

Post by Jouni »

This position is obviously difficult because of null-move heurictics

[D]1q1r3k/3P1pp1/ppBR1n1p/4Q2P/P4P2/8/5PK1/8 w - - 0 1

But is it so that most top engines will NEVER solve this even in 1 week analysis? So it's better to switch null-move off on long analysis?

Jouni
Michel
Posts: 2272
Joined: Mon Sep 29, 2008 1:50 am

Re: Beginner question about null-move

Post by Michel »

Are you sure it has anything to do with nullmove? To me it seems more
like a wide tree competing with a deep line. The wide tree takes all the resources.

Another issue is that in the deep line the black king is trapped so it
cannot help the rook. However it is difficult to see this statically.
ZirconiumX
Posts: 1334
Joined: Sun Jul 17, 2011 11:14 am

Re: Beginner question about null-move

Post by ZirconiumX »

Solve it for which side?

I can see that it wouldn't be hard for Black to give White a run for his money; ...Ng4 forces the queen to move, et cetera.

Matthew:out
Some believe in the almighty dollar.

I believe in the almighty printf statement.
Jouni
Posts: 3293
Joined: Wed Mar 08, 2006 8:15 pm

Re: Beginner question about null-move

Post by Jouni »

Addition: best move is Rxf6! and Komodo + Fritz solve this with null move off.

Jouni
ZirconiumX
Posts: 1334
Joined: Sun Jul 17, 2011 11:14 am

Re: Beginner question about null-move

Post by ZirconiumX »

Using my collection of fruits, henceforth fruit bowl:

Fruit 2.1: Qd4, delays Rxf6 until move 2.
Fruit 05/11/03: Qd4, moves aforementioned rook to b6 on move 5.
Toga II 1.1a: Qd4, captures a6-pawn on move 7.
Toga II 3.2.1SE: As per fruit 2.1.

So - none of the fruit family that I could get could solve it.


Matthew:out
Some believe in the almighty dollar.

I believe in the almighty printf statement.
User avatar
pocopito
Posts: 238
Joined: Tue Jul 12, 2011 1:31 pm

Re: Beginner question about null-move

Post by pocopito »

You can add Zappa to the same list (it only can solve the problem with nule move disabled).
Uri Blass
Posts: 10311
Joined: Thu Mar 09, 2006 12:37 am
Location: Tel-Aviv Israel

Re: Beginner question about null-move

Post by Uri Blass »

Maybe I miss something but I see no reason that programs cannot solve it without null move with enough time.

The main line should be
1.Rxf6 Qxe5 2.fxe5 gxf6 3.exf6 and if white get many moves it can capture the rook at d8
Null move pruning may do them slower but I see no reason that it prevents them to solve the problem after enough time and I wonder if somebody tried to give top programs many hours to see if they still fail to solve the problem.
JVMerlino
Posts: 1357
Joined: Wed Mar 08, 2006 10:15 pm
Location: San Francisco, California

Re: Beginner question about null-move

Post by JVMerlino »

Uri Blass wrote:Maybe I miss something but I see no reason that programs cannot solve it without null move with enough time.

The main line should be
1.Rxf6 Qxe5 2.fxe5 gxf6 3.exf6 and if white get many moves it can capture the rook at d8
Null move pruning may do them slower but I see no reason that it prevents them to solve the problem after enough time and I wonder if somebody tried to give top programs many hours to see if they still fail to solve the problem.
Maybe it's just luck, but my completely mediocre engine finds Rxf6 instantly with null move on, and finds the correct line in about 1.5 seconds (although it does switch to an alternate line at depth 13 for some reason).

Code: Select all

 1   135      1        56 d6d1
 1   140      1        81 g2g1
 2   100      1        91 g2g1? f6h5
 2   125      1       143 d6f6 b8e5 f4e5 g7f6 e5f6
 2   136      1       286 d6d3 b8a7
 3   117      1       568 d6d3 b8a7 e5e7
 3   157      1       699 d6f6 b8e5 f6h6 h8g8 f4e5 g7h6
 4   157      1      1136 d6f6 b8e5 f6h6 h8g8 f4e5 g7h6
 5   153      1      2216 d6f6 b8e5 f6h6 g7h6 f4e5 h8h7
 6   172      3      4183 d6f6 b8e5 f6h6 g7h6 f4e5 d8g8 g2f3 h8h7
 7   199      3      8699 d6f6 b8e5 f6h6 g7h6 f4e5 h8h7 g2f3 h7g7
 8   211      4     16302 d6f6 b8e5 f6h6 g7h6 f4e5 h8h7 g2f3 d8g8
 9   208      6     28251 d6f6 b8e5 f6h6 g7h6 f4e5 h8h7 g2f3 h7g7 f3f4 d8g8
10   191     15    100204 d6f6 b8e5 f6h6 h8g8 f4e5 g7h6 g2f3 g8f8 f3f4 f8e7 f4f5

11   151     39    282300 d6f6? b8e5
11   160    145   1101217 d6f6 b8e5 f4e5 g7f6 e5f6 h8g8 g2f3 g8h7 c6e4 h7h8 e4f5
 d8g8
12   176    165   1277795 d6f6 b8e5 f4e5 g7f6 e5f6 h8g8 g2f3 g8h7 f3f4 h7h8 f4e5
 d8g8
13   180    898   7428089 d6f6 g7f6 e5f6 h8g8 f6h6 b8c7 g2g3 d8d7 c6d7 c7d7 h6b6
 d7a4 b6d8 g8h7 g3f3
14   185   6672  54412348 d6f6 b8e5 f4e5 g7f6 e5f6 d8g8 g2f3 h8h7 f3e4 g8d8 e4f4
jm
MikeGL
Posts: 1010
Joined: Thu Sep 01, 2011 2:49 pm

Re: Beginner question about null-move

Post by MikeGL »

John I checked the line of your engine, it seems that the line remains the
same from Depth 11 upto depth 14. It sticks with d6f6 I think.

I think ff engines will reach deeper depths and see that it will have 2 pawns + N
versus his R@d6, then I guess the engine will consider Rxf6 as the best
move.

But engines will also consider Rxf6 in less than 4 seconds if value of N is
changed to 3.75 and pawn to 1.30. But I guess this changes is not
necessary if engines gives a plus in eval() for king mobility/activity in
simplified positions with hanging pawns.
Waschbaer
Posts: 68
Joined: Mon Dec 12, 2011 11:27 pm

Re: Beginner question about null-move

Post by Waschbaer »

Really strange.

after Rxf6 Houdine needs 1 to 2 seconds! to get an eval of 7!

So why it is so hard to find that variation from one ply further?

1...Dxe5 2.fxe5
+- (5.58 --) Tiefe: 20/53 00:00:01 11283kN
1...Dxe5 2.fxe5
+- (6.02 --) Tiefe: 20/57 00:00:01 18477kN
1...Dxe5 2.fxe5
+- (7.20 --) Tiefe: 20/58 00:00:02 29930kN