Skip to content

Releases: ugr-sail/sinergym

Update v1.8.2

01 Apr 08:41
Compare
Choose a tag to compare

Patch Notes

Fixes #192
Fixes #191
Fixes #166
Fixes #194
Fixes #198
Fixes #155
Fixes #151

Changelog

  • Added try_env.py to workspace in Dockerfile.
  • Deleted default parameter for dictionary in Normalize wrapper and add that dictionary specification to load_model.py.
  • Added conda environment file to configure automatically with python 3.9 version and Sinergym module (and pip dependencies).
  • Fix datacenter-cool-X environments name in Sinergym register.
  • Re-estructure documentation order, installation explanation re-estructured too, added config tests, more examples about how to use Sinergym.
  • Added year field to Sinergym in order to define runperiods.
  • Added runperiod extra_parameter (changes in common, controller, wrappers, rewards, eplus_env in order to adapt it to new year field in environmets).
  • New documentation in extra configuration.
  • README.md synchronized with the Sinergym documentation.
  • Tests adapted to new version.
  • Modify .devcontainer.
  • Deleted default python version (python3 command) from Dockerfile.
  • Now it is defined a base reward class, BaseReward, which receives the environment as input as well as other parameters to be used. Then, the __call__ method calculates the reward, based on the attributes of the environment.

Update v1.7.8

23 Mar 15:14
Compare
Choose a tag to compare

Patch Notes

Fixes #180
Fixes #185
Fixes #187
Fixes #182
Fixes #5
Fixes #189
Fixes #190

