A chess engine built in C# that uses the UCI protocol to communicate with graphical interfaces. This engine is a direct clone of the chess22k engine.
- (magic) bitboards
- transposition tables
- killer/counter-moves and history-heuristics for move ordering
- principal variation search
- (static) null move pruning
- razoring
- late move reductions and pruning
- futility pruning
- static exchange evaluation pruning
- aspiration window
- evaluation parameters tuned using the Texel's tuning method
- tapered eval
- lazy SMP
- pondering
- no openingbook or endgame tablebases
- improved SMP
- singular extensions
- syzygy
- improved king safety
- ...
"Simplicity is the soul of efficiency" - Austin Freeman -