Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: chess engines writen in C

Author: Reinhard Scharnagl

Date: 14:27:10 01/13/05

Go up one level in this thread


On January 13, 2005 at 14:06:58, Dann Corbit wrote:

>On January 13, 2005 at 06:12:12, Reinhard Scharnagl wrote:
>
>>On January 13, 2005 at 05:57:08, adam wilks wrote:
>>
>>>Where can i find some examples of chess engines written in C, C ++?
>>
>>There are a lot.  E.g. Smirf, C++, which restricted beta could be found at:
>>http://www.chessbox.de/beta.html - Project Chronicle, 2004-Dec-10.
>>
>>But if you are interested in source code, write it yourself. You never will
>>get experiences comparable to those trying to do it with your own means alone.

>I agree that we should write it from scratch.  But if we do not clearly
>understand what others have done, we will not know if our new ideas are better
>or not.  So examination of the work of others (both the code and the papers) are
>important and will save a programmer many years of frustration.

I like to learn sometimes from written explanations where necessary, but never
by the whole source code. Of course it could be helpful to view other program-
mer's ways to build a good program, because the scene is interesting and it
could be a challenge to compete.

But frustration is necessary especially in the beginning. You must create your
own ideas, to be finally satisfied. The goal is not to reach the top ten by
copying or patchworking, but to see how far you could proceed on your own. If
you want only to have a strong program - buy one. If you want to synthetisize
a program by the ideas of others, it would be unfair to participate at tourna-
ments. You must know that it would took a huge amount of time. If you want to
have quick success, keep away from chess programming.

>>P.S.: I would never hand out any code snippet to anyone, who tries to stay
>>anonymous. It is so easy to update your profile.

>Another thing that I think is a terrible mistake is to start with a simple
>beginner program and modify it.  This is especially true of many of the simple
>programs that are loaded with tons of global variables.  These are bad designs
>fundamentally, and will handicap the programs when they want to take big steps
>forward.

To learn programming by trying to write a chess program is a bad idea.

But it is also a bad behaviour in the scene of chess program fans to compare a
newcomer's program immediately with grown up solutions. It would be better to
see and discuss individual progresses (verbal not by code) instead of pointing
to very mature detail solutions in published top programs' code.

Any approach based on own ideas is worth ten times a new clone. But a lot of
so called testers throw new programs into the trash when those engines will
not reach nearly the crafty level. That is ignorant and counter productive, be-
cause this cuts maybe promising ideas before finally grown up. So it will be
hard for new chess programmers to ignore such silly comments and keep on deve-
loping without covering may be weak parts with copied foreign code snippets.

Reinhard.



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.