# grad_traj_optimization **Repository Path**: gchasing/grad_traj_optimization ## Basic Information - **Project Name**: grad_traj_optimization - **Description**: No description available - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-30 - **Last Updated**: 2025-04-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GTOP:Gradient-Based Trajectory Optimizer (This repo is mainly developed and maintained by [Boyu Zhou](https://boyuzhou.net), please contace him if necessary) ## 1.Introduction Gradient-Based Online Safe Trajectory Generation is trajectory optimization framework, for generating a safe, smooth and dynamically feasible trajectory based on the piecewise line segment initial path. The planning problem is formulating as minimizing the penalty of collision cost, smoothness and dynamical feasibility. **Authors:**[Fei Gao](https://ustfei.com/),[Boyu Zhou](https://boyuzhou.net),and [Shaojie Shen](http://www.ece.ust.hk/ece.php/profile/facultydetail/eeshaojie) from the [HUKST Aerial Robotics Group](uav.ust.hk). **Disclaimer** This is research code, any fitness for a particular purpose is disclaimed. **Related Paper** * **Gradient-Based Online Safe Trajectory Generation for Quadrotor Flight in Complex Environments,** Fei Gao, Yi Lin and Shaojie Shen Video of this paper can be found [here](http://www.bilibili.com/video/av16979476/). [](http://www.bilibili.com/video/av16979476/) If you use this generator for your academic research, please cite our related paper. ``` @inproceedings{Fei2017IROS, Address = {Vancouver, Canada}, Author = {F. Gao and W.Wu and Y. Lin and S. Shen}, Booktitle = {Gradient-Based Online Safe Trajectory Generation for Quadrotor Flight in Complex Environments}, Title = {Proc. of the {IEEE/RSJ} Intl. Conf. on Intell. Robots and Syst.}, Month = Sept., Year = {2017}} } ``` ## 2.Prerequisities Our testing environment: **Ubuntu** 14.04, **ROS** Indigo. We use **NLopt** as optimization solver. Installation is straight forward. Just download, extract and compile: ``` mkdir build cd build cmake .. make ``` Finally you should install it. ``` sudo make install ``` Detailed information can be found [here](https://nlopt.readthedocs.io/en/latest/). *Note:The default installation prefix of **NLopt** is /usr/local* ## 3.Build on ROS Clone the repository to your catkin workspace and catkin_make. For example: ``` cd ~/catkin_ws/src git clone https://github.com/HKUST-Aerial-Robotics/grad_traj_optimization.git cd ../ catkin_make source ~/catkin_ws/devel/setup.bash ``` ## 4.Random Map and Waypoints Example Open two terminals and run: ``` roslaunch grad_traj_optimization traj_rviz.launch roslaunch grad_traj_optimization random.launch ``` After running and open *rviz* with traj.rviz file, you should find a randomly built collision map with some waypoints going through it. Then a smooth and collision free trajectory is generated.