sinergym.utils.wrappers.LoggerWrapper

class sinergym.utils.wrappers.LoggerWrapper(env: ~sinergym.envs.eplus_env.EplusEnv, logger_class: ~typing.Callable = <class 'sinergym.utils.logger.CSVLogger'>, monitor_header: ~typing.List[str] | None = None, progress_header: ~typing.List[str] | None = None, flag: bool = True)
__init__(env: ~sinergym.envs.eplus_env.EplusEnv, logger_class: ~typing.Callable = <class 'sinergym.utils.logger.CSVLogger'>, monitor_header: ~typing.List[str] | None = None, progress_header: ~typing.List[str] | None = None, flag: bool = True)

CSVLogger to log interactions with environment.

Parameters:
  • env (EplusEnv) – Original Gym environment in Sinergym.

  • logger_class (CSVLogger) – CSV Logger class to use to log all information.

  • monitor_header – Header for monitor.csv in each episode. Default is None (default format).

  • progress_header – Header for progress.csv in whole simulation. Default is None (default format).

  • flag (bool, optional) – State of logger (activate or deactivate). Defaults to True.

Methods

__init__(env[, logger_class, ...])

CSVLogger to log interactions with environment.

activate_logger()

Activate logger if its flag False.

class_name()

Returns the class name of the wrapper.

close()

Recording last episode summary and close env.

deactivate_logger()

Deactivate logger if its flag True.

get_wrapper_attr(name)

Gets an attribute from the wrapper and lower environments if name doesn't exist in this object.

render()

Uses the render() of the env that can be overwritten to change the returned data.

reset([seed, options])

Reset the environment.

step(action)

Sends action to the environment.

wrapper_spec(**kwargs)

Generates a WrapperSpec for the wrappers.

Attributes

action_space

Return the Env action_space unless overwritten then the wrapper action_space is used.

logger

metadata

Returns the Env metadata.

np_random

Returns the Env np_random attribute.

observation_space

Return the Env observation_space unless overwritten then the wrapper observation_space is used.

render_mode

Returns the Env render_mode.

reward_range

Return the Env reward_range unless overwritten then the wrapper reward_range is used.

spec

Returns the Env spec attribute with the WrapperSpec if the wrapper inherits from EzPickle.

unwrapped

Returns the base environment of the wrapper.

activate_logger() None

Activate logger if its flag False.

close() None

Recording last episode summary and close env.

deactivate_logger() None

Deactivate logger if its flag True.

logger = <Logger WRAPPER LoggerWrapper (INFO)>
reset(seed: int | None = None, options: Dict[str, Any] | None = None) Tuple[ndarray, Dict[str, Any]]

Reset the environment. Recording episode summary in logger

Parameters:
  • seed (Optional[int]) – The seed that is used to initialize the environment’s episode (np_random). if value is None, a seed will be chosen from some source of entropy. Defaults to None.

  • options (Optional[Dict[str, Any]]) – Additional information to specify how the environment is reset. Defaults to None.

Returns:

Current observation and info context with additional information.

Return type:

Tuple[np.ndarray,Dict[str,Any]]

step(action: int | ndarray) Tuple[ndarray, float, bool, bool, Dict[str, Any]]

Sends action to the environment. Logging new information in monitor.csv.

Parameters:

action (Union[int, float, np.integer, np.ndarray, List[Any], Tuple[Any]]) – Action selected by the agent.

Returns:

Observation for next timestep, reward obtained, Whether the episode has ended or not, Whether episode has been truncated or not, and a dictionary with extra information

Return type:

Tuple[np.ndarray, float, bool, Dict[str, Any]]