Joost Buijs wrote:Every good chess player sees immediately that Black is dead lost, many engines just don't find it because there is zugzwang (null-move).
If null move search is turned off, my program finds the win in a depth of 25.
There have been previous comments about identifying more zugzwang positions for null move search, especially for minor piece endgames. Currently, null move search is typically rejected for pawn endgames only. Rejecting a null move search for minor piece endgames can add other problems related to lack of depth. Is there any research going on in the area of formulating further null move search zugzwang conditions?
One idea I have experimented with is examining the absence of free pawns in a position. (A free pawn is a pawn that can advance safely). However, the positions are still too complex to combine with minor piece endgames.
How do you define "sees the win"???
I let Crafty search, at 100M nodes per second, for over an hour. It starts at +2 quickly, then at depth 44 the score starts to climb (about 30 seconds). And by the time it gets to depth 50, the score is +4 (best move has been a5 all along). But at depth 51 there is a big fail high and the score drops back to the original +1.75 and sticks there through depth 53 where I stopped it. That's certainly good for white, but not a clear and convincing win. Here is the last output I saved:
Joost Buijs wrote:Every good chess player sees immediately that Black is dead lost, many engines just don't find it because there is zugzwang (null-move).
If null move search is turned off, my program finds the win in a depth of 25.[...]
How do you define "sees the win"???
I let Crafty search, at 100M nodes per second, for over an hour. It starts at +2 quickly, then at depth 44 the score starts to climb (about 30 seconds). And by the time it gets to depth 50, the score is +4 (best move has been a5 all along). But at depth 51 there is a big fail high and the score drops back to the original +1.75 and sticks there through depth 53 where I stopped it. That's certainly good for white, but not a clear and convincing win. Here is the last output I saved:
I think he refers to Ray who reported that Komodo finds a better line (scoring "+250") after 15 minutes, see some posts above. The line was:
1...a5 2.Kd3 Kh5 3.Kc4 Ba3 4.Kb5 a4 5.Kxa4 Kg6 6.Kb5 Bc1 7.Kc4 Kf5 8.Kc5 Ba3 9.Kb5 Bc1 10.Kxb4 Ke5 11.Kc4 Ba3 12.b4 Ke4 13.g6 fxg6 14.f7 Kf5
Winning the d2 pawn is certainly not optimal for White since it activates the black bishop.
Joost Buijs wrote:my guess is that it has something to do with null-move.
Exactly! I'm running a patch now that doesn't do nullmove if stm has no more than bishop in non-pawn material.
Too early but seems to be even after 1400 games so I'm willing to accept it if it holds (of course I need more games
I also have a NullMove option in my engine so I can turn it off completely.
It's tempting to get rid of nullmove completely, but that would cost a lot of elo...
The criteria that Nightmare uses for doing null-move are very simple, a king-move and at least 1 move with another piece to a not attacked square.
In this case that doesn't work, it has to be smarter than what I'm doing. I don't like null-move either, but like you said it gives a lot of Elo.
I haven't touched my engine for almost 2 years, this tournament I played with a version from 3.5 years back which actually did very well compared to later versions.
After trying many things the engine gets messed up in such a way that it is sometimes better to resort to older versions.
The point is being missed. With null move search turned off, a depth of 25 is no great shakes. It takes a long time to get there - perhaps more time and nodes searched than with null move search turned on. The question was, are there better rules for identifying zugzwang positions for null move search, particularly for minor piece endgames? The current answer looks like no. Here without a null move search, queen promotions at a depth of 24 explode but the win of a pawn has been found:
The point is being missed. With null move search turned off, a depth of 25 is no great shakes. It takes a long time to get there - perhaps more time and nodes searched than with null move search turned on. The question was, are there better rules for identifying zugzwang positions for null move search, particularly for minor piece endgames? The current answer looks like no. Here without a null move search, queen promotions at a depth of 24 explode but the win of a pawn has been found:
My question was "what does 'see the win' mean in this context?"
a score of +1.5 or so is not exactly "a win". I can get to depth 25 without null-move pretty quickly, but it doesn't change the score for me at all.
For me, Crafty finds the pawn win at depth=29, 14 seconds using my macbook with one thread. The score climbs to +4 somewhere around depth 46, but at depth 51 it drops back to +1.75 again.
With null-move disabled, I find that at depth=28.
Using my 20 core box, NMon finds the move at depth=28 in 1.5 seconds. Nroff takes same depth, but 47 seconds.
But my key issue was "do you call this 'the win'" as I am not convinced, yet, that this is a win of anything but a pawn that might not be enough. Note my searches are using 6 piece syzygy.
The win of a pawn is not enough to "win". 1-0 ultimately determines that. The question of "winning" is relevant since the original post from Maarten Claessens wondered what ArasanX saw in the position to resign. The author of ArasanX will have to explain that.