自动驾驶前沿综述:基于深度强化学习的自动驾驶算法

作者 | TIM  编辑 | 汽车人

原文链接:https://zhuanlan.zhihu.com/p/477372894

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

点击进入→自动驾驶之心技术交流群

后台回复【数据集下载】获取计算机视觉近30种数据集!

这是 21 年的一篇综述文章,可以算得上是最前沿的自动驾驶技术综述。这几年随着深度表征学习的发展,强化学习领域也得到了加强。文章会对目前最先进的自动驾驶 DRL 算法进行汇总和分类。

4556dbd6c0531ef45ca79aab7371d437.png

论文标题:

Deep Reinforcement Learning for Autonomous Driving: A Survey

论文链接:

https://arxiv.org/abs/2002.00444

da0dfa94bed33daebc1215dc5f4a9e1b.png


简介

自动驾驶系统(AD system),由多个级别的感知和控制任务组成,目前在感知方面,已经可以通过深度学习架构来实现。但在控制层面,经典的监督学习已经不再使用,因为代理需要在每一个瞬间做出动作决策,这些决策可能会改变场景条件。

2fb46c09e1d240b5c071cd64d61fbeff.png

▲ 自动驾驶各级别的任务

4a051537cfea4a4a51818d36745a814b.png


AD system 的组成

2.1 感知模块(Preception Module)

感知模块的目标是创建环境状态的中间级别表示(例如所有障碍物和代理的鸟瞰图),稍后将由最终产生驾驶策略的决策系统使用。该状态将包括车道位置、可行驶区域、代理(例如汽车和行人)的位置、交通信号灯的状态等。感知中的不确定性传播到信息链的其余部分。强大的传感对于安全至关重要,因此使用冗余源可以提高检测的信心。这是通过语义分割、运动估计、深度估计、污点检测等几种感知任务的组合来实现的,这些任务可以有效地统一成一个多任务模型。

▲ 多视角相机融合的鸟瞰图

2.2 场景理解(Scene Understanding)

该模块的作用是将感知模块获得的信息映射到高级动作或决策层。该模块旨在提供对场景的更高层次的理解,通过融合异构传感器源(如激光雷达、相机、雷达、超声波),抽象和概括场景信息,为决策制定提供简化的信息。

2.3 定位和建图(Localization and Mapping)

定位和建图技术,又称 SLAM 是自动驾驶的关键技术之一。由于问题的规模,传统的 SLAM 技术通过语义对象检测得到增强,以实现可靠的消歧。此外,局部高清地图(HD maps)可以用作物体检测的先验。

2.4 规划和推动策略(Planning and Driving Policy)

轨迹规划是自动驾驶中的关键模块,在高清地图或基于 GPS 的地图上计划路线,并引导代理生成运动层的命令。经典运动计划会忽略环境动态和差分约束,因此类似于 A* 算法之类的基于 Djisktra 的算法在此问题中并不适用。而快速探索随机树(RRT)通过随机采样和无障碍路径生成来探索配置空间。目前有多种版本的 RRT 被用于自动驾驶管道中的运动规划。

2.5 控制(Control)

这是最底层的运动控制,即汽车的加速加速,方向盘的转动角度,以及刹车。目前的车辆控制通常是基于经典的最优控制理论,通过状态空间方程  中的汽车当前状态  和 控制输入量  来控制汽车。此方法通常使用 MPC 模型和 PID 控制器使车辆跟随轨迹。但是目前自动驾驶车辆通常使用的是强化学习,该方法的好处是可以处理随机控制问题以及具有未知奖励和状态转移概率的不适定问题。更多此方面的内容推荐阅读综述文 [1]。

7ed229d5454a91a1c4b48ecfdc419315.png


强化学习(reinforcement Learning)

强化学习(RL)是于 监督学习(Sueprvised Learning)和非监督学习(Unsupervised Learning)之外的第三种机器学习(Machine Learning)方式。RL 通过一个代理来完成行动策略。代理的目标是最大化在其生命周期内收到的累积奖励。代理可以通过利用了解不同状态-动作对的预期效用(即预期未来奖励的折扣和)的知识来逐渐增加其长期奖励。

在形式化涉及单个 RL 代理的顺序决策问题时,马尔可夫决策过程 (MDP) 是最流行的解决方法。MDP 由一个状态集合 、一个动作集合 、一个转移函数  和一个奖励函数  组成。通过目标是找到最优策略 ,从而产生最高的折扣奖励总和期望值:

