Skip to main content

2-player zero-sum board game extension for OpenAI Gym.

Project description

boardgame2

boardgame2 is an extension of OpenAI Gym that implements multiple two-player zero-sum 2-dimension board games, such as TicTacToe, Gomuko, and Reversi.

Environments

  • Reversi-v0
  • KInARow-v0, as well as Gomuku-v0 and TicTacToe-v0
  • Go-v0 (Experimental, not fully implemented)

Install

pip install --upgrade boardgame2

We support Windows, macOS, Linux, and other operating systems.

Usage

See API docs for all classes and functions.

Create a Game

import gym
import boardgame2

env = gym.make('TicTacToe-v0') # 3x3, 3-in-a-row
env = gym.make('Gomuku-v0') # 15x15, 5-in-a-row
env = gym.make('KInARow-v0', board_shape=5, target_length=4) # 5x5, 4-in-a-row
env = gym.make('KInARow-v0', board_shape=(3, 5), target_length=4) # 3x5, 4-in-a-row
env = gym.make('Reversi-v0') # 8x8
env = gym.make('Reversi-v0', board_shape=6) # 6x6
env = gym.make('Go-v0') # 19x19
env = gym.make('Go-v0', board_shape=15) # 15x15

Play a Game

import gym
import boardgame2

env = gym.make('TicTacToe-v0')
print('observation space = {}'.format(env.observation_space))
print('action space = {}'.format(env.action_space))

observation, info = env.reset()
while True:
    action = env.action_space.sample()
    observation, reward, terminated, truncated, info = env.step(action)
    if terminated or truncated:
        break
env.close()

BibTeX

This package has been published in the following book:

@book{xiao2019,
 title     = {Reinforcement Learning: Theory and {Python} Implementation},
 author    = {Zhiqing Xiao}
 year      = 2019,
 month     = 8,
 publisher = {China Machine Press},
}

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

boardgame2-0.26.0.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

boardgame2-0.26.0-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file boardgame2-0.26.0.tar.gz.

File metadata

  • Download URL: boardgame2-0.26.0.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for boardgame2-0.26.0.tar.gz
Algorithm Hash digest
SHA256 bc2547308405348e646616c9ccbb1e5f2e91affc1f36a8a3fbc459037c447f17
MD5 16bcc45b6a813c5e6bff27230f24cf82
BLAKE2b-256 48ceb24e264564b54d16285e351319179c16033d5c019e894785df658b6360e9

See more details on using hashes here.

File details

Details for the file boardgame2-0.26.0-py3-none-any.whl.

File metadata

  • Download URL: boardgame2-0.26.0-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for boardgame2-0.26.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f3d594e071c81c07eabf3a0a9445fdfbbd19ae3d25cdd8c210cd503393804173
MD5 f320904392aa9c161a3c9f910976c4fc
BLAKE2b-256 56af0aeb59877823277d1f32fa9897b68ea6b71b786359892a3066f474dba598

See more details on using hashes here.

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