This is the project page of the paper "Real-Time Trajectory Planning for Autonomous Driving with Gaussian Process and Incremental Refinement", to appear in ICRA 2022. GPIR is developed aiming to provide an unified real-time trajectory planning framework in dynamic environment for autonomous driving.
Demo video: YouTube
Author: Jie Cheng, Yingbing Chen, Qingwen Zhang, Lu Gan and Ming Liu, RAM-LAB
If you find this repo helpful for your research, please cite our related paper.
@inproceedings{Jie2022gpir,
title = {Real-Time Trajectory Planning for Autonomous Driving with {G}aussian Process and Incremental Refinement},
author = {Cheng, Jie and Chen, Yingbing and Zhang, Qingwen and Gan, Lu and Liu, Chengju and Liu, Ming},
booktitle = {2022 IEEE International Conference on Robotics and Automation (ICRA)},
year = {2022},
organization = {IEEE}
}
Our software is developed and tested in Ubuntu20.04 with ROS noetic. Follow this link to install noetic.
We use Carla-0.9.11 as the simulator (download via this link), and recommend to use a conda environment.
conda create -n carla_py37 python=3.7
To use the Carla PythonAPI, you need to export the path or install it
export PYTHONPATH=$PYTHONPATH:/carla_directory/PythonAPI/carla/dist/carla-0.9.11-py3.7-linux-x86_64.egg
or
pip install /carla_directory/PythonAPI/carla/dist/carla-0.9.11-py3.7-linux-x86_64.egg
Note that ROS melodic or below use Python2, and you may need to change python version above accordingly.
cd ${YOUR_WORKSPACE}/src
git clone --recurse-submodules https://github.com/jchengai/gpir.git
cd gpir
conda activate carla_py37
pip install -r ./requirements.txt
bash ./setup.sh
You may check the pip path via which pip
.
cd ../../
catkin_make -DCMAKE_BUILD_TYPE=RELEASE -j4
source ./devel/setup.sh
cd to_your_carla_folder && ./carla.sh
roslaunch planning_core carla_setup.launch
roslaunch planning_core planning.launch
Since this repo does not contain the behavior planner, we provide a simple interface for manually controlling the behavior of the Ego vehicle.
roslaunch planning_core keyboard.launch
We would like to express sincere thanks to the authors of the following tools and packages:
- Opendrive map parser: ad_map
- QP solver: osqp
- iSAM solver: GTSAM
- Visualization: EPSILON
- Spline smoothing & some math utils: Apollo
Please let me know if your work is not properly cited or acknowledged, and thanks again for these authors who kindly open-sourcing their work to the community.
The source code is released under MIT license.
This is research code, it is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of merchantability or fitness for a particular purpose.