Env
AINE-DRL compatible reinforcement learning environment interface.
Module: aine_drl.env
class Env(ABC)
Properties
num_envs
Returns the number of environments.
@property
@abstractmethod
def num_envs(self) -> int
obs_spaces
Returns the shapes of the observation spaces.
@property
@abstractmethod
def obs_spaces(self) -> tuple[ObservationSpace, ...]
action_space
Returns action space of the environment.
@property
@abstractmethod
def action_space(self) -> ActionSpace
Methods
reset()
Resets the environment to an initial state and returns the initial observation.
@abstractmethod
def reset(self) -> Observation
Returns:
Name | Description | Shape |
---|---|---|
obs (Observation ) | Observation of the initial state. | *batch_shape = (num_envs,) details in Observation docs |
step()
Takes a step in the environment using an action.
@abstractmethod
def step(
self,
action: Action
) -> tuple[Observation, torch.Tensor, torch.Tensor, Observation | None]
Parameters:
Name | Description | Shape |
---|---|---|
action (Action ) | Action provided by the agent. | *batch_shape = (num_envs,) details in Action docs |
Returns:
Name | Description | Shape |
---|---|---|
next_obs (Observation ) | Next observation which is automatically reset to the first observation of the next episode. | *batch_shape = (num_envs,) details in Observation docs |
reward (Tensor ) | Scalar reward values | (num_envs, 1) |
terminated (Tensor ) | Whether the episode is terminated | (num_envs, 1) |
real_final_next_obs (Observation | None ) | "Real" final next observation of the episode. You can access only if any environment is terminated. | *batch_shape = (num_terminated_envs,) details in Observation docs |
close()
Close all environments and release resources.
@abstractmethod
def close(self)