Skip to main content

large-scale safety-critical control benchmarks for reinforcement learning algorithms

Project description

controlgym

Description

Controlgym provides 36 safety-critical industrial control environments and 10 infinite-dimensional PDE-based control problems with continuous, unbounded action and observation spaces that are inspired by real-world applications. This project supports the Learning for Dynamics & Control (L4DC) community, focusing on vital issues: convergence of reinforcement learning (RL) algorithms in policy development, stability, safety, and robustness of learning-based controllers, and the scalability of RL algorithms to high and potentially infinite-dimensional systems. We provide a detailed description of controlgym in this paper.

Installation

Clone the Repository

To get started, clone the controlgym repository and navigate to folder:

git clone https://github.com/xiangyuan-zhang/controlgym.git
cd controlgym
Windows Installation
# Step 1: create and activate a virtual environment (Optional)
# Example a: using venv
py -3.10 -m venv controlgym-env
.\controlgym-env\Scripts\activate.bat
# Example b: using conda
conda create -n controlgym-env python=3.10
conda activate controlgym-env

# Step 2: install pytorch with cuda (optional)
pip3 install --upgrade pip
pip3 install torch --index-url https://download.pytorch.org/whl/cu121Install the repository

# Step 3: install the controlgym repository
# Example a: using pip
pip3 install -e .
# Example b: using poetry
poetry install

# Step 4: deactivate the virtual environment (Optional)
# For venv
.\controlgym-env\Scripts\deactivate.bat
# For conda
conda deactivate
Linux/MacOS Installation
# Step 1: Create and activate a virtual environment (Optional)
# Example a: using venv
python3.10 -m venv controlgym-env
source controlgym-env/bin/activate
# Example b: using conda
conda create -n controlgym-env python=3.10
conda activate controlgym-env

# Step 2: Install the controlgym repository
# Example a: using pip
pip3 install -e .
# Example b: using poetry
poetry install

# Step 3: Deactivate the virtual environment (Optional)
# For venv
deactivate
# For conda
conda deactivate

Getting Started

Check out our code examples in this Jupyter notebook file.

Reference

@article{zhang2023controlgym,
    title = {Controlgym: Large-Scale Safety-Critical Control Environments for Benchmarking Reinforcement Learning Algorithms},
    author = {Zhang, Xiangyuan and Mao, Weichao and Mowlavi, Saviz and Benosman, Mouhacine and Ba{\c{s}}ar, Tamer},
    journal = {arXiv preprint arXiv:2311.18736},
    year = {2023}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

controlgym-0.1.1.tar.gz (849.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

controlgym-0.1.1-py3-none-any.whl (883.9 kB view details)

Uploaded Python 3

File details

Details for the file controlgym-0.1.1.tar.gz.

File metadata

  • Download URL: controlgym-0.1.1.tar.gz
  • Upload date:
  • Size: 849.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.0 Darwin/22.5.0

File hashes

Hashes for controlgym-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e4dd05cea1ed6012d380e24ac57784e121633f6aa0d4b97da1f13e0626e573c6
MD5 f60356edf7c83bcb6989cc89e486797e
BLAKE2b-256 520ebe0dada7cc98be64d4a848ffdff951cbd928b946e63e6fd5e19094d3cf73

See more details on using hashes here.

File details

Details for the file controlgym-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: controlgym-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 883.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.12.0 Darwin/22.5.0

File hashes

Hashes for controlgym-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 53cd205732e8283cca44c1f427ccb55c8d228b3f6d154338a6e1112472f1d003
MD5 fbb626ad1327aa5411fee3246f936395
BLAKE2b-256 db868b8ede70e32ef6c988de23ea979f7569fb59d33097c05d7f6e86598b16d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page