Author: Matthew McKnight
Date: 05:32:18 11/26/03
Go up one level in this thread
On November 26, 2003 at 04:24:31, Matthias Gemuh wrote:
>On November 26, 2003 at 00:53:50, Matthew McKnight wrote:
>
>>Hi Bob,
>>
>>iterate.c
>>
>>In the iterative deepening algorithm, where you adjust your alpha and beta
>>values for researching, i notice this fragment:
>>
>>
>> else if (value <= root_alpha) {
>> -----> if (!(root_moves[0].status&2)) {
>> root_moves[0].status&=255-128;
>> root_moves[0].nodes=0;
>> root_moves[0].status|=1;
>> -----> if (root_moves[0].status&2) root_beta=MATE+1;
>>
>> ..... //code omitted
>> }
>> else break;
>> }
>>
>>I drew arrows to the lines in question. Correct me if I'm wrong, but isn't this
>>a contradiction? How will root_beta=MATE+1 ever be executed? I'm looking for
>>ideas on adjusting alpha/beta at the root, as my current scheme seems poor. Is
>>there something here I don't understand?
>>
>>Matt
>
>
>
>Hi Matt,
>the line "root_moves[0].status&=255-128;" seems to make things possible,
>though I have not tried to understand this complex stuff.
>/Matt.
255-128 = 127 (or 0x7F - all 1's), and-ing 127 to a number that we know has 0 in
the second bit, isn't going to change that bit. Nor, is or-ing in a 1. Maybe I
just can't see it? Time to retire from chess programming?
Matt
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.