Changelog

  • Added docs/build/ to .gitignore.
  • Deleted docs/build/ from repository.
  • Added gh-pages to commit and push documentation workflow.
  • Edited documentation with this new feature.
  • Edited the gh-pages branch by removing the entire repository except for the documentation compilation.
  • Modified merge workflow, documentation build in folder called compilation in main branch and added new path to index.html.
  • Update documentation with new functionality.
  • Added a python script to load trained models in local storage.
  • Added stable-baselines3 module to test tag in setup.py extra_requires packages.
  • Changed names generated in DRL_battery.py in order to solve #187
  • Added act_repeat and max_data_store_num parameters to env constructor (for simulator).
  • Added checked new weathers using Sinergym automatic adaptation IDF (#119)
  • Added Eplus-datacenter-cool-X environments to available registered ID's.
  • Added news Eplus-datacenter-cool-X ID's to documentation.
  • Adapted tests in order to be independent between them.

Update v1.7.7

15 Mar 13:30
07ed0dd
Compare
Choose a tag to compare

Patch Notes

Fixes #169
Fixes #171
Fixes #173
Fixes #168
Fixes #175
Fixes #176
Fixes #178

  • Updated RBC according to FSEC standard setpoints. Now both outdoor air drybulb temperature and hour (day, evening, night) are considered in order to update setpoints.
  • A new function has been added to utils/common.py in order to avoid repeated code when obtaining seasonal comfort ranges.
  • This new function has been added in rewards.py methods as well as in the updated RBC in controllers.py.
  • Changed name .vscode to .vscode_conf in order to not affect current Visual Studio Code IDE.
  • Updated merge_pr.yml workflow in order to solve #168
  • Deleted ERROR: Energyplus Completed Succesfully message in Energyplus log.
  • Fixed duplicated progress.csv lines in Sinergym logger.
  • Stable Baselines algorithms don't implement an env.close() when training ends. This env.close() has been added in DRL_battery.py accordingly.
  • DRL_battery.py total timesteps training with MINUS 1 in order to not generate an empty episode at the end.
  • Re-structuration of Evaluation Callback.
  • Separated training env of evaluation env in DRL_battery.py in order to not merge logs and outputs of both processes.
  • Fixed tests to integrate all bug fixes explained above.
  • Modified MANIFEST.in in order to include sinergym/data in PyPi distribution and solve #176
  • Solved #178

Update v1.7.6

16 Feb 09:02
14bbc82
Compare
Choose a tag to compare

Issues

Fixes #137
Fixes #161
Fixes #159

Changelog

  • Updated DDY and EPW files from energyplus instead of onbuild.org.
  • Updated environments registered with new filenames.
  • Minor change: Solved label bug in feature request issue template.
  • ci skip possibility when [ci skip] string is present in commit message (pull request).
  • Trying to solve PyPi workflow.
  • Updating version from 1.7.5 to 1.7.6

Update v1.7.5

14 Feb 16:03
Compare
Choose a tag to compare

Fix

Fixes #132
Fixes #120
Fixes #136
Fixes #142
Fixes #135
Fixes #141
Fixes #147
Fixes #148
Fixes #154
Fixes #156
Fixes #146

Changelog

  • Setup.cfg has been included in repository root.

  • Setup.py and Setup.cfg include more Sinergym package information such as packages, license, authors, email, description, GitHub URL, project keywords, long description, classifiers...

  • MANIFEST.in is included in order to detect requirements.txt and sinergym/version.txt in PyPi package.

  • Documentation generated about PyPi installation: pip install sinergym[extras].

  • README.md updated in consequence.

  • Added CITATION.bib to repository root.

  • Added CODE_OF_CONDUCT.md to repository root.

  • Added CONTRIBUTING.md to repository root.

  • Added PULL_REQUEST_TEMPLATE.md

  • Added ISSUE_TEMPLATES

  • Modified protection.yml workflow; test changes raise a warning instead of an error.

  • Added if statement for source documentation changes in documentation_check.yml workflow

  • Added same improvement to the documentation job in merge_pr.yml workflow

  • Update GitHub actions section in documentation accordingly.

  • Added a job in create release workflow. Whether there are secrets configured, then PyPi will be updated with the new version.

  • Added documentation for GitHub Actions section in order to include this PyPi automatization.

  • Apply isort standard to Sinergym code (whole project).

  • Included isort in requirements.txt

  • Added isort functionality in format check (create PR workflows) and bot format commit (merge workflow).

  • Unified all pull request workflow in a yml file (create_pr.yml)

  • Added documentation in GitHub Action section.

  • Added isort info in CONTRIBUTING.md

  • Module sinergym has been typed in inputs/outputs using pytype

  • Added .pytype/ and .pytest_cache to gitignore.

  • Added pytype to Contributing.md

  • Added pytype workflow in pull request event.

  • Documentation for pytype workflow.

  • Added contributing reference to documentation.

  • Pull request template update with pytype and isort checklist.

  • Updated tests for simulator changes with pytype.

  • Updated docstring with pytypes specification (Google Standard).

  • Specified google standard for docstring in CONTRIBUTING.md

  • Bots workflows to commit changes are synchronized now.

  • Added enchant C library to Dockerfile in order to enable sphinx-spelling extension.

  • Added sphinxcontrib-spelling and pyenchant to doc and extra tag in setup.py

  • Created spelling_wordlist.txt in order to ignore words relational with Sinergym project.

  • Fixed Spelling errors in documentation (docstring too)

  • (Workflows have been checked in forked repository).

  • Created spelling workflow in create_pr.yml and merge_pr.yml.

  • Updated CONTRIBUTING.md and PR template checklist with new functionality.

  • Updated Sinergym version to v1.7.5

Update v1.7.2 - workflows update

31 Jan 09:17
Compare
Choose a tag to compare

Patch Notes

  • Workflows have been updated in order to support pull requests from forked repositories.
  • Now workflow in pull request check code format (warnings), documentation and tests.
  • Protection workflow is created in order to check users have no modified workflows or tests (this workflow use code base PR always).
  • When a pull request is merged or there is a commit pushed in main branch, a workflow will update documentation and code format using a bot commit and it will update container latest tag in Docker Hub
  • Github Action documentation has been updated.

Update v1.7.0 - Config class in simulator

28 Jan 12:30
6a69afe
Compare
Choose a tag to compare

Patch Notes

  • Close #110 #118 #117 #115 #113 #112 #111 #109 #108
  • Get runperiod info uses opyplus functionality.
  • Get episode length uses opyplus functionality.
  • Class Config created and integrated in Sinergym simulator like instance.
  • IDF's specific for each weather have been deleted (only original IDF's are in the repository).
  • DDY's files added to repository to get Location and DesignDays about each weather file.
  • Tests have been updated for new simulator structure and some tests about Config class have been added.

