Controlgym: Large-Scale Control Environments for Benchmarking Reinforcement Learning Algorithms

Xiangyuan Zhang, Weichao Mao, Saviz Mowlavi, Mouhacine Benosman, Tamer Başar
11/30/2023
eess.SYcs.AIcs.CE

Official code: xiangyuan-zhang/controlgym (56 stars, MIT, last commit 2024-04-02).

Abstract

We introduce controlgym, a library of thirty-six industrial control settings, and ten infinite-dimensional partial differential equation (PDE)-based control problems. Integrated within the OpenAI Gym/Gymnasium (Gym) framework, controlgym allows direct applications of standard reinforcement learning (RL) algorithms like stable-baselines3. Our control environments complement those in Gym with continuous, unbounded action and observation spaces, motivated by real-world control applications. Moreover, the PDE control environments uniquely allow the users to extend the state dimensionality of the system to infinity while preserving the intrinsic dynamics. This feature is crucial for evaluating the scalability of RL algorithms for control. This project serves the learning for dynamics & control (L4DC) community, aiming to explore key questions: the convergence of RL algorithms in learning control policies; the stability and robustness issues of learning-based controllers; and the scalability of RL algorithms to high- and potentially infinite-dimensional systems. We open-source the controlgym project at https://github.com/xiangyuan-zhang/controlgym.

View on arXivView PDF

Code Implementations(1)

MIT

Controlgym: Large-Scale Control Environments for Benchmarking Reinforcement Learning Algorithms

567PythonAug 27, 20232 years agoMIT
benchmark-suitecontrolhigh-dimensional-systemspdepde-solver+2 more

Similar Papers

Cite this paper

@article{zhang2023controlgym,
  title  = {Controlgym: Large-Scale Control Environments for Benchmarking Reinforcement Learning Algorithms},
  author = {Xiangyuan Zhang and Weichao Mao and Saviz Mowlavi and Mouhacine Benosman and Tamer Başar},
  year   = {2023},
  eprint = {2311.18736},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2311.18736v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2311.18736.svg)](https://codeofpaper.com/paper/2311.18736)

Discussion