Skip to content

My Chess engine built using bitboards and alpha beta search in C.

Notifications You must be signed in to change notification settings

vivekmthr/Chess-Engine-In-C

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

Chess-Engine-In-C

Introduction This repo contains my implementation of a Chess Engine. It is still in progress, and the game analysis functions are in the progress of being optimized and built.

Design

  1. Board Initialization
  • The board is initialized as 16 different bit-boards. These are used to track the current position of each different piece. We use bit-boards as they are more space effective and increase effieciency significantly.
  1. Move Generation
    • We can create bitboards by using XOR and XAND operations like location of black pieces, location of white pieces so on.
    • Using these extra boards along with bit shifts allows us to calculate the possible moves for each piece.
    • Sliding move generation is a little bit more complex, and this is done using magic bitboards.
  2. The AI
  • The AI currently is very basic and uses a search tree with alpha beta pruning to find the best series of highest scoring moves depending on the opponent.

** Building Navigate to the alpha beta folder and runn Chess.c.

About

My Chess engine built using bitboards and alpha beta search in C.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published