Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Maybe I understand better now ....

Author: Robert Hyatt

Date: 09:55:21 10/04/98

Go up one level in this thread


On October 04, 1998 at 07:41:23, Dan Homan wrote:

>
>On October 04, 1998 at 01:38:11, Bruce Moreland wrote:
>
>>
>>On October 03, 1998 at 12:07:46, Dan Homan wrote:
>>
>>>
>>>On October 02, 1998 at 17:38:47, Bruce Moreland wrote:
>>>
>>>>
>>>>On October 02, 1998 at 16:19:08, Dan Homan wrote:
>>>>
>>>>>On the idea of a 'dumb as a rock' qsearch.... Mine is even dummer.
>>>>>I don't use an SEE in the qsearch, but rather simply score the move
>>>>>based on the value of the attacked pieces minus the value of the
>>>>>attacking piece (if the attacked piece is defended).  This will
>>>>>avoid some captures that are sound (because sometimes we have multiple
>>>>>attacks on the square), but it is quite fast and leads to a small qsearch.
>>>>>I also toss out captures that lose material or don't bring me near
>>>>>alpha.
>>>>
>>>>Basically you'll almost always check P x something, but will almost never check
>>>>Q x something, right?
>>>
>>>Yep.... unless Q x Q or Q x something which is not defended and brings the
>>>material score near alpha.
>>
>>OK, this isn't the pure case then.  The case I just ran a test on, based upon
>>your post was something like this:
>>
>>AxB, where A>B, never try this.
>>AxB, where A=B, call it a swap for sorting purposes.
>>AxB, where A
>>The rest of my program was the same as it always.  The difference between this
>>and what I normally do is that I use a static exchange evaluator on these last
>>two cases in order to get a more accurate picture of the outcome.
>>
>>This scored worse on the ECM tactical suite that I always run.  I would report
>>the exact number here but it suddenly occured to me that the machine is busy
>>running another test, so I can't mess with it.
>>
>>bruce
>
>Ok, here is exactly what I do.....
>
>score_of_AxB =  score_of_B
>if (B is defended)  score_of_AxB -= score_of_A
>
>if score of AxB is >= 0 *and* brings me near alpha then I try the
>capture.   I should probably use some additional logic to avoid the
>'if (B is defended)' test for cases where it won't matter.
>
> - Dan


I do this a little differently.  If looking at AxB, and A is < B, then I
assume gain=B-A.  Else I use Swap() to calculate this as accurately as
possible.  The A < B simply lets me "cheat" and avoid Swap() when it is
clear I am winning some material with a capture...



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.