Author: Richard Pijl
Date: 14:07: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? > >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 I made some fast changes to my program and here is one position: [D] 1rnq1rk1/pRp3p1/3pN1B1/7Q/3P4/b1P5/P1P2PPP/4R1K1 w - - 0 1 Lazy evaluation values this position with 3.44 This is a completely won position of course, but in lazy eval you see only little more than material. The score is composed of: - Material 3.00 - Pawn structure 0.06 (from pawn hash) - King pawn shield 0.38 I do have some more things in lazy eval, but that doesn't yield a score here In eval the following is added: - dynamic pawn characteristics 0.09 - White knight eval 1.12, due to the knight fork among others - Black knight eval 0.09, due to bad position - White bishop eval 0.28 - Black bishop eval 0.15, due to bad position and bad mobility - white rooks eval 1.00, on 7th row and on openfiles, good mobility - black rooks eval -0.42, also (half) open files, but lesser mobility - white queen eval 0.11 - black queen eval 0.03 - king mobility 0.10 (only considers squares, not piece proximity) - Space count 0.10 - Undefended pieces -0.02 - Undefended attacked pieces 0 (rooks on b7 and b8, side to move is not used here, but because I removed fut pruning I will reinsert it soon. That would make positional score even worse for black) - Control over queenside 0.03 - Control over kingside 0.19 - King safety (includes piece proximity) 1.23 If I included everything, this should add up to 7.47 Richard.
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.