Skip to content

Multi agent env

Jittable abstract base class for all JaxMARL Environments.

agent_classes property

Returns a dictionary with agent classes

Format

agent_names: [agent_base_name_1, agent_base_name_2, ...]

name property

Environment name.

__init__(num_agents)

Parameters:

Name Type Description Default
num_agents int

maximum number of agents within the environment, used to set array dimensions

required

action_space(agent)

Action space for a given agent.

Parameters:

Name Type Description Default
agent str

agent name

required

Returns:

Name Type Description
space Space

action space

get_avail_actions(state)

Returns the available actions for each agent.

Parameters:

Name Type Description Default
state State

environment state

required

Returns:

Type Description
Dict[str, Array]

available actions (Dict[str, chex.Array]): available actions keyed by agent name

get_obs(state)

Applies observation function to state.

Parameters:

Name Type Description Default
State state

Environment state

required

Returns:

Name Type Description
Observations Dict[str, Array]

observations keyed by agent names

observation_space(agent)

Observation space for a given agent.

Parameters:

Name Type Description Default
agent str

agent name

required

Returns:

Name Type Description
space Space

observation space

reset(key)

Performs resetting of the environment.

Parameters:

Name Type Description Default
key PRNGKey

random key

required

Returns:

Name Type Description
Observations Dict[str, Array]

observations for each agent, keyed by agent name

State State

environment state

step(key, state, actions, reset_state=None)

Performs step transitions in the environment. Resets the environment if done. To control the reset state, pass reset_state. Otherwise, the environment will reset using self.reset.

Parameters:

Name Type Description Default
key PRNGKey

random key

required
state State

environment state

required
actions Dict[str, Array]

agent actions, keyed by agent name

required
reset_state Optional[State]

Optional environment state to reset to on episode completion. Defaults to None.

None

Returns:

Name Type Description
Observations Dict[str, Array]

next observations

State State

next environment state

Rewards Dict[str, float]

rewards, keyed by agent name

Dones Dict[str, bool]

dones, keyed by agent name:

Info Dict

info dictionary

step_env(key, state, actions)

Environment-specific step transition.

Parameters:

Name Type Description Default
key PRNGKey

random key

required
state State

environment state

required
actions Dict[str, Array]

agent actions, keyed by agent name

required

Returns:

Name Type Description
Observations Dict[str, Array]

next observations

State State

next environment state

Rewards Dict[str, float]

rewards, keyed by agent name

Dones Dict[str, bool]

dones, keyed by agent name:

Info Dict

info dictionary