Project Structure
The code in this GitHub repository is structured as follows:
- configs:
Configuration files including hyperparameter settings, search spaces, and environment parameters.
- notebooks:
Notebooks for debugging, preprocessing, hyperparameter search, and evaluation.
- src/wrapper:
Environment wrapper classes for continuous masking, random replacement, projection, discretization, and parameterized discretization.
- src/utils:
Utility functions. For example, to load an agent.
- src/evaluation:
Evaluation and visualization functionality.
- src/envs:
Obstacle avoidance, oil extraction, and fuel saving environments.
- src/algorithms:
Rllib classes for MPS-TD3, PAM, and dynamic interval action spaces.
Note that independent ddpg was the previous name for MPS-TD3. Unfortunately, it was not possible to rename the class without running all experiments again.
- src/run.py:
Main functions to train and test agents.