Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: It's working now and BOOM!!

Author: James Swafford

Date: 14:55:19 11/20/01

Go up one level in this thread


On November 20, 2001 at 16:55:13, Michel Langeveld wrote:

>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
>
>Ok,
>
>Fixed the qsearch with a no move situation
>Debugged it and tested it. It works very well at the moment.
>
>I also implemented a better move ordening.
>My search sometimes BOOMS already at ply 1 in tactical positions.
>How can I fix this? Can I stop qsearch at an centain depth?
>

You better! :)
Just pass "depth" in your recursive call to QSearch.  When
it reaches some predefined floor (say, -10), force an evaluation.
Don't do any more recursive calls.

--
James


>history:
>(d2-d4  e7-e6  c1-e3  f8-d6  d4-d5  e8-f8  e3xa7  d6xh2  a7xb8  h2xg1  h1xh7
> a8xa2  b8xc7  g1xf2  e1xf2  d8xc7  d5xe6  a2xb2  e6xf7  h8xh7  f7xg8B b2xb1
> d1xb1  f8xg8  b1xb7  c7xc2  b7xd7  c2xe2  f1xe2  c8xd7  )



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.