Author: Bo Persson
Date: 08:58:22 07/02/02
Go up one level in this thread
On July 02, 2002 at 01:30:33, Russell Reagan wrote: >One problem I often have when attempting to approach a problem from an OOP >perspective is that I find it hard to determine which things belong to the >object and which things don't. For example, in a chess program, I would think >that the "make move" function and "generate moves" function would belong to the >"position" object, since the only data that is being operated upon is the >position's data. It depends on what you have already put into your position object. :-) >But what about the search algorithm? That really only operates >upon the position object as well, but it doesn't seem (to me) like it belongs in >the position object. So an AlphaBeta() function and Evaluate() function would >seem to not be part of the position, even though they only use the position's >data. Is the hash table, table base access, killer moves, etc part of the position, or are they separate objects. If they are, it might be a good idea to have a searcher object that works on all of these. Another idea: I am right now playing around with a Position constructor taking the current position and a move, creating the new position which is then passed on to the next search level. Interesting so far... Bo Persson bop2@telia.com
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.