Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Qsearch and checking moves?

Author: Robert Hyatt

Date: 06:37:09 03/25/01

Go up one level in this thread


On March 25, 2001 at 03:51:02, Pham Minh Tri wrote:

>Hi,
>I am wondering why we do not search checking moves (moves check opponent king
>but do not capture) in qsearch function. I think they are not ?quiescence? and
>should be searched as capture moves. Does anyone try them?
>Thank very much for any explanation.
>Pham


I have two answers:

1.  I did q-search checks in Cray Blitz. I also did them in early versions
of crafty as you can see in the comments in main.c...

2.  I removed them a _long_ while back in Crafty.

Here is my analysis:  If you do q-search checks, you will find some tactical
lines significantly quicker, obviously.  But since you are searching much
deeper along lines with lots of checks, overall you have to search less deeply
along non-checking lines, since you can only search a fixed number of nodes in
a fixed unit of time.

You have to make the following choice:  either (a) find tactical shots that
depends on checks quicker, but give up some positional skills as positional
moves will be searched less deeply;  (b) find tactical shots slower, but then
search deeper in positional cases and find positional threats your opponent
won't be able to see because the checks prevent him from getting deep enough
to see it.

I like the non-check approach because (1) I can search deeper overall, and in
non-tactical positions this pays off well;  (2) the q-search code is much
simpler, which makes it even faster since so much of the total time is spent
there;

Of course, everyone should try it themselves to make sure they get the same
results I get.  I do know of several programs that use this approach with
great success.  Note that I don't particularly think much of the idea of
searching checks very deeply but overlooking all of the _other_ kinds of
tactical moves you might include in the q-search.  Pins.  Attacking overloaded
pieces.  etc...

By keeping the q-search simple, the normal search handles more of the nodes,
and since that part of the search includes _everything_ you might be tactically
stronger by not overlooking something.



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.