api.config.done_condition

Classes

DoneCondition

A termination/truncation condition. This class is responsible for determining when an episode should end for each agent.

Module Contents

class api.config.done_condition.DoneCondition

Bases: Generic[api.typing.AgentID, api.typing.StateType]

A termination/truncation condition. This class is responsible for determining when an episode should end for each agent.

abstract reset(agents: List[api.typing.AgentID], initial_state: api.typing.StateType, shared_info: Dict[str, Any]) None

Function to be called each time the environment is reset.

Parameters:
  • agents – List of AgentIDs for which this DoneCondition will be evaluated

  • initial_state – The initial state of the reset environment.

  • shared_info – A dictionary with shared information across all config objects.

abstract is_done(agents: List[api.typing.AgentID], state: api.typing.StateType, shared_info: Dict[str, Any]) Dict[api.typing.AgentID, bool]

Function to determine if a game state is terminal. This will be called once per step, and must return either True or False if the current episode should be terminated at this state.

Parameters:
  • agents – List of AgentIDs for which this DoneCondition should be evaluated

  • state – The current state of the game.

  • shared_info – A dictionary with shared information across all config objects.

Returns:

Dict of bools representing whether the current state meets this done condition for each AgentID in agents.