sinergym.utils.wrappers.EnergyCostWrapper
- class sinergym.utils.wrappers.EnergyCostWrapper(env: Env, energy_cost_data_path: str, reward_kwargs: Dict[str, Any] | None = {'energy_cost_variables': ['energy_cost'], 'energy_variables': ['HVAC_electricity_demand_rate'], 'energy_weight': 0.4, 'lambda_energy': 0.0001, 'lambda_energy_cost': 1.0, 'lambda_temperature': 1.0, 'range_comfort_summer': [23.0, 26.0], 'range_comfort_winter': [20.0, 23.5], 'temperature_variables': ['air_temperature'], 'temperature_weight': 0.4}, energy_cost_variability: Tuple[float, float, float] | None = None)
- __init__(env: Env, energy_cost_data_path: str, reward_kwargs: Dict[str, Any] | None = {'energy_cost_variables': ['energy_cost'], 'energy_variables': ['HVAC_electricity_demand_rate'], 'energy_weight': 0.4, 'lambda_energy': 0.0001, 'lambda_energy_cost': 1.0, 'lambda_temperature': 1.0, 'range_comfort_summer': [23.0, 26.0], 'range_comfort_winter': [20.0, 23.5], 'temperature_variables': ['air_temperature'], 'temperature_weight': 0.4}, energy_cost_variability: Tuple[float, float, float] | None = None)
Adds energy cost information to the current observation.
- Parameters:
env (Env) – Original Gym environment.
energy_cost_data_path (str) – Pathfile from which the energy cost data is obtained.
energy_cost_variability (Tuple[float,float,float], optional) – variation for energy cost data for OU process (sigma, mu and tau).
reward_kwargs (Dict[str, Any], optional) – Parameters for customizing the reward function.
Methods
__init__(env, energy_cost_data_path[, ...])Adds energy cost 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 energy cost information.
render()Uses the
render()of theenvthat can be overwritten to change the returned data.reset([seed, options])Resets the environment.
Sets the cost of energy data used to construct the state observation.
set_wrapper_attr(name, value, *[, force])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_spaceReturn the
Envaction_spaceunless overwritten then the wrapperaction_spaceis used.metadataReturns the
Envmetadata.np_randomReturns the
Envnp_randomattribute.np_random_seedReturns the base environment's
np_random_seed.observation_spaceReturn the
Envobservation_spaceunless overwritten then the wrapperobservation_spaceis used.render_modeReturns the
Envrender_mode.specReturns the
Envspecattribute with the WrapperSpec if the wrapper inherits from EzPickle.unwrappedReturns the base environment of the wrapper.
- logger = <Logger WRAPPER EnergyCostWrapper (INFO)>
- observation(obs: ndarray, info: Dict[str, Any]) ndarray
Build the state observation by adding energy cost 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_energy_cost_data()
Sets the cost of energy data used to construct the state observation.
- step(action: 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]]