深度强化学习驱动的自动驾驶运动规划:建模方法与场景化应用

摘要

如近年来,自动驾驶车辆领域的学术研究受到了广泛关注,涉及传感器技术、车与万物通信(V2X)、安全性、保密性、决策制定、控制等多个主题,甚至包括法律和标准化规则。除了经典的控制设计方法外,人工智能和机器学习方法几乎应用于所有这些领域。另一部分研究集中在运动规划的不同层面,如战略决策、轨迹规划和控制。机器学习领域本身已发展出多种技术,本文将介绍其中之一 ------ 深度强化学习(DRL)。本文深入探讨了分层运动规划问题,阐述了深度强化学习的基础。设计此类系统的主要要素包括环境建模、建模抽象、状态描述与感知模型、合理的奖励机制以及底层神经网络的实现。文章还描述了车辆模型、仿真可能性和计算需求,展示了不同层级的战略决策和观测模型(如连续和离散状态表示、基于网格和基于摄像头的解决方案)。本文按自动驾驶的不同任务和级别(如跟车行驶、车道保持、轨迹跟踪、汇入车流或密集交通环境行驶等)对最新解决方案进行了系统综述。最后,讨论了该领域尚未解决的问题和未来的挑战。

一、引言

自动驾驶车辆功能的运动规划是一个广泛且长期研究的领域,采用了多种方法,如不同的优化技术、现代控制方法、人工智能和机器学习。本文呈现了近年来该领域中基于深度强化学习(DRL)方法的研究成果。深度强化学习结合了经典强化学习与深度神经网络,在 Deepmind 发表突破性论文后受到广泛关注。过去几年中,关于自动驾驶车辆和深度强化学习的研究论文数量大幅增加(见图1)。由于不同运动规划问题的复杂性,评估深度强化学习在这些问题中的适用性是一个合适的选择。

图1、科学网主题搜索"深度强化学习"和"自动驾驶汽车"

(一)自动驾驶运动规划的分层分类

将深度神经网络应用于自动驾驶汽车,有望开发出 "端到端" 解决方案。该系统的工作方式类似人类驾驶员:输入包括行驶目的地、道路网络知识和各种传感器信息,输出则是直接的车辆控制指令(如转向、扭矩和制动)。然而,一方面,实现这种方案相当复杂,因为它需要处理驾驶任务的所有层级;另一方面,系统本身如同一个黑箱,这会引发设计和验证方面的问题。从该领域近期的进展来看,大多数研究集中于解决分层运动规划问题的某些子任务。如文献所述,自动驾驶的决策系统至少可分解为四个层级(见图2)。

图2、运动规划的层次

路线规划作为最高层级,基于道路网络地图确定行驶路线点,并可利用实时交通数据。尽管最优路线选择是研究界的热点,但涉及该层级的论文并未采用强化学习方法。关于该主题的全面研究可参见文献。

行为层是自动驾驶的战略层级。在给定路线点的情况下,智能体(agent)会考虑局部道路拓扑结构、交通规则和其他交通参与者的感知状态,制定短期策略。针对驾驶场景,智能体有一组有限的可用动作,因此该层级的实现通常是一个有限状态机,其状态包含基本策略(如跟车行驶、车道变换等),并根据环境变化在这些状态之间进行明确的转换。然而,即使完全了解当前交通状态,周围驾驶员的未来意图仍然未知,这使得该问题具有部分可观测性。因此,未来状态不仅取决于自车(ego vehicle)的行为,还依赖于未知过程,该问题由此构成部分可观测马尔可夫决策过程(POMDP)。已有多种技术可减轻这些影响,例如通过预测其他道路使用者的可能轨迹 ------ 文献中作者使用了高斯混合模型,文献 中则基于记录的交通数据训练了支持向量机和人工神经网络。由于有限动作空间的部分可观测马尔可夫决策过程是强化学习问题建模的自然方式,因此大量研究论文围绕该层级展开,这将在本文后续章节中详细介绍。

为执行行为层定义的策略,运动规划层需要设计一条可行的轨迹,该轨迹包含车辆在短时间范围内的期望速度、横摆角和位置状态。自然地,该层级必须考虑车辆动力学特性,因此经典的精确运动规划解决方案并不实用,因为它们通常假设车辆具有完整动力学特性(holonomic dynamics)。长期以来,人们已知解决非完整动力学(nonholonomic dynamics)运动规划问题的数值复杂度为多项式空间算法(PSPACE),这意味着通过实时求解非线性规划问题来制定整体解决方案难度较大。另一方面,该层级的输出表示形式使得难以直接用 "纯" 强化学习处理,仅有少数论文专门研究该层级,且这些论文通常使用深度强化学习来定义样条曲线作为训练结果。

在最低层级,局部反馈控制负责最小化与规定路径或轨迹的偏差。本文综述的大量论文涉及该任务的各个方面,其中车道保持、轨迹跟踪或跟车行驶是较高层级的策略。尽管在该层级,动作空间是连续的,但经典强化学习方法无法处理连续动作空间,因此需要对控制输出进行离散化处理,或者如部分论文所示,使用深度强化学习的连续变体。

(二)强化学习

作为人工智能和机器学习的一个分支,强化学习(RL)研究的是智能体在环境中学习如何实现目标的问题。与监督学习不同(监督学习中学习者会获得好坏行为的示例),强化学习智能体必须通过试错来发现如何行为才能获得最大奖励 [12]。为完成这一任务,智能体必须在一定程度上感知环境状态,并基于这些信息采取能导致新状态的动作。智能体的动作会带来奖励,这有助于其改进未来的行为。为了最终构建问题模型,还需要基于智能体的动作对环境的状态转移进行建模。这就形成了由(S, A, T, R, Ω, O)函数定义的部分可观测马尔可夫决策过程(POMDP),其中 S 是环境状态集合,A 是特定状态下的可能动作集合,T 是基于动作的状态转移函数,R 是给定(S, A)对的奖励,Ω 是观测集合,O 是传感器模型。在这一背景下,智能体可通过任何推理模型实现,其参数可根据获得的经验进行调整。在深度强化学习中,该模型由神经网络实现。

部分可观测马尔可夫决策过程场景下的问题在于,当前动作会影响未来状态,进而影响未来奖励。这意味着,为了优化整个情节(episode)的累积奖励,智能体需要了解其动作的未来后果。强化学习有两种确定最优行为的主要方法:基于价值的方法和基于策略的方法。

基于价值的方法的原始概念是文献中提出的深度 Q 学习网络(DQN)。简要来说,智能体为每个状态 - 动作对预测一个所谓的 Q 值,该值表示期望的即时奖励和未来奖励。智能体可从这些 Q 值中选择具有最高值的动作作为最优策略,或在训练过程中利用这些值进行探索。其主要目标是学习最优 Q 函数(在该方法中由神经网络表示)。这可以通过进行实验、计算每个动作未来状态的折扣奖励,并使用贝尔曼方程作为目标更新网络来实现。若使用同一网络进行价值评估和动作选择,在噪声环境中会导致行为不稳定且学习速度缓慢。元启发式方法(如经验回放)可解决这一问题,同时也存在原始 DQN 的其他变体,例如双 DQN(Double DQN)或竞争 DQN(Dueling DQN),它们将动作预测和价值预测流分离,从而实现更快、更稳定的学习。

