A simple chess engine written in C++ that implements the UCI protocol. Currently uses alpha-beta pruning with LMR, null-move pruning, PVS, and other enhancements. Move evaluation is still rather rudimentary, but includes basic passed pawns, king safety, material evaluation, pawn structure, etc.
- Improve evaluation with regards to phases, iron out performance issues in endgame.
- Add time management and other more advanced search features.
The chess executable included in this repository can be imported and used in GUI interfaces such as Arena.
Current magic moves implementation created by Pradyumna Kannan.