PGX
EnvPool includes native C++ implementations of PGX environments from PGX 2.6.0.
Supported Tasks
EnvPool registers the following PGX tasks:
Go9x9-v1Go13x13-v1Go19x19-v1ChineseGo9x9-v1ChineseGo13x13-v1ChineseGo19x19-v1TicTacToe-v1ConnectFour-v1Hex-v1Othello-v1KuhnPoker-v1LeducHoldem-v1Play2048-v1AnimalShogi-v1Backgammon-v1Chess-v1GardnerChess-v1Shogi-v1SparrowMahjong-v1
The PGX MinAtar tasks are not registered here because EnvPool already provides native Atari environments.
Go Rules
Go9x9-v1, Go13x13-v1, and Go19x19-v1 follow PGX’s
Go v1 rules:
Tromp-Taylor scoring.
N * N + 1discrete actions, where the final action is pass.Boolean observation shape
(N, N, 17)using AlphaGo Zero history planes.SSK legal-action filtering, with positional superko occurrence ending the game as a loss for the player who made the repeated position.
EnvPool also provides Chinese-rule variants:
Chinese area scoring: stones plus empty regions bordered by exactly one color, with neutral empty regions counted for neither player.
Positional superko moves are masked as illegal actions instead of being accepted and then turned into a terminal loss.
The same no-suicide, two-pass terminal, action, and observation API as the PGX-compatible Go tasks.
API Notes
PGX turn-based games are exposed through EnvPool’s multiplayer API. Each state
contains one observation per player, info["current_player"] identifies the
player ID whose turn it is, and each environment consumes one action for that
current player.
The task IDs intentionally follow EnvPool style and do not use a PGX prefix.
Configuration
Go tasks support komi, history_length, max_terminal_steps, and
rules. komi defaults to 7.5 and history_length defaults to 8
to match PGX. max_terminal_steps=0 means 2 * N * N. rules is
"pgx" for the PGX-compatible tasks and "chinese" for the Chinese-rule
variants.