Bootstrap

Open Space代码实现

1.引言

了解Apollo的Open Space算法相关代码,旨在想实现对A星输出的轨迹进行平滑,更专业点可能就是基于最优控制的轨迹优化。先学习整个流程,详细解释其各个部分的作用和原理,最后将原算法的混合A*替换成简单的A*。

  • 代码目录: modules/planning/open_space/.
  • 可视化工具: modules/tools/open_space_visualization/distance_approach_visualizer.py

5.1.混合A*算法

Hybrid A*代码流程图如下:

 

Hybrid A*算法包含了node3dgrid_searchreeds_shepp_path 和 hybrid_a_star. 其中hybrid_a_star是最重要的组成部分, 它调用了grid_searchreeds_shepp_path

代码文件在hybrid_a_star.cc中. 函数入口: HybridAStar::Plan, 在OpenSpaceTrajectoryOptimizer::Plan中被调用

;