Add PPO RL controller, scenario library, and evaluation pipeline#12
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a comprehensive Reinforcement Learning (RL) framework for voltage regulation using Proximal Policy Optimization (PPO), including training environments, controllers, and evaluation scripts. Key additions include a Gymnasium-compatible environment, PPO-based controllers, and utilities for generating scenario libraries and benchmarking against model-based and rule-based strategies. Feedback focuses on significant code duplication between the new scripts and core modules, particularly regarding profile generation and grid definitions. Reviewers also highlighted design concerns such as fragile file-searching logic for normalization stats, cross-script dependencies, and a functional limitation in the shared multi-site controller regarding command routing. Refactoring is recommended to centralize shared logic and improve the modularity of the scenario handling and simulation setup.
…l-dependency extra
|
@gemini review |
There was a problem hiding this comment.
Code Review
This pull request introduces a comprehensive reinforcement learning (RL) workflow for voltage regulation using Proximal Policy Optimization (PPO). Key additions include a Gymnasium environment, training and evaluation scripts, scenario library generation, and detailed documentation. To support this, the Coordinator was refactored to allow per-tick stepping and external command dispatch, and the rule-based controller was enhanced with zone-local observation capabilities. Feedback is provided regarding the .gitignore configuration, specifically suggesting the removal of leading slashes from Slurm and launch script patterns to ensure they are ignored across all subdirectories.
Library code (openg2g/)
Examples (examples/offline/)
Documentation (docs/)