Null move, razoring and mate threats

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

User avatar
emadsen
Posts: 434
Joined: Thu Apr 26, 2012 1:51 am
Location: Oak Park, IL, USA
Full name: Erik Madsen

Re: Null move, razoring and mate threats

Post by emadsen »

I think the depth 8 was referring to the earlier position (r3r1k1/1b1n1p1p/1qpp1npQ/p3pNN1/P2PP3/1Pp1R2P/2B2PP1/R5K1 b - - 0 23)
MadChess finds the mate in 3 at depth 6. Though it does take a while to resolve the aspiration window.
My C# chess engine: https://www.madchess.net
User avatar
lucasart
Posts: 3232
Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart

Re: Null move, razoring and mate threats

Post by lucasart »

jdart wrote: The interesting thing here is, Arasan was quite slow to realize that it was getting mated. For example, consider the position after 23. Nf5:

[D] r3r1k1/1b1n1p1p/1qpp1npQ/p3pNN1/P2PP3/1Pp1R2P/2B2PP1/R5K1 b - - 0 23
Actually this position is completely trivial to solve! I assumed it was hard, as Arasan had problems with it.

DiscoCheck solves it at depth 4 in 4k nodes:

Code: Select all

info score mate -3 depth 4 nodes 4032 time 6 pv g6f5 e3g3 c6c5 g5e6 f6g4 h6g7
There must be something wrong if Arasan can't solve this instantly. Perhaps it's the discovered check distinction that it is lacking. Whenever you do any kind of SEE based pruning or reduction, consider the SEE meaningless when the move is discovered check.

This is fairly obvious, and I'm sure I didn't invent anything here, but I've been doing it for a long time in DiscoCheck, and it works well for me. That being said, I tried it in Stockfish, and it didn't help... :?
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
jdart
Posts: 4367
Joined: Fri Mar 10, 2006 5:23 am
Location: http://www.arasanchess.org

Re: Null move, razoring and mate threats

Post by jdart »

[D] Perhaps it's the discovered check distinction that it is lacking.

I think you are right that this is the root cause.

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

Re: Null move, razoring and mate threats

Post by jdart »

gladius wrote: SF finds the mate at depth 1 in the second position. After Ne6+, black captures the rook, then white searches see >0 checks+captures, finding the mate. Even adding checks to just the first ply of q-search should be a huge help, allowing you to reduce more aggressively in null moves.
Does the check search include discovered checks?

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

Re: Null move, razoring and mate threats

Post by jdart »

I have answered my own question here by looking at the source. Yes, Stockfish does generate discovered checks. I am experimenting with doing this myself.

--Jon