Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repository Summary

Checkout URI https://github.com/toddhester/rl-texplore-ros-pkg.git
VCS Type git
VCS Version master
Last Updated 2015-09-06
Dev Status UNMAINTAINED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
rl_agent 0.0.0
rl_common 0.0.0
rl_env 0.0.0
rl_experiment 0.0.0
rl_msgs 0.0.0

README

```

                      rl-texplore-ros-pkg
           Reinforcement Learning Framework and Repository

                         Todd Hester
                         4 May 2011


                       July 2015 Update
      The indigo-devel branch of this repository contains a catkinized
      version of the original codebase. If you are using ROS Groovy or
      newer, you should check out this version.

The stacks directory contains a ROS stack for reinforcement learning (RL). The code in this repository provides agents, environments, and multiple ways for them to communicate (through ROS messages, or by including the agent and environment libraries). There are 5 packages in the repository:

rl_common: Some files that are common to both agents and environments. rl_msgs: Definitions of ROS messages for agents and envs to communicate. rl_agent: A library of some RL agents including Q-Learning and TEXPLORE. rl_env: A library of some RL environments such as Taxi and Fuel World. rl_experiment: Code to run some RL experiments without ROS message passing.

Documentation for these packages is here:

http://www.ros.org/wiki/reinforcement_learning

And there is a more thorough tutorial here:

http://www.ros.org/wiki/reinforcement_learning/Tutorials/Reinforcement%20Learning%20Tutorial

Working with the ROS build system is difficult at first. Expect a steep learning curve. Working through some of the ROS tutorials is definitely worthwhile when starting out. Documentation:

http://www.ros.org/wiki/ROS.

The interfaces themselves are quite good. So are the visualization and debugging tools. And, there is an impressive amount of useful robotics software already available in the ROS package system.

Directions:

(1) Check out a copy of the RL code base with ROS interfaces

 Our packages have their own Github project.  Check
 out the trunk of rl-texplore-ros-pkg:

 $ git clone https://github.com/toddhester/rl-texplore-ros-pkg.git

 This creates a copy of the source tree without commit access.

 To commit changes yourself, create a github account and e-mail
 the project owners requesting commit access.  

(2) Install ROS as in http://www.ros.org/wiki/ROS/Installation

 This is time-consuming, but not especially difficult.  Be careful
 to follow the directions exactly.  It works fine on Ubuntu and
 can be made to work for Mac OSX with some effort.  Windows will
 probably not work, but there are future plans to support it.

 Add the ROS environment setup to the end of your .bashrc:

 $ echo "source ~/ros/setup.sh" >> ~/.bashrc

 Append our packages as well as the ROS ones (this example does it
 from the shell, or you can use any editor):

 $ cat <<'EOF' >> ~/.bashrc
 export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:~/svn/rl-texplore-ros-pkg
 EOF

(3) Log out and log back in.

(4) Try to run some ROS commands:

 $ rospack find rl_agent
 $ roscd rl_agent
 $ rosmake rl_agent

 This should compile cleanly.

(5) Try to run an RL experiment. First compile the code:

 $ rosmake rl_agent
 $ rosmake rl_env

 Now we want to run the code to run our experiment. We need to start 
 both an agent and an environment, and they will interact by passing 
 rl_msg messages back and forth. Open three tabs in your terminal. Run

File truncated at 100 lines see the full file

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository

Repo symbol

reinforcement_learning repository