基于策略的方法旨在直接选择最优行为,其中策略 π_θ 是(S, A)的函数。该策略由神经网络表示,带有 softmax 输出层,智能体通常会预测动作期望收益的归一化概率。在最自然的实现中,该输出整合了强化学习过程的探索特性。在高级变体(如演员 - 评论家算法)中,智能体对价值和动作进行不同的预测 [16]。最初,强化学习算法使用有限动作空间,但对于许多控制问题而言,这并不适用。为解决这一问题,文献提出了深度确定性策略梯度(DDPG)智能体,其中 "演员"(actor)直接将状态映射到连续动作。

对于复杂问题,学习过程可能仍然漫长甚至无法成功,这一问题可通过多种方式解决:

· 课程学习(Curriculum learning):训练从任务的简单示例开始,然后逐渐增加难度,文献采用了这种方法。

· 对抗性学习(Adversarial learning):旨在通过恶意输入欺骗模型。

基于模型的动作选择(如 Alpha-Go 中基于蒙特卡洛树搜索(MCTS)的解决方案):可减少远距离奖励带来的问题。

图3、基于深度强化学习的自动驾驶POMDP模型

由于强化学习将问题建模为部分可观测马尔可夫决策过程(一种离散时间随机控制过程),解决方案需要提供一个数学框架,用于在结果部分随机、部分受决策者控制且状态部分可观测的情况下进行决策。对于自动驾驶或高度自动化车辆的运动规划,部分可观测马尔可夫决策过程的元组(S, A, T, R, O)如图 3 所示,其解释如下:

S、A、T 和 R 描述了马尔可夫决策过程(MDP),即学习过程的建模环境。它们可能因目标而异,但在本文所述场景中,需要对车辆动力学、周围静态和动态物体(如其他交通参与者)、道路拓扑结构、车道标线、交通标志和交通规则等进行建模。S 表示仿真的当前实际状态,A 是驾驶自车的智能体的可能动作集合,而状态转移函数 T 会根据车辆的动作更新车辆状态和交通参与者的状态。不同的抽象层级将在第二节 第一 部分描述。许多研究论文使用不同的软件平台进行环境建模,第二节第二部分将简要介绍所使用的部分框架。R 是马尔可夫决策过程的奖励函数,第二节第四部分将对此主题进行总结。

Ω 是智能体在环境中可获得的观测集合,而 O 是观测函数,它给出了可能观测的概率分布。在较简单的情况下,研究假设完全可观测性,并将问题表述为马尔可夫决策过程(MDP),但在许多情况下,车辆并非拥有所有信息。另一个有趣的主题是状态观测的表示,这是深度强化学习智能体架构选择和性能的关键因素。文献中使用的观测模型将在第二节第五部分进行总结。

(三)多智能体强化学习

如前所述,运动规划的较低层级(如轨迹跟踪或简单控制任务)不需要与行为依赖于自车的其他智能体进行交互。然而,在较高层级,当车辆处于复杂场景(如赛车、通过交叉路口、汇入车流或交通环境行驶)时,其他参与者的反应会极大地影响可用选择和可能结果。这就引出了多智能体系统(MAS)领域,当采用强化学习技术处理该领域问题时,被称为多智能体(深度)强化学习(不同文献中简称 MARL 或 MDRL)。多智能体强化学习的一种建模方法是对原始部分可观测马尔可夫决策过程进行泛化,为每个智能体扩展多个动作和观测集合,甚至在不同智能体有不同目标的情况下扩展多个奖励。这种方法被称为分散式部分可观测马尔可夫决策过程(DEC-POMDP)。

自然地,该领域的一些问题仍然可以通过单智能体方法处理:一种是将所有其他智能体嵌入到预先定义的、具有预定义或基于规则行为的模型中,为单个智能体创建独立的学习环境;另一种是采用完全独立的学习者,其中所有其他智能体仅作为实际学习者环境的一部分。但这种方法存在风险 ------ 找到的策略可能会过拟合于环境中其他智能体的策略,从而无法很好地泛化。

与单智能体强化学习问题相比,多智能体强化学习面临更多额外问题,因为它在数值和技术上更为复杂,且存在许多概念性问题需要处理。首先是 "博弈" 的性质,即它是合作性的还是竞争性的,这极大地影响奖励分配(即奖励的计算和分配)。零和博弈通常导致竞争性场景,因为一个智能体的收益必然意味着另一个智能体的损失。在车辆运动规划问题中,赛车就是此类多智能体系统问题的一个例子。此外,还存在明显的合作性问题,即只有所有参与者都成功才算任务完成。某些交通场景可以从这两种角度考虑,例如在交叉路口或高速公路行驶场景中,可以训练智能体以实现个体最短行驶时间,或所有智能体的平均最短行驶时间。即使意图明确,奖励分配也并非易事,可能会导致不同的学习动态或意想不到的结果。

智能体知识或任务的异质性也是一个设计方面的问题。即使所有智能体的个体目标相同,它们的行为也未必需要相似。此外,在某些场景(如汇入车流)中,智能体具有不同的任务:已在目标车道行驶的车辆需要决定是否为汇入车辆调整车距,而汇入车辆的智能体则需要导航至该目标车距。

这引出了与单智能体系统相比的最后一个显著差异:在多智能体系统中,智能体有机会通过消息传递或内存共享进行通信。这种设置通常假设环境是部分可观测的,且智能体之间是合作关系,其目的有两个:一是传递其他智能体无法观测到的信息;二是传递预期行为以实现更好的联合性能。这两种目的在驾驶场景中都具有实际意义,例如在高速公路车队行驶中,每辆车的雷达只能感知前方最近的车辆,但如果能获得前方所有车辆的信息,以及它们的预期制动或加速意图,车辆就能做出更好的反应。多智能体系统中的通信是一个相对较新的领域,已取得了一些有前景的成果,但仍存在许多未解决的问题。

最后,多智能体强化学习有不同的训练方案,主要类别如下:

  1. 集中式控制器方法:为所有智能体的所有观测和动作建立一个联合模型。从理论上讲,这可能是一种最优方法,但本质上是单个智能体控制多个智能体。另一方面,随着智能体数量的增加,动作空间的复杂度呈指数增长,使得探索变得极其困难。

  2. 并发学习方法:每个智能体都有自己的策略、私有观测和动作空间。这种方法适用于异质性任务,但也存在缺点:每个智能体都有自己的学习过程,因此总体学习资源需求(内存、计算量)随智能体数量线性增长;此外,由于智能体的策略会根据其他智能体的行为进行调整,学习动态可能会变得循环(类似简单的石头剪刀布游戏)。

  3. 参数共享方法:智能体开发一个共同的策略,同时结合各自的独特经验。这并不意味着智能体行为完全相同,因为每个智能体的状态和观测可能不同,且这种方法的资源消耗相对较低。

二、强化学习建模

(一)车辆建模

自车运动建模是训练过程的关键部分,因为它需要在模型准确性和计算资源之间进行权衡。由于强化学习技术需要大量情节来确定最优策略,环境的步长时间(很大程度上取决于车辆动力学模型的评估时间)会深刻影响训练时间。因此,在环境设计过程中,需要从最简单的运动学模型到更复杂的动力学模型中进行选择,这些动力学模型包括 2 自由度(2DoF)横向模型,以及参数数量更多、轮胎模型更复杂的高阶模型。

刚性运动学单轨车辆模型忽略了轮胎滑移,其横向运动仅受几何参数影响,因此通常适用于低速场景。最简单的包含纵向和横向运动的动力学模型基于 3 自由度(3DoF)动态自行车模型,通常采用线性轮胎模型,其独立变量为纵向速度(Vx)、横向速度(Vy)和横摆角速度(Ẇ)。更复杂的模型是 9 自由度(9DoF)四轮胎车辆模型,除了 3 自由度模型的参数外,还考虑了车身侧倾、俯仰以及四个车轮的角速度(ωfl、ωfr、ωrl、ωrr),以更精确地计算轮胎力。因此,该模型既考虑了纵向和横向滑移的耦合,也考虑了轮胎间的载荷转移。

