sinergym.utils.wrappers.LoggerWrapper
- class sinergym.utils.wrappers.LoggerWrapper(env: ~gymnasium.core.Env, storage_class: ~typing.Callable = <class 'sinergym.utils.logger.LoggerStorage'>)
- __init__(env: ~gymnasium.core.Env, storage_class: ~typing.Callable = <class 'sinergym.utils.logger.LoggerStorage'>)
Wrapper to log data from environment interaction.
- Parameters:
env (Env) – Original Sinergym environment.
storage_class (Callable, optional) – Storage class to be used. Defaults to Sinergym LoggerStorage class.
Methods
__init__
(env[, storage_class])Wrapper to log data from environment interaction.
calculate_custom_metrics
(obs, action, ...)Calculate custom metrics from current interaction (or passed using self.data_logger attributes)
class_name
()Returns the class name of the wrapper.
close
()Close the environment and save normalization calibration.
Return data summary for the logger. This method should be implemented in the child classes.
get_wrapper_attr
(name)Gets an attribute from the wrapper and lower environments if name doesn't exist in this object.
has_wrapper_attr
(name)Checks if the given attribute is within the wrapper or its environment.
render
()Uses the
render()
of theenv
that can be overwritten to change the returned data.reset
([seed, options])Reset the environment and the information logged.
set_wrapper_attr
(name, value)Sets an attribute on this wrapper or lower environment if name is already defined.
step
(action)Uses the
step()
of theenv
that can be overwritten to change the returned data.wrapper_spec
(**kwargs)Generates a WrapperSpec for the wrappers.
Attributes
action_space
Return the
Env
action_space
unless overwritten then the wrapperaction_space
is used.metadata
Returns the
Env
metadata
.np_random
Returns the
Env
np_random
attribute.np_random_seed
Returns the base environment's
np_random_seed
.observation_space
Return the
Env
observation_space
unless overwritten then the wrapperobservation_space
is used.render_mode
Returns the
Env
render_mode
.spec
Returns the
Env
spec
attribute with the WrapperSpec if the wrapper inherits from EzPickle.unwrapped
Returns the base environment of the wrapper.
- calculate_custom_metrics(obs: ndarray, action: int | ndarray, reward: float, info: Dict[str, Any], terminated: bool, truncated: bool)
Calculate custom metrics from current interaction (or passed using self.data_logger attributes)
- Parameters:
obs (np.ndarray) – Observation from environment.
action (Union[int, np.ndarray]) – Action taken in environment.
reward (float) – Reward received from environment.
info (Dict[str, Any]) – Information from environment.
terminated (bool) – Flag to indicate if episode is terminated.
truncated (bool) – Flag to indicate if episode is truncated.
- get_episode_summary() Dict[str, float]
- Return data summary for the logger. This method should be implemented in the child classes.
This method determines the data summary of episodes in Sinergym environments.
- Returns:
Data summary.
- Return type:
Dict[str, float]
- logger = <Logger WRAPPER LoggerWrapper (INFO)>