Skip to content

Commit

Permalink
Merge pull request #7 from AlgTUDelft/compatibility-update
Browse files Browse the repository at this point in the history
Updated version to 0.0.3
  • Loading branch information
greg-neustroev authored Sep 14, 2023
2 parents 00ceb71 + 99b1ec2 commit aca1380
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 35 deletions.
33 changes: 4 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,9 @@ _Deep Reinforcement Learning for Active Wake Control_ (to be published at AAMAS'

### Replicating the Experiments

Because each experiment has many parameters, we use configuration files to describe each experiment. The configuration
files for the experiments presented in the paper can be found in `./code/configs`: `action_representations_*.yml` for
the action representation experiment (Section 4.1), and `noisy_*.yml` for the noisy observation experiment
(Section 4.2). You can also create new configuration files to run your own experiments.
The current version of the repository contains only the environment itself, so that users do not have to download the experiments presented in the paper if they do not need them.

Make sure that you are using Python 3.8 or newer. You also need to install required packages by running
`python3 -m pip install -r requirements.txt` from the project's folder.

To replicate the experiments in the paper, run `python3 main.py --config CONFIG_FILE` from the `code` directory,
where `CONFIG_FILE` is a path to a configuration file. The output data is written in Tensorboard
format to `<current-path>/<directory>/<name>/...`, where `<current-path>` is the path the script was executed from and
`<directory>` and `<name>` correspond to parameters specified in the configuration file. You can use
`./code/tensorboard_to_csv.py --path <PATH>` to convert the output from `<PATH>` to a `.csv`-file.
If you are interested in the scripts and configurations for the experiments or the supplementary material for the original paper, please check the release 0.0.1 of this repository for the code and the instructions.

### Building from the Source Code

Expand All @@ -34,8 +24,8 @@ Next, build the package by running `python3 -m build` from the project's directo
This will create `./dist` with
a `wind_farm_gym-<VERSION>-py3-none-any.whl` file in it, where `<VERSION>` is the current release version.

Finally, install the package by running `python3 -m pip install wind_farm_gym-<VERSION>-py3-none-any.whl`, or
`python3 -m pip install wind_farm_gym-<VERSION>-py3-none-any.whl --force-reinstall` if you want to reinstall an existing
Finally, install the package by running `python3 -m pip install dist/wind_farm_gym-<VERSION>-py3-none-any.whl`, or
`python3 -m pip install dist/wind_farm_gym-<VERSION>-py3-none-any.whl --force-reinstall` if you want to reinstall an existing
installation. This should install the package and its dependencies.

To test that the package is available and working, you can run the following example, also available at
Expand All @@ -58,21 +48,6 @@ env.close()

![A simulation of an overhead view of a wind farm](build-test.png)

## Contents

- `./code` contains the source code:
- `agent` for implementations of RL agents;
- `config` for configuration files used in the experiments;
- `wind_farm_gym` for the environment.
- `./data` contains the datasets used in the paper:
- `wind_data` contains the measurements from Hollandse Kust Noord (site B) used to estimate the transition model in
Section 3.4.
- the other subdirectories contain the results of the experiments:
- `action_representations_tunnel` for the experiment presented in Section 4.1.
- `noisy_1` ... `noisy_7` for the experiment presented in Section 4.2; each folder corresponds to a different
level of noise, 1% ... 7%.
- `supplement.pdf` is the supplementary material submitted with the paper.

## Citation

Please, cite the paper if you use it:
Expand Down
10 changes: 4 additions & 6 deletions setup.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[metadata]
name = wind_farm_gym
version = 0.0.2
version = 0.0.3
author = Grigory (Greg) Neustroev
author_email = [email protected]
description = An OpenAI Gym environment for active wake control via reinforcement learning
Expand All @@ -18,14 +18,12 @@ classifiers =

[options]
install_requires =
pyglet
gym
pyglet==1.5.21
gymnasium==0.29.1
matplotlib
numpy
scipy
FLORIS>=2.4
package_dir =
= code
FLORIS==2.4
packages =
wind_farm_gym
wind_farm_gym.wind_process
Expand Down
Binary file removed supplement.pdf
Binary file not shown.

0 comments on commit aca1380

Please sign in to comment.