1a47547168cfee21dd903de61ae30f3f.png

其中, 是遵循策略  的状态值方程, 是折扣系数,, 用于控制代理如何看待未来的奖励,低  值鼓励代理人的短视行为,其中代理人旨在最大化短期奖励,而高  值导致代理人更具前瞻性并在更长的时间范围内最大化奖励。 为时间步数,它可以是有限的也可以是无限的。

另一个与状态函数方程相关的是状态-动作方程,又称为“Q值”:

42dfbd710df6e68aab9afd42826f5070.png

a59ec8b3b6cbdbbb8b79deaf4eb52c19.png

▲ MDP 决策的组成部分和关系图

在许多现实世界的应用领域中,智能体不可能观察到环境状态的所有特征;在这种情况下,决策问题被表述为部分可观察的马尔可夫决策过程(POMDP)。解决强化学习任务意味着找到一个策略 ,该策略使状态空间中轨迹上的期望折扣总和最大化。

RL 代理可以直接学习价值函数估计、策略和/或环境模型。动态规划(DP)算法可用于在给定环境模型的奖励和转移函数方面计算最优策略。与 DP 不同,在 MonteCarlo 方法中没有完整环境知识的假设。蒙特卡洛方法在逐集意义上是增量的。情节完成后,价值估计和政策被更新。

另一方面,时间差(TD)方法在逐步意义上是增量的,使其适用于非情节场景。与蒙特卡罗方法一样,TD 方法可以直接从原始经验中学习,而无需环境动态模型。与 DP 一样,TD 方法基于其他估计来学习它们的估计。

文章对于 RL 和 DRL 的算法进行了综合性的概述,这里不做详细的解释,建议系统性的学习这些算法。


6735e851075da08571445107cf7fdc5b.png


自动驾驶任务中的强化学习

在自动驾驶中,RL 可以完成的任务有:控制器优化、路径规划和轨迹优化、运动规划和动态路径规划、为复杂导航任务开发高级驾驶策略、高速公路、交叉路口、合并和拆分的基于场景的策略学习,预测行人、车辆等交通参与者的意图,并最终找到确保安全和执行风险估计的策略。

af04e5247f5b3f68dd2c8cbf46910e4b.png

4.1 状态空间、动作空间和奖励

为了成功地将 DRL 应用于自动驾驶任务,设计适当的状态空间、动作空间和奖励函数非常重要。

4.1.2 状态空间

自动驾驶汽车常用的状态空间特征包括:本车的位置、航向和速度,以及本车的传感器视野范围内的其他障碍物。此外,我们通常使用一个以自主车辆为中心的坐标系,并在其中增强车道信息,路径曲率、自主的过去和未来轨迹、纵向信息等。我们通常会使用一个鸟瞰图来展示这些信息。

4f991058977b8b2598632a97126c09e2.png

▲ 鸟瞰图

4.1.3 动作空间

自主车辆的控制策略需要操纵一系列执行器,比如方向盘,油门和刹车(暂时不考虑其他的执行器)。有一点需要注意的是,这些控制器都是在连续空间中运行的,而大多数 DRL 控制器属于离散空间。因此我们需要选择合适的时间步长。

奖励

为自动驾驶的 DRL 代理设计奖励函数仍然是一个悬而未决的问题。AD 任务的标准示例包括:向目的地行驶的距离 、本车的速度、使本车保持静止、与其他道路使用者或场景对象的碰撞,人行道上的违规行为,保持在车道上,保持舒适和稳定性,同时避免极端加速、制动或转向,并遵守交通规则。

4.2 运动规划和轨迹优化

运动规划是确保目标点和目的地点之间存在路径的任务。但是动态环境和变化的车辆动力学中的路径规划是自动驾驶中的一个难题,比如通过十字路口,或者并入高速公路。有许多文章在这方面做了尝试,并获得了不错的效果,比如论文 [4] [5] [6] [7]。

4.3 模拟器和场景生成工具

自动驾驶数据集使用包含图像、标签对的训练集来处理监督学习设置,用于各种模式。强化学习需要一个可以恢复状态-动作对的环境,同时分别对车辆状态、环境以及环境和代理的运动和动作的随机性进行建模。各种模拟器被积极用于训练和验证强化学习算法。具体信息如下:

b08ac402f88b532782a71396adde79d2.png

outside_default.png

参考文献

outside_default.png

[1] A Survey of Deep Learning Applications to Autonomous Vehicle Control:

https://ieeexplore.ieee.org/abstract/document/8951131?casa_token=fwUZxwU0Eo8AAAAA:B

