Author: Stan Arts
Date: 02:36:29 06/26/05
Go up one level in this thread
Hi Uri, > >I do not understand. >How can data structure prevent implementing underpromotion? Because it can't hold the underpromotion-piece information? > >In the worse case you need to change your datastructure but not to write >entirely a new program. Well, because changing my move datastructures affects almost all parts of my chessprogram. So changing the current would be very frustrating, probably introduce bugs because of that, and also a lot of work. Then it's tempting to start over with a (clear) new one, and it's not so bad to start with a new program after so much time anyway. (Because you learned a lot from the previous, and can make some important decisions early on.) >I had in the past move as struct and I changed it to int. >I did not need to start writing an entirely new program but only to replace in >the relevant places. Ah, only the relevant places. Well, Neurosis has a lot of extra stuff implemented over time, and has become a big and messy program with lots of relevant places I would probably forget. Well, now it's solved by adding an extra byte, only in some cases, and with minimal hasle, (A bit of a hack.) but works fine. For instance the hashtable can't hold underpromotionpiece information, That's not a problem for search, but also the PV can't show it until it's the actual move to play. (but the score reflects it.) the minor-promotions are always at the back of movelists, and so on. Stan
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.