Author: Fabien Letouzey
Date: 06:21:41 07/02/04
Go up one level in this thread
> Hi all, > This is my first post to this forum [I have been reading it for some time] > Some questions in arbitrary order: > 1. should PVS kick in after 1st move, or after PV found as Bruce suggests on his > page? [I *think* tree is smaller Bruce's way] It is the first time I have a look at Bruce's example. In classical PVS/NegaScout, use the scout search after the first move. The assumption is that the first move is likely to be the best one. This applies even if the score is below alpha. Bruce makes a slightly different assumption that depends on the window. IMO it is an uncommon implementation but it might be better depending on aspiration windows. I suggest you start with the classical way. > 2. if using fail soft, which is right: pvs(-best-1, best) or pvs(-alpha-1, > alpha) ? Note that you forgot the minus signs for both second arguments, the windows should be "minimal" (beta = alpha+1). Anyway, only testing against alpha is correct. Otherwise, you might end up using an even larger window than plain alpha-beta during the re-search. > 3. depending on 2., how do you test for failure, and what bounds to use for > research? best or alpha After a minimal-window search like "v = search(x,x+1);", a fail low is characterised by "v <= x" and a fail high by "v > x". Just be consistent between the search call and the subsequent test. Usually after a standard NegaMax "v = -search(-alpha-1,-alpha);", one tests for a fail high with "v > alpha" (the two minus signs cancel out). > 4. Fruit uses 'mate distance prunning' - I read in the archive [now down], > where some suggest using shallower mate score hash entries, and others suggest > boosting the 'draft' of mate scores [which is similar, I suppose] > Are these all different versions of the same thing? - any help? The last two sound like the same. A trap to avoid: an "exact" score of "mate in 4" at depth 5 might become "mate in 3" at depth 7. So when you "boost" the draft, make the score a bound. The "mate-distance pruning" I use is common, but I don't know a standard name for it. It is a completely different idea, that is actually independent of the transposition table. If at a given node you already have a "mate in 3" (= 5 plies) then only a "mate in 2" (= 3 plies) or shorter could improve the current value. Therefore there is no need to look more than 3 plies ahead in any subtree. You might need to adjust depending on how you detect mates. Also most engines count mate distances "to the root", so implementation requires care. > Thanks for *ALL* your help: past, present, and future; Just help back when your turn comes. > David Fabien.
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.