2. 自动驾驶基础
在进入强化学习策略评测与部署之前,必须先建立对自动驾驶系统本身的整体认知。强化学习策略并不是孤立运行的算法,它最终要嵌入到自动驾驶系统的感知、决策、规划、控制链路中,并通过仿真与实车测试验证其安全性。本章从自动驾驶分级出发,梳理系统架构、核心模块职责,以及仿真到实车的测试流程,为后续策略评测建立工程语境。
一、自动驾驶分级:从L0到L5的责任边界
SAE J3016 将自动驾驶分为 L0 至 L5 六个等级,其核心区别不在于“车辆能做什么”,而在于动态驾驶任务(DDT)由谁执行、谁负责监控、谁承担接管责任。L0 至 L2 属于辅助驾驶,驾驶员始终是责任主体;L3 在特定设计运行域(ODD)内由系统执行 DDT,但驾驶员需在请求时接管;L4 在 ODD 内系统可独立完成 DDT 与接管,无需人类干预;L5 则无 ODD 限制,实现全域自动驾驶。
对强化学习策略评测而言,分级直接决定了评测目标:L2 级策略关注舒适性与驾驶员接管频率,L3 级必须评测接管请求的提前量与可解释性,L4 级则要求策略在 ODD 边界内具备安全冗余与最小风险状态(MRM)能力。因此,脱离分级谈“策略好坏”是没有意义的。
二、系统架构:从传感器到执行器的闭环
典型自动驾驶系统采用分层架构:传感器层负责摄像头、激光雷达、毫米波雷达、IMU、GNSS 等原始数据采集;感知层完成目标检测、跟踪、语义分割、车道线识别与自车定位;决策层进行行为决策与路径规划;控制层输出油门、刹车、转向指令;执行层由线控底盘完成动作。各层之间通过车载以太网或 CAN 总线通信,并共享统一的时间同步与坐标系。
强化学习策略通常作用于决策层或规划层,其输入是感知层输出的结构化场景表示,输出是行为意图或轨迹参数。理解这一位置关系,才能正确设计策略的观测空间、动作空间与奖励函数。
三、感知、决策、规划、控制四大模块职责
感知模块解决“我在哪、周围有什么”。它输出自车位姿、障碍物列表、车道拓扑与可行驶区域。感知误差会直接传播到决策层,因此策略评测必须考虑感知噪声注入。决策模块解决“我该做什么”,包括车道保持、跟车、换道、避障等行为选择。规划模块解决“我该怎么走”,生成满足动力学约束的平滑轨迹。控制模块解决“我怎么执行”,通过 PID、MPC 等算法跟踪轨迹。
强化学习策略常见的嵌入方式有三种:一是替代决策模块输出高层行为;二是替代规划模块输出轨迹参数;三是作为端到端策略直接输出控制量。不同嵌入方式对观测空间和奖励设计的要求差异很大。
四、仿真与实车测试流程
自动驾驶测试遵循“仿真优先、实车验证”的流程。仿真阶段包括场景生成、传感器仿真、动力学仿真与指标评估;实车阶段包括封闭场地测试、开放道路测试与影子模式。仿真可以低成本覆盖长尾场景,实车则验证真实传感器噪声、通信延迟与执行器特性。
| 测试阶段 | 主要目标 | 典型工具/方法 | 强化学习策略关注点 |
|---|---|---|---|
| 软件在环 SIL | 验证算法逻辑与接口 | CARLA、LGSVL、Prescan | 观测空间、动作空间、奖励收敛性 |
| 硬件在环 HIL | 验证控制器与总线时序 | dSPACE、Vector CANoe | 推理延迟、控制周期匹配 |
| 封闭场地测试 | 验证实车基本功能与安全 | 测试场、假人假车 | 策略泛化性、边界场景表现 |
| 开放道路测试 | 验证真实交通流适应性 | 安全员接管、影子模式 | 接管率、舒适度、合规性 |
五、案例与常见误区
某团队在 CARLA 中训练了一个换道策略,仿真中成功率 98%,但实车测试时频繁出现急刹。复盘发现:仿真中感知输入是完美真值,而实车感知存在 150ms 延迟与目标抖动,策略对观测噪声极度敏感。改进方案是在训练时注入感知噪声与延迟,并在奖励中加入 jerk 惩罚。
# 仿真测试配置示例(伪代码)
scenario: cut_in_highway
sensor:
camera: {fps: 30, latency_ms: 80}
lidar: {fps: 10, latency_ms: 120}
policy:
type: PPO
obs: [ego_state, objects, lane]
action: [steer, accel]
reward:
collision: -100
jerk: -0.5
progress: +1.0
eval:
episodes: 500
metrics: [collision_rate, takeover_rate, jerk_mean]
理解自动驾驶分级、系统架构与测试流程,是后续强化学习策略评测与部署的工程基础。只有把策略放回真实的系统链路中,才能设计出有意义的观测、动作、奖励与评测指标。