energy-py
Reinforcement learning for energy systems.
https://github.com/ADGEfficiency/energy-py
Category: Energy Systems
Sub Category: Energy System Modeling Frameworks
Keywords
energy reinforcement-learning
Last synced: about 21 hours ago
JSON representation
Repository metadata
Reinforcement learning for energy systems
- Host: GitHub
- URL: https://github.com/ADGEfficiency/energy-py
- Owner: ADGEfficiency
- License: mit
- Created: 2017-04-03T10:14:01.000Z (about 8 years ago)
- Default Branch: main
- Last Pushed: 2025-04-25T01:39:54.000Z (2 days ago)
- Last Synced: 2025-04-25T02:30:42.328Z (2 days ago)
- Topics: energy, reinforcement-learning
- Language: Python
- Homepage:
- Size: 347 KB
- Stars: 179
- Watchers: 9
- Forks: 33
- Open Issues: 2
- Releases: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
README.md
energy-py
energy-py is a framework for running reinforcement learning experiments on energy environments.
The library is focused on electric battery storage, and offers a implementation of a many batteries operating in parallel.
energy-py includes an implementation of the Soft Actor-Critic reinforcement learning agent, implementated in Tensorflow 2:
- test & train episodes based on historical Australian electricity price data,
- checkpoints & restarts,
- logging in Tensorboard.
energy-py is built and maintained by Adam Green - [email protected].
Setup
$ make setup
Test
$ make test
Running experiments
energypy
has a high level API to run a specific run of an experiment from a JSON
config file.
The most interesting experiment is to run battery storage for price arbitrage in the Australian electricity market. This requires grabbing some data from S3. The command below will download a pre-made dataset and unzip it to ./dataset
:
$ make pulls3-dataset
You can then run the experiment from a JSON file:
$ energypy benchmarks/nem-battery.json
Results are saved into ./experiments/{env_name}/{run_name}
:
$ tree -L 3 experiments
experiments/
└── battery
├── nine
│ ├── checkpoints
│ ├── hyperparameters.json
│ ├── logs
│ └── tensorboard
└── random.pkl
Also provide wrappers around two gym
environments - Pendulum and Lunar Lander:
$ energypy benchmarks/pendulum.json
Running the Lunar Lander experiment has a dependency on Swig and pybox2d - which can require a bit of elbow-grease to setup depending on your environment.
$ energypy benchmarks/lunar.json
Owner metadata
- Name: Adam Green
- Login: ADGEfficiency
- Email:
- Kind: user
- Description:
- Website: adgefficiency.com
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/24447881?u=e53b8b16b3d12af8f359c7fc4707da0c027e0fe3&v=4
- Repositories: 78
- Last ynced at: 2024-06-11T15:43:25.030Z
- Profile URL: https://github.com/ADGEfficiency
GitHub Events
Total
- Issues event: 7
- Watch event: 6
- Delete event: 2
- Issue comment event: 9
- Push event: 68
- Pull request event: 4
- Create event: 1
Last Year
- Issues event: 7
- Watch event: 6
- Delete event: 2
- Issue comment event: 9
- Push event: 68
- Pull request event: 4
- Create event: 1
Committers metadata
Last synced: 5 days ago
Total Commits: 14
Total Committers: 2
Avg Commits per committer: 7.0
Development Distribution Score (DDS): 0.214
Commits in past year: 0
Committers in past year: 0
Avg Commits per committer in past year: 0.0
Development Distribution Score (DDS) in past year: 0.0
Name | Commits | |
---|---|---|
Adam Green | a****n@a****m | 11 |
Adam Green | u****u@i****l | 3 |
Committer domains:
Issue and Pull Request metadata
Last synced: 2 days ago
Total issues: 43
Total pull requests: 26
Average time to close issues: about 1 year
Average time to close pull requests: 4 months
Total issue authors: 10
Total pull request authors: 7
Average comments per issue: 1.33
Average comments per pull request: 0.58
Merged pull request: 10
Bot issues: 0
Bot pull requests: 12
Past year issues: 2
Past year pull requests: 2
Past year average time to close issues: 6 days
Past year average time to close pull requests: 6 days
Past year issue authors: 2
Past year pull request authors: 1
Past year average comments per issue: 1.0
Past year average comments per pull request: 0.0
Past year merged pull request: 1
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- ADGEfficiency (34)
- fokx (1)
- KeirSimmons (1)
- Sudococommunity (1)
- LucaNicoliYT88 (1)
- bollegijscoding (1)
- satishravindran (1)
- ghost (1)
- adityauser (1)
- IanQS (1)
Top Pull Request Authors
- dependabot[bot] (12)
- ADGEfficiency (4)
- hassaku (3)
- tomharvey (3)
- KeirSimmons (2)
- nhoening (1)
- ghost (1)
Top Issue Labels
Top Pull Request Labels
- dependencies (12)
Dependencies
- click *
- gym ==0.18.0
- imageio *
- pandas ==1.2.3
- pytest *
- tdqm *
- tensorflow ==2.5.0
- tensorflow-estimator ==2.5.0
- tensorflow-probability ==0.13.0
- Click *
- actions/checkout v2 composite
- actions/setup-python v2 composite
Score: 5.8916442118257715