arXiv论文《TacklingReal-WorldAutonomousDrivingusingDeepReinforcementLearning》,2022年7月5日上传,作者来自意大利帕尔马大学Vislab和Ambarella(收购了Vislab)。在典型的自动驾驶管道中,监管系统代表了两个最关键的组件,其中由传感器检索和感知算法处理的数据用于实现安全舒适的自动驾驶行为。特别是,规划模块预测自动驾驶汽车应该遵循的路径以执行正确的高级操作,而控制系统执行一系列低级操作,控制转向、加速器和制动。这项工作提出了一种无模型的深度强化学习(DRL)规划器,该规划器训练神经网络来预测加速度和转向角,从而获得数据驱动的车辆,其输出来自自动驾驶车辆的定位和感知算法。单个模块。特别是,完全模拟训练的系统能够在模拟和真实(帕尔马市)无障碍环境中平稳安全地行驶,表明该系统具有良好的泛化能力,也可以在训练场景以外的环境中行驶。此外,为了将该系统部署在真正的自动驾驶汽车上并减少模拟与真实性能之间的差距,作者还开发了一个以微型神经网络为代表的模块,能够在模拟过程中重现真实环境的行为训练。汽车动态行为。在过去的几十年里,从简单的基于规则的方法到实现基于AI的智能系统,在提高车辆自动化水平方面取得了巨大进步。特别是,这些系统旨在解决基于规则的方法的主要局限性,即缺乏与其他道路使用者的协商和互动,以及对场景动态的理解不足。强化学习(RL)广泛用于解决使用离散控制空间输出的任务,例如围棋、Atari游戏或国际象棋,以及连续控制空间中的自动驾驶。特别是,强化学习算法广泛应用于自动驾驶领域,用于开发决策和机动执行系统,例如主动变道、车道保持、超车机动、交叉路口和环岛处理等。本文使用延迟版本的D-A3C,属于所谓的Actor-Critics算法系列。特别是由两个不同的实体组成:演员和评论家。Actor的目的是选择agent必须执行的动作,而Critics估计状态值函数,即agent的特定状态有多好。换句话说,Actor是动作上的概率分布π(a|s;θπ)(其中θ是网络参数),critics是估计的状态值函数v(st;θv)=E(Rt|st),其中R是期望回报。自主研发的高清地图,实现模拟仿真;场景示例如图a所示,为真实自动驾驶汽车测试系统的部分地图区域,而图b为智能体感知周边视图,对应50×50米的区域的,分为四个通道:障碍物(图c)、可行驶空间(图d)、智能体应该遵循的路径(图e)和停止线(图f)。模拟器中的高清地图允许检索有关外部环境的多个信息,例如位置或车道数量、道路限速等。重点是实现平稳和安全的驾驶方式,因此代理在静态场景中进行训练,排除障碍物或其他道路使用者,学习遵循路线并遵守速度限制。该代理使用图中所示的神经网络进行训练,每100毫秒预测一次转向角和加速度。它分为两个子模块:第一个子模块可以定义转向角sa,第二个子模块用于定义加速度acc。这两个子模块的输入由4个通道(可行驶空间、路径、障碍物和停止线)表示,对应于代理的周围视图。每个视觉输入通道包含4个84×84像素的图像,以便为代理提供过去状态的历史记录。除了这种视觉输入,网络还接收5个标量参数,包括目标速度(道路限速)、智能体的当前速度、当前速度与目标速度的比率,以及与转向角和加速度相关的最后一个动作。为了确保探索,使用两个高斯分布对两个子模块输出进行采样以获得相对加速度(acc=N(μacc,σacc))和转向角(sa=N(μsa,σsa))。标准偏差σacc和σsa在训练阶段由神经网络预测和调制,估计模型的不确定性。此外,网络使用两个不同的奖励函数R-acc-t和R-sa-t,分别与加速度和转向角相关,以生成相应的状态值估计(vacc和vsa)。神经网络在帕尔马市的四个场景中进行了训练。对于每个场景,创建多个实例,在这些实例上代理彼此独立。每个智能体都遵循运动学自行车模型,转向角为[-0.2,+0.2],加速度为[-2.0m,+2.0m]。在路段开始时,每个代理开始以随机速度([0.0,8.0])行驶并遵循其预定路径,遵守道路限速。该市区的道路限速在4毫秒到8.3毫秒之间。最后,由于训练场景中没有障碍物,剪辑可以以以下终端状态之一结束:目标到达:智能体到达最终目标位置。驶离道路:智能体偏离了预定路径,错误预测了转向角。TimeOut:完成该段的时间到期;这主要是由于对加速输出的仔细预测,以低于道路限速的速度行驶。为了获得能够在模拟和真实环境中成功驾驶汽车的策略,奖励塑造对于实现所需行为至关重要。特别地,定义了两个不同的奖励函数来分别评估两个动作:R-acc-t和R-sa-t分别与加速度和转向角相关,定义如下:其中R-sa-t和R-acc-t在公式中有一个元素,用于惩罚加速度和转向角的差异分别大于某个阈值δacc和δsa的两个连续动作。特别是,两个连续加速度之间的差异计算为:acc(t)?acc(t?1)|,而racc_indecision定义为:反过来,两个连续的转向角预测的差值计算为Δsa=|sa(t)?sa(t?1)|,而rsa_indecision定义如下:最后,R-acc-t和R-sa-t取决于agent达到的终端状态:goalreached:agent到达目标位置,所以两个rewards的rterminal设置为+1.0;驶离道路:智能体偏离其路径,主要是由于对转向角的预测不准确。因此,-1.0的负信号分配给Rsa,t,0.0的负信号分配给R-acc-t;timeisup:完成该段的可用时间到期,主要是agent过于谨慎的加速预测;因此,rterminal假设R-acc-t为?1.0,R-sa-t为0.0。与模拟器相关的主要问题之一是模拟数据与真实数据之间的差异,因为难以在模拟器中忠实地再现真实世界的条件。为了克服这个问题,使用合成模拟器来简化神经网络的输入并减少模拟数据与真实数据之间的差距。事实上,作为神经网络输入的4个通道(障碍物、驾驶空间、路径和停止线)中包含的信息可以通过感知和定位算法以及嵌入在真实自动驾驶中的高清地图轻松再现汽车。此外,使用模拟器的另一个相关问题与模拟代理执行目标动作和自动驾驶车辆执行该命令的方式不同有关。事实上,在时间t计算的目标动作可以理想地在模拟中的同一精确时刻立即生效。不同之处在于,这不会发生在真实车辆上,因为现实情况是此类目标动作将以某种动态执行,导致执行延迟(t+δ)。因此,有必要在模拟中引入这样的响应时间,以训练代理处理真实自动驾驶汽车中的此类延迟。为此,为了实现更真实的行为,首先训练代理向神经网络添加一个低通滤波器,代理必须执行该过滤器以预测目标动作。如图所示,蓝色曲线表示模拟中目标动作(例如转向角)会发生的理想瞬时响应时间。然后,在引入低通滤波器后,绿色曲线标识模拟代理响应时间。相比之下,橙色曲线显示了自动驾驶汽车执行相同转向操作的行为。然而,从图中可以看出,模拟车辆和真实车辆之间的响应时间差异仍然存在。事实上,神经网络预先设定的加速度和转向角点并不是可行的指令,并没有考虑到一些因素,比如系统的惯性、执行器的延迟等非理想因素.因此,为了尽可能逼真地再现真实车辆的动态,开发了一个由3个完全连接层(深度响应)组成的小型神经网络组成的模型。深度响应行为的图表如上图中的红色虚线所示,可以注意到它与代表真实自动驾驶汽车的橙色曲线非常相似。鉴于训练场景中没有障碍物和交通车辆,所描述的问题对于转向角的活动更为明显,但同样的想法已应用于加速度输出。使用在自动驾驶汽车上收集的数据集训练深度响应模型,其中输入对应于人类驾驶员给车辆的命令(油门压力和方向盘转动),输出对应于车辆的油门、刹车、和弯曲,这可以使用GPS、里程表或其他技术测量来测量。通过这种方式,将此类模型嵌入到模拟器中会产生一个更具可扩展性的系统,可以重现自动驾驶汽车的行为。因此深度响应模块对于转向角的校正是必不可少的,但即使以不太明显的方式,加速也是必要的,并且随着障碍物的引入,这将是清晰可见的。在真实数据上测试了两种不同的策略,以验证深度响应模型对系统的影响。随后,验证车辆是否正确遵循路线并遵守从高清地图得出的限速。最后,表明通过模仿学习(ImitationLearning)对神经网络进行预训练可以显着减少总训练时间。策略如下:策略一:不使用深度响应模型进行训练,而是使用低通滤波器模拟真实车辆对目标动作的响应。策略2:通过引入深度响应模型进行训练,确保更真实的动态。在模拟中进行的测试对这两种策略都产生了良好的结果。事实上,代理能够在100%的时间内以平稳和安全的行为达到目标,无论是在训练场景还是在非训练地图区域。通过在真实场景中测试策略,获得了不同的结果。策略1无法处理车辆动力学,它执行的预测动作与模拟中的代理不同;通过这种方式,策略1将观察到其预测的意外状态,从而导致嘈杂和不舒服的行为。这种行为也会影响系统的可靠性,事实上,有时需要人工协助来防止自动驾驶汽车偏离道路。相比之下,在自动驾驶汽车的所有真实世界测试中,考虑到车辆动力学知识以及系统如何进化以预测行动,策略2从未要求人类接管。唯一需要人工干预的情况是避开其他道路使用者;但是,这些情况不被视为失败,因为策略1和策略2都接受了无障碍场景的培训。为了更好地理解策略1和策略2之间的区别,在真实世界测试的短时间窗口内,神经网络预测的转向角和到中心车道的距离如图所示。可以注意到这两种策略的行为是完全不同的,策略1(蓝色曲线)与策略2(红色曲线)相比是嘈杂和不安全的,这证明深度响应模块对于部署在真实的自我上非常有用。驾驶汽车。战略很重要。为了克服RL需要数百万个事件才能达到最佳解决方案的局限性,通过模仿学习(IL)进行预训练。此外,尽管IL的趋势是训练大型模型,但仍使用相同的小型神经网络(约100万个参数),因为其想法是继续使用RL框架训练系统,以确保更稳健和泛化。这样,硬件资源的使用不会增加,考虑到未来可能的多智能体训练,这一点至关重要。IL训练阶段使用的数据集是由遵循基于规则的移动方法的模拟代理生成的。特别是,对于弯曲,使用PurePursuit的跟踪算法,其中代理旨在沿着特定的路点移动。相反,使用IDM模型来控制代理的纵向加速度。为了创建数据集,基于规则的代理在四个训练场景上移动,每100毫秒保存一次标量参数和四个视觉输入。相反,输出是由纯追踪算法和IDM模型给出的。与输出对应的两个水平和垂直控件简单地表示元组(μacc,μsa)。因此,在IL训练阶段,既不估计标准差(σacc,σsa)的值,也不估计值函数(vacc,vsa)的值。这些特征以及深度响应模块是在IL+RL训练阶段学习的。如图所示,从预训练阶段(蓝色曲线,IL+RL)开始训练同一个神经网络,并在四种情况下与RL(红色曲线,纯RL)的结果进行对比。尽管IL+RL训练比纯RL需要更少的时间并且往往更稳定,但这两种方法都取得了很好的成功率(图a)。此外,面板b中显示的奖励曲线表明,使用纯RL方法(红色曲线)获得的策略甚至无法在更长的训练时间内达到可接受的解决方案,而IL+RL策略在几个片段内达到最佳解决方案(蓝色面板b)中的曲线。在这种情况下,最佳解决方案由橙色虚线表示。该基线表示模拟代理在4个场景中执行50,000集所获得的平均奖励。模拟的agent遵循确定性规则,与采集IL预训练数据集的规则相同,即对弯曲使用纯追逐规则,对纵向加速度使用IDM规则。两种方法之间的差距可能更明显,训练系统执行更复杂的操作,其中可能需要主体与身体的交互。
