1. 课程导入
城市NOA(Navigate on Autopilot)正在从高速场景走向城区道路,而复杂路口是决定用户体验与安全上限的关键战场。高速场景中车道线清晰、交通参与者行为相对规范,决策模块更多处理跟车、变道与匝道汇入;一旦进入城市路口,信号灯、无保护左转、行人与两轮车混行、遮挡与视线盲区、施工改道等因素叠加,决策系统必须在秒级甚至亚秒级内完成感知融合、意图推断、轨迹生成与风险兜底。本课程围绕“复杂路口决策工程”展开,目标不是讲清某一个算法,而是建立一套从问题定义、系统架构、算法选型到工程落地的完整方法论。
学习目标:从“能开”到“敢开、好开”
完成本课程后,学习者应具备以下能力:
- 问题建模能力:能把一个真实路口场景拆解为状态空间、动作空间、约束条件与代价函数,明确哪些是感知问题、哪些是预测问题、哪些是决策问题。
- 架构设计能力:理解规则决策、采样优化、学习型决策与混合架构的适用边界,能根据算力、数据与安全要求选择合适方案。
- 工程落地能力:掌握路口决策的模块接口、时序对齐、仿真回放、影子模式与灰度发布方法,能定位“离线好、上车差”的根因。
- 安全与合规意识:理解功能安全、预期功能安全(SOTIF)与责任划分对决策模块的约束,知道如何设计最小风险策略。
核心判断:复杂路口决策的难点不在于“算出一条轨迹”,而在于“在信息不完备、他车意图不确定、规则与效率冲突时,做出可解释、可验证、可兜底的选择”。
核心概念:状态、意图、博弈与兜底
复杂路口决策涉及四个核心概念。第一是状态,包括自车运动状态、他车位置速度、信号灯相位、车道拓扑与可行驶区域。第二是意图,他车是否让行、行人是否抢行、两轮车是否变道,这些无法直接观测,只能通过轨迹历史与交互行为推断。第三是博弈,路口本质是多智能体交互,自车决策会改变他车行为,形成动态耦合。第四是兜底,当预测置信度低或规划不可行时,系统必须退回到安全策略,如减速、停车或靠边。
为了把上述概念落到工程上,可以用一个简化的决策输入输出接口来描述:
输入:
ego_state: {x, y, yaw, v, a}
objects: [{id, type, x, y, v, heading, confidence}]
map: {lanes, stop_lines, traffic_lights, crosswalks}
route: {target_lane, turn_direction}
输出:
trajectory: [{t, x, y, v, a}]
decision: {yield, go, stop, nudge}
risk_level: {low, medium, high}
这个接口看似简单,但每个字段背后都对应大量工程细节:时间戳对齐、坐标系转换、置信度阈值、轨迹平滑与动力学可行性检查。
整体框架:感知—预测—决策—控制的分层与闭环
城市NOA复杂路口决策通常采用分层架构。感知层输出障碍物、车道线与信号灯状态;预测层给出他车与行人的多模态未来轨迹;决策层在候选动作中选择行为意图;规划层生成满足动力学约束的轨迹;控制层执行油门、刹车与转向。各层之间通过统一的时间基准与坐标系连接,形成闭环。
从图中可以看到,决策层并不是孤立模块,它向上依赖预测层的意图概率,向下约束规划层的轨迹可行性,同时与安全兜底模块形成并行监控关系。工程上常见的错误是把决策层当成“规则开关”,忽略预测不确定性与规划可行性,导致上车后频繁急刹或卡死。
案例场景:无保护左转的决策链路
以无保护左转为例。自车在路口等待左转,对向有直行车流,左侧有行人过街。感知层输出对向车辆位置与速度、行人位置与运动方向;预测层给出对向车辆“继续直行”概率0.7、“减速让行”概率0.3,行人“继续通过”概率0.8。决策层需要判断:当前间隙是否足够?若选择通行,规划层生成的左转轨迹是否与对向车辆轨迹冲突?若选择等待,后车是否会追尾?
一个可落地的决策流程如下:
- 计算可通行间隙:根据对向车辆到达冲突点的时间(TTC)与自车左转所需时间比较。
- 评估风险等级:若TTC小于安全阈值且预测置信度低,进入等待或减速。
- 生成候选动作:通行、等待、缓慢蠕行、停车。
- 代价评估:综合安全性、通行效率、舒适性与后车影响。
- 执行与监控:选择最优动作后持续监控,若风险上升则触发兜底。
工程提示:无保护左转不要只依赖单一TTC阈值。建议同时考虑对向车辆加速度、行人过街剩余时间、自车转弯半径与后车距离,形成多因子风险评分。
工程落地挑战与常见误区
复杂路口决策的落地挑战主要集中在四个方面:数据长尾、实时性、可解释性与安全验证。数据长尾意味着极端场景样本稀少,但一旦出现就可能致命;实时性要求决策在100ms级完成,不能依赖过重的在线优化;可解释性影响问题定位与责任认定;安全验证则需要仿真、封闭场地与实车测试结合。
| 挑战维度 | 典型问题 | 应对策略 |
|---|---|---|
| 数据长尾 | 无保护左转、鬼探头、施工改道样本少 | 场景库挖掘、对抗生成、影子模式回灌 |
| 实时性 | 在线优化耗时波动,导致决策抖动 | 分层决策、候选动作剪枝、固定时间预算 |
| 可解释性 | 学习型策略难以定位失败原因 | 规则兜底、决策日志、可视化回放 |
| 安全验证 | 仿真通过但实车表现差 | Sim-to-Real校准、灰度发布、最小风险策略 |
常见误区:把复杂路口决策简化为“规则优先级排序”。真实路口是多智能体博弈,规则只能处理已知组合,无法覆盖他车意图不确定与交互耦合。正确做法是规则提供安全边界,学习与优化负责效率与舒适,兜底模块负责极端情况。
本课程后续将围绕感知融合、意图预测、博弈决策、轨迹规划、仿真验证与安全兜底逐层展开。学习时建议始终带着三个问题:这个模块的输入输出是什么?它的不确定性如何传递?如果它失效,系统如何保证安全?只有把这三个问题贯穿始终,才能真正掌握城市NOA复杂路口决策的工程方法。