共计 1525 个字符,预计需要花费 4 分钟才能阅读完成。
规划模块的背景及作用
在自动驾驶系统中,规划模块(Planning Module)负责生成车辆从起点到终点的安全、高效行驶路径。它需要综合考虑交通规则、障碍物、车辆动力学等多方面因素,是连接感知(Perception)与控制(Control)的关键桥梁。Apollo8.0 的规划模块在实时性、平滑性和安全性上进行了显著优化,其参数配置直接影响车辆行驶的舒适度和可靠性。

关键参数功能与影响
- 路径平滑度参数
qp_spline_smoother_config: 通过二次规划(Quadratic Programming)算法平滑路径,避免急转弯或频繁变道。reference_line_smoother_config: 调整参考线的平滑程度,影响车辆跟踪精度。-
调优建议:城市道路需更高平滑度,而越野场景可适当降低以减少计算开销。
-
避障灵敏度参数
static_obstacle_nudge_l_buffer: 静态障碍物横向避让距离,默认 0.3 米。dynamic_obstacle_nudge_speed_threshold: 动态障碍物触发避障的速度阈值。-
调优建议:拥堵场景需增大缓冲距离,高速场景可降低灵敏度以减少不必要的变道。
-
实时性参数
planning_loop_rate: 规划频率(Hz),影响响应速度与计算资源占用。trajectory_time_length: 规划轨迹的时间跨度,需与感知预测周期匹配。- 调优建议:高频场景(如城区)建议 10Hz 以上,高速场景可适当降低。
参数调优实战案例
场景:城市交叉口频繁启停
问题:车辆在红灯停稳后重新规划路径时出现顿挫。
优化方案 :调整qp_spline_smoother_config 中的曲率权重(curvature_weight)和弧长权重(arc_length_weight),牺牲部分平滑性以提升响应速度。
# 修改配置示例(apollo/modules/planning/conf/qp_spline_smoother_config.pb.txt)curvature_weight: 1.0 # 原值 2.0
arc_length_weight: 0.5 # 原值 1.0
效果对比:顿挫次数减少 30%,轨迹跟踪误差增加约 5%(在安全范围内)。
生产环境常见问题
- 参数冲突导致规划失败
- 现象:
planning模块报错Failed to smooth reference line。 - 原因:
reference_line_smoother_config与qp_spline_smoother_config的约束条件冲突。 -
解决:优先保证
qp_spline的曲率约束,适当放宽参考线平滑度。 -
动态避障响应滞后
- 现象:车辆对突然切入的障碍物反应迟缓。
- 原因:
dynamic_obstacle_nudge_speed_threshold过高(默认 1.5m/s)。 - 解决:降低至 0.8m/ s 并配合增大
nudge_l_buffer。
场景化优化思路
- 高速场景
- 重点优化纵向距离参数(
longitudinal_boundary_bound),减少不必要的变道。 -
示例:将
min_lane_change_length从 50 米增至 80 米。 -
狭窄巷道
- 启用
enable_side_vehicle_stop并调整side_pass_danger_distance,允许贴边绕行。 - 注意:需同步修改感知模块的障碍物分类阈值。
总结
Apollo8.0 的规划模块参数调优需结合具体场景权衡实时性、安全性和舒适性。建议通过仿真测试(如 Dreamview)逐步验证参数组合,并关注以下指标:
– 规划耗时(planning_time_ms)
– 轨迹曲率变化率
– 障碍物避让成功率
最终参数需在实车测试中进一步验证,形成闭环优化流程。
正文完
