QuarticGym: A Process Control Playground for RL Algorithms

The QuarticGym supplements several process control environments to the Openai Gym family, which quenches the pain of performing Deep Reinforcement Learning algorithms on them. Furthermore, we provided d4rl-like wrappers for accompanied datasets, making Offline RL on those environments even smoother.

Install

$ git clone --recurse-submodules git@github.com:Quarticai/QuarticGym.git
$ cd QuarticGym
$ pip install .

Note

You will need to build the PenSimPy environment with QuarticGym separately. Namely, build and install fastodeint following this instruction, then install PenSimPy.

For Linux users, you can just install fastodeint and PenSimPy by executing the following commands:

$ sudo apt-get install libomp-dev
$ sudo apt-get install libboost-all-dev
$ git clone --recursive git@github.com:Mohan-Zhang-u/fastodeint.git
$ cd fastodeint
$ pip install .
$ cd ..
$ git clone --recursive git@github.com:Mohan-Zhang-u/PenSimPy.git
$ cd PenSimPy
$ pip install .

If you also want to use the pre-built MPC and EMPC controllers, you would need to install mpctools by CasADi. For Linux users, you can execute the following commands:

$ git clone --recursive git@github.com:Mohan-Zhang-u/mpc-tools-casadi.git
$ cd mpc-tools-casadi
$ python mpctoolssetup.py install --user

Example Usage

See the jupyter notebook for example use cases.

Environments

Modules

Indices and tables