Author: Miguel A. Ballicora
Date: 15:28:38 03/02/01
Go up one level in this thread
On March 02, 2001 at 16:58:22, Severi Salminen wrote: >I really would like to know it...pretty please. > >Severi This is what I understand: you search in both cases one move and get a value (v) using alpha and beta. After you did this, you search the rest of the moves with a window (v, v+1) because you think that the rest of the moves are going to be worst than the first, hence all of them will return something (x) less than (v). If the rest of the moves are worst than the first, which is the optimal case, there is no difference between PVS and Negascout. The problem arises when one of the moves is better than the first so it returned something higher than v (so x>v). So you have to examine this: Pseudocode PVS: if x>=beta cutoff_right_now; if x>v x = re-search (-beta, -alpha); NegaScout: if x>=beta cutoff_right_now; if x>v { x = re-search (-beta, -v); /* narrower window than PVS! */ if alpha < x && x < v { /* it did not work, so do it like PVS */ re-search (-beta, -alpha); } } I hope I explained this right. I did it from memory, there is a website that there is code for it. I think that there is a link in the site where MDF is explained... If you don't find it I will try to find it for you, let me know. Regards, Miguel
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.