What are some good resources for writing a chess engine? [closed]
From my archives:
- This is a useful chess programming wiki.
- This is a simple introduction to chess programming.
- This is a (free) book on chess algorithms.
- This contains several easy step-by-step YouTube tutorial series' ranging from beginner to advanced level.
- This is a more advanced introduction.
- This is Adam Berent's interesting computer chess blog.
- This is a good analysis of MTD(f), an interesting search algorithm.
- This is a good guide to validation of move generation.
- This is lots of good information on the Rebel chess engine.
- This is lots of good information on the Dark Thought chess engine.
- Good information and source code for the Monsoon chess engine.
- These are more notes on chess programming.
- A reasonable introduction to rotated bitboards.
- A reasonable introduction to magic bitboards.
- A reasonable introduction to late move reductions.
- A look at null-move pruning.
- A collection of position sets for testing purposes.
- Here is an old report from 2 students who wrote a chess program.
- A bunch of miscellaneous chess programming links.
- Finally, here is Wikipedia's take on computer chess.
When creating my chess engine I spent months trying to collect good resources that describe some of the harder aspects of creating a chess game. Here is a list of the ones I found most useful:
Chess Programming by François Dominic Laramée
This is the article that got me into computer chess, It is a great overview of how computers play chess. It is extremely easy to read and it will introduce you to all the terms and keywords.
http://www.gamedev.net/page/resources/_/technical/artificial-intelligence/chess-programming-part-i-getting-started-r1014
Computer chess wiki, this has really expanded over the last few months. It is an excellent resource for reference material.
https://www.chessprogramming.org/Main_Page
Louis Kessler's Computer Chess Links
Once you go through the above resources the remainder can be found at the following links page.
http://www.lkessler.com/cclinks.shtml
Last but not least I write a Computer Chess Blog that takes you through all the steps of writing a chess engine in C# from scratch, it includes a computer chess links section and a chess game starter kit.
http://www.chessbin.com
Adam Berent