Author: JW de Kort
Date: 07:06:16 05/25/03
Go up one level in this thread
On May 25, 2003 at 09:54:56, Uri Blass wrote: >On May 25, 2003 at 09:39:48, JW de Kort wrote: > >>On May 25, 2003 at 08:48:31, Uri Blass wrote: >> >>>On May 25, 2003 at 07:53:59, JW de Kort wrote: >>> >>>>Hi friends, >>>> >>>>My chess engine currently has two search related problems. >>>> >>>>1) Sometime a e.g. 8 ply search only returns a pv a say 4 or 5 or sometimes even >>>>only one move. Can this be a result of using the hashtable? >>>> >>>>2) The engine searches until a certain amount of time is spend. >>> >>>This is a mistake because if there is a fail low it is better to use more time >>>aqnd there are cases when it is better not to use time for your move(if there is >>>a single move). >>> >>> If the search >>>>notices that the time has ran out, the search is stopped an beta is returned. >>> >>>Why do you return beta? >>> >>> I >>>>think this is the correct thing to do. >>> >>>No >>>It is not. >>>Your engine should play the best move that it found and not a move that it >>>considers. >>> >>>I see no reason to return beta when you have no idea about the score. >>> >>>Uri >> >>Thanks Uri for your reply. I will explain. >>Suppose the engine has reached a debt of 5 ply and then time has run out. The >>search must be terminated. Alpha bet is a recursive algorithm so something has >>to be returned because the iteration has to stop. I use beta because to signal >>that the move is less in value than all the other moves searched so far. I'am >>not sure that this is the correct procedure, though. >> >>How do you go about? >> >>Thanks again > >I do not understand what you are talking about. >I remember the best move in the pv and if the pv is not updated the move in the >pv is played. > >Uri I will explain further. In alpha beta a move is analysed by recursively calling alpha beta. If we are at ply 6, a value will be returned to ply 5 but then the original position is not restored because the preceeding moves must also be taken back. To do this ply 5 has to return a score to ply 4 and ply 4 to ply 3 etc. In my program i do this like this: if (Time is up) return beta this proces is repeated until every thing is restored to the original position. Jan Willem
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.