A homemade C++ chess engine.
Play a game with me here!
NOTE: A Lichess account is required to challenge the bot.
- Negamax alpha-beta search with iterative deepening
- Lazy SMP parallel search
- Transposition table with Zobrist hashing
- Time control management
- UCI support
Many of the methods used in this engine are inspired by the extensive resources available at the Chess Programming Wiki:
- Guard heuristic
- Static exchange evaluation
- Specialized quiescence/evasion movegen
- History heuristic
Neocortex builds on GCC 7.3+ or MSVC 2015+. To run the test suite GoogleTest must be available on the host.
Linux
Execute make
in the project root to build in release mode.
Execute make debug
to build in debug mode, and make test
to build the test suite.
NOTE: Building the test suite requires GoogleTest to be available on the host.
Windows
Open neocortex.vcxproj
in Visual Studio 2015 or newer. Build the solution in either Debug or Release mode.