Skip to main content

OpenAI Gym environment for Chess, using the game engine of the python-chess module

Project description

Chess Gym

PyPI download month PyPI - Status PyPI GitHub

Gym Chess is an environment for reinforcement learning with the OpenAI gym module.

Screen-Shot-2020-10-27-at-2-30-21-PM

Installation

  1. Install OpenAI Gym and its dependencies.
    pip install gym

  2. Download and install chess_gym:
    git clone https://github.com/Ryan-Rudes/chess-gym.git
    cd chess-gym
    python setup.py install

    Or, you can use pip (you may view the package here):
    pip install chess-gym

Environments

Screen-Shot-2020-10-27-at-3-08-46-PM-copy

Example

You can use the standard Chess-v0 environment as so:

import gym
import chess_gym

env = gym.make("Chess-v0")
env.reset()

terminal = False

while not terminal:
  action = env.action_space.sample()
  observation, reward, terminal, info = env.step(action)
  env.render()
  
env.close()

There is also an environment for the Chess960 variant; its identifier is Chess960-v0

Further Info

This environment will return 0 reward until the game has reached a terminal state. In the case of a draw, it will still return 0 reward. Otherwise, the reward will be either 1 or -1, depending upon the winning player.

observation, reward, terminal, info = env.step(action)

Here, info will be a dictionary containing the following information pertaining to the board configuration and game state:

  • turn: The side to move (chess.WHITE or chess.BLACK).
  • castling_rights: Bitmask of the rooks with castling rights.
  • fullmove_number: Counts move pairs. Starts at 1 and is incremented after every move of the black side.
  • halfmove_clock: The number of half-moves since the last capture or pawn move.
  • promoted: A bitmask of pieces that have been promoted.
  • ep_square: The potential en passant square on the third or sixth rank or None.

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_gym-0.0.5.tar.gz (4.6 kB view hashes)

Uploaded Source

Supported by

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