Author: Vincent Diepeveen
Date: 09:32:58 12/30/02
Go up one level in this thread
On December 30, 2002 at 12:29:59, Martin Giepmans wrote: >On December 30, 2002 at 11:38:18, Vincent Diepeveen wrote: > >>On December 30, 2002 at 11:27:46, Martin Giepmans wrote: >> >>>On December 30, 2002 at 07:08:27, Ed Schröder wrote: >>> >>>>On December 30, 2002 at 05:53:16, Martin Giepmans wrote: >>>> >>>>>On December 30, 2002 at 05:30:45, Ed Schröder wrote: >>>>> >>>>>>As it seems I have completely mishandled explaining Reduction 2b and 2c, I have >>>>>>corrected things. >>>>>> >>>>>>http://members.home.nl/matador/chess840.htm >>>>>> >>>>>>Click on the blue "update" picture, it will move you directly to the changes >>>>>>made. That will be standard procedure from now on in case of errors. >>>>>> >>>>>>if (remaining_depth<=x && remaining_depth>1) then >>>>>> { if (ALPHA < SCORE + THREAT) -> do not reduce >>>>>> if (ALPHA < SCORE + THREAT + MARGIN) -> reduce depth with one ply. } >>>>>> >>>>>> SCORE : score of EVAL >>>>>> THREAT : Queen=900, Rook=500, Bishop=300, Knight=300, Pawn=100 >>>>>> MARGIN : TABLE [remaining_depth]; >>>>>> >>>>>> static int TABLE[]= { 00,00,10,15,20,25,25,25,25,25,25,25,25,25, >>>>>> 25,25,25,25,25,25,25 ........... }; >>>>>> >>>>>>The idea is, if SCORE+THREAD are not going to make it to ALPHA, but with an >>>>>>extra small MARGIN it will then reduce the depth. I can't remember the speed-up >>>>>>this reduction gave. >>>>>> >>>>>>==== >>>>>> >>>>>>Ed >>>>>> >>>>>>PS, the "faulty stuff" plus Uri's correction is maybe worth a try, who knows :) >>>> >>>>>The < in the second formula should be > ? >>>>>Otherwise the two formula's together don't make sense. >>>>>(if the first is true, the second is also true) >>>> >>>>For free-style pseudo code it is defendable, maybe in more c-code style would >>>>make it more clear? >>>> >>>> { if (ALPHA > SCORE + THREAT && >>>> ALPHA < SCORE + THREAT + MARGIN) -> reduce depth with one ply. } >>> >>>Yes, this makes it more clear. >>>However, I wonder if the second part of the condition (the margin part) >>>is useful. Maybe it is if the current window is smaller than margin, but >>>otherwise? >>>Of course, the extra condition makes the tric safer, but I think it could >>>also cause more search instability. >>> >>>BTW, this probably doesn't work in an engine that uses PVS. >>>Am I right? >> >>Wrong. >> >>This doesn't work in an engine using nullmove. Unless you only test tricks. >>the smaller you make margin the more you positionally are going to miss. > >Thank you very much, Vincent. >I was asking a question about PVS, not about nullmove. > >Martin PVS is independant from your question. Nullmove and hashtables are a big influence though. > >> >>The whole pruning system of Ed has a major focus upon not missing tactics. >> >>That was of course worth a world title in Madrid start of the 90s. >> >>It is a very ingenious system. >> >>Nowadays we have nullmove. >> >>Nevertheless it gives good ideas to me to work on some forward pruning >>experiments in the future. >> >>> >>>Cheers, >>>Martin >>> >>>> >>>>ALPHA=100 >>>>SCORE=90 >>>>THREAT=0 >>>>MARGIN=20 >>>> >>>>-> reduction >>>> >>>>ALPHA=100 >>>>SCORE=60 >>>>THREAT=0 >>>>MARGIN=20 >>>> >>>>-> no reduction >>>> >>>>Ed >>>> >>>> >>>>>Martin
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.