From eabfef3bdb3ba26de988de4ebce383024f8865df Mon Sep 17 00:00:00 2001 From: Rick Staa Date: Thu, 22 Jun 2023 22:22:55 +0200 Subject: [PATCH] docs: improve package description (#260) --- .github/workflows/stable_learning_control.yml | 4 --- README.md | 25 +++---------------- package.json | 2 +- pyproject.toml | 2 +- 4 files changed, 6 insertions(+), 27 deletions(-) diff --git a/.github/workflows/stable_learning_control.yml b/.github/workflows/stable_learning_control.yml index b5ab9f336..d9996b5ca 100644 --- a/.github/workflows/stable_learning_control.yml +++ b/.github/workflows/stable_learning_control.yml @@ -57,9 +57,6 @@ jobs: fail-fast: false # Run all matrix jobs matrix: python-version: [3.8, 3.9, "3.10"] # Supported python versions - # permissions: - # contents: read - # pull-requests: write # Needed for codeconv to write on pull requests steps: - name: Checkout stable-learning-control repository uses: actions/checkout@v3 @@ -83,4 +80,3 @@ jobs: uses: codecov/codecov-action@v3 env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} - diff --git a/README.md b/README.md index c89439d2f..5776582d6 100644 --- a/README.md +++ b/README.md @@ -3,32 +3,15 @@ [![Baysian Learning Control CI](https://github.com/rickstaa/stable-learning-control/actions/workflows/stable_learning_control.yml/badge.svg)](https://github.com/rickstaa/stable-learning-control/actions/workflows/stable_learning_control.yml) [![GitHub release (latest by date)](https://img.shields.io/github/v/release/rickstaa/stable-learning-control)](https://github.com/rickstaa/stable-learning-control/releases) [![Python 3](https://img.shields.io/badge/Python->=3.8-brightgreen)](https://www.python.org/) -[![codecov](https://codecov.io/gh/rickstaa/stable-learning-control/branch/main/graph/badge.svg?token=RFM3OELQ3L)](https://codecov.io/gh/rickstaa/stable-learning-control) +[![codecov](https://codecov.io/gh/rickstaa/stable-learning-control/branch/main/graph/badge.svg?token=4SAME74CJ7)](https://codecov.io/gh/rickstaa/stable-learning-control) [![Contributions](https://img.shields.io/badge/contributions-welcome-brightgreen.svg)](CONTRIBUTING.md) ## Package Overview -Welcome to the Stable Learning Control (SLC) framework! The Stable Learning Control framework enables you to automatically create, train and deploy various safe (stable and robust) Reinforcement Learning (RL) and Imitation learning (IL) control algorithms directly from real-world data. This framework is made up of four main modules: +The Stable Learning Control (SLC) framework is a collection of robust Reinforcement Learning control algorithms designed to ensure stability. These algorithms are built upon the Lyapunov actor-critic architecture introduced by [Han et al. 2020](http://arxiv.org/abs/2004.14288). They guarantee stability and robustness by leveraging [Lyapunov stability theory](https://en.wikipedia.org/wiki/Lyapunov_stability). These algorithms are specifically tailored for use with [gymnasium environments](https://gymnasium.farama.org/) that feature a positive definite cost function. Several ready-to-use compatible environments can be found in the [stable-gym](https://github.com/rickstaa/stable-gym) package. -* [Modeling](./stable_learning_control/modeling): Module that uses state of the art System Identification and State Estimation techniques to create an [gymnasium environment](https://gymnasium.farama.org/) out of real data. -* [Control](./stable_learning_control/control): Module used to train several [Stable Learning Control](https://rickstaa.github.io/stable-learning-control/control/control.html) RL/IL agents on the built [gymnasium](https://gymnasium.farama.org/) environments. -* [Hardware](./stable_learning_control/hardware): Module that can be used to deploy the trained RL/IL agents onto the hardware of your choice. - -This framework follows a code structure similar to the [Spinningup](https://spinningup.openai.com/en/latest/) educational package. By doing this, we hope to make it easier for new researchers to get started with our Algorithms. If you are new to RL, you are therefore highly encouraged first to check out the SpinningUp documentation and play with before diving into our codebase. Our implementation sometimes deviates from the [Spinningup](https://spinningup.openai.com/en/latest/) version to increase code maintainability, extensibility and readability. - -## Clone the repository - -Since the repository contains several git submodules to use all the features, it needs to be cloned using the `--recurse-submodules` argument: - -```bash -git clone --recurse-submodules https://github.com/rickstaa/stable-learning-control.git -``` - -If you already cloned the repository and forgot the `--recurse-submodule` argument you can pull the submodules using the following git command: - -```bash -git submodule update --init --recursive -``` +> **Note** +> This framework follows a code structure similar to the [Spinningup](https://spinningup.openai.com/en/latest/) educational package. By doing this, we aim to make it easier for new researchers to start with our Algorithms. If you are new to RL, you are therefore highly encouraged to check out the SpinningUp documentation and play with it before diving into our codebase. Our implementation sometimes deviates from the [Spinningup](https://spinningup.openai.com/en/latest/) version to increase code maintainability, extensibility and readability. ## Installation and Usage diff --git a/package.json b/package.json index 61efc4a31..bfc7d90ad 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "stable-learning-control", "version": "4.0.0", - "description": "A framework for learning stable reinforcement learning policies.", + "description": "A framework for training theoretically stable (and robust) Reinforcement Learning control algorithms.", "keywords": [ "reinforcement-learning", "simulation", diff --git a/pyproject.toml b/pyproject.toml index f0fa45965..2c42178e9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,7 +11,7 @@ authors = [ {name = "Rick Staa", email = "rick.staa@outlook.com"} ] license = {file = "LICENSE"} -description = "A package that contains several gymnasium environments with cost functions compatible with (stable) RL agents (i.e. positive definite)." +description = "A framework for training theoretically stable (and robust) Reinforcement Learning control algorithms." keywords = [ "reinforcement-learning", "simulation",