PVS, window, and mate

Discussion of chess software programming and technical issues.

Moderators: Harvey Williamson, bob, hgm

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
User avatar
Posts: 24935
Joined: Fri Mar 10, 2006 9:06 am
Location: Amsterdam
Full name: H G Muller

Re: PVS, window, and mate

Post by hgm » Sat Aug 24, 2019 9:05 am

IMO hard pruning should always be based on a score estimate for the move, and the firm belief that this estimate is so poor that there is no chance that a search of it will produce a score better than alpha. (Where alpha often is the score of a move in the same node that already has been searched.) E.g. bad captures can be pruned on the suspicion that after the exchange the incurred loss will only add to the value of other moves (or to the current evaluation), so that they cannot possibly be best.

If alpha is a mated-in-N score, any score estimate should be better, unless you would be able to predict the move would lead to a faster mate. But the latter is usually not possible. (An exception to this I use in CrazyWa, where I prune 'futile interpositions', i.e. dropping of pieces on an unprotected square to resolve a distant check, as you know the slider will simply capture these to renew the check and recreate the same situation, this time with an extra piece in hand. Even that has the disadvantage that is can underestimate the DTM, but trying to postpone mate as long as possible is a losing strategy anyway. And in Tsume problems it is actually common practice to not count futile interpositions.)

If alpha is a mate-in-N score, there isn't any reason to refrain from pruning moves that do not somehow predictably leed to a faster mate. Worst thing that can happen is that it doesn't always find the fastest mate. But if the pruning is reproducible, it would always be able to find the same mate a full move later, even when the hash table would be cleared, so in the end it will always deliver the checkmate within the promised number of moves.
Get rid of the shit: vote for SHID!

Post Reply