This repository contains the tensorflow implementation for training a reinforcement learning based map-less navigation model, as described in the paper:
Reinforced Imitation: Sample Efficient Deep Reinforcement Learning for Map-less Navigation by Leveraging Prior Demonstrations
- Ubuntu
- Python 2.7
- ROS Indigo or ROS Kinetic
- Stage-ros simulator, with
add_pose_sub
enabled. Can be found in this branch of the repository.
- First run the stage simulator:
roslaunch reinforcement_learning_navigation stage_sim.launch
- In a separate terminal, run the training code:
rosrun reinforcement_learning_navigation train_cpo.py --output_name $experiment_name$
In order to use pre-trained weights from imitation learning, add the arguments--jump_start 1 --model_init $path_to_policy_weights$
If you use our code in your research, please cite our paper.
@ARTICLE{pfeiffer2018ral,
author={M. Pfeiffer and S. Shukla and M. Turchetta and C. Cadena Lerma and A. Krause and R. Siegwart and J. Nieto},
journal={IEEE Robotics and Automation Letters},
title={{Reinforced Imitation: Sample Efficient Deep Reinforcement Learning for Map-less Navigation by Leveraging Prior Demonstrations}},
year={2018},
volume={3},
number={4},
pages={4423-4430}
}
Our training model uses Constrained Policy Optimization : [Paper] [Code]