Samurai is a powerful Java framework designed to simplify the development of search engines for zero-sum games. It offers a comprehensive suite of artificial intelligence algorithms and tools that empower you to build engines for a vast array of games.
Key Features:
- Engine Agnostic: Supports the UCI protocol for seamless integration with various game engines.
- Search Algorithms: Built-in implementations for search algorithms like UCT, Negamax, and Monte-Carlo.
- AI Foundation: Leverage core functionalities like generic EGTB (Endgame Table Base), transposition tables, and automatic opening-book generation.
- Game Representation: Built-in utilities for position and move representation, along with bitwise operations and hashing algorithms (Zobrist, Binomial Hashing, Lehmer codes).
- Comprehensive Command-Line Tools: Take advantage of Samurai's command-line tools, including: an interface for playing against any UCI-compliant engine, an interactive UCI shell and service for engine communication, automatic opening-book construction for any game, benchmarking tools (perft, divide, round-robin tournaments).
Forget the complexities of building an AI engine from scratch. Samurai empowers you to create sophisticated game engines with incredible ease. See https://github.com/joansalasoler/engines for reference implementations.
See the repository https://github.com/joansalasoler/engines for usage instructions.
Information on the latest version of this software and its current development can be found on https://github.com/joansalasoler/samurai/
Please see the COPYING file.