Skip to main content

chipiron plays chess

Project description

python Checked with mypy Formatted with isort linting: pylint Tests pytorch Code style: black

Chipiron

Chipiron is a Python library that plays chess

Acknowledgments

This code is build on top of the chess library https://github.com/niklasf/python-chess and its rust version :https://github.com/niklasf/shakmaty

It also integrates code from : https://github.com/oakmac/chessboardjs/

Play Online against Chipiron

Play at this website !

Requirements

  • Python 3.12
  • pip
  • curl
  • tkinter
  • make

Installation

Make

The following command will install the python packaged listed in requirements.txt, download syzygy tables, install stockfish, retrieve datasets and gui images...

make init

so you might want to git clone and create a virtual environment as follows:

Click here to see more detailed instructions with conda
git clone https://github.com/victorgabillon/chipiron.git
cd chipiron
conda create --name chipiron3.12 python==3.12
`conda activate chipiron3.12
`conda install -c conda-forge tk=*=xft_*
make init

Docker

To build the docker:

docker build -t chipiron-x11 .

To run the docker with GUI:

sudo docker run --rm \
  -e DISPLAY=$DISPLAY \
  -v /tmp/.X11-unix:/tmp/.X11-unix \
  --network=host \
  -u $(id -u):$(id -g) \
  chipiron-x11

Usage

Base case with a GUI to play against chipiron or watch it play

Starts a gui to choose your options of play.

python3 chipiron/scripts/main_chipiron.py

Other Scripts:

One match:

This allows to play a match between two players.

python3 chipiron/scripts/main_chipiron.py --script_name one_match --config_file_name chipiron/scripts/one_match/inputs/base/exp_options.yaml

League

This allows to run a league of selected players and compute their Elo ratings.

python3 chipiron/scripts/main_chipiron.py --script_name league

Lean a NN from a labelled dataset

This learns Neural Networks from a database of labelled boards.

python3 chipiron/scripts/main_chipiron.py --script_name learn_nn --config_file_name chipiron/scripts/learn_nn_supervised/exp_options.yaml

Contributing

License

GPL-3.0

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

chipiron-0.1.9.tar.gz (1.7 MB view details)

Uploaded Source

Built Distribution

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

chipiron-0.1.9-py3-none-any.whl (1.8 MB view details)

Uploaded Python 3

File details

Details for the file chipiron-0.1.9.tar.gz.

File metadata

  • Download URL: chipiron-0.1.9.tar.gz
  • Upload date:
  • Size: 1.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for chipiron-0.1.9.tar.gz
Algorithm Hash digest
SHA256 1dc349fe2a0a0d20bc584ca2f950d389ee7d5e59f67cf93728a02f2e50cb5b93
MD5 8a142ec5e190ded28a8dd0da4b288c1b
BLAKE2b-256 f9e3ad446e06083968c36a270c043a6956f0622af0d6e54dc126290c4904455c

See more details on using hashes here.

File details

Details for the file chipiron-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: chipiron-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for chipiron-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 8c92012103ff7c9e072fa95fab80d4dd67657f1e31afffbbfe8837cd041e665f
MD5 9ffe94943d09dcb872f35f0bad7550a2
BLAKE2b-256 6c6ce3f983f8dae728d918d531748e8f7d2428f8cc8e4c2172b07420805227a6

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