Author: Robert Hyatt
Date: 10:06:59 08/08/99
Go up one level in this thread
On August 08, 1999 at 12:41:07, Bas Hamstra wrote: >Bob, > >I read that thread with interest. I am experimenting with the qsearch (and SEE) >too. Currently I use only check evasions in the qsearch. I don't like it when >the qsearch stumbles per accident on a mate and it doesn't see it's a mate. And >it returning a bogus Eval because Eval was > Beta. With evasions only that won't >happen. It doesn't cost an awful lot of nodes and it sees mates quicker. > I did this sort of stuff in Cray Blitz, but I controlled the 'check evasion' stuff... ie if the first q-search move was a check, then I would evade at qsearch ply-2, and if the move at qsearch ply-3 was a check, I would evade at ply-4, etc. IE so long as _every_ qsearch ply for one side was a check evasion, I evaded at N+2. But the minute the side in question was not in check, it could stand pat. And I would do no more evasions for that side below this node since they would not lead to a forced mate (the side on move can always stand pat and not play a capture if all captures lead to mate...) >And I can confirm that SEE ordering doesn't give a great reduction in treesize >but throwing out losers is a win. However I did a MVV/LVA scheme while only >throwing out "obvious" losers. That is, when A > D and after the capture A is >hanging, throw it out. That's much faster than SEE. If I'm not mistaken it did >not do much worse than SEE. Note that I don't use SEE on _all_ q-search captures... There are plenty that can be weeded out without calling SEE at all... IE I use a trick just like yours to avoid calling Swap() in cases where the capture is obviously bad... > >(tried to reply to some posts yesterday, but couldn't post) > >Regards, >Bas Hamstra.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.