Author: Vincent Diepeveen
Date: 13:30:32 12/20/02
Go up one level in this thread
On December 20, 2002 at 12:02:23, Uri Blass wrote: >On December 20, 2002 at 11:26:28, Richard Pijl wrote: > >>On December 20, 2002 at 10:54:01, Vincent Diepeveen wrote: >> >>>On December 20, 2002 at 08:23:59, Russell Reagan wrote: >>> >>>No futility is 100% different from lazy evaluation. >>> >>>Futility in fact selects less moves (in qsearch) >>>based upon alfa or beta and lazy evaluation gives >>>back a quick score a lot of the times. >> >>They are still related in a sense that both 'cut-off' the work to be done by >>saying that it can't get good enough to improve alpha, so better stop working on >>it. >>> >>>If you search a ply deeper a futile pruned move should not >>>get pruned, whereas a lazy evaluated position will give problems >>>no matter what depth you search. >>> >>>In contradiction to draughts where everything is seen fullwidth, >>>in computerchess the effect of futility can be very bad too, >>>because last 3 to 4 plies (R=2 versus R=3) the qsearch is returning >>>back a score instead of a full search. >>> >>>If that misses major problems then you are in trouble. >>> >>>The argumentation of Heinz that futility is correct, is using the >>>assumption that an evaluation doesn't get a big score for positional >>>matters. The problem is that todays top programs do give big scores >>>though. >> >>Although Baron is not a top program yet I'm starting to feel this. >>To be sure that the wrong nodes aren't getting pruned I wrote a little piece of >>test code. It returned the highest difference it found between the lazyeval >>score and the full eval score (but not with passers on the board, and not in the >>endgame). I added 20% to this and that was the threshold used for both lazyeval >>and futility pruning. It turned out that with every release of the Baron this >>value increased. >>Now I'm working on 0.99.4 and the margin was getting very large, more than 5 >>pawns. > >I think that it may be interesting to see the position that you talk about > >When do you see a difference of more than 4 pawns between the static evaluation >and the lazy evaluation? define lazy evaluation in this case. Just material component or a function that quickly estimates lazy eval? Note that just a diff of > 4 pawns is not interesting, only when it would modify alfa or beta it is; if lazy eval is 2 pawns white up and actual score is 3 pawns white up and beta is 1.5, then obviously it is not interesting. A cutoff is a cutoff, isn't it? Idem for <= alfa. The interesting thing is when your quick eval with a margin is at the other side of the bound (alfa or beta) than the real eval. In diep i produced a big graph and found out that 1% was wrong. >I can imagine positions when the positional score is more than 4 pawns but I >think that in these positions there are easy ways to detect a suspect that >something is wrong also in a fast evaluation. >Uri
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.