Skip to main content

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

Project description

Chess Tuning Tools

https://img.shields.io/pypi/v/chess-tuning-tools.svg https://img.shields.io/travis/kiudee/chess-tuning-tools.svg 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.

History

0.2.0 (2020-02-10)

  • Completely new database implemented in SQLAlchemy.

  • Pentanomial scoring of matches, accounting for the paired openings and different draw rates of time controls.

0.1.6 (2020-02-02)

  • Allow timed termination of the client by the option --terminate-after

0.1.5 (2020-02-02)

  • Support for non-increment time controls

0.1.4 (2020-02-02)

  • Allow graceful termination of tuning-client using ctrl-c.

0.1.3 (2020-02-01)

  • Implement probabilistic load balancing support in the clients.

0.1.2 (2020-02-01)

  • Simplified tuning client tutorial and logging.

0.1.0 (2020-01-31)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chess-tuning-tools-0.2.0.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chess_tuning_tools-0.2.0-py2.py3-none-any.whl (18.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file chess-tuning-tools-0.2.0.tar.gz.

File metadata

  • Download URL: chess-tuning-tools-0.2.0.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.8.0

File hashes

Hashes for chess-tuning-tools-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b03490ed61688effa300be072b6d77a0171acbd00b7df13dc70f8068707e409f
MD5 bf63743a0405495557a2e50eb0277aef
BLAKE2b-256 8499a42e91263a2d6324f17cfcca0816ee2d7c39fc3a1d08a995d3934d2f0c5b

See more details on using hashes here.

File details

Details for the file chess_tuning_tools-0.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: chess_tuning_tools-0.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.8.0

File hashes

Hashes for chess_tuning_tools-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 63e370fe1befefd2c0fbf7e16b3ee4ecde63d06359bc2ed68f86483395ad505a
MD5 43e08158f0fca48d8d2a323951859eb9
BLAKE2b-256 b6347611b895ffae36e62bbecb262a2d14e4a0ad241b0898765ead2157fffd6c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page