Config Class

  • Config class has all models like python objects (using opyplus module for that purpose):
    • Building (IDF)
    • Weather (EPW)
    • Energyplus dictionary (IDD)
    • Location and Designday available for each weather (DDY)
  • Config class has functionality to save EPW and IDF version files in episodes dir_path output from python models.
  • Currently, Config class manages experiments directory path and subdirectories (migrated from simulator).
  • Get runperiod, get episode length and all functionality which depends on building models (opyplus object) have been migrated from simulator too.
  • Config can modify building in order to apply weather location and designdays (adaptation to a specific EPŴ functionality) and apply extra configuration in simulation with a dictionary parameter (documentation will be updated).
  • Auto-delete episodes directories when number of them is upper than maximum is migrated to config too.
  • Config apply variation to EPW and store the file in episode folder.

Common

  • Added sinergym.utils.common.py functionality to read and update building model:
    • Get opyplus record keys.
    • Prepare a batch of records.

Simulator

  • Deleted all functionality integrated in Config.

Dockerfile

  • Dockerfile has been updated with python 3.9.10 in order to close #115 BUG.

GitHub Workflows

  • Workflow update the latest tag in Docker Hub has been separated from testing process (now is executed when pull request is merged definitively).

Documentation

  • Documentation for this pull request has been written.

Update v1.6.0

28 Dec 10:30
ff03a80
Compare
Choose a tag to compare

Patch notes

  • [BUGFIX] Solved documentation workflow bug with API reference compilation (Sphinx).
  • [BUGFIX] ZeroDivision Exception managed in normalization wrapper.
  • Added gcloud modules in [extras] packages from setup.py.
  • Added Documentation for Google Cloud Credentials
  • Added Exception management when MLFLOW_TRACKING_URI is an invalid IP.
  • Enhanced some docstring code.
  • Added docs/source/_build to gitignore (this directory is generated by visual studio code preview).
  • Update README.md

DRL_battery.py

  • Configuration for remote_store and/or mlflow_store.
  • Added artifact management in mlflow server.

Update v1.4.0 - Google Cloud Update

04 Nov 11:05
0510f7f
Compare
Choose a tag to compare

Patch Notes

  • Remote containers auto-delete when their experiments finish.
  • Dockerfile has been updated in order to support Mlflow functionality and solve #87.
  • Added DRL dependency to container registry built from setup.py.
  • cloud_manager.py create a remote bucket if it doesn't exist to store experiments results.
  • Added autopep8 to repository requirements.
  • Added functionality to sinergym/utils/gcloud.py in order to manage buckets and Google cloud Command from remote containers.
  • Experiments now have better names.
  • Ternsorboard log path can be customized.
  • Mlflow script to set up a Mlflow tracking server in Google Cloud.
  • Migrate eplus_old to eplus in simulator script
  • Set version variable in sinergym package
  • Documentation (some details of this pull request have been added too)

closes #77 #79 #80 #85 #88

Bugs Solved

Fix #86, #87, #89, #90, #92 and #93

Update v1.3.0 - Rebranding Energym to Sinergym

29 Sep 14:45
9b49b9c
Compare
Choose a tag to compare

Patch Notes

  • The name of this project and tool will be Sinergym!
  • All documentation and script have been adaped to this new name.
  • Third party accounts and tools have been adapted accordingly as well such as Google Cloud Platform, Docker Hub, container registry, etc.