Used that way, it actually sounds very similar to how Usurpator II worked. After the null move I had some static threat detection. But when the threat would make you fail low, it did not search all moves, but only those that could conceivably solve the threat, like withdrawal, interposing, protecting. In Usurpator V I tried replacing the static threat detection by a true search, and also allowed a wider range of moves to defend against it, but I never got that to work without running into a search explosion sooner or later.Also note that the function evaluate could itself be a search. Thus to obtain a second-order null-move quiescence search, QUIESCE1 would be defined with evaluate = material balance, QUIESCE2 would be defined with evaluate = QUIESCE1.
Without the null move observation
Moderator: Ras
-
hgm
- Posts: 28443
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller