Chess Engine written in Julia
Chess
Julia
Julia Package
A Julia package that implements chess from scratch alongside a chess engine, Orbis. It provides functionalities to represent the chessboard, validate moves, and evaluate positions. Particularly, OrbisChessEngine implements:
- All chess rules
- Bitboard representation
- Legal move generation (tested with perft)
- FEN parsing
- Opening book support
- Minimax search with alpha–beta pruning, iterative deepening, quiescence search, transposition tables, null move pruning, and move ordering heuristics
- Evaluation function based on piece-square tables
A lot of effort was spent on optimizing the engine for speed and efficiency.
It is a part of the Julia package system and can be installed with
import Pkg
Pkg.add("OrbisChessEngine")The source code can be found on GitHub and the documentation is available at OrbisChessEngine.jl docs.