Seungjae Ryan Lee ca5c99bc41 Add DDPGfD, TD3fD and SACfD (#22)
* Format repository

* Clone files from medipixel repo

* Fix DDPGfDAgent.update_model()

* Fix bug on _initialize()

* Add demo-path parameter and demo data

* Rename init_priority to _max_priority for PER

This makes PER and PERfD consistent.

* Make i_episode attribute of DDPGAgent

* Clone SAC code from medipixel repo

* Fix update_model() for SACfD

* Fix _initialize() for SACfD

* Add is_discrete attribute to AbstractAgent for SACfD

* Add i_episode attribute to SACAgent for SACfD

* Modularize DDPGAgent and SACAgent

* Modify hyperparameters for DDPGfD and SACfD

* Add NStepBuffer

* Add n-step to DDPGfD

* Add n-step to SACfD

* Add TD3fD without n-step

* Attempt to tune hyperparameters

* Remove discrete environment check in SAC

* Implement n-step on TD3fD

* Fix step function of TD3

No done check, and _add_transition_to_memory was not called.

* Fix actor loss calculation for TD3fD

* Attempt to tune hyperparameters

* Print both critic losses

* Fix typo bug

* Attempt to tune hyperparameters

* Fix bug in n-step demo retrieval

* Fix bug in n-step transition addition
2019-03-14 11:06:54 +09:00
2019-02-03 17:16:55 +09:00
2019-02-03 17:16:55 +09:00
2019-03-14 11:06:54 +09:00
2019-02-03 17:16:55 +09:00
2019-02-16 17:30:12 +09:00
2019-02-16 17:30:12 +09:00
2019-03-12 20:51:22 +09:00
2019-02-03 17:16:55 +09:00
2019-02-03 17:16:55 +09:00

Research Repository Structure

We follow the .git strategy specified here, creating packages into separate repositories.

These are repositories checked to set this structure:

TODO

  1. Add medipixel/reinforcement_learning_examples to /scripts/.
  2. launch and urdf contains code for Sawyer robot. We plan to use OpenManipulator.
  3. package.xml should be updated appropriately.
  4. Get repository verified by a ROS expert.

Repository Structure

+ launch/         -
+ msg/            - These are message descriptions for ROS.
+ scripts/        - This directory contains RL algorithms.
+ urdf/           - This package contains a C++ parser for the Unified Robot Description Format (URDF), 
- .flake8         - This file specifies what rules should be enforced via flake8.
- .gitignore      - This file specifies which folders and files to ignore in Git.
- CMakeLists.txt  - This file specifies behavior of CMake.
- package.xml     - This file specifies the ROS package.
- README.md       - You are here
S
Description
Reinforcement learning algorithms for robot control tasks
Readme
2.7 MiB
Languages
Python 94.3%
CMake 3.6%
Dockerfile 1.5%
Shell 0.3%
Makefile 0.3%