Author: Robert Hyatt
Date: 18:33:01 04/20/04
Go up one level in this thread
On April 20, 2004 at 20:25:56, Sune Fischer wrote: >On April 20, 2004 at 15:57:20, Pallav Nawani wrote: > >> >>>So, Dr. Hyatt, what you're calling a LOWER flag is (I think) what I'm calling >>>HashFlagBeta, and what you're calling UPPER, I call HashFlagAlpha, becuase those >>>were the bounds that were exceeded. Personally, I hate this terminology...I wish >>>we'd use more friendly terminology like AtLeastThisScore or LessThanThisScore. I >>>think when I rewrite Trueno I'm going to do that, now that I understand >>>alphabeta a little better. But that's neither here nor there...how does this >>>look? Andrew >> >>This confused me a *lot* when I was programming my engine :-) I read beowulf's >>code and I saw UPPER/LOWER. I read Bruce Moerland's page and I saw >>HashBeta/HashAlpha. Only after much distress was I able to sort it out. >> >>But I could not figure out how hash entries could be use to avoid NULL move. >>How do I do that? > >If you have reason to believe a null move will fail-low, for instance > >if (flag==UPPER && score<beta) > do_null = "not recommended"; > >I use depth>=current depth. >If I read the code correctly then Crafty uses depth>=current depth - R >It seems theoreticly wrong, at least the way I do probes and stores. > Why? You want to know whether the null search will likely fail high or low. It is going to be done to depth-R so why can't you use that in the test??? I don't see anything "theoretically wrong" with that... I am going to do a search to depth-R, and if this hash entry suggests that such a search of a _real_ move will fail low, then not playing a move will be even worse... No point in even trying the null-move. This was all explained in the Campbell null-move search paper years ago. Everyone I know does it this way. Bruce, etc... >-S. >>Pallav
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.