Author: Robert Hyatt
Date: 20:09:49 05/27/02
Go up one level in this thread
On May 27, 2002 at 16:37:13, Uri Blass wrote: >On May 27, 2002 at 14:23:28, Robert Hyatt wrote: > >>On May 27, 2002 at 12:33:55, Sune Fischer wrote: >> >>>On May 27, 2002 at 11:58:38, Robert Hyatt wrote: >>> >>>>On May 27, 2002 at 06:14:38, Sune Fischer wrote: >>>> >>>>>On May 27, 2002 at 05:52:21, José Carlos wrote: >>>>> >>>>>> If I understood you right, you can simple put this on top of AlphaBeta() and >>>>>>QSearch(): >>>>>> >>>>>> if (ply >= MAX_PLY) return Eval(); >>>>>> >>>>>> With 'ply' being the current depth, that you increment on every MakeMove() and >>>>>>decrement on UnMakeMove(). >>>>>> >>>>>> José C. >>>>> >>>>>Yes, I guess that would work, technically. >>>>>But having a check like that in the alpha-beta and the qsearch is all too often >>>>>just a waste of time. >>>>>I would like to solve the problem at the root if possible. >>>> >>>>I don't see how to do it at the root. If you do an N-ply iteration, how would >>>>you know at the root how many extensions will "fire" so that you can be sure >>>>that N + extensions <= MAXDEPTH??? >>> >>>If there is a limit on the number of extensions, then there you have it. >>>Isn't it normal to limit the extensions to avoid explosions in certain >>>positions? >>> >>>-S. >> >> >>Yes. But how many? IE I allow 1 ply of extension for every ply of search, >>up to some ply limit. Then I cut it back to 1/2 ply of extension for each >>ply of search beyond that point. But a 20 ply search _could_ extend on >>every ply.. That could take you to nearly infinite depth since each extended >>ply could also extend a ply... > >The assumption that each extended ply could also extend a ply is wrong. > >If you allow a ply of the extension for every ply in the first 20 plies and 1/2 >ply of extensions later then in the first 20 plies 1 ply does not have to reduce >the depth but in the next plies every ply must reduce the depth by at least 1/2 >ply. > >It means that you cannot have lines of more than 60 plies before qsearch. > >The first 20 plies are not going to reduce the depth but the next 40 plies are >going to reduce the depth from 20 plies to 0 plies. > >Uri I put the 1/2 ply limit in to _prevent_ unlimited depth searches. That was my point. My limit seems to control tree explosion pretty well. But I _still_ can search beyond depth=64 if I don't put a limit in the recursive search call as well, because I can search beyond 20 plies in real positions, which would take me well beyond 60 plies with lots of extensions. And it only takes _one_ such line to blow the subscript bounds and cause bad things to happen.
This page took 0.01 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.