L2 级(辅助驾驶):Contingency Planning 不是必备的独立模块。只要具备AEB等安全兜底功能,并在系统失效时能发出提醒,就符合主流标准。
L3 级及以上(自动驾驶):Contingency Planning 是必备的。没有它,系统就无法满足“责任主体转移”后的法律与安全要求,也无法通过现行的国际法规(如UN R157)认证。
可以这样理解:Contingency Planning 是区分“真正自动驾驶”与“高级辅助驾驶”的一道重要分水岭。
下面聚焦核心定义、架构逻辑、工程落地、避坑准则全链路,补充所有必懂的关键概念细节、量化指标与底层逻辑。
Contingency Planning(应急规划/预案规划),是L3自动驾驶中(L2不强制要求),与标称轨迹规划(Nominal Planning)并行运行、针对潜在高风险突发场景,1. 提前预生成,2. 逐周期同步更新的,3. 可零延迟切换的安全备选策略与可执行应急轨迹。
以下边界是PnC模块架构设计、权限仲裁、参数调试的前提,必须精准区分,补充核心量化细节:
按风险来源分为两大类,每类场景对应明确的预案设计目标,补充量产触发的量化条件:
所有Contingency Planning的算法与架构设计,必须优先满足以下原则,否则无法通过量产合规与实车验证,补充每个原则的必懂细节与量化要求:
安全绝对优先原则所有预案的核心唯一目标,是将车辆带入最小风险状态(Minimal Risk Manoeuvre, MRM)。
并行持续运行原则必须与标称规划同周期、同输入帧、同步更新,绝对不能等风险出现再启动计算。
强可执行性原则应急轨迹必须100%符合车辆动力学极限、线控执行能力、轮胎附着极限,禁止规划车辆无法执行的“理论安全轨迹”。
无缝切换无抖振原则标称轨迹与应急轨迹切换时,必须保证状态连续无突变,同时避免临界场景下的频繁切换。
可验证可追溯原则所有策略、参数、逻辑必须可量化、可解释、可测试、全链路可追溯,满足功能安全审核要求。
无冲突冗余设计原则多预案之间有明确的优先级与边界,同时与底层底盘安全功能形成互补兜底,无逻辑冲突与权限重叠。
补充架构的工程实现细节、优缺点与适用场景,可直接对应项目需求选型:
每个规划周期内,Contingency Planning严格按照5个步骤执行,每个步骤的核心必懂概念、量化指标与工程实现细节:
TTC = (d - L) / (v_ego - v_obj)
针对识别的风险等级与场景类型,生成对应备选预案集,每个预案包含明确的行为策略、目标状态、硬约束边界。
针对每个激活的预案,生成符合所有硬约束的应急轨迹,核心逻辑与标称规划的本质差异是:安全硬约束不可突破,效率与舒适性为次要优化目标。
对所有候选应急轨迹+标称主轨迹做综合量化评估,确定最终的优先级排序,核心是「同风险等级下,优先选择可恢复性高、安全性强的预案」。
这是工程落地的核心难点,核心目标是零延迟切换、无抖振、安全仲裁不越权。
这是实车开发中一定会遇到的核心问题,也是区分算法Demo与量产方案的关键,补充每个难点的底层原因与可落地的工程化解决方案:
针对开发中90%会踩的坑,明确误区本质与避坑准则:
G2连续,全称二阶几何连续性(2nd Order Geometric Continuity),是描述两段曲线/轨迹在拼接点处,几何形状平滑过渡的核心指标。
这是工程师容易混淆的概念,也是理解G2连续的前提:
| 连续性类型 | 核心定义 | 约束强度 | 自动驾驶适配性 |
| :--- | :--- | 更严格 |
| C连续(参数连续性) | 以时间t为参数的轨迹方程,各阶导数严格相等(方向+大小完全一致)。C0=位置连续,C1=一阶导数(速度)连续,C2=二阶导数(加速度)连续 | 更高 | 更关注纵向加减速的时间序列连续性,对轨迹几何形状的约束过强 |
| G连续(几何连续性) | 仅关注轨迹本身的几何形状,不依赖时间参数化方式,只要求几何属性一致。G0=位置重合,G1=切线方向一致,G2=曲率完全一致 | 更灵活 | 完美匹配车辆行驶的物理特性,轨迹的几何形状直接决定车辆的转向执行需求,是轨迹规划的核心约束 |
关键结论:C2连续一定满足G2连续,但G2连续不一定满足C2连续。工程中,优先保证G2连续,因为它直接决定了车辆转向系统能否执行轨迹,而C2连续更多用于纵向速度规划的平滑性约束。
G2连续是在低阶连续的基础上叠加约束,每一级都对应车辆行驶的硬要求:
G2连续不是纯数学概念,每一项约束都直接对应车辆的执行机构与运动状态,映射关系如下:
核心原因有4点:
保证应急轨迹的可执行性,避免执行机构失效车辆的转向系统有固有响应带宽,无法瞬间完成转角跳变。如果标称轨迹与应急轨迹切换点不满足G2连续,曲率突变会要求方向盘瞬间从0度打到30度,转向系统完全无法跟踪,导致实际行驶轨迹偏离规划轨迹,应急场景下直接引发碰撞。
实现轨迹无缝切换,消除切换抖振与控制超调Contingency Planning的核心价值是零延迟切换,如果切换点G2不连续,控制模块的跟踪误差会瞬间飙升,PID/LQR控制器会出现严重超调,导致车辆左右晃、抖振,甚至车道偏离。只有G2连续的轨迹,才能保证切换时控制量无跳变,车辆平稳过渡,这是应急场景下安全切换的核心前提。
避免突破轮胎附着极限,防止应急场景下失控轮胎的横向力与轨迹曲率直接相关,曲率突变会导致横向力瞬间跳变,纵向+横向合力极易突破轮胎摩擦圆极限,尤其是湿滑/冰雪路面,会直接引发车辆侧滑、甩尾。G2连续保证了曲率平滑变化,轮胎受力平稳,永远在附着极限内,这是极限应急场景下车辆可控的核心保障。
平衡应急安全与乘坐舒适性,避免用户恐慌加加速度(Jerk)是衡量车辆冲击与舒适性的核心指标,G2不连续的轨迹会导致Jerk阶跃突变,出现剧烈的横向冲击,即使成功避撞,也会让乘客严重恐慌,甚至关闭智驾系统,反而增加长期安全风险。
这是最基础的实现方式,量产PnC中主流的G2连续曲线包括:
这是Contingency Planning场景下的关键操作:
绝对不能直接把预生成的应急轨迹硬切到当前车辆状态,必须以切换时刻车辆的实时状态(位置、航向角、当前前轮转角/曲率、速度、加速度)作为应急轨迹的起点约束,重新生成轨迹,保证拼接点的位置、航向、曲率完全匹配,天然实现G2连续,从根源上消除切换跳变。
每个规划周期,必须对轨迹做G2连续校验:
误区1:G1连续就够用,不需要G2连续避坑:G1连续只能保证航向无折角,无法约束曲率突变,依然会出现前轮转角跳变,转向系统无法执行,高速场景下微小的曲率突变都会被车速放大,直接导致跟踪偏差与失控。
误区2:混淆G2连续与C2连续,过度约束参数避坑:C2连续要求参数二阶导数完全相等,对纵向速度的约束过强,应急场景下反而会限制制动减速度的快速提升。工程中,路径规划优先保证G2连续,速度规划优先保证C2连续,二者解耦设计,不要混为一谈。
误区3:只关注路径的G2连续,忽略动态轨迹的平滑性避坑:G2连续不仅是静态路径的曲率连续,还要结合车辆动态速度。高速场景下,相同的曲率变化会带来更大的横向加速度跳变,必须根据车速动态调整曲率变化率的约束,保证全车速段的G2连续有效。
误区4:应急场景下可以放宽G2连续要求避坑:恰恰相反,应急场景下车辆处于极限操作状态,轮胎附着余量、转向系统响应余量都极小,曲率突变极易突破物理极限,反而要更严格地保证G2连续,才能确保车辆可控。