Skip to content

4kubo/rllib

 
 

Repository files navigation

rllib-torch (Under Development!)

CircleCI CircleCI CircleCI Code style: black License

RL-Lib torch is an RL library based in pytorch. It's meant to support my research but I welcome other researchers to use it.

The two main components are environments and agents, which interact with each other. The main logic of each agent is implemented in the algorithms folder. For example, a SAC agent has the training logic implemented in the Agent, but the training losses are implemented in the sac algorithm.

To install create a conda environment:

$ conda create -n rllib python=3.7
$ conda activate rllib
$ pip install -e .[test,logging,experiments]

For Mujoco (license required) Run:

$ pip install -e .[mujoco]

On clusters run:

$ sudo apt-get install -y --no-install-recommends --quiet build-essential libopenblas-dev python-opengl xvfb xauth

Running an experiment.

$ python exps/run $ENVIRONMENT $AGENT

For help, see

$ python exps/run.py --help

Pre Commit

install pre-commit with

$ pip install pre-commit
$ pre-commit install

Run pre-commit with

$ pre-commit run --all-files

CIRCLE-CI

To run locally circleci run:

$ circleci config process .circleci/config.yml > process.yml
$ circleci local execute -c process.yml --job test

Goals

Environment goals are passed to the agent through agent.set_goal(goal). If a goal moves during an episode, then include it in the observation space of the environment. If a goal is to follow a trajectory, it might be a good idea to encode it in the reward model.

Policies

Continuous Policies are "bounded" between [-1, 1] via a tanh transform unless otherwise defined. For environments with action spaces with different bounds, up(down)-scale the action after sampling it.

License

RL-Lib is licensed under MIT License.

Citing RL-lib

If you use RL-lib in your research please use the following BibTeX entry:

@Misc{Curi2019RLLib,
  author =       {Sebastian Curi},
  title =        {RL-Lib - A pytorch-based library for Reinforcement Learning research.},
  howpublished = {Github},
  year =         {2020},
  url =          {https://github.com/sebascuri/rllib}
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.8%
  • Shell 0.2%