Author: Stuart Cracraft
Date: 08:55:58 09/05/04
Go up one level in this thread
On September 03, 2004 at 10:47:38, Tord Romstad wrote:
>On September 03, 2004 at 10:14:53, Stuart Cracraft wrote:
>
>>On September 03, 2004 at 09:47:26, Jan K. wrote:
>>
>>>You should look for bugs in your search....i find the move even with no
>>>extensions but the threat extension set to 1/2 ply and no checks in qsearch.
>>>Takes 60 seconds and almost the same number of nodes like your full search.
>>
>>Tord said something about having the null move search a window
>>wider than -beta+1,beta and and then testing the return value
>>against alpha-MARGIN. If less than that, a faillow and then
>>extending.
>
>This was in the context of BM extensions, not mate threat extensions. For
>mate threat extensions, there is no reason to use a wide window for the
>null move search. The only thing you need to remember is that if you
>use a fail-hard search, you must remember to return exact scores instead
>of bounds if the exact score is a mate.
I changed my program to do this for all values, not only mates. It was
doing that for mates before. I changed each return of a bound to a value
return and tested after each and nothing changed except the speed of the
search and tree-size. The suite result was the same. Interesting.
>
>>Has anyone else with PVS search implemented mate. Can you just
>>include your code fragment in reply to this. I have programmer's
>>block.
>
>Sure. Here is the null move part of the code in my new engine (which
>uses PVS), with some irrelevant noise removed in order to make it easier
>to read. The BM extension is not yet implemented.
>
> if(nullmove && Ply>0 && !ss->check && !mate_threat && ss->eval >= beta &&
> ss->material[WHITE]>0 && ss->material[BLACK]>0) {
>
> make_nullmove();
> nullvalue = -search(-beta, -beta+1, depth-4*PLY, 0, 0);
> unmake_nullmove();
>
> if(nullvalue >= beta) return nullvalue;
> if(nullvalue <= -MATE_VALUE+Ply+2) mate_threat = 1;
> }
>
>Tord
Do you increment ply within search? For me, ply is a parameter to search
and I have experimented both with and without incrementing it with
if nullvalue == -MATE+ply+2, but no substantive improvement for the result
on test suite. Just parity. Same score.
Note, when I change from == to <=, my search blows up and crashes on the
first position.
Stuart
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.