Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Length of time for Move_Gen()?

Author: Tord Romstad

Date: 14:14:07 02/15/04

Go up one level in this thread


Hi Andrew,

This has been mentioned elsewhere in the thread, but it is so important that
I would like to repeat it:

Don't worry about the speed of your move generation function!  Concentrate
on making it correct, rather than on making it fast.  Then finish the rest of
your program.  When you finally have a program that is able to play chess,
try to improve your search function.  This is the number 1 factor which
determines how fast your program is.  Don't try to increase the number
of nodes per second, try to reduce the number of nodes you need to reach
a certain search depth!  The improvements you gain by improving your
search are incomparably bigger than those you get by optimizing your
move generation function.

When your search is finally beginning to look very efficient, you can
consider profiling your program.  If it turns out that it spends a significant
fraction of its time generating moves (which is rather unlikely), you can
return to the move generation function.

It is often said that premature optimization is the root of all evil in
programming.  I think this is even more dangerous in chess
programming than elsewhere.  Premature optimization is the number
one reason why many programmers spend a very long time before they
have a working and bug-free program, and it is the most important
factor which slows down their speed of improvement while the program
is young.

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.