2. 自动驾驶基础

要理解行为克隆在自动驾驶中的价值,必须先建立对自动驾驶系统本身的基本认知:车辆如何被分级、系统由哪些模块构成、感知—决策—控制之间如何传递信息,以及行为克隆究竟嵌入在这条链路中的哪个位置。只有把“系统全貌”和“模块职责”看清楚,才能判断行为克隆能解决什么问题、不能解决什么问题。

一、自动驾驶分级:从辅助到无人

业界普遍采用 SAE J3016 分级,将驾驶自动化分为 L0 到 L5。分级的核心不是“功能多少”,而是动态驾驶任务(DDT)由谁执行、谁负责监控、谁承担接管责任。L0–L2 属于辅助驾驶,驾驶员始终是责任主体;L3 是分水岭,系统在限定条件下执行全部 DDT,但驾驶员需在请求时接管;L4 在限定运行域内无需人类接管;L5 则覆盖全部场景。

等级DDT 执行监控主体接管要求典型能力
L0驾驶员驾驶员全程仅预警提示
L1系统+驾驶员驾驶员全程纵向或横向其一
L2系统驾驶员全程同时横向+纵向
L3系统系统(可请求接管)请求时限定场景自动驾驶
L4系统系统无需限定运行域无人
L5系统系统无需全场景无人

对行为克隆而言,分级决定了学习目标:L2 阶段可学习“类人驾驶策略”作为辅助;L3/L4 阶段则要求策略在长尾场景中具备鲁棒性与可验证性,单纯模仿专家轨迹往往不够。

二、系统架构:感知—决策—控制三段式

主流自动驾驶系统采用分层架构:感知层负责从摄像头、激光雷达、毫米波雷达、IMU/GNSS 中提取目标、车道线、可行驶区域与自车状态;决策规划层完成行为决策、路径规划与轨迹生成;控制层将轨迹转化为油门、刹车、转向指令,通过线控底盘执行。三者之间以时间戳对齐的数据流串联,形成闭环。

核心链路:传感器原始数据 → 感知(检测/跟踪/融合)→ 定位与地图匹配 → 行为决策 → 轨迹规划 → 控制指令 → 车辆执行 → 新状态反馈

这条链路的关键特征是强时序、强耦合、强实时。感知延迟会传导到规划,规划抖动会放大到控制。行为克隆通常作用于“感知输出到控制指令”之间的映射,即学习一个从观测到动作的策略函数。

自动驾驶系统架构与行为克隆定位 传感器层 摄像头 / LiDAR 毫米波 / IMU / GNSS 感知模块 检测 / 跟踪 / 融合 车道线 / 可行驶区域 决策规划 行为决策 / 路径规划 轨迹生成 控制模块 横向 / 纵向控制 油门 / 刹车 / 转向 车辆执行 线控底盘 状态反馈 闭环反馈:车辆状态与场景变化 行为克隆定位:学习 观测 → 动作 的映射策略 输入:感知结果 + 自车状态 + 历史序列 输出:转向角 / 加速度 / 轨迹点 可替代或增强决策规划中的策略模块

三、感知、决策、控制模块的职责边界

  • 感知模块:输出结构化环境描述,包括障碍物位置速度、车道线几何、交通标志、可行驶区域。评价指标为 mAP、IoU、跟踪 MOTA 等。
  • 决策规划模块:在满足安全、舒适、交规约束下生成未来 3–8 秒轨迹。分为行为层(换道/跟车/让行)与运动层(轨迹优化)。
  • 控制模块:以轨迹为参考,通过 PID、MPC 或 Stanley 等算法输出执行器指令,关注跟踪误差与乘坐舒适性。

行为克隆的输入通常来自感知输出与自车状态,输出直接对接控制或规划层。它并不替代感知,也不直接驱动底盘,而是在“理解环境”和“产生动作”之间建立数据驱动的映射。

四、行为克隆在自动驾驶中的定位与价值

传统模块化方案依赖大量人工规则与参数调优,在长尾场景中难以穷举。行为克隆通过采集人类专家驾驶数据,训练神经网络直接学习“看到什么就怎么做”的策略,具备三方面价值:

  1. 降低规则工程成本:无需为每个场景手写 if-else,策略从数据中自动归纳。
  2. 贴近人类驾驶风格:输出更自然、更符合乘客预期的加减速与转向行为。
  3. 快速覆盖复杂场景:只要专家示范过,模型就有机会学会,适合城市道路等高度交互场景。
行为克隆常作为端到端自动驾驶的核心方法,也可作为模块化架构中的“学习型规划器”,与规则安全层形成互补。

五、常见误区与复盘

误区一:认为行为克隆可以完全替代感知与安全校验。实际上它只学习策略,无法保证输出始终满足安全约束。
误区二:认为数据越多越好。若专家数据存在偏置(如极少左转),模型会系统性偏向直行,即协变量偏移问题。
误区三:忽略闭环评估。开环误差低不代表闭环稳定,微小偏差会在闭环中累积放大。

复盘来看,行为克隆的工程落地需要关注三点:数据覆盖度与均衡性、策略输出的安全兜底机制、以及闭环仿真与实车验证的闭环迭代。理解自动驾驶分级与模块架构,正是判断行为克隆“能做什么、该放在哪里”的前提。

典型行为克隆训练数据字段示例:
{
  "timestamp": 1680000000.123,
  "camera_front": "frame_00123.jpg",
  "lidar_bev": "bev_00123.npy",
  "ego_speed": 8.6,
  "ego_steer": 0.12,
  "ego_accel": 0.35,
  "expert_action": [0.12, 0.35]
}

当把行为克隆放回“感知—决策—控制”的完整链路中,就能清晰看到它的边界:它不解决“看见什么”,而是解决“看见之后怎么做”。这一节建立的系统视角,是后续学习数据采集、模型设计与闭环评估的基础。