add backend
This commit is contained in:
75
README.md
75
README.md
@@ -1,36 +1,55 @@
|
||||
# DPtraj
|
||||
A double-polynomial discription for trajectory interfaced with learning-based front end.
|
||||
# Bilayer-based Trajectory Optimization
|
||||
|
||||
This work is presented in the paper: Hierarchically Depicting Vehicle Trajectory with Stability in Complex Environments, published in Science Robotics.
|
||||
## 1. Setup
|
||||
|
||||
The backend trajectory optimizer improvements build upon our previous work (available at https://github.com/ZJU-FAST-Lab/Dftpav), where singularity issues were addressed.
|
||||
All the tests are conducted in the Linux environment on a computer equipped with an Intel Core i7-10700 CPU and a GeForce RTX 2060 GPU.
|
||||
|
||||
Moreover, the approach has recently been extended and applied to more complex multi-joint robotic platforms (see https://github.com/Tracailer/Tracailer).
|
||||
Moreover, our software is developed and tested in Ubuntu 18.04, 20.04 with ROS installed.
|
||||
|
||||
ROS can be installed here: [ROS Installation](http://wiki.ros.org/ROS/Installation).
|
||||
|
||||
If you find this repository helpful, please consider citing at least one of the following papers:
|
||||
To build this project, ensure that you have the following dependencies installed: 
|
||||
|
||||
```bibtex
|
||||
@article{han2025hierarchically,
|
||||
title={Hierarchically depicting vehicle trajectory with stability in complex environments},
|
||||
author={Han, Zhichao and Tian, Mengze and Gongye, Zaitian and Xue, Donglai and Xing, Jiaxi and Wang, Qianhao and Gao, Yuman and Wang, Jingping and Xu, Chao and Gao, Fei},
|
||||
journal={Science Robotics},
|
||||
volume={10},
|
||||
number={103},
|
||||
pages={eads4551},
|
||||
year={2025},
|
||||
publisher={American Association for the Advancement of Science}
|
||||
}
|
||||
@article{han2023efficient,
|
||||
title={An efficient spatial-temporal trajectory planner for autonomous vehicles in unstructured environments},
|
||||
author={Han, Zhichao and Wu, Yuwei and Li, Tong and Zhang, Lu and Pei, Liuao and Xu, Long and Li, Chengyang and Ma, Changjia and Xu, Chao and Shen, Shaojie and others},
|
||||
journal={IEEE Transactions on Intelligent Transportation Systems},
|
||||
volume={25},
|
||||
number={2},
|
||||
pages={1797--1814},
|
||||
year={2023},
|
||||
publisher={IEEE}
|
||||
}
|
||||
-[Eigen](https://eigen.tuxfamily.org/index.php?title=Main_Page): A high-level C++ library for linear algebra operations. 
|
||||
|
||||
-The Open Motion Planning Library ([OMPL](https://ompl.kavrakilab.org/)): A comprehensive library for motion planning and control.
|
||||
|
||||
## 2. Build on ROS
|
||||
|
||||
1. Unzipping the compressed file and compile it.
|
||||
|
||||
```bash
|
||||
cd ~/trajectoryOpt
|
||||
catkin_make -DCMAKE_BUILD_TYPE=Release
|
||||
```
|
||||
|
||||
## 3. Run
|
||||
|
||||
Open a new terminal window, `cd ` to `~/trajectoryOpt/` and type:
|
||||
|
||||
```bash
|
||||
source devel/setup.bash
|
||||
```
|
||||
|
||||
The code will be divided into several modules and gradually open-sourced in different branches. Currently, you can switch to the `backend` branch to try our efficient singularity-free backend optimization. This branch includes a README to guide you through quick deployment.
|
||||
Then, run the script:
|
||||
|
||||
```bash
|
||||
./run.sh
|
||||
```
|
||||
|
||||
Then, you can use the **2D Nav Goal** in **RVIZ** to trigger the planning.
|
||||
|
||||
Here is an example:
|
||||
|
||||

|
||||
|
||||
Here, the blue curve represents the trajectory generated by our method, whereas the red curve depicts the trajectory generated by the differential flattening-based method employed for comparative analysis. 
|
||||
|
||||
The program evaluates the kinematic state at each point along both trajectories and computes the maximum value for each metric. If successful, the terminal will output the maximum curvature and maximum steering angle rate ($\omega$) for each method.
|
||||
The results indicate that our approach adheres to the kinematic constraint standards, whereas the comparative method violates constraints by more than an order of magnitude.
|
||||
|
||||
Note: Due to computational performance and solver randomness, slight deviations in results may occur.
|
||||
|
||||
## 4. Contact
|
||||
|
||||
If you have any questions, please feel free to contact Zhichao HAN (<zhichaohan@zju.edu.cn>) or Mengze TIAN(<mengze.tian@epfl.ch>).
|
||||
|
||||
Reference in New Issue
Block a user