Skip to main content

A python module desgined for RL logging, monitoring and experiments managing.

Project description

UtilsRL

UtilsRL is a reinforcement learning utility python package, which is designed for fast integration into other RL projects. Despite its lightweightness, it still provides a full set of functions needed for RL algorithms development.

Currently UtilsRL is maintained by researchers from LAMDA-RL group. Any bug report / feature request / improvement is appreciated.

Installation

You can install this package directly from pypi:

pip install UtilsRL

After installation, you may still need to configure some other dependencies based on your platform, such as PyTorch.

Features & Usage

We are still working on the docs, and the docs will be published as soon as possible.

Here we list some highlight features of UtilsRL:

  • Extremely easy-to-use and research friendly argument parsing. UtilsRL.exp.argparse supports several handy features for research:
    • loading arguments from both yaml, json, python files and command line
    • nested argument parsing
  • Well-implemented torch modules for Reinforcement Learning
    • common network structures: MLP, CNN, RNN, Attention, Ensemble Blocks and etc
    • policy networks with various output distributions
    • normalizers implemented in nn.Module, benefiting saving/loading by taking advantage of state_dict
  • Powerful experiment loggers.
  • Super fast Prioritized Experience Replay (PER) buffer. By binding c++-implemented data structures, we boost the efficiency of PER up to 10 times

We provide two examples, namely training PPO on mujoco tasks and training Rainbow on atari tasks as illustrations for integrating UtilsRL into your workflow (see examples/)

Acknowledgements

We took inspiration for module design from tianshou and Polixir OfflineRL.

We also thank @YuRuiii and @momanto for their participation in code testing and performance benchmarking.

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

utilsrl-0.6.10.tar.gz (43.1 kB view hashes)

Uploaded Source

Built Distributions

UtilsRL-0.6.10-pp310-pypy310_pp73-win_amd64.whl (129.4 kB view hashes)

Uploaded PyPy Windows x86-64

UtilsRL-0.6.10-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (171.1 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (179.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-pp39-pypy39_pp73-win_amd64.whl (129.4 kB view hashes)

Uploaded PyPy Windows x86-64

UtilsRL-0.6.10-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (171.1 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (179.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-pp38-pypy38_pp73-win_amd64.whl (129.3 kB view hashes)

Uploaded PyPy Windows x86-64

UtilsRL-0.6.10-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (172.9 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (179.1 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-pp37-pypy37_pp73-win_amd64.whl (129.1 kB view hashes)

Uploaded PyPy Windows x86-64

UtilsRL-0.6.10-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (173.6 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (179.5 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-cp312-cp312-win_amd64.whl (131.2 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

UtilsRL-0.6.10-cp312-cp312-win32.whl (119.6 kB view hashes)

Uploaded CPython 3.12 Windows x86

UtilsRL-0.6.10-cp312-cp312-musllinux_1_1_x86_64.whl (693.6 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

UtilsRL-0.6.10-cp312-cp312-musllinux_1_1_i686.whl (754.0 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ i686

UtilsRL-0.6.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (177.9 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (185.9 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-cp311-cp311-win_amd64.whl (130.9 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

UtilsRL-0.6.10-cp311-cp311-win32.whl (119.6 kB view hashes)

Uploaded CPython 3.11 Windows x86

UtilsRL-0.6.10-cp311-cp311-musllinux_1_1_x86_64.whl (693.4 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

UtilsRL-0.6.10-cp311-cp311-musllinux_1_1_i686.whl (753.8 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

UtilsRL-0.6.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (178.8 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (185.2 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-cp310-cp310-win_amd64.whl (129.9 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

UtilsRL-0.6.10-cp310-cp310-win32.whl (118.5 kB view hashes)

Uploaded CPython 3.10 Windows x86

UtilsRL-0.6.10-cp310-cp310-musllinux_1_1_x86_64.whl (692.2 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

UtilsRL-0.6.10-cp310-cp310-musllinux_1_1_i686.whl (752.6 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

UtilsRL-0.6.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (177.0 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (183.9 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-cp39-cp39-win_amd64.whl (129.1 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

UtilsRL-0.6.10-cp39-cp39-win32.whl (118.6 kB view hashes)

Uploaded CPython 3.9 Windows x86

UtilsRL-0.6.10-cp39-cp39-musllinux_1_1_x86_64.whl (692.3 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

UtilsRL-0.6.10-cp39-cp39-musllinux_1_1_i686.whl (752.7 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

UtilsRL-0.6.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (177.0 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (184.1 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-cp38-cp38-win_amd64.whl (129.8 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

UtilsRL-0.6.10-cp38-cp38-win32.whl (118.6 kB view hashes)

Uploaded CPython 3.8 Windows x86

UtilsRL-0.6.10-cp38-cp38-musllinux_1_1_x86_64.whl (691.9 kB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

UtilsRL-0.6.10-cp38-cp38-musllinux_1_1_i686.whl (752.5 kB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

UtilsRL-0.6.10-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (176.9 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (183.9 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

UtilsRL-0.6.10-cp37-cp37m-win_amd64.whl (129.8 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

UtilsRL-0.6.10-cp37-cp37m-win32.whl (119.7 kB view hashes)

Uploaded CPython 3.7m Windows x86

UtilsRL-0.6.10-cp37-cp37m-musllinux_1_1_x86_64.whl (695.7 kB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

UtilsRL-0.6.10-cp37-cp37m-musllinux_1_1_i686.whl (756.3 kB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.1+ i686

UtilsRL-0.6.10-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (178.7 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

UtilsRL-0.6.10-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (186.8 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ i686

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