Author: Tord Romstad
Date: 01:46:42 01/18/04
Go up one level in this thread
On January 17, 2004 at 18:03:24, Jan wrote: >>From the opening position, how many times per second can you call your move generator? >When writing this reply, i have no access to my program to write the precise >number which i dont remember, but its between 1500000-2000000 times per second. >I think that's really slow on my Athlon 1800, so the question is:how many calls >will I really need when I do for example 9 or 10ply search? I think it's really fast. I just made a test with my own engine on my PowerBook G4 550 MHz, which is probably about three times slower than your Athlon. From the opening position, I can call my move generator 180,000 times per second. How many calls you need when doing a 9 or 10 ply search? I'm too lazy to check right now, but of course the answer will vary from program to program. I guess it would be something around one third of the number of nodes searched (the majority of the nodes visited in the search are leaf nodes, I think). And in most of the nodes where you do generate moves, you will probably generate only captures, which is considerably faster than generating all moves. My engine needs slightly less than half a million nodes to complete a 9-ply search from the opening position, and about 2.3 million nodes for a 10-ply search (the poor branching factor is caused by a new best move at ply 10). >>Concentrate on making a working program first, even if it is slow and weak. >I wrote that i'm new to chess programming but I have already finished my first >chess program, with elo somewhere around 1650 tested on real players. In the end >I found it's too slow to try to implement some more complicated algorithms, so >now I started writing another program, trying to avoid all those bottlenecks, >making sure that i wont have to make drastic changes in those often used >algorithms like check and move generation later on. The best way to make the program faster is to improve the search. If the strength of your engine is around 1650, the potential improvements by making the search more efficient are incomparably much bigger than the potential improvements by optimizing the move generator. Try to reduce the branching factor and the number of moves searched to complete an n-ply search, and don't worry about the nodes/second count. Until your engine has reached the stage where it is able to put up a good fight against the strongest amateur engines, there are easier ways to improve it than doing low-level optimization. Tord
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.