RL4UC: Reinforcement Learning for Unit Commitment
This project contains an RL environment for the unit commitment problem.
## Installation
You can install this repository by running:
git clone https://github.com/pwdemars/rl4uc.git
cd rl4uc
pip install .
Example usage:
Below we will try an action on the 5 generator system. An action is a commitment decision for the following time period, defined by a binary numpy array: 1 indicates that we want to turn (or leave) the generator on, 0 indicates turn or leave it off.
from rl4uc.environment import make_env
import numpy as np
# Create an environment, 5 generators by default.
env = make_env()
# Reset the environment to a random demand profile.
obs_init = env.reset()
# Define a commitment decision for the next time period.
action = np.array([1,1,0,0,0]) # Turn on generators 0 & 1, turns all others off.
# Take the action, observe the reward.
observation, reward, done = env.step(action)
print("Dispatch: {}".format(env.disp))
print("Finished? {}".format(done))
print("Reward: {:.2f}".format(reward))
Release files for rl4uc-pwdemars 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rl4uc_pwdemars-0.0.1-py3.8.egg | Legacy Egg format | - | - | Details |
Release files / rl4uc_pwdemars-0.0.1-py3.8.egg
| Download URL | rl4uc_pwdemars-0.0.1-py3.8.egg |
|---|---|
| Size | 33.2 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
b54a02a28b2d4df9dd706d79e96c39b3944cef9b2a1e685c06f4e4cf5af9bca7
|
|
BLAKE2b-256 checksum How to use checksums |
01749ff9a85f8260045d2f195b43f01f21d29096df49cbb98d31df857966d7a9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.7.0 pkginfo/1.5.0.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
|