【自动驾驶】运动规划丨知识分享| Apollo问答 | 轨迹规划中的关键问题汇总

大哥们请说明下,【自动驾驶】运动规划丨知识分享| Apollo问答 | 轨迹规划中的关键问题汇总
最新回答
梦散蝶逝

2026-10-19 18:25:09

轨迹规划的定义与复杂性

轨迹规划(Trajectories Planning)主要指考虑实际临时或者移动障碍物,考虑速度、动力学约束的情况下,尽量按照规划路径进行轨迹规划。其复杂性体现在:

  • 规划维度增加:规划中加入了速度与时间的信息。
  • 运动学约束:车辆是非和谐系统,具有特殊的运动学约束条件。
轨迹规划的目标
  • 安全:车辆在行驶过程中与障碍物保持适当距离,避免碰撞。
  • 舒适:给乘客提供舒适的乘坐体验,如避免过急的加减速度,在弯道时适当减速避免过大的向心加速度等。
  • 完成行驶任务:规划出的轨迹要完成给定的行驶任务,不能因过于保守的驾驶导致不可接受的行驶时间。
关键问题汇总
  • Q1:Apollo轨迹规划起始条件及在弗雷纳坐标系规划的好处

    必须在有光滑指引线的情况下做规划。

    在Frenet坐标系下做规划,是为了避免直接考虑朝向、曲率等问题,避免在高维度上做规划。

  • Q2:动态配置加减速力度参数的方法

    理论上是可以的,可以通过上游的决策层根据规划目标动态调整参数。

  • Q3:路径规划中三阶导数的物理含义及在算法中的作用

    三阶导数是加加速度,表示加速度的变化率,是舒适性的一个重要指标。

    在算法中,相邻离散点之间的连接通过常三阶导数实现。

  • Q4:不同优化器的区别及应用

    DpPolyPathOptimizer、QpSplinePathOptimizer、QpPiecewiseJerkPathOptimizer已被deprecate,使用PiecewiseJerkPathOptimizer替代,它能覆盖前面优化器的应用。

  • Q5:EM Planner和Lattice Planner在Public Road场景下的表现及对倒车等轨迹规划的解决能力

    设计上,EM适合解决复杂的城市道路,Lattice适合解决相对简单的高速场景。

    EM和Lattice不能解决倒车问题。

  • Q6:弗雷纳坐标系下横向距离对纵向路径求导的方式

    三阶导数通过差分的形式直接计算出。

  • Q7:EM Planner规划器中惩罚导数进行规划的失效场景及约束处理

    会根据车辆的运动学模型,对一阶、二阶、三阶导数的取值范围做出估计,找出符合运动学的取值范围,约束求解轨迹的空间。

  • Q8:规避EM planner中路径规划起点相关值波动导致路径呈S型的问题

    这是综合问题,heading抖动不仅影响planning,对control影响更大,且是上游模块信息问题,不应在planning中解决。

  • Q9:motion planning中auto tunning的现状和规划

    现在auto tuning这块由于人员调动,工作有些停滞。

  • Q10:确定车辆和障碍物位置投影到指引线后的s值的方法

    具体请参见相关代码:CartesianToFrenetConversion这个类的实现。

  • Q11:完全离散方法与之前EM中QP规划方法相比的好处

    路径规划中,离散的s在0.5m以下,路径有200m长。好处在于获得了对路径更大的控制权,能在非常复杂的问题中计算出可行轨迹。

  • Q12:每两个离散点之间常三阶导数项的函数形式

    可以理解为以函数形式为三次多项式,本质上也是一个多项式。

  • Q13:U - turn情况下障碍物sl边界重构错误及解决方法

    这个情况比较极端,现在根据不同情况做特殊处理,没有很好的综合性解决方案。

  • Q14:路径规划算法中每段三阶导数的确定方法

    通过差分二阶导数确定。

  • Q15:对静态障碍物描述的理解及速度较低动态障碍物在路径规划中的考虑

    静态障碍物可以以速度大小来区分。对于速度较低的障碍物,范围只要能bound到一定大小,也可以在路径规划中考虑。

  • Q16:控制kappa相对控制角速度的优势及横向不考虑角加速度的原因

    角速度涉及路径和速度两个方面的综合因素,路径和速度分开考虑是为了降低难度。

    直接考虑角加速度的算法正在开发,不久会发布。

  • Q17:非和谐车辆系统与路径规划相关问题

    非和谐车辆系统就是非完整约束车辆系统。

    应根据车辆状态来调整路径的几何形状。

    平滑算法可以参见QP Spline,spiral curve等实现。

  • Q18:MPC思想做避障轨迹规划与地图空间采样方法的优缺点及分类

    MPC是control - based的方法,在地图坐标系做规划,与在Frenet坐标系下规划不同,具体可线下交流。

  • Q19:路径规划的求解方法及算力耗费

    使用OSQP,计算路径的话,0.5m间隔200m总长,少于10ms。

  • Q20:路径规划模块中对障碍物运动不确定性的考虑、交互场景决策方案及Apollo规划系统实际路测不能解决的主要问题

    需要上游模块,如预测模块提供较好的预测,现在planning中还没有相应解决方案。

  • Q21:路径规划前做出绕过障碍物决策的方法

    通过用户设置代价函数,如加速度的权重等,通过代价来进行判断。

  • Q22:强化学习在目前规划中的使用情况及应用场景

    目前还没有使用,正在探索。

  • Q23:对Apollo规划中阶段(stage)的理解及举例说明

    Stage简要的说是一个场景中的一个阶段,几个stage顺序组合起来形成一个完整的场景。

  • Q24:路径规划算法脱离实际车辆的测试方法及上实车验证的量化指标

    通过仿真平台做初步验证,在planning成功率,轨迹质量加以检测之后,再做实车测试。

  • Q25:减小规划结果跳动的方法

    合理跳变表明对动态环境做出了反应;不合理跳变说明在设计代价函数时有欠缺,需要改进设计。

  • Q26:档位切换时车辆加减速度滞后导致频繁重规划问题的改进方法

    主要是控制问题,在planning层面,可适当减小加速度的搜索范围,生成尽可能和缓的轨迹。

  • Q27:前方低速前行车辆换道时规划层的规划方法

    实时根据左右两边车辆运动轨迹,每一帧都规划一条与左右两边车辆没有碰撞的路径。

  • Q28:车辆遇到紧急情况的处理方式

    不会优先执行预设的规避动作然后重新规划,以10Hz的方式进行规划能及时更新轨迹,处理紧急情况。

  • Q29:针对行人这类低速且方向随机障碍物的处理方式

    这是预测的问题,planning层面不适合对这样的情况做假设与处理。

  • Q30:路径规划中计算本车与障碍物是否碰撞的方法及实时性能

    通过二维bounding box碰撞,大概需要十几个向量点乘运算,可参见Separate Axis theorem(超平面分割定理)。

  • Q31:目的地在车后方不远处的规划方式及权重取值

    在onlane planner中,假设一般公路场景,算法中不允许向后移动,Open space planner可以允许这样的操作。

  • Q32:规划路径时损失函数不能兼顾时的选择方法

    代价函数是几个因素加权的和,应根据不同应用场景、车辆类型来决定提高哪些因素的权重。

  • Q33:针对前方突发障碍物的处理方式

    会当作动态障碍物处理,在生成路径时不考虑,在路径上继续直行,在速度上紧急制动。