Simple NULL move enhancement, checks in qsearch
Posted: 14 Apr 2006, 21:06
For programs using NULL pruning close to the qsearch which also include checks in qsearch, make sure you set your depth high enough to catch at least one ply of checking moves in the qsearch.
For example, if you only do checks at depth=0 in the qsearch and you are at say depth=2 now, with R=3, that wpuld make the new depth 2-3-1 = -2. Better set the depth at 0 to include those checks (that might be mates or other wins). I see a few public domain sources that do not do this, and can miss mate threats. I see no search explosion, and it does solve some mate threat purning problems.
Mark
For example, if you only do checks at depth=0 in the qsearch and you are at say depth=2 now, with R=3, that wpuld make the new depth 2-3-1 = -2. Better set the depth at 0 to include those checks (that might be mates or other wins). I see a few public domain sources that do not do this, and can miss mate threats. I see no search explosion, and it does solve some mate threat purning problems.
Mark