Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: QSearch and captures

Author: Robert Hyatt

Date: 06:38:01 11/20/01

Go up one level in this thread


On November 20, 2001 at 05:04:42, Michel Langeveld wrote:

>Hello all,
>
>I implemented qsearch in my program nullmover, but got a problem for it back.
>
>When I search with a depth 1 (just testing at the moment) my program thinks that
>after the openingmove 1. d4, ... h6! is the best move.
>
>After h6 the qsearch starts.
>
>[D]rnbqkbnr/ppppppp1/7p/8/3P4/8/PPP1PPPP/RNBQKBNR w KQkq - 0 2
>
>The qsearch evaluates _only_ captures now. The program thinks white HAS to take
>on h6 then (is only capture in that position) and black can win a bishop after
>gxh6 or Rxh6. So score is about +2 for black then. This is incorrect of
>course....
>
>I'm thinking about ways to solve this. One way is to implement a null move so
>that beside capturing there's always a doing nothing option. But I was curious
>how you guys solve this thing.
>
>Regards,
>
>Michel Langeveld


You have not included the "stand pat" option?  If not, that is a wrong way
to implement q-search.

When you come into Quiesce(), set alpha=Evaluate() and then drop into your
search.  now you have the option of accepting a capture, or rejecting them all
and not playing a capture at all.

That h6 stuff will disappear...



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.