尽管运动学模型看似相当简化,且如文献所述,此类模型的行为可能与实际车辆存在显著差异,但对于许多控制场景而言,其准确性已足够。根据文献,使用横向加速度限制在约 0.5g 或以下的运动学自行车模型可提供良好的结果,但仅适用于干燥路面的假设。当横向加速度超过该限制时,该模型无法处理动力学特性,因此在涉及较高加速度(需将车辆动力学推向操控极限)的场景中,应使用更精确的车辆模型。

关于计算时间,基于运动学模型,3 自由度模型的计算量可能是其 10-50 倍,而带有非线性轮胎模型的 9 自由度模型的精确计算量可能是其 100-300 倍,这也是强化学习领域倾向于使用低抽象层级模型的主要原因。

交通和周围车辆的建模通常通过使用特定的仿真器完成(见第二节第二部分)。部分作者使用元胞自动机模型开发自己的环境;部分作者使用 MOBIL 模型(一种通过最小化车道变换引起的整体制动来推导适用于各类跟车模型的自由车道变换和强制车道变换规则的通用模型);还有部分作者使用智能驾驶模型(IDM)------ 一种连续的微观单车道模型。

(二)仿真器

一些作者会创建自定义环境以实现对模型的完全控制,但也有一些商业和开源环境可提供此功能。本节简要介绍近年来在基于强化学习的运动规划研究中使用的部分仿真器。

在交通环境建模中,最受欢迎的选择是 SUMO(城市交通仿真器),它是一个微观、多模式、空间连续且时间离散的交通流仿真平台。它可以转换来自其他交通仿真器(如 VISUM、Vissim 或 MATSim)的网络,也可以读取其他标准数字道路网络格式(如 OpenStreetMap 或 OpenDRIVE),并提供与多种环境(如 Python、Matlab、.Net、C++ 等)的接口。尽管其抽象层级为微观,且车辆行为受到限制,但易用性和高速性使其成为训练智能体处理交通场景的理想选择,不过除了车辆的真实状态外,它不提供任何传感器模型。

另一个在商业和研究中都广泛使用的微观仿真器是 VISSIM,文献中使用它来开发跟车行为和车道变换决策。

仅考虑车辆动力学时,最受欢迎的选择是 TORCS(开源赛车仿真器),它是一个现代化、模块化、高度可移植的多玩家、多智能体汽车仿真器。其高度的模块化和可移植性使其成为人工智能研究的理想选择。它与最流行的人工智能研究环境 Python 的接口便捷,且运行速度可接受,还提供了不同的赛道、竞争机器人和多种传感器模型。

对于车辆动力学仿真,专业工具(如 CarSIM或 CarMaker)本应是最佳选择,但在强化学习文献中并未发现这些软件的应用。这可能是因为它们是昂贵的商业平台,更重要的是,它们缺乏 Python 接口,且高精度但资源密集型的模型使其无法在合理时间内运行多个情节。

对于更详细的传感器模型或交通场景建模,作者通常使用 Airsim、Udacity Gazebo/ROS 和 CARLA:

· Airsim 最初是为无人机开发的仿真器,基于虚幻引擎(Unreal Engine)构建,目前已扩展到车辆仿真,支持不同的天气条件和场景,文献中的近期研究使用了该仿真器。

· Udacity 仿真器是为 Udacity 自动驾驶汽车纳米学位项目开发的,提供了多种传感器(如高质量渲染的摄像头图像、激光雷达(LIDAR)和红外信息),并能够对其他交通参与者进行建模,文献中使用了该仿真器。

· 另一个值得一提的是 CARLA,一个用于自动驾驶研究的开源仿真器。CARLA 专为支持自动驾驶城市驾驶系统的开发、训练和验证而设计,除了开源代码和协议外,还提供了专门为此目的创建的开放数字资产(城市布局、建筑物、车辆),可免费使用。该仿真平台支持传感器套件和环境条件的灵活配置。

尽管本节仅对仿真器进行了简要描述,但文献中提供了该主题的更系统综述。

(三)动作空间

动作空间的选择在很大程度上取决于之前每项研究中为强化学习问题设计的车辆模型和任务,但主要存在两个控制层级:一是通过转向、制动和加速指令直接控制车辆;二是作用于行为层,定义战略层级的选择(如车道变换、车道保持、设置自适应巡航控制(ACC)参考点等)。在该层级,智能体向低层级控制器发出指令,由低层级控制器计算实际轨迹。仅有少数论文涉及运动规划层,该层级的任务定义了端点(x, y, θ),智能体通过训练确定轨迹的节点(以样条曲线表示),如文献所示。此外,还有少数论文偏离了车辆运动限制,通过网格步进来生成动作,类似经典的基于元胞自动机的微观模型。

部分论文通过分离纵向和横向任务来结合控制层和行为层,例如文献中,纵向加速度是直接指令,而车道变换是战略决策。

行为层通常有几个不同的选择,底层神经网络需要从中进行选择,这使其成为具有有限动作的经典强化学习任务。

然而,在控制层级,车辆的执行器(即转向、油门和制动)是连续参数,许多强化学习技术(如 DQN 和策略梯度(PG))无法处理连续动作空间,因为它们需要有限的动作集合,而部分技术(如 DDPG)则适用于连续动作空间。为了适应所使用的强化学习技术对有限动作的要求,大多数论文将转向和加速指令离散化为每个通道 3 到 9 个可能的选项。可能的选择数量较少会使解决方案与现实存在较大差距,可能导致车辆动力学问题(如不可控滑移、剧烈冲击和横摆角速度),但在论文中,运动学模型的使用有时会掩盖这些问题。然而,大量的离散选择会导致部分可观测马尔可夫决策过程方法中可能结果的指数级增长,从而减慢学习过程。

(四)奖励机制

在训练过程中,智能体试图完成一项通常包含多个步骤的任务,该任务被称为一个情节(episode)。当满足以下条件之一时,情节结束:

· 智能体成功完成任务;

· 情节达到预先定义的步骤数;

· 出现终止条件。

前两种情况较为简单,取决于具体问题的设计。终止条件通常是指智能体进入无法完成当前任务的状态,或做出不可接受的错误。车辆运动规划智能体通常使用的终止条件包括与其他参与者或障碍物碰撞、驶离轨道或车道,因为这两种情况都会不可避免地导致情节结束。还有一些较宽松的方法,在事故发生前就以失败为由终止情节,例如车辆与轨道的切线角过大,或与其他参与者距离过近。这些 "事故前" 终止条件通过将失败信息提前,加快了训练速度,但设计时需要谨慎。

奖励机制的作用是评估智能体在情节中做出的选择的优劣,提供反馈以改进策略。奖励的时机是第一个重要方面,强化学习解决方案的设计者需要选择以下策略的组合(每种策略都有其优缺点):

· 仅在情节结束时给予奖励,并将其折扣回之前的(S, A)对。这种方式可能导致学习过程较慢,但最大限度地减少了人为对策略的塑造。

· 通过评估当前状态在每个步骤给予即时奖励。这种解决方案中自然也存在折扣因子,能显著加快学习速度,但即时奖励的选择会极大地影响所建立的策略,有时会阻碍智能体开发出比设计奖励所预期的更优整体解决方案。

· 中间解决方案:在预先定义的时间段或行驶距离内,或在做出良好或不良决策时给予奖励。

