Skip to main content

Set of tools to analyze and research the game Dark Hex.

Project description

DarkHex

Dark Hex is the imperfect information version of the game Hex. This game has a really scarce work on it. In this repository I am including an implementation of the game along with some algorithms implemented specifically for DarkHex. Also I included the results of some of the experiments.

For details on DarkHex and any of the algorithms used as well as the experiments please check my thesis -link-.

Implementations

  • pONE
  • Vanilla CFR
  • FSI-CFR
  • Backward Induction Best Response
  • AlphaZero Approximate Best Response
  • CFR+
  • MCCFR
  • NFSP
  • Deep CFR

Installation

The library is uploaded on Pypi and can be installed using pip. Before pip called make sure you have the following packages installed:

They are mostly required for graph drawing and setup reasons. Please make sure you have these packages installed before installing the library.

For Debian / Ubuntu

sudo apt-get install libgirepository1.0-dev gcc libcairo2-dev pkg-config gir1.2-gtk-3.0 graphviz

For MacOS

brew install gobject-introspection graphviz cairo pkg-config gtk+3 gcc

After installing the packages you can install the library using pypi.

pip install darkhex

Setup from source using pip

Installing from source would be helpful if you wanted a custom version of the library / helping with development. Make sure you have the packages above installed.

Virtual Environment

We recommend using a virtual environment for the development.

E.g. for Ubuntu or Debian:

sudo apt-get install virtualenv python3-virtualenv
virtualenv venv
source venv/bin/activate

Rest of the installation is just installing python requirements.

E.g. for Ubuntu or Debian:

# Install the libraries listed above
sudo apt-get install libgirepository1.0-dev gcc libcairo2-dev pkg-config gir1.2-gtk-3.0 graphviz

# Install the python packages
pip install -r requirements.txt

Update PYTHONPATH on your .bashrc or .zshrc file (or .venv/bin/activate)

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

darkhex-0.0.1.tar.gz (23.9 kB view details)

Uploaded Source

Built Distribution

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

darkhex-0.0.1-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

Details for the file darkhex-0.0.1.tar.gz.

File metadata

  • Download URL: darkhex-0.0.1.tar.gz
  • Upload date:
  • Size: 23.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for darkhex-0.0.1.tar.gz
Algorithm Hash digest
SHA256 6b88fd6f889a7cb599503588ce0150a9cab045a4b4ae9a852de68dc7aa395703
MD5 4557b9d7e3d807fd4fbf71aa32660b4d
BLAKE2b-256 38c596ea2a7e0c37b673f005e6e69e4a994bb3478d99be1146b45df76e63aeee

See more details on using hashes here.

File details

Details for the file darkhex-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: darkhex-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 26.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for darkhex-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0d170184153ef7389a5e80eb99a7b7a4942653a4979f54d0cc111c7be07e8d45
MD5 a5d90e0edbedad3d25b9547e22f4f109
BLAKE2b-256 65b68f50e298efeedff21f2b8ae0d34129aa2e6f48f05dafd2eea71a83ae5687

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