[2] End-to-End Deep Reinforcement Learning for Lane Keeping Assist:https://arxiv.org/abs/1612.04340

[3] Deep Reinforcement Learning framework for Autonomous Driving:https://www.ingentaconnect.com/content/ist/ei/2017/00002017/00000019/art00012

[4] A Reinforcement Learning Based Approach for Automated Lane Change Maneuvers:https://ieeexplore.ieee.org/abstract/document/8500556?casa_token=OcyB7gHOxcAAAAAA:JrwO6

[5] Formulation of deep reinforcement learning architecture toward autonomous driving for on-ramp merge:https://ieeexplore.ieee.org/abstract/document/8317735?casa_token=HaEyBLwaSU0AAAAA:5

[6] A Multiple-Goal Reinforcement Learning Method for Complex Vehicle Overtaking Maneuvers:https://ieeexplore.ieee.org/abstract/document/5710424?casa_token=Y-bJbe3K9r0AAAAA:ZNo

[7] Navigating Occluded Intersections with Autonomous Vehicles Using Deep Reinforcement Learning:https://ieeexplore.ieee.org/abstract/document/8461233?casa_token=uuC5uVdLp60AAAAA:6fr7

[8] Reinforcement Learning with A* and a Deep Heuristic:https://arxiv.org/abs/1811.07745

[9] CARLA: An Open Urban Driving Simulator:https://proceedings.mlr.press/v78/dosovitskiy17a.html

[10] TORCS - The Open Racing Car Simulator:https://sourceforge.net/projects/torcs/

[11] MADRaS Multi-Agent DRiving Simulato:https://www.opensourceagenda.com/projects/madras

[12] Microscopic Traffic Simulation using SUMO:https://ieeexplore.ieee.org/abstract/document/8569938?casa_token=1z4z-bT6kTsAAAAA:BdTO6tJB4xEgr_EO0CPveWlForEQHJWyprok3uyy3DssqzT-7Eh-pr7H__3DOJPDdpuIVUr7Lw

[13] Flow: Architecture and Benchmarking for Reinforcement Learning in Traffic Control:https://www.researchgate.net/profile/Abdul-Rahman-Kreidieh/publication/320441979_Flow_Archite

[14] A Collection of Environments for Autonomous Driving and Tactical Decision-Making Tasks:https://github.com/eleurent/highway-env

自动驾驶之心】全栈技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D感知、多传感器融合、SLAM、高精地图、规划控制、AI模型部署落地等方向;

加入我们:自动驾驶之心技术交流群汇总!

自动驾驶之心【知识星球】

想要了解更多自动驾驶感知(分类、检测、分割、关键点、车道线、3D感知、多传感器融合、目标跟踪)、自动驾驶定位建图(SLAM、高精地图)、自动驾驶规划控制、领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球(三天内无条件退款),日常分享论文+代码,这里汇聚行业和学术界大佬,前沿技术方向尽在掌握中,期待交流!

7383e27168e5099e5caac530db9f4009.jpeg

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于强化学习自动驾驶系统控制算法研究是一个广泛而长期的研究领域。该领域使用了各种不同的方法,包括深度强化学习(DRL)、优化技术、现代控制方法、人工智能机器学习等。 近年来,基于深度强化学习的方法在自主驾驶运动规划中取得了显著的研究成果。这些方法主要通过训练智能代理使其能够在复杂环境中学习并做出决策。通过这种方式,自动驾驶系统可以通过与环境的交互来提高其驾驶能力。 然而,需要指出的是,尽管深度强化学习方法在解决自动驾驶的一些子任务上表现出了潜力,但目前还没有一个整体端到端的解决方案。一些论文试图通过经典的强化技术来解决自动驾驶的一些子任务,但这些方法存在无法处理非结构化数据的问题,如图像、中级雷达或激光雷达传感。 在基于强化学习自动驾驶系统控制算法研究中,问题的复杂性各不相同。简单的问题,如保持车道或车辆跟踪,通常可以追溯到简单的凸优化或控制问题。但在一些复杂的场景下,如在密集交通中机动,问题的有效完成很难被准确表述,需要智能代理具有预测性思维来实现目标。 总的来说,基于强化学习自动驾驶系统控制算法研究是一个需要综合考虑多个因素的复杂领域,包括问题的复杂性、行动空间的性质、奖励的设置等。该领域的研究目标是为了提高自动驾驶系统在各种不同场景下的驾驶能力和安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值