Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Gerbil implementation request to Bruce Moreland

Author: Andrew Williams

Date: 08:02:38 08/09/01

Go up one level in this thread


On August 09, 2001 at 10:48:18, Dieter Buerssner wrote:

>On August 09, 2001 at 10:05:42, Andrew Williams wrote:
>
>>Here's my implementation of this in PostModernist:
>>
>>if(ply < (DEPTH-3)) {
>>    int m;
>>
>>    for(m=plystart[ply]; m < plystart[ply+1]; m++) {
>>        make_move(tree[m].mv);
>>        if(in_check(OTHERSIDE(whoseTurn))) {
>>            unmake_move();
>>            continue;
>>        }
>>        // Probe the TT. If found, react appropriately!
>>        ttr = tt_probe();
>>        if(ttr != NULL) {
>>            if(beta <= -ttr->beta && ttr->betaDraft >= (draft-1)) {
>>                unmake_move();
>>                return -ttr->beta;
>>            }
>>        }
>>        unmake_move();
>>    }
>>}
>
>Perhaps, I don't understand this correctly. Don't you ignore all possible search
>extensions, that might be triggered by the move here.
>
>Or is the "if(in_check(OTHERSIDE(whoseTurn)))" taking care of the check
>extension. (I am not totally sure, whose turn it is ...) It could also mean,
>that this is just the legality check. Or do you generate only legal moves?
>
>Regards,
>Dieter

Hi,

I'm not completely sure I understand what you're asking.
The if(in_check(OTHERSIDE(whoseTurn))) test is checking
for an illegal position (ie if the move leaves the side
moving in check).

Assuming the move isn't illegal, I make the move and check
the hash table for the resulting position (yes, I know it
would be better to just update the hash key, but I haven't
got round to that yet). Then I do the same check for drafts
that I do at the top of my alphabeta() function, except that
I reduce the draft I'm testing against by 1. I'm not sure if
this answers the question?

Andrew




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.