Skip to content

AlexisOlson/chess-tuning-tools

 
 

Repository files navigation

Chess Tuning Tools

Documentation Status

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

Features

  • Optimization of chess engines (Leela Chess Zero in particular) using distributed Bayesian optimization.
  • Scoring matches using the pentanomial model for paired openings.

Starting the tuning client

In order to be able to start the tuning client, first create a python environment and install chess-tuning-tools by typing:

pip install chess-tuning-tools

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

Then after extracting the current .zip package into another folder, make sure that you have the following directory structure:

folder/
|---- networks/
|     |---- 58613
|     |---- other networks
|---- openings/
|     |---- ...
|     |---- openings-6ply-1000.pgn
|     |---- ...
|---- dbconfig.json
|---- lc0[.exe]
|---- sf[.exe]

Finally, the tuning client can be started as follows:

cd path/to/folder
tune run-client dbconfig.json

The client can be terminated gracefully by inputting ctrl-c once or terminated immediately by sending it twice.

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.