sinergym.utils.wrappers.WeatherForecastingWrapper

class sinergym.utils.wrappers.WeatherForecastingWrapper(env: Env, n: int = 5, delta: int = 1, columns: List[str] = ['Dry Bulb Temperature', 'Relative Humidity', 'Wind Direction', 'Wind Speed', 'Direct Normal Radiation', 'Diffuse Horizontal Radiation'], forecast_variability: Dict[str, Tuple[float, float, float]] | None = None)
__init__(env: Env, n: int = 5, delta: int = 1, columns: List[str] = ['Dry Bulb Temperature', 'Relative Humidity', 'Wind Direction', 'Wind Speed', 'Direct Normal Radiation', 'Diffuse Horizontal Radiation'], forecast_variability: Dict[str, Tuple[float, float, float]] | None = None)

Adds weather forecast information to the current observation.

Parameters:
  • env (Env) – Original Gym environment.

  • n (int, optional) – Number of observations to be added. Default to 5.

  • delta (int, optional) – Time interval between observations. Defaults to 1.

  • columns (List[str], optional) – List of the names of the meteorological variables that will make up the weather forecast observation.

  • forecast_variability (Dict[str, Tuple[float, float, float]], optional) – Dictionary with the variation for each column in the weather data. Defaults to None.

  • sigma (The key is the column name and the value is a tuple with the)

  • provided (mean and tau for OU process. If not)

  • variability. (it assumes no)

Raises:

ValueError – If any key in forecast_variability is not present in the columns list.

Methods

__init__(env[, n, delta, columns, ...])

Adds weather forecast information to the current observation.

class_name()

Returns the class name of the wrapper.

close()

Closes the wrapper and env.

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.

observation(obs, info)

Build the state observation by adding weather forecast information.

render()

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

reset([seed, options])

Resets the environment.

set_forecast_data()

Set the weather data used to build de state observation.

set_wrapper_attr(name, value)

Sets an attribute on this wrapper or lower environment if name is already defined.

step(action)

Performs the action in the new 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.

np_random_seed

Returns the base environment's np_random_seed.

observation_space

Return the Env observation_space unless overwritten then the wrapper observation_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.

logger = <Logger WRAPPER WeatherForecastingWrapper (INFO)>
observation(obs: ndarray, info: Dict[str, Any]) ndarray

Build the state observation by adding weather forecast information.

Parameters:
  • obs (np.ndarray) – Original observation.

  • info (Dict[str, Any]) – Information about the environment.

Returns:

Transformed observation.

Return type:

np.ndarray

reset(seed: int | None = None, options: Dict[str, Any] | None = None) Tuple[ndarray, Dict[str, Any]]

Resets the environment.

Returns:

Tuple with next observation, and dict with information about the environment.

Return type:

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

set_forecast_data()

Set the weather data used to build de state observation. If forecast_variability is not None, it applies Ornstein-Uhlenbeck process to the data.

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

Performs the action in the new environment.

Parameters:

action (Union[int, np.ndarray]) – Action to be executed in environment.

Returns:

Tuple with next observation, reward, bool for terminated episode and dict with Information about the environment.

Return type:

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