智猩猩「DeepSeek大解读 」系列公开课第三期来啦!2月24日19:00
,阿里云三位技术专家将分别围绕云上智能算力支撑DeepSeek、智算场景的Kubernetes容器、DeepSeek一键部署及应用集成进行直播讲解。扫码报名申请观看直播或入群交流。
文章转载自公众号:
自动驾驶之心。
本文只做学术/技术分享,如有侵权,联系删文。
现有的端到端自动驾驶(AD)算法通常遵循模仿学习(IL)范式,这面临着因果混淆和开环Gap等
挑战。在这项工作中,我们建立了一个基于3DGS的闭环强化学习(RL)训练范式。通过利用3DGS技术,可以构建真实物理世界的真实仿真结果,使AD策略能够广泛探索状态空间,并通过大规模试错学习处理分布外场景。为了提高安全性,我们设计了专门的奖励机制,引导策略有效应对安全关键事件并理解现实世界的因果关系。为了更好地与人
类驾驶行为对齐,IL被纳入RL训练作为正则化项。我们引入了一个由多样且以前未见过的3DGS环境组成的闭环评估基准。与基于IL的方法相比,RAD在大多数闭环指标中表现更强,尤其是碰撞率降低了3倍。
项目主页:
https://hgao-cv.github.io/RAD。
端到端自动驾驶(AD)目前是学术界和工业界的热门话题。
它通过直接将感官输入映射到驾驶动作,用整体流水线取代模块化流水线,从而提供系统简洁性和泛化能力的优势。
大多数现有的端到端AD算法遵循模仿学习(IL)范式,该范式训练神经网络以模仿人类驾驶行为。
然而尽管它们简单,但基于IL的方法在实际部署中面临重大挑战。
一个关键问题是因果混淆。IL通过从演示中学习来训练网络复制人类驾驶策略。然而,这种范式主要捕捉观察(状态)和动作之间的相关性,而不是因果关系。因此经过IL训练的策略可能难以识别规划决策背后的真正因果因素,导致捷径学习,例如仅仅从历史轨迹推断未来轨迹。此外,由于IL训练数据主要包含常见的驾驶行为,不足以覆盖长尾分布,经过IL训练的策略往往收敛到平凡解,缺乏对碰撞等安全关键事件的足够敏感性。
另一个主要挑战是开环训练与闭环部署之间的差距。IL策略以开环方式使用分布良好的驾驶演示进行训练。然而,现实世界的驾驶是一个闭环过程,每一步的小轨迹误差会随着时间累积,导致复合误差和分布外场景。IL训练的策略在这些未见过的情况下常常表现不佳,引发了对其鲁棒性的担忧。
解决这些问题的一个直接方法是进行闭环强化学习(RL)训练,这需要一个可以与AD策略交互的驾驶环境。然而,使用真实世界的驾驶环境进行闭环训练存在禁止的安全风险和运营成本。具有传感器数据模拟功能的仿真驾驶环境(这是端到端AD所需要的)通常建立在游戏引擎上,但无法提供仿真的传感器模拟结果。
在这项工作中,我们建立了一个基于3DGS的闭环RL训练范式。利用3DGS技术,我们构建了真实物理世界的仿真数字副本,使AD策略能够广泛探索状态空间,并通过大规模试错学习处理分布外场景。为了确保对安全关键事件的有效响应和对现实世界因果关系的更好理解,我们设计了专门的安全相关奖励。然而,RL训练提出了几个关键挑战,本文解决了这些问题。
一个重大挑战是人类对齐问题。RL中的探索过程可能导致偏离类人行为的策略,破坏动作序列的平滑性。为了解决这个问题,我们在RL训练期间将模仿学习作为正则化项纳入,帮助保持与人类驾驶行为的相似性。如图1所示,RL和IL协同优化AD策略:RL通过建模因果关系和缩小开环差距来增强IL,而IL通过确保更好的人类对齐来改进RL。
另一个主要挑战是稀疏奖励问题。RL经常遭受稀疏奖励和缓慢收敛的问题。为了缓解这个问题,我们引入了与碰撞和偏差相关的密集辅助目标,有助于约束完整动作分布。此外,我们简化并解耦动作空间,以减少与RL相关的探索成本。
为了验证我们方法的有效性,我们构建了一个由多样且以前未见过的3DGS环境组成的闭环评估基准。我们的方法RAD在大多数闭环指标中优于基于IL的方法,特别是在碰撞率方面降低了3倍。
我们提出了第一个基于3DGS的RL框架,用于训练端到端AD策略。
奖励、动作空间、优化目标和交互机制经过特别设计,以提高训练效率和效果。
我们结合RL和IL协同优化AD策略。
RL通过建模因果关系和缩小开环差距来补充IL,而IL在人类对齐方面补充RL。
我们在一个由多样且以前未见过的3DGS环境组成的闭环评估基准上验证了RAD的有效性。
RAD在闭环评估中表现更强,特别是碰撞率比基于IL的方法低3倍。
动态场景重建
隐式神经表示在新视图合成和动态场景重建中占据主导地位,UniSim、MARS和 NeuRAD等方法利用神经场景图来实现结构化的场景分解。然而这些方法依赖于隐式表示,导致渲染速度较慢,限制了它们在实时应用中的实用性。相比之下,3D 高斯溅射(3DGS)作为一种高效的替代方案出现,提供了显著更快的渲染速度,同时保持了高视觉保真度。最近的工作探索了其在动态场景重建中的潜力,特别是在自动驾驶场景中。StreetGaussians、DrivingGaussians和 HUGSIM展示了基于高斯表示在建模城市环境中的有效性。这些方法在保持可控性的同时实现了卓越的渲染性能,通过显式将场景分解为结构化组件。然而,这些工作主要利用3DGS进行闭环评估。在这项工作中,我们将3DGS纳入RL训练框架。
端到端自动驾驶
基于学习的规划由于其数据驱动的性质和随着数据量增加而表现出的出色性能,最近显示出巨大的潜力。UniAD通过整合多个感知任务来增强规划性能,展示了端到端自动驾驶的潜力。VAD进一步探索了使用紧凑的矢量化场景表示来提高效率。一系列工作也采用了单轨迹规划范式,并进一步增强了规划性能。VADv2 通过建模规划词汇的概率分布,将范式转向多模式规划。Hydra-MDP改进了VADv2的评分机制,通过引入基于规则的评分器提供额外监督。SparseDrive探索了一种替代的无BEV解决方案。DiffusionDrive提出了一种截断扩散策略,将锚定的高斯分布去噪为多模式驾驶动作分布。大多数端到端方法遵循数据驱动的IL训练范式。在这项工作中,我们提出了基于3DGS的RL训练范式。
强化学习
强化学习是一项有前景的技术,尚未被充分探索。AlphaGo和 AlphaGo Zero已经展示了强化学习在围棋游戏中的强大能力。最近,OpenAI O1和 Deepseek-R1利用强化学习开发了推理能力。一些研究也将强化学习应用于自动驾驶。然而,这些研究基于非仿真的模拟器(如CARLA),或者不涉及端到端驾驶算法,因为它们需要完美的感知结果作为输入。据我们所知,RAD是第一个在仿真的3DGS环境中使用强化学习训练端到端AD代理的工作。
端到端驾驶策略
RAD的整体框架如图2所示。RAD以多视图图像序列作为输入,将传感器数据转换为场景标记嵌入,输出动作的概率分布,并对动作进行采样以控制车辆。
-
鸟瞰图(BEV)编码器:
我们首先使用BEV编码器将多视图图像特征从透视视图转换为鸟瞰图,从而在BEV空间中获得一个特征图。
该特征图随后用于学习实例级地图特征和智能体特征。
-
地图头:
然后,我们利用一组地图标记从BEV特征图中学习驾驶场景的矢量化地图元素,包括车道中心线、车道分隔线、道路边界、箭头、交通信号灯等。
-
智能体头:
此外,我们采用一组智能体标记来预测其他交通参与者的运动信
息,包括位置、方向、大小、速度和多模态未来轨迹。
-
图像编码器:
除了上述实例级地图和智能体标记外,我们还使用单独的图像编码器将原始图像转换为图像标记。
这些图像标记为规划提供了密集而丰富的
场景信息,与实例级标
记形成互补。
-
动作空间:
为了加速强化学习训练的收敛,我们设计了一种解耦的离散动作表示。我们将动作分为两个独立的部分:横向动作和纵向动作。动作空间是在0.5秒的短时间范围内构建的,在此期间,通过假设车辆的线性速度和角速度恒定来近似其运动。在这个假设下,横向动作
和纵向动作
可以根据当前的线性速度和角速度直接计算得出。通过将解耦与有限的时间范围和简化的运动模型相结合,我们的方法有效地降低了动作空间的维度,加速了训练收敛。
-
规划头:
我们用
表示场景表示,它由地图标记、智能体标记和图像标记组成。我们初始化一个规划嵌入,记为
。一个级联的Transformer解码器
以规划嵌入
作为查询,场景表示
作为键和值。解码器
的输出然后与导航信息
和自车状态
相结合,以输出横向动作
和纵向动作
的概率分布:
其中
、
、
和MLP的输出维度均为
。规划头还输出值函数
和
,分别用于估计横向和纵向动作的预期累积奖励:
我们采用三阶段训练范式:
感知预训练、规划预训练和强化后训练,如图2所示。
-
感知预训练:
图像中的信息是稀
疏且低级的。
在第一阶段,地图头和智能体头明确输出地图元素和智能体运动信息,这些信息由真实标签进行监督。
因此,地图标记和智能体标记隐式编码了相应的高级信息。
在这个阶段,我们只更新BEV编码器、地图头和智能体头的参数。
-
规划预训练:
在第二阶段,为了防止强化学习训练的冷启动不稳定,首先进行模仿学习,基于专家驾驶员在现实世界中的大规模驾驶演示来初始化动作的概率分布。
在这个阶段,我们只更新图像编码器和规划头的参数,而BEV编码器、地图头和智能体头的参数被冻结。
感知任务和规划任务的优化目标可能会相互冲突。
然而,通过将训练阶段和参数解耦,这种冲突在很大程度上得以避免。
-
强化后训练:
在强化后训练中,强化学习和模仿学习协同微调分布。
强化学习旨在引导策略对关键风险事件敏感,并适应分布外的情况。
模仿学习作为正则化项,使策略的行为与人类行为保持相似。
我们从收集到的驾驶演示中选择了大量高碰撞风险的密集交通片段。对于每个片段,我们训练一个独立的3DGS模型,对该片段进行重建,并将其作为数字驾驶环境。如图3所示,我们设置了N个并行工作进程。每个工作进程随机采样一个3DGS环境并开始滚动,即AD策略控制自车移动,并与3DGS环境进行迭代交互。在这个3DGS环境的滚动过程结束后,生成的滚动数据
被记录在滚动缓冲区中,并且该工作进程将采样一个新的3DGS环境进行下一轮滚动。
在策略优化方面,我们迭代执行强化学习训练步骤和模仿学习训练步骤。对于强化学习训练步骤,我们从滚动缓冲区中采样数据,并遵循近端策略优化(PPO)框架来更新AD策略。对于模仿学习训练步骤,我们使用现实世界的驾驶演示来更新策略。在固定数量的训练步骤之后,更新后的AD策略被发送到每个工作进程中,以替换旧策略,从而避免数据收集和优化之间的分布偏移。我们只更新图像编码器和规划头的参数。BEV编码器、地图头和智能体头的参数被冻结。下面将详细介绍强化学习的设计。
在3DGS环境中,自车根据AD策略行动。其他交通参与者以日志重放的方式根据现实世界数据行动。我们采用一个简化的运动学自行车模型,每隔
秒迭代更新自车的位姿,公式如下:
其中
和
表示自车相对于世界坐标系的位置;
是航向角,定义了车辆相对于世界x轴的方向;
是自车的线速度;
是前轮的转向角;L是轴距,即前后轴之间的距离。
在滚动过程中,AD策略在时间步
为0.5秒的时间范围输出动作
。我们根据
推导出线性速度
和转向角
。基于公式3中的运动学模型,自车在世界坐标系中的位姿从
更新为
。基于更新后的
,3DGS环境计算自车的新状态
。更新后的位姿
和状态
作为下一次推理过程迭代的输入。3DGS环境还根据多源信息(包括其他智能体的轨迹、地图信息、自车的专家轨迹和高斯参数)生成奖励R,这些奖励用于优化AD策略。
奖励是训练信号的来源,它决定了强化学习的优化方向。奖励函数旨在通过惩罚不安全行为和鼓励与专家轨迹对齐来引导自车的行为。它由四个奖励组件组成:(1)与动态障碍物碰撞、(2)与静态障碍物碰撞、(3)与专家轨迹的位置偏差、(4)与专家轨迹的航向偏差:
如图4所示,这些奖励组件在特定条件下被触发。在3DGS环境中,如果自车的边界框与动态障碍物的标注边界框重叠,则检测到动态碰撞,触发负奖励
。类似地,当自车的边界框与静态障碍物的高斯分布重叠时,识别为静态碰撞,产生负奖励
。位置偏差通过自车当前位置与专家轨迹上最近点之间的欧几里得距离来衡量。如果偏差超过预定义阈值
,则会产生负奖励
。航向偏差计算为自车当前航向角
与专家轨迹匹配的航向角
之间的角度差。如果偏差超过阈值
,则会产生负奖励
。
这些事件中的任何一个,包括动态碰撞、静态碰撞、过度的位置偏差或过度的航向偏差,都会立即触发情节终止。因为在这些事件发生后,3DGS环境通常会生成有噪声的传感器数据,这对强化学习训练是有害的。
在闭环环境中,每一步的误差会随着时间累积。上述奖励不仅由当前动作引起,还受到前面步骤动作的影响。奖励通过广义优势估计(GAE)向前传播,以优化前面步骤的动作分布。
具体来说,对于每个时间步
,我们存储当前状态
、动作
、奖励
和值的估计
。基于解耦的动作空间,并考虑到不同奖励与横向和纵向动作的相关性不同,奖励
被分为横向奖励
和纵向奖励
:
类似地,值函数
被解耦为两个组件:用于横向维度的
和用于纵向维度的
。这些值函数分别估计横向和纵向动作的预期累积奖励。优势估计
和
的计算如下:
其中
和
是横向和纵向维度的时间差分误差,
是折扣因子,
是GAE参数,用于控制偏差和方差之间的权衡。
为了进一步阐明优势估计与奖励组件之间的关系,我们基于公式5中的奖励分解和公式6中的优势估计,对
和
进行分解。具体来说,我们得到以下分解:
其中
是避免静态碰撞的优势估计,
是最小化位置偏差的优势估计,
是最小化航向偏差的优势估计,
是避免动态碰撞的优势估计。
这些优势估计用于遵循PPO框架指导AD策略
的更新。通过利用分解后的优势估计
和
,我们可以独立优化策略的横向和纵向维度。这是通过为每个维度定义单独的目标函数
和
来实现的,如下所示:
裁剪后的目标函数
可防止对策略参数
进行过大的更新,从而保持训练的稳定性。
强化学习通常面临奖励稀疏的问题,这使得收敛过程不稳定且缓慢。为了加快收敛速度,我们引入了辅助目标,为整个动作分布提供密集的指导。
辅助目标旨在通过纳入特定的奖励源来惩罚不良行为,这些奖励源包括动态碰撞、静态碰撞、位置偏差和航向偏差。这些目标是基于旧的自动驾驶策略
在时刻
选择的动作
和
计算的。为了便于评估这些动作,我们将动作的概率分布分为四个部分:
这里,
表示减速动作的总概率,
表示加速动作的总概率,
表示向左转向动作的总概率,
表示向右转向动作的总概率。
-
动态碰撞辅助目标:
动态碰撞辅助目标根据潜在碰撞相对于自车的位置调整纵向控制动作
。如果检测到前方有碰撞,策略优先选择减速动作(
);如果检测到后方有碰撞,则鼓励加速动作(
)。为了将这种行为形式化,我们定义一个方向因子
: