Skip to content

frknayk/Reinforcement-Learning-In-Control

Repository files navigation

RlControl

Designing Controllers via Deep Reinforcement Learning


Sample signal

-----------------------------------------------------

📝 About The Project

The project aims to control linear/nonlinear dynamical systems in model-free and model-based setting with SOTA deep reinforcement learning algorithms

-----------------------------------------------------

Training Page

Testing Page

PID Control Page

-----------------------------------------------------

Installation Steps

Follow steps below,

1. Create Conda environment:
    - 'conda env create --name rlcontrol --file=environment.yml'

2. Install OpenAI Gym Environment
    - Install gym_control environment: `pip install -e .`

- Export conda env yaml: `conda env export > environment.yml --no-builds`
- Export conda env yaml as requirements.txt: `conda list -e > requirements.txt`

Run App in Local

1. Activate rlcontrol environment
  `conda activate rlcontrol`
2. Run streamlit app and watch app at `http://localhost:8502`
  `streamlit run app.py` 

Build for docker based deployment

  • docker build -t streamlit .

-----------------------------------------------------

🍴 Prerequisites

The following open source packages are used in this project:

  • streamlit
  • torch
  • ray
  • rllib
  • control
  • gymnasium
  • tensorboardx
  • tqdm
  • numpy
  • matplotlib
  • plotly
  • pandas
  • pickle5
  • zipfile36

-----------------------------------------------------

Future Work

  • Track experiments from db (postgresql)
  • Fix seeds