Apollo EM Planner 速度规划对比:DP 粗搜索与 QP 优化的 3 个核心差异

发布时间:2026/7/12 1:43:33
Apollo EM Planner 速度规划对比:DP 粗搜索与 QP 优化的 3 个核心差异 Apollo EM Planner 速度规划对比DP 粗搜索与 QP 优化的 3 个核心差异在自动驾驶系统的运动规划模块中速度规划是确保车辆安全、舒适行驶的关键环节。Apollo EM Planner 作为工业级解决方案的代表采用动态规划DP粗搜索与二次规划QP优化相结合的两阶段范式实现了高效可靠的速度曲线生成。本文将深入剖析这两种方法的协作机制与本质差异。1. 两阶段速度规划的整体架构Apollo EM Planner 的速度规划采用分层处理策略通过 DP 和 QP 的协同工作兼顾全局最优性与局部平滑性。其核心流程可分为三个关键步骤S-T图构建将动态障碍物的时空信息映射到二维坐标系横轴为时间T纵轴为沿参考线的纵向位移S。每个障碍物根据预测轨迹生成占据区域形成禁区多边形。DP粗搜索在离散化的S-T网格上执行动态规划快速生成满足避障约束的可行速度剖面。DP阶段的核心输出是为后续QP划定凸优化空间——即确定绕过每个障碍物的基本策略超车或等待。QP精细优化在DP提供的初始解和可行域内采用二次规划对速度曲线进行平滑处理确保加速度和加加速度Jerk符合车辆动力学与乘坐舒适性要求。# Apollo速度规划伪代码示例 def speed_planning(obstacles, ref_line): st_graph build_st_graph(obstacles, ref_line) # 构建S-T图 dp_path dynamic_programming_search(st_graph) # DP粗搜索 qp_trajectory quadratic_programming_optimize(dp_path) # QP优化 return qp_trajectory两阶段分工的关键在于DP解决是否可行的拓扑选择问题QP则解决如何更好的平滑优化问题。这种解耦策略显著提升了复杂场景下的规划成功率。2. DP与QP的三大核心差异2.1 求解目标与约束处理特性DP 粗搜索QP 优化主要目标寻找可行解空间在可行域内优化平滑性约束处理硬约束避障必须满足软约束允许轻微违反换取平滑数学形式离散状态空间搜索连续空间凸优化最优性保证网格分辨率下的近似最优凸空间内的全局最优DP阶段通过代价函数Cost Function评估每个网格点的可行性典型代价项包括障碍物碰撞代价∞ 若碰撞速度偏离参考值代价加速度变化率代价// DP代价计算示例简化版 double CalculateCost(const STPoint prev, const STPoint current) { double cost 0; cost w_speed * pow(current.v - desired_speed, 2); cost w_accel * pow((current.v - prev.v)/dt, 2); if (CheckCollision(current)) return INFINITY; return cost; }QP阶段则构建如下优化问题 [ \min_{s(t)} \int_0^T \left( w_1\dddot{s}^2 w_2(\dot{s}-v_{ref})^2 \right) dt ] 约束条件包括初末状态约束当前位置、速度加速度上下限DP提供的凸空间边界2.2 计算效率与精度平衡DP与QP在计算资源消耗上呈现显著差异时间复杂度对比DPO(N×M) N为时间分辨率M为空间分辨率QPO(k³) k为样条曲线参数数量通常k≪N内存消耗DP需存储整个网格的代价矩阵QP仅需维护优化变量和约束矩阵实际耗时Apollo实测pie title 速度规划耗时占比 DP搜索 : 45 QP优化 : 35 其他处理 : 20提示工业级实现中通常设置DP网格分辨率为0.5m×0.1sQP则采用5次多项式拟合在保证精度的同时控制计算量。2.3 输出特性与应用场景两种方法生成的轨迹在数学特性上存在本质区别DP输出特点分段线性速度曲线加速度不连续阶梯状变化严格避障但舒适性差QP输出特点C²连续可导加速度连续加加速度有界可能轻微侵入障碍物缓冲区域在实际应用中两者的协作模式如下图所示graph LR A[感知预测] -- B[构建S-T图] B -- C[DP粗搜索] C -- D{是否找到可行解?} D -- 是 -- E[QP平滑优化] D -- 否 -- F[触发回退策略] E -- G[控制模块执行]3. 工程实践中的关键设计3.1 DP阶段的启发式设计为提高DP搜索效率Apollo采用了多种启发式策略自适应网格分辨率在障碍物密集区域自动提高分辨率如0.2s时间间隔空旷区域降低分辨率0.5s。代价函数调参横向偏移代价权重0.1速度偏差代价权重1.0加速度代价权重2.0加加速度代价权重5.0剪枝优化保留每个时间层的前K个最优节点Beam Search大幅减少计算量。3.2 QP优化的数值稳定性二次规划面临的主要挑战是数值稳定性Apollo采用以下对策OSQP求解器配置settings { eps_abs: 1e-5, eps_rel: 1e-5, max_iter: 4000, polish: True } solver OSQP() solver.setup(P, q, A, l, u, **settings)正则化处理在Hessian矩阵中添加小量对角元素防止奇异 [ H H \lambda I ]热启动Warm Start使用DP解作为初始猜测减少迭代次数。3.3 安全与舒适性权衡在实际部署中需要平衡多个目标安全边界设置静态障碍物保留0.3m缓冲动态车辆保留1.5s时距舒适性指标纵向加速度限制±2.0 m/s²加加速度限制±1.5 m/s³紧急情况处理当QP无法找到可行解时回退到DP解并触发减速策略。4. 前沿改进方向当前两阶段规划仍存在改进空间业界探索的主要方向包括DP与QP联合优化最新研究尝试将DP的拓扑决策与QP的平滑优化统一在一个框架内如基于混合整数规划MIP的公式化强化学习辅助的DP启发式非线性动力学考虑现有QP假设纵向与横向解耦改进方案轮胎摩擦椭圆约束纵向-横向加速度耦合模型实时性提升FPGA加速QP求解增量式更新策略在自动驾驶系统迈向L4的进程中速度规划模块仍需在复杂场景适应性、计算效率、安全验证等方面持续突破。Apollo EM Planner的DP-QP架构为工业界提供了可靠基线但其最终形态仍有待算法与硬件的协同进化。