Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Your programs quiescence search behaviour?

Author: Antonio Dieguez

Date: 22:59:25 01/16/03

Go up one level in this thread


On January 16, 2003 at 23:39:27, Thomas McBurney wrote:

>I'm writting my first chess program (as a hobby) and I'm interested in other
>peoples opinions on how the quiescence search should work.  I'm just trying to
>keep it simple at this stage just so I get it working properly, but I may adopt
>more complex ideas later on.
>
>[D]rnb1kb1r/pppp1ppp/4p3/4P1q1/3Pn3/3B4/PPP1QPPP/RNB1K1NR w
>
>Here is an example of a position being sent to the qsearch for processing (after
>Qh4-g5).
>
>My program (at the moment) is doing the following with the above example I have
>provided...
>
>1. Bxg5, NxG5 - Score= -8.99
>
>* At this point do you think my program should say "well, that was decisive, I
>should return this score and search no further"?  Or is it important to search
>other combinations in case it reveals other more important tactics?

mmmh the alphabeta window would take care of a failhigh for white.
You can certainly disregard the rest of the captures, eval+expected_gain<=alpha,
that's futility.

>2. Bxe4, Qxc1+, Q-d1, Qxd1, Kxd1  score= 0.14
>3. Bxe4, Qxc1+, Q-d1, Qxb2  score= 0.94
>4. Qxe4, Qxc1+, K-e2, Qxb2  score= 1.19
>
>After considering all the above combinations my qsearch returns the score of
>-8.99, which looks correct to me.

My program would do the same qsearch with minimax.

>The rules I'm using at the moment are as follows:
>1. capture any peice of higher value in order of highest to lowest value.
>2. capture any piece of equal value
>3. capture lower valued pieces only if they are not protected
>4. if only 1 possible move can be made, regardless of capture or no capture,
>then make that move.
>
>Do you think what I am doing is reasonably sound?

Yea why not...

> One problem I have come
>accross is if for example after Nxf2, the qsearch will not consider Qxf2 because
>it is a lower valued piece and it is protected (by the Queen on h4).

Oh I see.
Well you don't want to do a SEE for simplicity, but seeing if there are other
capture to f2 is not complex, also see if the queen is suported by a sliding
piece in the right direction.
Then you can asume you win the min between the piece_captured and
(piece_captured+lowest_piece_defending-capturing_piece), or, more simple, dont
look at the lowest_piece_defending and asume you can win the piece captured. Not
the cleverest thing but better than how you have it now I bet.



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.