在运动规划领域,情节结束时的奖励根据驾驶任务的完成情况或失败情况计算。总体性能因素通常包括:完成任务的时间、保持期望速度或实现尽可能高的平均速度、与车道中心线或期望轨迹的横摆角或距离、超越更多车辆、尽可能减少车道变换次数、靠右行驶等。奖励系统还可以体现乘客舒适性,通过强制车辆动力学的平稳性来实现。最常用的定量指标包括纵向加速度、横向加速度和冲击度(jerk)。

在部分研究中,奖励基于与数据集的偏差,或计算为与参考模型的偏差。这些方法可以提供良好的结果,但在一定程度上偏离了强化学习的原始理念,因为学习过程可能会受到预先已知策略的指导。

(五)观测空间

观测空间向智能体描述环境,需要提供足够的信息以帮助智能体选择适当的动作。因此,根据任务的不同,观测空间包含以下信息:

· 车辆在环境中的状态(如位置、速度、横摆角等);

· 拓扑信息(如车道、标志、规则等);

· 其他参与者(周围车辆、障碍物等)。

观测的参考系可以是绝对的,固定在世界坐标系中,但由于决策过程以自车为中心,选择以自车坐标系、自车在世界中的位置或道路方向为基准的自车中心参考系更为简便。这使得状态分布在位置、航向和速度空间中集中在原点附近(因为其他车辆通常靠近自车,且速度和航向相似),从而减少了策略必须运行的状态空间区域。

1. 车辆状态观测

对于车道保持、导航、简单赛车、超车或机动任务,自车最常用且最简单的观测包括连续变量(|e|, v, θe),分别描述车辆与车道中心线的横向位置、车辆速度和横摆角(见图 4)。这些信息是指导类车车辆的绝对最小值,仅适用于经典运动学类车模型(该模型假设车辆运动无滑移)。尽管在许多文献中这些信息已足够(因为车辆保持在动态稳定区域内),但对于必须考虑更复杂车辆动力学的任务(如赛车场景或车辆稳定性至关重要的场景),这组可观测状态是不够的,需要扩展横摆、俯仰、侧倾、轮胎动力学和滑移等信息。

图4、车辆基本状态观察

2. 环境观测

获取车辆周围环境信息并将其呈现给学习智能体的方式在文献中存在很大差异,可观察到不同层级的传感器抽象:

· 传感器层级:将摄像头图像、激光雷达或雷达信息传递给智能体;

· 中间层级:提供理想化的传感器信息;

· 真实状态层级:提供所有可检测和不可检测的信息。

传感器模型的结构也会影响深度强化学习智能体的神经网络结构,因为类图像或类数组输入需要二维或一维卷积神经网络(CNN)结构,而简单的标量信息集合则适用于简单的全连接网络(DNN)。在某些情况下,这两种类型的输入会混合使用,因此网络需要有两个不同类型的输入层。

基于图像的解决方案通常使用从三维仿真器中提取的前置摄像头图像来表示观测空间。数据以(C×W×H)大小的矩阵形式组织,其中 C 是通道数(强度图像通常为 1 通道,RGB 图像为 3 通道),W 和 H 分别是图像的宽度和高度分辨率。在某些情况下,为了检测运动,会将多个图像并行输入到网络中。有时为了数据和网络压缩,会对图像进行下采样,例如文献中采用(1×48×27)的分辨率,文献中采用(3×84×84)的分辨率。由于图像中的信息是非结构化的(即物体位置或车道信息等状态信息被深度编码在数据中),深度神经网络(如卷积神经网络)通常需要大量样本和时间才能收敛。随着强化学习过程需要大量步骤,这一问题会进一步加剧,导致学习过程漫长,例如文献中需要 150 万步,文献中需要 1 亿步。

许多基于图像的解决方案提出了某种数据预处理方法来克服这一问题。文献中,作者提出了一种基于视觉的横向控制框架,结合了深度学习(DL)和强化学习(RL)方法。为了提高感知精度,提出了一种多任务学习(MTL)卷积神经网络模型,用于学习关键的轨道特征(这些特征用于确定车辆在轨道坐标系中的位置),并训练了一个策略梯度强化学习控制器来解决连续的序列决策问题。自然地,这种方法也可以被视为具有结构化特征的强化学习解决方案,但这种组合方法在基于图像的解决方案中也占有一席之地。

另一种方法是简化非结构化数据。文献中,Kotyan 等人使用连续两帧之间的背景减法得到的差分图像作为输入,假设该图像包含前景的运动信息,底层神经网络会更关注前景特征而非背景特征。使用相同的训练算法,他们的结果表明,使用差分图像代替原始未处理输入,达到相同性能所需的训练步骤约减少 10 倍。第二种可能性是,不将原始图像作为输入,而是将其通过图像语义分割网络处理,如文献中所提出的:"语义图像包含的信息比原始图像少,但包含了智能体采取动作所需的大部分信息。换句话说,语义图像忽略了原始图像中无用的信息。" 这种方法的另一个优点是,训练后的智能体可以使用来自真实世界场景的图像的分割输出,因为在这个层级,仿真数据和真实世界数据之间的差异比仿真图像和真实世界图像之间的差异小得多。图 5 展示了该研究中使用的 640×400 分辨率输入。

图5、来自驾驶数据的真实图像及其语义分割

近年来的研究中,二维或三维激光雷达类传感器模型并不常见,尽管它们可以提供良好的类深度图环境信息。但与摄像头图像一样,它们提供的数据(二维激光雷达为向量,三维激光雷达为矩阵)是非结构化的。这种类型的输入仅在文献中出现,其中观测模拟了一个二维激光雷达,在 150° 的视场角内提供 31 个方向上到障碍物的距离,智能体将传感器数据作为其状态。文献中使用了一种类似的输入结构(但并非建模激光雷达,因为没有反射),该结构由 TORCS 提供,通过虚拟光束传感器来表示车道标线。文中的智能体使用 19 个传感器的读数(探测范围为 200 米,在车辆前半部分每 10° 布置一个),返回至轨道边缘的距离。

基于网格的路径规划方法(如 A * 算法或各种同步定位与地图构建(SLAM)算法)已广泛应用于移动机器人导航领域,该领域中环境被表示为空间地图,通常表述为二维矩阵,为表面网格中的每个二维位置分配三种可能值之一:占用、空闲和未知。这种方法也可用于表示周围车辆的概率机动,或通过从预测的运动序列生成时空地图,实现动态环境中的运动规划。尽管前面引用的示例并未使用强化学习技术,但它们证明了网格表示在该领域的巨大潜力。文献中提出了一种使用网格地图作为观测(结合车辆的位置和横摆角)的强化学习智能体,用于静态环境中的导航(见图 6)。网格地图也是非结构化数据,其复杂度与语义分割图像相似,因为两者的单元格都存储类别信息,因此最优处理方式是使用卷积神经网络架构。

图6、从车辆的角度来看,周围环境可以用粗略的感知图来描述,其中目标由红点(c)表示

在网格中表示移动物体(即周围车辆)不仅需要占用信息,还需要其他信息,因此空间网格的单元格需要包含额外信息。文献中,作者使用等距网格,自车位于中心,其他车辆占用的单元格表示对应车辆的纵向速度(见图 7)。文献中也采用了相同的方法。自然地,这种简单表示无法提供其他交通参与者的横向运动信息,但比仅基于占用的表示提供了更多信息。等距网格是通用环境的合理选择,其中移动机器人的移动方向不受限制,但对于道路车辆而言,车辆主要沿交通流方向行驶。在这种情况下,可以选择固定于道路拓扑结构(即道路车道,无论其曲率或宽度如何)的空间表示。在这些基于车道的网格解决方案中,表示高速公路的网格行数与实际车道数相同,车道沿纵向离散化。文献中展示了这种方法的最简单应用,其中单元格长度等于单位车辆长度,交通行为类似经典的基于元胞自动机的微观模型。

