GithubHelp home page GithubHelp logo

stanfordasl / barc Goto Github PK

View Code? Open in Web Editor NEW
12.0 8.0 7.0 221 KB

Contains the code for "BaRC: Backward Reachability Curriculum for Robotic Reinforcement Learning" by Boris Ivanovic, James Harrison, Apoorva Sharma, Mo Chen, Marco Pavone.

License: MIT License

MATLAB 13.91% Python 47.43% C++ 20.59% Cuda 14.66% Makefile 3.41%
reinforcement-learning curriculum-learning dynamical-systems

barc's Introduction

BaRC: Backward Reachability Curriculum for Robotic Reinforcement Learning

This repository contains the code for BaRC: Backward Reachability Curriculum for Robotic Reinforcement Learning by Boris Ivanovic, James Harrison, Apoorva Sharma, Mo Chen, and Marco Pavone

Programming Environment

git clone https://github.com/StanfordASL/BaRC.git
cd BaRC             # or wherever you cloned the repo

# openai/baselines requires Python 3.5, so we enforce it too.
conda create --name backreach python=3.5
source activate backreach
pip install numpy matplotlib scipy

Dependencies

This repository depends on OpenAI Gym, OpenAI Baselines, and OpenMPI (because of Baselines). Further, our code requires MATLAB as well as the helperOC and Level Set Methods toolboxes for backward reachability computations.

For a minimal installation, you can install OpenAI Gym and Baselines like so:

cd gym
pip install -e '.[mujoco,atari,classic_control,robotics]'

cd ../code/baselines
pip install -e .

With those obtained, you must place our two gym environments DrivingOrigin-v0 and PlanarQuad-v0 located in the gym/ folder into your gym installation. Instructions for how to do this can be found on the OpenAI gym website.

Then, place our modifications to the baselines PPO algorithm into your installation of OpenAI baselines. They are located under code/baselines/. For this, you simply replace the ppo1 folder in the baselines repository with ours.

Now you're ready to use our code. train.py is the main runner interface which can be called with command line arguments.

barc's People

Contributors

borisivanovic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.