Author: Tony Werten
Date: 02:09:30 01/29/04
Go up one level in this thread
On January 28, 2004 at 22:50:05, Robert Hyatt wrote: > >Both are right. > >Technically, what happens is that it is possible for you to do a very deep >search at the root, say when pondering, and you store a hash table entry for >position "P" that says score >= .60, depth=15. Now after that long ponder, your >opponent plays a different move. Each time you hit position P, you can use that >>= .60 score because of the extreme draft stored in the table. And if your >current beta value is (say) .3, then you will fail high since the table entry >says >= .6. But when you relax beta, and re-search, now when you hit table >entry P, you get sufficient draft, but the flag says "LOWER" which means that >the .6 value stored is the LOWER bound. That is useless here since our UPPER >bound (beta) is +infinity. You can't use it. And you are not searching deep >enough to see the reason for the fail high, so now you fail low. > >That won't cause a problem if you implement it correctly, and the fail high _is_ >the correct result for the best move. But you have to take care that the >fail-low doesn't cause a re-search when you fail high again. And you have to be >sure that you realize that after the fail-high, _that_ is the move you want to >play even if it fails low on the re-search. Really ? I think I disagree. When this happens at the root you don't accept the failhigh score, so why would you inside the tree ? Tony > >Bruce's case is a pathological problem that will happen. But it is caused by an >extreme happening. In a normal search this won't/can't happen (assuming you are >not using null-move). But in reality it can. However, 99.9% of the time, >re-searching with beta,+infinity after a fail high on alpha,beta will produce a >score as expected...
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.