Author: Joel
Date: 09:20:30 04/30/03
Go up one level in this thread
Hey Magoo, I started working on my chess engine some 6 months ago, and can perhaps tell you a bit about my experience which might help you. Someone before mentioned about going slow, and I cannot agree more. I have been gauging the playing strength of my engine against others which you can find at http://wbec-ridderkerk.nl/, and my guess is that a lot of the engines in the range 90-130 have some major bugs. My program was significantly better than the engines in that range when I only had a beancounter evaluation and an alpha beta search with reasonable (not exceptional) move ordering. To be precise, transposition tables, killer moves, history heuristic and MVA/LVA to order the captures. Of course I also had a quiescient search as well). The only extension I had back then was the check extension. Oh, and I had a 30K opening book which probably did me more harm than good. (too many gambits that my eval couldnt even pretend to understand :) My NPS was nothing amazing either, around 500K on a Athlon 2100+. Some of the engines my program was beating had all this extra stuff like null-move pruning, windowing, SEE to order captures, bigger books, etc etc. My only explanation for this is that they must be riddled with performance affecting bugs. With that in mind, go slow, and test everything _very very_ thoroughly. Obviously there is some major problems with bits of your engine. I would think it wise to take a step back, and turn off everything you have done now, test each component, and slowly put all the pieces back together. Perhaps you might want to try these suggestions: Unless your running on a very, very old machine, your NPS is terrible. Something in your implementation is done poorly, and should be fixed up. Implement a "perft" command and thoroughly test your move generator. Make sure it is working 100% before continuing. Implement code which allows you to test different positions. You need this to do the next part: Once that is going, start with a minimax search. Get that working properly. Then make it alpha beta. Get that working. Add history table, etc etc. Leave the transposition table till last, and test that enormously - that thing has given me some horrible bugs. Just be thorough. I will promise you that it saves you time in the long run. Regards, Joel
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.