View Single Post
  #1   Report Post  
Old January 3rd 13, 02:51 AM posted to
[email protected] is offline
external usenet poster
First recorded activity by ChessBanter: Jan 2006
Posts: 470
Default Chess engine design resources

On Tuesday, December 4, 2012 11:34:32 PM UTC-8, Jason Benjamin wrote:
I am not an experienced user of newsgroups and I know virtually nothing of

how to create chess programs. I have come upon a wiki at the http site and find it as a vague but varied reference

on the subject. However, I have downloaded the sources of some chess

programs (Tom Kerrigan's Simple Chess Program I like the most) and cannot

read the source. It would be nice if I could find some books or websites

with some detailed information or I way to understand the underlying details

and methods of Tom's source without having to bother him with an email

discourse. I am having a lot of difficulty in finding pointers to textbook

material or tutorials (that is, anything other than reference) on the theory

and process behind writing a chess program. I don't like that the only

sources I can find are all written in near obfuscated code either and

frankly I would probably need code written as though for a child before I

could come close to understanding how such a program actually works.

I would appreciate any help or directions in understanding how to write such

an engine. If I am just coming up with blocks and there are indeed

resources I have skipped over please let me know.

I don't know of any book dedicated to the topic of writing a chess program. Tom's Simple Chess Program (aka TSCP) is one of the most basic chess engines for which the source code is available. If you cannot understand it, then I might agree with your concern that you need something even simpler, although I'm not sure it exists either.

Just about the only other thing I would suggest is going to this site:

It is intended to be a step-by-step guide to writing a chess engine, although I don't think the author is finished with his "99 steps" and the author does expect the reader to have some basic knowledge of programming techniques, and also the concept and usage of bitboards (which are a set of 64-bit integers used to define the distribution of chess pieces on a board).

If the above website doesn't give you some enlightenment, then I'm not sure what else I can suggest.

Good Luck!