Skip to content

This chess engine is built from scratch, featuring bitboard-based move generation, an optimized search algorithm, and an opening book derived from real game data. Designed for performance and strategic depth, it leverages multi-threading for efficient computation.

License

Notifications You must be signed in to change notification settings

HellFelix/chess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub tag License

Chess

This project covers the making of a chess engine all the way from low level bitboard representation and movegeneration all the way up to high level move searching and evaluation algorithms. See engine documentation for usage.

Each of the three subdirectories in this repository covers one of the main modules in this project

Backend (Representation and Game)

This is the backbone of the project, acting as the base layer upon which everything else is built.

For more information, see backend documentation.

Openings (Database Generation and Management)

Using the FICS games database, this crate creates a database with a tree-like move structure that contains thousands of the most common opening lines, which can be used by the engine as a reference for how to play most of the common openings.

For more information, see openings documentation.

Engine (Main Engine Program - BRAIN)

The engine itself splits the evaluation of a position into tow phases, first running preliminaty evaluation followed by a deep search. The search is split between the available threads, and thus it will probably perform better on machines with more cpus since more of the tree can be searched at the same time. Based on limited testing, the engine performs at a rating of about 2200.

For more information, see engine documentation.

Further improvements

Having worked on this project for a while, I am not too concerned with further developing this project. There are, however, a couple of things I would like to think I will add in the future (no timeline currently)

  • Transposition table
  • Pawn structure lookup table
  • Endgame Tablebase
  • GUI to make playing the engine easier

About

This chess engine is built from scratch, featuring bitboard-based move generation, an optimized search algorithm, and an opening book derived from real game data. Designed for performance and strategic depth, it leverages multi-threading for efficient computation.

Resources

License

Stars

Watchers

Forks

Packages

No packages published