图7、HDM映射过程的可视化

与等距网格类似,这种表示也可用于占用情况,但仍然不包含车辆动力学信息。文献中,将多个连续的交通快照输入到底层卷积神经网络结构中,该结构本质上提取移动物体的速度。在这种设置下,也可以在网格单元格中表示速度,例如文献中,作者将从 Udacity 仿真器中提取的交通信息转换为基于车道的网格。

除了周围车辆的位置和纵向速度外,其他特征(如航向、加速度、横向速度)对于决策制定也很重要。为克服这一问题,可以为每个关键参数使用多层网格地图。文献中,作者处理仿真器状态以计算大小为 4×3×(2× 视场角(FoV)+1) 的观测张量,其中视场角表示以单元格数为单位的最大观测距离。四个通道(第一维)分别对应道路占用情况、车辆的相对速度、相对横向位移和相对于自车的相对航向。图 8 展示了仿真器状态及其对应的网络输入观测示例。

图8、模拟器状态(顶部,放大)转换为4 x 3 x(2 x FoV+1)输入观测张量(底部)

前面提到的观测模型(基于图像、激光雷达或网格)都有一些共同特性:它们都是非结构化数据集,需要卷积神经网络架构进行处理,这增加了学习过程的难度,因为智能体需要同时提取感兴趣的特征并形成动作策略。显然,对非结构化数据进行预处理并将结构化信息输入到智能体网络中是更优选择。结构化数据是指位于记录或文件中固定字段内的任何数据。例如,在交通环境中导航时,根据任务的不同,周围车辆的参数在输入中位于相同的元素位置。在最简单的跟车场景中,智能体仅关注前车,除自车状态外,输入还包括(d, v)或(d, v, a),其中这些参数分别是车间距、速度和前车加速度。与非结构化数据相比,这些方法显著减少了输入数据量,且可通过简单的全连接网络(DNN)处理,这极大地影响了智能体性能的收敛速度。

对于在交通环境中导航(即执行汇入或车道变换机动)的场景,不仅需要考虑前车状态,还需要考虑其他周围车辆的状态。在汇入场景中,最关键的信息是限定目标车距的两辆车的相对纵向位置和速度 2×(dx, dv),文献中使用了这些信息。自然地,这是此类问题的绝对最小表示,但未来将开发更复杂的表示方式。在高速公路机动场景中,需要考虑自车车道和相邻车道的车辆,文献中,作者使用上述 6×(dx, dv) 标量向量表示三个相关车道中的前后车辆。而文献中,作者将该信息扩展为自车侧面相邻车道的占用情况(见图 9)。文献中也采用了相同的方法,但将追踪对象的数量扩展到 9 个。这些研究缺乏横向信息,而文献中,输入向量还包含横向位置和速度,形成 6×(dx, dy, dvx, dvy) 结构,分别表示相对于自车的纵向和横向距离以及速度差异。在处理无信号交叉路口的特殊情况下,作者也采用了这种表述方式,考虑了其他车辆的笛卡尔坐标、速度和航向。

图9、高速公路上的环境状况

三、基于场景的方法分类

尽管本文综述的重点是基于深度强化学习的运动规划研究,但需要提及的是,部分论文尝试通过经典强化学习技术解决自动驾驶的某些子任务。这些经典方法的一个问题是无法处理非结构化数据(如图像、中层雷达或激光雷达传感数据);另一个问题是需要维护所有(S, A)状态 - 动作对的 Q 表,这会导致空间复杂度爆炸,因为 Q 表的大小等于状态和动作中所有类别的大小的乘积。例如,文献中提出的 Q 学习方法:作者在 TORCS 中训练了一个智能体,试图利用空气动力学阻力实现最优超车策略。该场景中仅有两个参与者(超车车辆和前车),行驶在长直轨道上。

状态表示包括两辆车的纵向和横向距离、自车的横向位置以及两辆车的速度差。作者将该状态空间离散化为大小分别为(6, 10, 8, 9)的类别(见表 1),并使用最小的横向动作集合(大小为 3),动作包括向左或向右偏移 1 米以及保持横向位置。综上,该问题生成的 Q 表包含 6×10×8×9×3=12960 个元素。尽管如今这样大小的表格可以轻松处理,但不难想象,对于更复杂的问题(涉及更多车辆、更多传感器、复杂动力学、更密集的状态和动作表示),Q 表的大小会变得极其庞大。一种可能的简化方法是利用多目标强化学习方法,将整体问题分解为子任务,文献中就采用这种方法解决超车机动问题。在后续研究中,作者扩展了该问题,将驾驶问题分解为避撞、目标追踪、车道保持、车道选择、速度保持和稳定转向等任务。为了减小问题规模,文献的作者使用战略层级决策为车辆设定相对于周围车辆的运动目标,并将低层级控制留给经典解决方案,这显著减小了动作空间。

表 1、文献中的状态表示离散化

经典 Q 学习的另一个有趣示例在文献中描述,作者设计了一个智能体,用于考虑障碍物的阿克曼转向地面车辆的路径规划问题。该智能体使用(v, x, y, θ)(速度、位置和航向)作为状态表示,并将强化学习用作优化器(见图 10)。

图10、路径规划结果

尽管人们可能期望机器学习能为自动驾驶提供端到端的整体解决方案,但对近期文献的研究表明,强化学习研究只能为该问题的某些子任务提供答案。近年来的论文围绕这些问题展开,选择特定的场景或情境,研究自学习智能体是否能够解决这些问题。这些问题的复杂程度各不相同。如前所述,强化学习的复杂性(进而影响训练时间)在很大程度上取决于所选问题的复杂性、动作空间的性质以及奖励的及时性和合理表述。最简单的问题(如车道保持或跟车行驶)通常可以归结为简单的凸优化或控制问题,而在这些情况下,表述次要控制目标(如乘客舒适性)更为容易。在复杂程度的另一端,存在一些问题(如在密集交通环境中机动),这些问题的有效完成难以表述,智能体需要具有预测性的 "思考" 才能实现目标。以下将介绍这些方法。

(一)跟车行驶

跟车行驶是本文综述中最简单的任务,问题表述如下:仿真中有两个参与者(前车和跟车),均保持在车道内的横向位置,跟车通过调整纵向速度来保持安全的跟车距离。观测空间由(v, dv, ds)元组组成,分别表示智能体速度、与前车的速度差和车间距。动作是加速指令。奖励系统自然地将两辆车的碰撞视为失败,而智能体的性能基于冲击度、碰撞时间(TTC)或乘客舒适性来评估。文献中展示了另一种方法,其中跟车智能体的性能通过与真实世界测量数据进行比较来评估,以实现类人驾驶行为。

(二)车道保持

车道保持或轨迹跟踪仍然是一个简单的控制任务,但与跟车行驶不同,该问题侧重于横向控制。这些研究中的观测空间采用两种不同的方法:一种是车辆在车道内的 "真实状态" 横向位置和角度;另一种是前置摄像头的图像。自然地,对于基于图像的控制,智能体使用外部仿真器(这些情况下使用 TORCS 和 GAZEBO/ROS)。奖励系统几乎总是将车辆与车道中心线的距离作为即时奖励。需要提及的是,这些智能体几乎不考虑车辆动力学,且令人惊讶的是,它们并不关注纵向和横向的联合控制。

