©作者 | 陈道明
学校 | 布里斯托尔大学
研究方向 | 自动驾驶方向
这是 21 年的一篇综述文章,可以算得上是最前沿的自动驾驶技术综述。这几年随着深度表征学习的发展,强化学习领域也得到了加强。本文会对目前最先进的自动驾驶 DRL 算法进行汇总和分类。
论文标题:
Deep Reinforcement Learning for Autonomous Driving: A Survey
论文链接:
https://arxiv.org/abs/2002.00444
自动驾驶系统(AD system),由多个级别的感知和控制任务组成,目前在感知方面,已经可以通过深度学习架构来实现。但在控制层面,经典的监督学习已经不再使用,因为代理需要在每一个瞬间做出动作决策,这些决策可能会改变场景条件。
▲ 自动驾驶各级别的任务
感知模块的目标是创建环境状态的中间级别表示(例如所有障碍物和代理的鸟瞰图),稍后将由最终产生驾驶策略的决策系统使用。该状态将包括车道位置、可行驶区域、代理(例如汽车和行人)的位置、交通信号灯的状态等。感知中的不确定性传播到信息链的其余部分。强大的传感对于安全至关重要,因此使用冗余源可以提高检测的信心。这是通过语义分割、运动估计、深度估计、污点检测等几种感知任务的组合来实现的,这些任务可以有效地统一成一个多任务模型。
▲ 多视角相机融合的鸟瞰图
该模块的作用是将感知模块获得的信息映射到高级动作或决策层。该模块旨在提供对场景的更高层次的理解,通过融合异构传感器源(如激光雷达、相机、雷达、超声波),抽象和概括场景信息,为决策制定提供简化的信息。
定位和建图技术,又称 SLAM 是自动驾驶的关键技术之一。由于问题的规模,传统的 SLAM 技术通过语义对象检测得到增强,以实现可靠的消歧。此外,局部高清地图(HD maps)可以用作物体检测的先验。
轨迹规划是自动驾驶中的关键模块,在高清地图或基于 GPS 的地图上计划路线,并引导代理生成运动层的命令。经典运动计划会忽略环境动态和差分约束,因此类似于 A* 算法之类的基于 Djisktra 的算法在此问题中并不适用。而快速探索随机树(RRT)通过随机采样和无障碍路径生成来探索配置空间。目前有多种版本的 RRT 被用于自动驾驶管道中的运动规划。
2.5 控制(Control)
这是最底层的运动控制,即汽车的加速加速,方向盘的转动角度,以及刹车。目前的车辆控制通常是基于经典的最优控制理论,通过状态空间方程 中的汽车当前状态 和 控制输入量 来控制汽车。此方法通常使用 MPC 模型和 PID 控制器使车辆跟随轨迹。但是目前自动驾驶车辆通常使用的是强化学习,该方法的好处是可以处理随机控制问题以及具有未知奖励和状态转移概率的不适定问题。更多此方面的内容推荐阅读综述文 [1]。
强化学习(RL)是于 监督学习(Sueprvised Learning)和非监督学习(Unsupervised Learning)之外的第三种机器学习(Machine Learning)方式。RL 通过一个代理来完成行动策略。代理的目标是最大化在其生命周期内收到的累积奖励。代理可以通过利用了解不同状态-动作对的预期效用(即预期未来奖励的折扣和)的知识来逐渐增加其长期奖励。
在形式化涉及单个 RL 代理的顺序决策问题时,马尔可夫决策过程 (MDP) 是最流行的解决方法。MDP 由一个状态集合 、一个动作集合 、一个转移函数 和一个奖励函数 组成。通过目标是找到最优策略 ,从而产生最高的折扣奖励总和期望值:
其中, 是遵循策略 的状态值方程, 是折扣系数,, 用于控制代理如何看待未来的奖励,低 值鼓励代理人的短视行为,其中代理人旨在最大化短期奖励,而高 值导致代理人更具前瞻性并在更长的时间范围内最大化奖励。 为时间步数,它可以是有限的也可以是无限的。
另一个与状态函数方程相关的是状态-动作方程,又称为“Q值”:
▲ MDP 决策的组成部分和关系图
在许多现实世界的应用领域中,智能体不可能观察到环境状态的所有特征;在这种情况下,决策问题被表述为部分可观察的马尔可夫决策过程(POMDP)。解决强化学习任务意味着找到一个策略 ,该策略使状态空间中轨迹上的期望折扣总和最大化。
RL 代理可以直接学习价值函数估计、策略和/或环境模型。动态规划(DP)算法可用于在给定环境模型的奖励和转移函数方面计算最优策略。与 DP 不同,在 MonteCarlo 方法中没有完整环境知识的假设。蒙特卡洛方法在逐集意义上是增量的。情节完成后,价值估计和政策被更新。
另一方面,时间差(TD)方法在逐步意义上是增量的,使其适用于非情节场景。与蒙特卡罗方法一样,TD 方法可以直接从原始经验中学习,而无需环境动态模型。与 DP 一样,TD 方法基于其他估计来学习它们的估计。
文章对于 RL 和 DRL 的算法进行了综合性的概述,这里不做详细的解释,建议系统性的学习这些算法。
在自动驾驶中,RL 可以完成的任务有:控制器优化、路径规划和轨迹优化、运动规划和动态路径规划、为复杂导航任务开发高级驾驶策略、高速公路、交叉路口、合并和拆分的基于场景的策略学习,预测行人、车辆等交通参与者的意图,并最终找到确保安全和执行风险估计的策略。
为了成功地将 DRL 应用于自动驾驶任务,设计适当的状态空间、动作空间和奖励函数非常重要。
4.1.2 状态空间
自动驾驶汽车常用的状态空间特征包括:本车的位置、航向和速度,以及本车的传感器视野范围内的其他障碍物。此外,我们通常使用一个以自主车辆为中心的坐标系,并在其中增强车道信息,路径曲率、自主的过去和未来轨迹、纵向信息等。我们通常会使用一个鸟瞰图来展示这些信息。
▲ 鸟瞰图
4.1.3 动作空间
自主车辆的控制策略需要操纵一系列执行器,比如方向盘,油门和刹车(暂时不考虑其他的执行器)。有一点需要注意的是,这些控制器都是在连续空间中运行的,而大多数 DRL 控制器属于离散空间。因此我们需要选择合适的时间步长。
奖励
为自动驾驶的 DRL 代理设计奖励函数仍然是一个悬而未决的问题。AD 任务的标准示例包括:向目的地行驶的距离 、本车的速度、使本车保持静止、与其他道路使用者或场景对象的碰撞,人行道上的违规行为,保持在车道上,保持舒适和稳定性,同时避免极端加速、制动或转向,并遵守交通规则。
4.2 运动规划和轨迹优化
运动规划是确保目标点和目的地点之间存在路径的任务。但是动态环境和变化的车辆动力学中的路径规划是自动驾驶中的一个难题,比如通过十字路口,或者并入高速公路。有许多文章在这方面做了尝试,并获得了不错的效果,比如论文 [4] [5] [6] [7]。
4.3 模拟器和场景生成工具
自动驾驶数据集使用包含图像、标签对的训练集来处理监督学习设置,用于各种模式。强化学习需要一个可以恢复状态-动作对的环境,同时分别对车辆状态、环境以及环境和代理的运动和动作的随机性进行建模。各种模拟器被积极用于训练和验证强化学习算法。具体信息如下:
自动驾驶在现实世界的挑战
此部分内容我目前不会接触到,因此先留个坑,等以后再填。
参考文献
[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
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
投稿通道:
• 投稿邮箱:[email protected]
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
·