Skip to main content

Reinforcement learning algorithms in RLlib and PyTorch.

Project description

raylab

PyPI Travis (.com) Updates GitHub CodeStyle

Reinforcement learning algorithms in RLlib and PyTorch.

Introduction

Raylab provides agents and environments to be used with a normal RLlib/Tune setup.

import ray
from ray import tune
import raylab

def main():
    raylab.register_all_agents()
    raylab.register_all_environments()
    ray.init()
    tune.run(
        "NAF",
        local_dir=...,
        stop={"timesteps_total": 100000},
        config={
            "env": "CartPoleSwingUp-v0",
            "exploration_config": {
                "type": tune.grid_search([
                    "raylab.utils.exploration.GaussianNoise",
                    "raylab.utils.exploration.ParameterNoise"
                ])
            }
            ...
        },
    )

if __name__ == "__main__":
    main()

One can then visualize the results using raylab dashboard

https://i.imgur.com/bVc6WC5.png

Installation

pip install raylab

Algorithms

Paper

Agent Name

Actor Critic using Kronecker-factored Trust Region

ACKTR

Trust Region Policy Optimization

TRPO

Normalized Advantage Function

NAF

Stochastic Value Gradients

SVG(inf)/SVG(1)/SoftSVG

Soft Actor-Critic

SoftAC

Model-Based Policy Optimization

MBPO

Streamlined Off-Policy (DDPG)

SOP

Command-line interface

For a high-level description of the available utilities, run raylab –help

Usage: raylab [OPTIONS] COMMAND [ARGS]...

RayLab: Reinforcement learning algorithms in RLlib.

Options:
  --help  Show this message and exit.

  Commands:
    dashboard    Launch the experiment dashboard to monitor training progress.
    experiment   Launch a Tune experiment from a config file.
    find-best    Find the best experiment checkpoint as measured by a metric.
    plot         Draw lineplots of the relevant variables and display them on...
    plot-export  Draw lineplots of the relevant variables and save them as...
    rollout      Simulate an agent from a given checkpoint in the desired...

Packages

The project is structured as follows

raylab
├── agents            # Trainer and Policy classes
├── cli               # Command line utilities
├── distributions     # Extendend and additional PyTorch distributions
├── envs              # Gym environments
├── logger            # Tune loggers
├── modules           # PyTorch neural network modules for algorithms
    ├── basic         # Building blocks for neural networks
    ├── flows         # Normalizing Flow modules
    ├── distributions # TorchScript compatible distribution modules
├── policy            # Extensions and customizations of RLlib's policy API
├── utils             # miscellaneous utilities

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

0.6.5 (2020-05-21)

  • First release on PyPI.

Project details


Release history Release notifications | RSS feed

This version

0.7.1

Download files

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

Source Distribution

raylab-0.7.1.tar.gz (136.6 kB view details)

Uploaded Source

File details

Details for the file raylab-0.7.1.tar.gz.

File metadata

  • Download URL: raylab-0.7.1.tar.gz
  • Upload date:
  • Size: 136.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.1

File hashes

Hashes for raylab-0.7.1.tar.gz
Algorithm Hash digest
SHA256 1280a80bb8ccff860595d8e3e92dbe729ccae2ace9f2d64ff11f7f279fa892a5
MD5 ce218f49c3f74d816bd162b153167042
BLAKE2b-256 ba76dc3f9c9e459e2ce3f4f83ca4d47b8c2c4081d0511c739f57374220f56e8d

See more details on using hashes here.

Supported by

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