(三)汇入车流

匝道汇入问题涉及高速公路入口场景(见图 11),自车需要在两辆车之间找到可接受的车距以驶入高速公路。最简单的方法是学习纵向控制,使智能体到达该位置,如文献所示。其他论文则使用完整的转向和加速控制。文献中,动作控制车辆的纵向运动(加速和减速),在执行这些动作时,自车保持在车道内;"向左变道" 和 "向右变道" 动作意味着横向运动。每次仅执行一个动作,且动作需完整执行,车辆无法提前中止动作。

图11、斜坡合并:(a)模拟场景和(b)现实世界位置

文献中提出了一个有趣的补充,其中周围车辆的行为不同,存在合作型和非合作型驾驶员。他们在训练智能体时考虑了合作行为,并将结果与三种不同构建的蒙特卡洛树搜索(MTCS)规划器进行了比较。完全信息蒙特卡洛树搜索自然优于强化学习,但计算成本高昂。作者采用课程学习方法训练智能体,逐渐增加交通密度。他们指出:"当直接在密集交通环境中训练强化学习智能体时,策略会收敛到一个次优解决方案,即停留在汇入车道上不动,而不利用其他驾驶员的合作性。这种策略可以避免碰撞,但无法完成汇入机动。"

文献对该问题进行了最详细的描述:"驾驶环境被训练为长短期记忆网络(LSTM)架构,以整合历史和交互驾驶行为对动作选择的影响。深度 Q 学习过程将长短期记忆网络的内部状态作为 Q 函数逼近器的输入,利用更多的历史信息进行动作选择。Q 网络参数通过经验回放进行更新,并使用第二个目标 Q 网络来缓解局部最优和不稳定性问题。" 通过这种方法,研究人员试图结合行为预测和学习的可能性,同时实现更好的性能。

多智能体汇入场景通常仅使用纵向控制来找到安全车距,并将横向运动留给底层控制方案。从这个角度来看,匝道汇入和一些交叉路口通过问题有很多共同之处,因此本节将讨论与匝道汇入和交叉路口相关的多智能体强化学习(MARL)。

第一个示例来自文献,场景是环形交叉路口(在拓扑结构上类似于出入口匝道问题)。该研究使用同质的非通信智能体,采用参数共享的异步优势演员 - 评论家(A3C)学习器。观测空间包括自车状态和场景的鸟瞰图网格(在三个通道中表示要遵循的路径、拓扑结构和动态物体)。自然地,这种设置需要异构输入神经网络:用于网格的卷积神经网络和用于状态值的全连接网络,以及三个离散选择(加速、保持速度和制动)。文献中进行了一项有趣的比较,通过多个场景评估了延迟和单智能体 / 多智能体方法的影响,其中一个场景是无信号交叉路口,四个智能体左转。通过将先前动作集合扩展到部分可观测马尔可夫决策过程中,处理了延迟感知问题。该研究应用了连续的纵向加速指令,并使用了文献中的多智能体深度确定性策略梯度(MADDPG),采用集中式评论家(critic)和分散式演员(actor)架构。

文献中研究了多车道交叉路口,除了纵向离散动作外,还应用了车道变换动作。研究人员使用了文献中的 "COIN"(一种基于参数共享表的即时奖励强化学习方法)。然而,如前所述,此类问题对于表格型 Q 学习器而言过于复杂,因此作者使用 K 近邻(KNN)技术进行函数逼近,以处理偶尔出现的、所有动作都未经过训练的稀有状态。文献中提出了另一种表格型 Q 学习方法,用于基于单元格转换模型的双智能体汇入场景。这种表示足够小,可以求解,但无法扩展和泛化。

在汇入场景中,最复杂的是双汇入场景:两条多车道高速公路交汇后又分离,智能体从两个入口驶入,也从两个出口驶出。该问题的首次研究是文献中提出的 CM3 算法示例,其中两个人工智能控制的智能体在 SUMO 仿真器中与其他周围车辆一起执行这种汇入动作。由于双汇入问题具有相当大的危险性,使用简单的强化学习技术难以解决。文献中,基于策略梯度(PG)的学习器提供纵向和横向期望目标,但由基于规则的监督系统确保其安全性。

(四)交通环境行驶

近年来论文中研究的最复杂场景是自动驾驶智能体在交通环境中行驶。自然地,该任务的复杂程度也可以通过网络拓扑结构、周围车辆的数量和行为、交通规则的应用以及许多其他特性来调整。因此,当前几乎所有解决方案都涉及高速公路行驶场景,该场景中没有交叉路口和行人,所有车道的交通流方向相同。该场景的子任务(如车道保持或跟车行驶)已在前面的章节中讨论过。以下将介绍两种类型的高速公路行驶:首先概述分层方法(智能体在行为层动作,制定车道变换或超车决策,并使用经典控制方法通过底层控制器执行这些动作);其次介绍端到端解决方案(智能体通过转向和加速直接控制车辆)。随着问题变得更加复杂,需要提及的是,经过训练的智能体只能解决其在仿真中接触过的场景类型。因此,设计的仿真交通环境必须涵盖预期场景至关重要。

在行为层制定决策至少包括三个离散动作:保持当前车道、向左变道和向右变道,如文献所示。在该论文中,作者将自车的速度和车道位置的真实状态信息,以及八个周围车辆的相对位置和速度作为观测空间。他们在三种观测噪声类别(无噪声、中等噪声(5%)和高噪声(15%))下训练和测试智能体,并表明在噪声较高的训练环境中训练出的智能体性能更稳健可靠,且通过使用带有 tanh 激活函数的、隐藏层为 64、128、128、64 的深度 Q 网络(DQN),其性能也优于基于规则的 MOBIL 模型。在非常相似的环境和观测空间中,文献使用了更广泛的动作集合来执行车道变换(包括先前的加速或接近目标车距),产生了六种不同的动作(见表 2)。他们还得出结论,使用两个卷积层和一个全连接层的深度 Q 网络(DQN)智能体的性能与基于智能驾驶模型(IDM)和模型的参考模型相当或更优。在同一作者的另一篇论文中,动作空间略有变化,将加速指令改为增加和减少自适应巡航控制(ACC)设定点,并让底层控制器执行这些动作。

表 2、文献中的动作空间

文献中考虑了双车道场景,以进一步分配分层决策:首先,深度 Q 网络(DQN)做出 "是否变道" 的二元决策;随后,另一个 Q 网络根据先前的决策负责纵向加速。因此,第二层与经典控制模块(如纯追踪控制)相结合,输出适当的控制动作以调整车辆位置。文献中也考虑了上述双车道场景,但作者使用了类演员 - 评论家的学习智能体。

自动驾驶中的一个有趣问题是训练智能体的合作行为。文献中,作者考虑了三车道高速公路场景,使用基于车道的网格表示作为观测空间,并使用包含四个动作的简单元组(左、右、加速、无动作),通过奖励函数实现合作和非合作行为。奖励函数中不仅考虑了自车的经典性能指标,还考虑了周围交通的速度(这自然会受到智能体行为的影响)。底层网络使用两个卷积层(16 个大小为(2,2)的补丁滤波器,采用 ReLU 激活函数)和两个全连接层(每个层有 500 个神经元)。为了评估合作行为的影响,作者通过仿真中的虚拟环路收集交通数据,并在经典的流量 - 密度图中可视化由此产生的交通性能(见图 12)。结果表明,合作行为导致更高的交通流量,从而提高了高速公路容量并减少了整体行驶时间。

图12、不同策略下虚拟回路检测到的流量密度关系

