CurrentModule = AlphaZero
GameInterface
A test suite is provided in the AlphaZero.Scripts
to check the compliance of your
environment with this interface.
CurrentModule = AlphaZero.GameInterface
The game interface of AlphaZero.jl differs from many standard RL interfaces by making a distinction between a game specification and a game environment:
- A specification holds all static information about a game, which does not depend on the current state (e.g. the world dimensions in a grid world environment)
- In contrast, an environment holds information about the current state of the game (e.g. the player's position in a grid-world environment).
AbstractGameSpec
two_players
actions
vectorize_state
AbstractGameEnv
init
spec
set_state!
current_state
game_terminated
white_playing
actions_mask
play!
white_reward
These functions are required for the default [User Interface](@ref ui) to work well.
action_string
parse_action
read_state
render
heuristic_value
symmetries
state_type
state_dim
state_memsize
action_type
num_actions
init(::AbstractGameSpec, state)
clone
available_actions
apply_random_symmetry!
CurrentModule = AlphaZero
CommonRLInterfaceWrapper
CommonRLInterfaceWrapper.Env
CommonRLInterfaceWrapper.Spec