About this project
OptiChess is an experimental chess engine and analysis tool designed for algorithmic research. It is centered around GrogrosZero, a hybrid search system that combines UCT-style node selection with alpha-beta pruning, integrated quiescence search, and Win/Draw/Loss (WDL) statistical evaluation.
Key technical features include:
- Memory Management: A bounded, zero-allocation search using preallocated pools for Node and Board objects to eliminate heap allocation in the hot path.
- Engine Architecture: Includes a Zobrist-keyed transposition table, an evaluator with 31 weighted terms, and an optional experimental neural network evaluation.
- Analysis GUI: Built with raylib, providing a visual board with candidate move arrows, evaluation graphs, and game tree variations.
- Screen Binding: A Windows-specific capability that allows the engine to read chess positions directly from the screen by analyzing pixel colors, enabling live analysis of browser-based games.
- Testing Suite: An interactive suite covering Perft move generation validation, evaluation accuracy against reference positions, and tactical puzzle solving.
The project is developed for Windows x64 using C++20 and CMake. It is not a UCI-compliant engine and is intended for research rather than competitive play.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.