端到端解决方案的模型真实性可能仍然存在差异。例如,文献中,作者没有使用非完整的阿克曼转向几何结构,而是为动作空间使用了完整的机器人模型,这极大地降低了控制问题的复杂性。他们的动作包括加速、减速、向左变道、向右变道和无动作,其中前两个动作应用最大加速和减速,而两个变道动作仅使用恒定速度的横向运动。他们使用竞争深度 Q 网络(Dueling DQN)和优先经验回放,结合基于网格的观测模型。文献中使用了类似的控制方法和非完整运动学。该研究的重要性在于它在学习过程中考虑了安全方面:通过使用类似模型预测控制(MPC)的安全检查,智能体避免采取会导致碰撞的动作,这使得训练更快、更稳健。

使用非完整运动学需要加速和转向指令。文献中,作者使用周围车辆结构化信息的连续观测空间和策略梯度(PG)强化学习结构来实现端到端驾驶。由于所使用的方法具有离散动作空间,需要对转向和加速指令进行量化。通过端到端解决方案在交通环境中驾驶的复杂性可以通过智能体所需的训练情节数量来很好地体现:在简单的车道保持场景中,智能体只需数百个情节即可完成任务,而这些问题中使用的智能体需要 30 万个情节。

部分论文也提出了将多智能体方法应用于 "交通环境导航" 场景。文献中,作者使用了一个简单的离散三车道高速公路模型,采用简单的选择,展示了在单智能体方法中训练的车辆如何在多智能体环境中失败,因为它必须与具有相同策略的智能体打交道。但研究也表明,单智能体是在多智能体强化学习(MARL)设置中开始训练的良好初始网络。

如前所述,集中式控制可能是一种解决方案,但随着智能体数量的增加,其复杂性呈指数增长。文献中,作者提出了利用所谓的协调图(CG)技术,该技术将全局收益函数分解为局部收益函数的线性组合。例如,展示了基于身份的协调图(I-DCG)和基于位置的协调图(P-DCG)分离方法,其中图的边仅处理相应智能体动作的笛卡尔积。文献中,作者使用 MIT-Deeptraffic(一种微观战略级仿真器,环境中共有 20 辆车,最多允许对 11 辆车进行智能控制,其余车辆随机选择动作),寻求相同问题的答案,并比较了两种场景:将单个交通智能体的模型应用于多个智能体(迁移学习策略)和纯多智能体强化学习(MARL)方法。

文献中,作者提出了一种周期性参数共享结构,智能体周期性地共享参数,但保持各自的策略,这可能源于与竞争深度 Q 网络(Dueling DQN)相同的思路。在他们的示例中,两个智能体执行合作式静态避障。该研究使用混合网格和自车状态观测,因此采用了卷积神经网络(CNN)/ 全连接网络(DNN)。结果与纯参数共享和完全独立训练进行了比较,表明在该特定情况下,这种折中的方法比原始智能体表现更好。

也有研究小组将注意力从单智能体强化学习转向多智能体强化学习(MARL)。文献中,作者在 TORCS 环境中寻求竞争性超车的解决方案,随后在文献中将研究扩展到多智能体。他们使用一个简单的参数共享深度确定性策略梯度(DDPG),但为两个不同的任务训练智能体:第一个任务仅奖励车道保持,第二个任务还奖励比赛排名。"任务" 作为二进制信息注入观测空间,使单个智能体能够学习相同的策略。因此,基于观测向量中接收到的指令,同一个智能体可以表现出竞争性或合作性。

最后,文献中提出了一种并非纯粹强化学习而是模仿学习的方法,将生成对抗模仿学习(GAIL)与参数共享信任区域策略优化(PS-TRPO)相结合,以实现多智能体环境中的模仿学习,称为 PS-GAIL。对于该框架,智能体需要示范数据,这些数据来自下一代仿真(NGSIM)数据集。

四、未来挑战

该领域近期的研究成果表明,不同的深度强化学习技术可有效应用于自动驾驶车辆运动规划的不同层级问题,但仍有许多问题尚未解决。这些方法的主要优势在于能够处理非结构化数据,例如原始或经过轻微预处理的雷达或基于摄像头的图像信息。

在运动规划中使用由强化学习智能体训练的深度神经网络,其主要优点之一是训练后的网络计算需求相对较低。然而,这一特性需要在学习阶段进行大量试验以获取足够的经验。如前所述,对于简单的凸优化问题,该过程的收敛速度较快,但对于复杂场景,训练可能很快达到数百万步,这意味着一组超参数或奖励假设的设置可能需要数小时甚至数天时间。由于复杂的强化学习任务需要在环境设计、网络结构、奖励机制甚至所用算法本身方面进行持续迭代,因此设计这样的系统是一项耗时的工作。除了适当的结果分析和推理外,评估时间在很大程度上取决于所分配的计算能力。基于此,如今大多数论文都致力于解决运动规划问题的次要子任务,而像城市交通环境导航这样最复杂的场景在文献中尚未出现,这并不令人意外。与许多启发式算法一样,强化学习本身在性能和资源需求之间存在权衡。车辆控制的性能不仅包括行驶时间、平均速度或乘客舒适性,更重要的是安全性和稳健性。强化学习在这两个领域面临诸多挑战,下文将概述这两个主要问题。

(一)安全性

将神经网络和深度学习技术用作汽车系统中的通用函数逼近器引发了若干问题。例如,安全驾驶需要多少训练数据?如文献所述,电子控制单元(ECUs)中实现的汽车应用功能开发需遵循原始设备制造商(OEM)的专有规范和多项国际标准,例如汽车软件过程改进和能力评定(Automotive SPICE)和 ISO 26262。然而,这些标准尚未针对深度学习制定专门的表述,因为该领域的验证和确认问题尚未得到解决。部分论文通过使用底层安全层来处理这些问题,该安全层在车辆控制系统执行规划轨迹之前验证其安全性。然而,在复杂场景中,这种方式无法保证全面的功能安全覆盖。

强化学习的主要目标是从统计角度最大化长期奖励,但对于车辆控制任务而言,首要目标是预防事故。由于强化学习并不一定能阻止使用会导致大量负奖励的动作,因此需要其他方法来处理这些风险。文献中以多种形式探讨了安全性和风险问题,文献对此进行了出色的总结。该领域主要有两个方向:一类解决方案包括使用优化准则的方法;另一类包含修改探索过程的算法。修改优化准则有多种选择:

  1. 最坏情况准则:通过考虑最坏情况,解决由系统随机波动性和参数不确定性引起的问题。

  2. 风险敏感准则:在这种情况下,向损失函数添加一个标量参数(即风险敏感参数)以控制风险水平。

  3. 约束马尔可夫决策过程(constrained MDP):扩展标准马尔可夫决策过程元组,添加策略函数必须满足的约束集。

与假设智能体从零开始学习的经典探索策略不同,修改探索过程是一种可行的选择。在车辆控制应用中,经典探索策略通常会导致灾难性情况。此外,完全无意识的探索策略会浪费大量时间探索底层状态空间的无关区域,这在大型连续状态空间中尤为重要。修改探索过程主要有两个方向:

  1. 应用外部智能引导探索过程:使用人类演示者的有限演示集,然后可以进一步优化这些演示集,创建初步的价值函数(这种方法类似于模仿学习);演示者还可以通过在线展示状态空间中有趣或危险的部分来引导探索;最后,如文献 所示,可以通过监督控制方案满足硬约束。

  2. 使用风险估计。

已有部分研究致力于通过强化学习实现更安全的驾驶:

· 文献中,作者结合深度确定性策略梯度(DDPG)算法和人工势场,开发了一种安全的车道保持和避撞算法。

