Framework for Efficient Robotic Manipulation
FERM is a framework that enables robots to learn tasks within an hour of real time training. Project Page: https://sites.google.com/view/efficient-robotic-manipulation.
The project and this codebase are joint work by Albert Zhan*, Ruihan (Philip) Zhao*, Lerrel Pinto, Pieter Abbeel, Misha Laskin. The implementation is based off of RAD.
Create a conda environment, and install the necessary packages.
conda create -n ferm python=3.7 pip install -r requirements.txt
Sample scripts are included in the
scripts folder. This includes training, evaluating, as well as behavior cloning baselines. To launch the experiments, navigate the project root folder and run
To run robotic experiments, create your gym environment interface with your robotic setup, and substitute the
--domain_name flag with your registered environment name.
Real world demonstrations
To use demonstrations, save the
(obs, next_obs, actions, rewards, not_dones) demonstration tuple (a tuple of X length lists) into
X is the number of entries saved. Include the
Our sim experiments use large amounts of demonstrations, which are generated on the fly through an expert policy that uses state input. Include the tags
--demo_model_dir=path_to_expert --demo_model_step=X, where the expert policy is saved as