Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: a question to Tord about detecting threats in null move

Author: Anthony Cozzie

Date: 12:15:55 10/03/03

Go up one level in this thread


On October 03, 2003 at 14:43:24, Uri Blass wrote:

>On October 03, 2003 at 13:27:20, Anthony Cozzie wrote:
>
>>On October 03, 2003 at 12:47:23, Uri Blass wrote:
>>
>>>On October 03, 2003 at 12:13:13, Anthony Cozzie wrote:
>>>
>>>>On October 03, 2003 at 12:03:49, Uri Blass wrote:
>>>>
>>>>>
>>>>>I can detect every big threat by adding a special search after making null move.
>>>>>
>>>>>For example if I like to detect threats of at least 2.2 pawns I can do
>>>>>val=-alphabeta(depth-4,-beta+219,-beta+220,...)
>>>>>
>>>>>if (val<=beta-220)
>>>>>threatmove[ply-1]=1;
>>>>>//ply-1 because I still did not undo the null move.
>>>>
>>>>small error here: beta should be replaced by eval, or you will have massive
>>>>instability problems.
>>>
>>>If I am a queen down in the search and I threat to win a bishop then I do not
>>>consider it as a threat  because a threat is a threat relative to beta.
>>>
>>>I believe that Tord does the same(he replied that your example of threating the
>>>queen twice by sacrificing material is solved by extending only big threats so
>>>if you sacrifice a rook and a bishop the threat on the queen is not a big
>>>threat).
>>>
>>>I think that the idea that an extension should not be dependent on beta is a bad
>>>idea.
>>>It is better to have stronger engine with stability problems and not
>>>weaker engine without them.
>>>
>>>I prefer even not to care about using hash tables for pruning because my
>>>experience told me that I cannot get significant gain there easily(I have a lot
>>>of stuff that means that pruning or extension is not defined only by the
>>>position).
>>>
>>>Uri
>>
>>in your code:
>>
>>Suppose the BM extension succeeds, and the node fails low.  In other words, the
>>program was using delaying moves to push a threat beyond the horizon, the BM
>>extension stopped it, and it realized it was in trouble (a reasonable scenario).
>>
>>Then beta will be (say) 200 less than it was previously, and the threat might
>>not be 200 less than beta any more, and your new re-search w/out the extension
>>will fail high.  etc.
>>
>>Being a queen down in the search (may) have very little to do with beta: example
>>WAC#141, where beta is a mate score even though white is down a rook and a
>>queen, and beta for black is -mate score even though black is up a rook and a
>>queen.
>>
>>anthony
>
>I can agree with you that using beta may be a mistake because of the fact that
>beta is changed after fail high but using the static evaluation is also
>a bad idea.
>
>In the case of Wac141 I want to use instead of beta the last calculated score of
>the position that is almost equality that has nothing to do with the fact that I
>lost a queen and a rook.
>
>If I replace beta by eval I do not get it because I understand eval as the
>evaluation of the position that I have(I evaluate every node)
>
>Uri

What I am saying is very simple: what is a threat?
Answer: a threat is the possibility, if the side to move passes, for the other
side to significantly improve their position.

In other words, do a null search with eval-200, and fails low, it means that if
white passes black can get a position at least 2 pawns better than the current
position.

anthony



This page took 0.01 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.