· 文献中提出了一种颇具启发性的方法,作者还训练了一个移动机器人进行避撞,结合了探索修改和课程学习方法,从低速机动开始,不断提高任务难度。为此,他们提出了一种依赖不确定性的成本函数来估计碰撞风险,并在仿真器和真实机器人上演示了训练过程。

· 文献的作者提供了一个安全高速公路驾驶的示例,通过两种方式提高安全性:一方面,创建了一个学习安全模式的模块,该模块基于初步驾驶数据工作,并使用远期预测;另一方面,基于常见驾驶实践开发了一个启发式手工设计的安全模块,确保最小跟车距离。他们在不同交通密度的仿真中演示了结果。

· 文献中提出了一种所谓的 "并行约束策略优化" 方法,并在两个场景中进行了演示。该方法通过第三个神经网络对风险函数进行逼近,扩展了通用的演员 - 评论家结构,并在车道保持和交叉路口通行仿真中展示了结果。

总体而言,安全强化学习理论是一个动态发展的领域。除了上述综述文章外,感兴趣的读者可以在文献中找到每种解决方案的理论细节。从车辆控制的角度来看,该主题的重要性毋庸置疑,不仅关乎安全性,还关乎状态和动作空间的缩减。训练和验证的一大问题是从大量无关场景中选择有问题的所谓极端情况(corner cases)。

(二)仿真到现实的迁移(Sim2Real)

通过分析近期文章的观测元素可以发现,大多数研究忽略了复杂的传感器模型。部分论文使用 "真实状态" 环境表示或 "理想" 传感器模型,仅有少数文章考虑了传感器噪声。一方面,将从理想观测中获得的知识应用于现实世界存在若干可行性问题;另一方面,如文献所述,使用带噪声或有误的模型实际上可能会产生更稳健的智能体。

环境建模也是如此,在高速公路学习智能体群体中表现得最为明显 ------ 道路拓扑结构几乎总是固定的,且周围车辆的行为受到限制。这些智能体的验证通常在相同的环境设置中进行,这与机器学习的基本技术相矛盾(机器学习中训练和验证场景应在某些方面有所不同)。由于强化学习智能体通常只能在与其经验相近的场景中表现良好,因此至关重要的是专注于开发更真实、更多样化的环境,包括对所有交互交通参与者的建模,以实现易于迁移到现实世界应用的智能体。这适用于车辆动力学建模,需要更多样化和更真实的建模。自然地,这些改进会增加环境模型的数值复杂度,这是这些应用中的主要问题之一。

在本综述评估的研究中,所有问题都是在仿真环境中训练的。仅有一个例外:文献中,作者使用连续、无模型的深度强化学习算法深度确定性策略梯度(DDPG),通过扩展功能显著减少了训练所需的情节数,在真实车辆上训练智能体进行车道保持。

在该领域中,使用仿真作为强化学习训练工具的原因有很多:

  1. 可以获得更多样本,因为仿真比真实实验更快、更便宜(节省燃料、人员和设备成本)。

  2. 安全性高,因为强化学习的试错式学习在真实交通中无法保证安全。

自然地,在强化学习中使用仿真也存在缺点:

  1. 建模和识别问题:许多仿真器为了平衡计算资源而建模不足。与现实世界的差异可能来自观测或车辆动力学方面:传感器可能过于精确、可靠,或提供完整状态的真实值(这在现实世界场景中无法实现);或者相反,可能缺乏细节(这通常是提供摄像头信息的渲染视觉环境的情况)。

  2. 仿真中学习的策略无法迁移到现实世界,这通常被称为 "现实差距" 或 "仿真到现实的差距(sim2real gap)"。即使底层马尔可夫决策过程假设成立,处理此类问题也很困难;而当环境变为部分可观测,或出现多个动作无法预测的活跃智能体时,这种差距会进一步扩大。在真实交通仿真中,几乎(如果不是完全)不可能涵盖所有可能的情况。

表3总结了使用仿真进行强化学习训练的主要优缺点。由于现实差距较大,所开发算法的真实车辆测试无法保证安全性。此外,还会出现许多可行性问题,例如成本、自动化、设备和测试场地等。这些因素共同导致大多数研究停留在仿真层面,仅有少数研究能提供现实世界应用,且都存在一定限制:

· 文献中,车道选择算法的决策在双车道高速公路上进行展示,但未将完全控制权交给算法。

· 文献的停车导航算法在封闭停车场中进行了示例演示。

文献中开发的车道变换机动在封闭测试轨道上进行了评估。

表3、使用仿真进行强化学习训练的优缺点

通常,有三种方法可以缩小现实差距:

  1. 系统识别:尝试使仿真与现实匹配。

  2. 领域自适应:旨在从源数据分布(仿真)中学习一个在不同(但相关)目标数据分布(现实)上表现良好的模型。

  3. 领域随机化:旨在在高度随机化的环境(仿真)中学习,该环境(可能)涵盖目标(现实),使智能体具有稳健性。

这三个概念如图 13 所示。前文已讨论过完全建模系统与可行性之间的权衡,因此本文不再概述系统识别。在领域自适应过程中,需要找到仿真和真实表示之间的迁移技术。例如,对于从前置摄像头获取的图像序列,可以通过语义分割图像解决这种迁移:

· 文献中,两个领域在分割层面达成一致。

文献中,作者尝试通过生成对抗网络(GAN)创建用于训练的 "真实" 图像。自然地,这种方法依赖于生成对抗网络的训练数据,无法保证完全覆盖。

强化学习建模、车辆建模、奖励机制、车辆状态观测

图13、sim2real传输的三种方法的概念图

许多研究表明,强化学习智能体通常会过拟合于其训练环境,甚至开发出在现实应用中完全无法使用的策略。领域随机化除了提高稳健性外,还是一种泛化或正则化技术。然而,随着随机化可能维度的增加,其可扩展性问题变得严重;另一方面,如文献所述,过多的随机化会导致智能体采取保守策略。尽管本综述介绍的大多数研究都使用了某种随机化(多个轨道、随机初始化或目标等),但这些远未涵盖真实驾驶的所有可能情况。基于上述原因,仿真到现实的迁移(sim2real)是该领域未来的关键研究问题之一。

总体而言,该领域仍有许多问题需要解决,例如环境和传感器建模的细节、计算需求、向现实应用的迁移性、智能体的稳健性和验证等。由于这些问题的存在,强化学习本身不足以作为汽车运动规划的工具,但通过与其他方法结合,它可以高效地解决复杂的优化任务。

相关推荐
NewCarRen7 天前
软硬件解耦驱动下的SDV变革:技术栈升级与安全验证
汽车软件
NewCarRen7 天前
动态链接驱动的模块化电动车E/E架构云重构方案
汽车软件
慧都小项3 个月前
Parasoft软件测试解决方案助力Renovo汽车ADAS开发安全与合规
自动驾驶·汽车软件·parasoft·renovo
亚远景aspice2 年前
亚远景科技-如何应对汽车软件开发中质量与速度的冲突带来的挑战?
科技·汽车·敏捷开发·aspice4.0·软件研发管理·汽车软件·aspice认证
亚远景aspice2 年前
亚远景科技-如何看待汽车软件开发中的质量管理与传统质量管理的异同?结合ASPICE标准谈谈
科技·汽车·aspice4.0·软件研发管理·汽车软件研发·汽车软件
亚远景aspice2 年前
亚远景科技-ASPICE 4.0 二级 GP2.1.3/2.1.4 Determine和Identify资源的区别
科技·aspice4.0·软件研发管理·汽车软件研发·汽车软件