chess-tuning-tools

A collection of tools for local and distributed tuning of chess engines.


Keywords
chess, tuning, optimization, engine, hyperparameter-optimization
License
Apache-2.0
Install
pip install chess-tuning-tools==0.9.5

Documentation

https://raw.githubusercontent.com/kiudee/chess-tuning-tools/master/docs/_static/CTT-Plots.png

https://raw.githubusercontent.com/kiudee/chess-tuning-tools/master/docs/_static/logo.png

Documentation Status https://zenodo.org/badge/234719111.svg?style=flat-square

A collection of tools for local and distributed tuning of chess engines.

Features

  • Optimization of chess engines using state-of-the-art Bayesian optimization.
  • Support for automatic visualization of the optimization landscape.
  • Scoring matches using a Bayesian-pentanomial model for paired openings.

Quick Start

In order to be able to start the tuning, first create a python environment (at least Python 3.7) and install chess-tuning-tools by typing:

pip install chess-tuning-tools

Furthermore, you need to have cutechess-cli in the path. The tuner will use it to run matches.

To execute the local tuner, simply run:

tune local -c tuning_config.json

Take a look at the usage instructions and the example configurations to learn how to set up the tuning_config.json file.

Installation on Windows

To get chess-tuning-tools to work on Windows, the easiest way is to install the Miniconda distribution. Then, create a new environment and install chess-tuning-tools:

conda create -n myenv python=3.9 scikit-learn=0.23
activate myenv
pip install chess-tuning-tools