自动驾驶规划系统核心算法与理论基础

本章聚焦于规划系统的四大核心模块:决策规划(行为决策)、路径规划(全局与局部)、速度规划(纵向控制)和轨迹优化(时空联合)。面试时,面试官常从算法选型、数学建模、工程落地三个层面考察理解深度。以下框架图总结了回答这类问题的最佳路径。

规划算法回答框架 选型 → 原理 → 优化 → 工程 决策规划 路径规划 速度规划 轨迹优化
🛠 回答框架三要素:① 先定义问题(输入/输出)→ ② 介绍主流算法(如DWA、A*、QP)→ ③ 结合实际工程优化(低延迟、鲁棒性)。

🎯 面试问答卡 1:决策规划面试题

面试问题:请介绍自动驾驶决策规划模块的主要任务,并对比基于规则与基于学习两种方法的优缺点。

面试官考察点:对决策层次的理解(战略/行为/运动);是否了解FSM、POMDP、端到端等主流方案;能否分析工程落地难点。

回答框架:定义输入(感知+定位+地图)→ 输出(行为指令,如换道、跟车)→ 规则法:有限状态机(FSM)可解释强,但状态爆炸;学习法:DRL/POMDP泛化好,但可解释差、仿真-实车差距大 → 主流方案:规则+轻量学习混合。

简短示例回答:“决策规划输出车辆行为指令。规则法用FSM管理典型场景,如巡航、变道,但城市路况状态组合过多。学习法如DRL能处理连续动作,但训练成本高、难调试。工业界常用分层架构:上层FSM做宏观决策,下层用MPC或RL优化具体行为。”

可能追问:“如何设计状态机避免冲突?” “你提到的POMDP在实际中如何处理不确定性?”

⚠️ 避坑提醒:不要只背概念,要结合场景举例(如换道决策需要预测周围车辆意图)。避免说“学习法完全取代规则”,面试官期待务实判断。

🎯 面试问答卡 2:路径规划面试题

面试问题:请比较A*算法与RRT*在无人车路径规划中的适用场景,并说明如何保证路径平滑。

面试官考察点:是否理解图搜索与采样法的本质区别;对路径平滑、实时性、环境变化适应性的工程意识。

回答框架:A*适合结构化道路(栅格地图),能保证最优性,但计算复杂度随分辨率指数增长;RRT*适合非结构化场景(停车场),概率完备但不一定最优 → 工业中常用Hybrid A*(结合Reeds-Shepp曲线)实现车辆运动学约束 → 平滑通过B样条或Convex Optimization(OSQP)完成。

简短示例回答:“结构化道路我用A*,但需用B样条曲线平滑拐点;非结构化场景用RRT*,再通过Bézier曲线做后处理。实测中混合A*效果更稳定,结合换道决策可以实时生成无碰撞路径。”

可能追问:“如果障碍物动态移动,你的路径规划如何更新?” “如何权衡路径长度和安全性?”

⚠️ 避坑提醒:不要忽略车辆运动学约束(最小转弯半径),只说“找条最短路径”会被减分。强调工程优化如多线程并行搜索、JPS加速。

🎯 面试问答卡 3:速度规划与轨迹优化面试题

面试问题:速度规划如何与路径规划解耦?请解释ST图与SL图中的速度可行域(Velocity Obstacle)概念。

面试官考察点:对时空分离法的理解;ST图/速度曲线构造方法;轨迹优化中的代价函数设计(舒适性、效率、安全)。

回答框架:路径规划输出参考线(SL坐标系)→ 速度规划在ST图上动态障碍物,生成速度曲线(梯形或S形)→ 再用QP优化得到平滑的时间序列→最后在时空维度做轨迹优化(如Apollo的离散点优化)→ 常用工具:OSQP、G2O、Ceres。

简短示例回答:“我在Apollo框架下,先用路径规划生成SL中的一条参考线;然后在ST图中将动态障碍物投影为区域,用DP+QP生成速度曲线。最后通过Lattice采样在时空窗口内求解最优轨迹,代价函数包含加速度、jerk和碰撞惩罚。”

可能追问:“如果速度曲线与路径耦合导致优化不可行,如何处理?” “你用的QP约束具体有哪些?”

⚠️ 避坑提醒:不要混淆ST图和SL图。ST图横轴时间纵轴纵向位移,用于速度规划;SL图横轴纵向位移纵轴横向偏移,用于路径规划。回答要准确区分。
📌 核心回忆点:本章覆盖了规划系统的四个层次——决策(Why)、路径(Where)、速度(When)、轨迹(How)。面试高频公式:轨迹 = 路径曲线 + 速度曲线,优化目标常用 min ∑(w1·curvature² + w2·acceleration² + w3·collision_penalty)。