第4章 决策规划:Frenet坐标系、Lattice planner、MPC、速度规划
本章聚焦自动驾驶决策规划领域的高频面试题。你需要掌握Frenet坐标系与笛卡尔坐标系的转换、Lattice planner的轨迹生成与评估、MPC(模型预测控制)的优化求解以及速度规划中的舒适性与安全性权衡。面试中要求既能推导公式又能结合项目说明工程落地细节。
面试问答卡片
问题1:请解释Frenet坐标系与笛卡尔坐标系的转换,并说明在轨迹规划中的优势。
面试官考察点: 是否理解Frenet坐标系解耦横向与纵向运动的核心思想,能否写出基本的转换公式,以及为什么有利于避障和速度规划。
回答框架: ① 给出Frenet坐标系定义(s,l)与笛卡尔坐标系(x,y)的关系;② 列出转换公式(如 x = x_ref - l·sin(θ_ref));③ 强调解耦优势:横向控制不依赖路径曲率,纵向可独立规划速度。
简短示例回答: “Frenet坐标系以参考线为基准,s为沿参考线的弧长,l为横向偏移。转换时利用参考线上最近点的坐标与切线方向。优势在于横向纵向解耦,方便分别设计避障和速度曲线,例如Lattice planner直接在Frenet空间采样轨迹。”
- 可能追问:
- 如何处理参考线曲率不连续的情况?
- 笛卡尔下的加速度约束如何在Frenet下表达?
- l坐标的正负如何定义?
问题2:Lattice planner如何生成和评估候选轨迹?请结合代价函数说明。
面试官考察点: 是否熟悉Lattice planner的采样策略、轨迹拟合方法、以及多目标优化中的代价权衡(安全性、舒适性、效率)。
回答框架: ① 采样:在s-t图和l-s图上分别采样终点状态(速度、横向偏移);② 拟合:使用五次多项式或三次样条生成平滑轨迹;③ 评估:加权计算安全性(碰撞距离)、舒适性(加速度 jerk)、效率(参考速度偏差)等代价,选择最优。
简短示例回答: “我们按时间或距离在s-t空间均匀采样目标速度和加速度,在l-s空间采样横向偏移和横摆角,用五次多项式连接起点终点。代价函数包含碰撞代价(最近障碍物距离的指数函数)、加速度代价(均方根)、速度偏差代价,权重通过仿真调参。”
- 可能追问:
- 五次多项式为什么能满足位置、速度、加速度连续?
- 如何处理多帧轨迹的抖动问题?
- 如果所有采样轨迹都碰撞怎么办?
问题3:MPC在轨迹跟踪中如何建模?与Lattice planner相比主要区别是什么?
面试官考察点: 是否理解MPC的在线优化本质,能否说出状态方程、约束条件、目标函数,以及MPC与基于采样规划的区别。
回答框架: ① 建立车辆运动学模型(如自行车模型),离散化为状态空间;② 设计目标函数(跟踪偏差、控制量惩罚)和约束(加速度、转向角、障碍物距离转化为线性/非线性约束);③ 调用QP或NLP求解器得到最优控制序列;④ 对比:MPC滚动优化更适应动态环境,但计算量大;Lattice离线生成轨迹,实时性更好。
简短示例回答: “MPC基于车辆运动学模型,预测未来N步状态,最小化跟踪误差和控制量,同时满足运动学约束和避障约束。与Lattice planner相比,MPC能处理时变约束且可考虑多步优化,但每周期需求解QP,对算力要求高;Lattice planner通过预先采样+代价排序,更适合结构化道路。”
- 可能追问:
- 如何处理MPC中的非线性约束?
- MPC的预测时域和控制时域如何选取?
- MPC对模型误差的鲁棒性如何提升?
项目案例:基于Lattice planner的城区轨迹规划系统测试
| 项目名称 | 业务背景 | 规模指标 | 技术栈 | 核心难点 | 面试高频追问 | 可迁移回答话术 |
|---|---|---|---|---|---|---|
| 城区路口Lattice规划测试 | L4级城区自动驾驶,需在双向四车道无保护路口高效安全通过 | 测试里程5000km,路口500+,最大速度40km/h | C++、ROS、Lattice planner、MPC、OSQP、Apollo | 动态障碍物预测不确定+路口拓扑复杂,采样轨迹易碰撞;MPC实时性不足 |
|
“针对路口场景,我们采用分段采样策略:在匝道内使用低速度采样,路口中心区域增加横向偏移采样密度;代价权重通过多场景网格搜索标定;MPC求解超时时切换为前馈控制+简单PID,保证安全底线。” |