基于3D CNN-DDPG端到端无人驾驶控制
李国豪
【摘 要】文中基于希望直接应用低成本可见光摄像头解决无人驾驶中的刹车、油门和转向控制的问题为目的,采用了深度卷积神经网络和深度确定性策略梯度强化学习结合的方法.通过加入三维卷积神经网络,学习出连续的车辆摄像头视觉感知视频图像帧中的时序属性特征,使得智能体能够利用时序特性更平稳和安全得控制车辆.在开源无人驾驶仿真平台TORCS上进行实验,得出三维卷积神经网络和深度强化学习结合的方法对解决无人驾驶中的控制问题提供了可行性的方案结论.
【期刊名称】《电子设计工程》
【年(卷),期】2018(026)022
【总页数】5页(P156-159,168)
【关键词】无人驾驶;深度强化学习;计算机视觉;神经网络
【作 者】李国豪
ora汽车
【作者单位】中国科学院上海微系统与信息技术研究所 上海200050;中国科学院微小卫星创新研究院 上海201210;上海科技大学信息科学与技术学院,上海201210;中国科学院大学 北京100049
【正文语种】中 文
【中图分类】TN911.73
近年来随着机器学习算法的快速发展,人们的生活方式逐渐变得越来越智能化,其中自动驾驶技术也得到了学术界、工业界和政府的大力关注和支持。应用人工智能技术解决自动驾驶汽车、无人机中的问题变得越来越重要。据世界卫生组织报道,每年有近1.25百万的交通事故造成了人员死亡。其中很多事故都是由于司机的失误或者是可以防止的事故造成。
无人驾驶技术有望能减少人为失误防止一些可避免事故的发生,故无人驾驶的研究对社会的贡献是毋庸置疑的。但是因为在无人驾驶实际运用中,由于驾驶环境复杂,高精度激光
雷达传感器的成本高,无人驾驶的研究存在很多挑战。目前由于深度学习和强化学习的人工智能技术的发展,应用低成本视觉摄像头基于计算机视觉算法解决无人驾驶中控制问题的研究成为无人驾驶领域中的重要的研究方向之一[19-22]。
够酷
1 端到端自动驾驶
越来越多的研究把机器学习算法应用到控制中,我们可以通过机器学习的方法来训练智能体(例如车辆,无人机,游戏智能体等)在未知的环境中完成导航任务。这种应用监督学习的方法的工作包括文献[1-3],应用强化学习的工作包括文献[6-13],或者是两者的结合的工作包括文献[14-18]。学习在复杂的三维环境中的视觉传感器输入高维度信息是一个关键的挑战。在物理驱动车辆的这种特殊情况下,当可以记录高维反馈时,监督学习是有效的,而且在过去几年中已经被证明在自动驾驶领域取得了相当多成功[1-2,7]。随着深度神经网络的发展,越来越多的研究把深度学习和强化学习应用到无人机控制和无人驾驶控制当中。
在Smolyanskiy等人的工作中[7]。他们使用深度神经网络(Deep Neural Network,DNN)用来训练智能体,以监督学习(Supervised Learning,SL)的方式和从头戴式摄像头获取
因菲尼迪的实际数据,最后完成在森林小径导航无人机并避开障碍物的任务。此工作类似于以前的工作,网络的预期控制输出是离散的并且非常有限(简单的偏航运动):左转,直进或右转。尽管显示出相对满意的结果,但训练的网络在地面以上的固定高度导致缓慢的、不平滑(Z字形)的运动轨迹。随后越来越多的研究者投入到相关的工作中,使用DNN的室内无人机控制最近也已经被探索[14]。
同样在无人驾驶领域,深度学习和强化学习也得到了很多应用。在Bojarski等人的工作中[1]。他们使用深度神经网络(DNN)训练智能体,将映射的摄像机视觉图像映射到3个自由度的控制命令(方向盘角度,油门,和刹车)。他们通过在汽车前面放置摄像头,72小时的人力收集数据,并增加了两个用于模拟视觉偏移和修正控制的额外视角来提供数据增广。这项开创性工作的模拟和实际成果证明了DNN能够从原始视频数据中学习(端对端)自驾车的控制过程。Chen等人[2]使用TORCS(公开赛车模拟器)来训练一个深度神经网络DNN,使得智能体通过一个路线以高速驾驶,并适当地通过或跟随其车道上的其他车辆。这项工作构建了使用TORCS的早期工作,其重点在于将赛车保持在赛道上[3]。TORCS模拟器界面如图1所示。
图1 TORCS模拟器界面
最近,TORCS也被成功地运用于几种基于强化学习算法的自动驾驶汽车研究中[8-9]。然而,在这些情况下,强化学习被用来教导智能体学习只通过输入单张图像,然后输出低维度控制信息的策略。这些的方法没有充分利用连续图像帧的时序特性,使得在性能上存在瓶颈。接下来本文将讨论传统的基于二维卷积神经网络的深度确定性策略梯度(2D CNN-DDPG)的端到端无人驾驶控制算法[8],和本文提出的基于三维卷积神经网络的深度确定性策略梯度(3D CNN-DDPG)的端到端无人驾驶控制算法。
2 基于2 D CNN-DDPG的端到端无人驾驶控制
无人驾驶控制可以定义为连续动作空间中的控制问题:给定观察的状态为S,无人车控制问题可以被定义为一个非线性映射 π:S→A。其中S可以为车辆的传感器感知信息,A为连续控制的控制命令(方向盘角度,油门,和刹车),π为控制策略。为了寻最佳策略π,我们可以把问题看作为一个强化学习问题,在智能体Agent和环境E中的交互中,每个时间点t,智能体Agent接受到一个观察xt,采取一个动作at,并且接收到一个标量回报rt。一般来说,在每个时间点t环境是被部分观察的。所以所有历史的观察-动作对可以用来描述环境的状态st=(x1,a1,…,at-1,xt),假设了根据车辆的平稳性、速度和安全性定义了回报函数为那
么问题就可以看作为寻最优策略π*使得回报的累积和r0+γr1+γ2r2+…+γnrn(0≪γ<1)的期望最大化。其基本框架如图2所示。强化学习的优势在于减少了人力标注成本,只需要通过设计合适的奖励函数就可以达到学习目的。
图2 强化学习基本框架
文献[8]中提出了深度确定性策略梯度(DDPG,Deep Deterministic Policy Gradient)用于解决连续动作空间中的控制问题。这种方法一种基于确定性策略梯度的演员-评判家(Actor-Critic)以及无模型的算法,解决了传统Q-学习无法直接解决的连续动作空间问题。文献[8]中采用了基于二维卷积核的卷积神经网络作为函数逼近器,并假使环境是全部可观察的,即st=xt。结果显示DDPG提供了解决无人驾驶中连续控制的问题的可行方案,但由于没有利用状态的时序特性使得性能上有待提升。
3 基于3 D CNN-DDPG的端到端无人驾驶控制
三维卷积神经网络(3D CNN)最早由文献[4]提出,用于解决视频中人类动作识别的问题,三维卷积神经网络使得其可以利用视频中的时序特性与空间特性,超越了仅能利用空
间特性的二维卷积神经网络在人类动作识别问题上的准确度。为了充分利用车辆传感器视频帧的时序信息,受文献[4-5]的启发,本文提出基于三维卷积神经网络的DDPG强化学习算法(3D CNN-DDPG),利用了时空融合的信息,解决无人驾驶中的连续控制问题。
个性小车图3 基于3D CNN的端到端无人驾驶模型
与此前的方法不同,本文不假设环境状态可以通过单张图像观察,而是假设状态需要通过时序上连续图像观察得到,即st=(x1,x2,…,xL),其中L为时序帧的长度,在实验中我们取L=10。在卷积层使用3D CNN替代2D CNN,最后输出控制动作at。具体模型如图3所示。Actor网络所使用的模型一共中间层有5层,其中前三层为三维卷积层,最后两层为全连接层。所有卷积层的通道数都是32,卷积层1的三维卷积核为5×5×3,其中最后一个参数3是在时间域上的卷积。另外,卷积层2和卷积层3的三维卷积核都为3×3×3。全连接层1和全连接层2的神经元数都为200,最后分别通过3个全连接层输出3个一维的控制动作——油门、刹车和转向。所有中间层采用的激活函数都为tanh函数,输出层油门和刹车采用sigmoid激活函数,转向采用tanh激活函数。Critic网络与Actor网络共享卷积层,卷积层之后通过两个神经元数为200的全连接层,最后输出Q(s,a)评价函数。
4 实验
4.1 评价标准
奔驰中国实验中采取计算车辆行驶的轨迹和道路中线的标准差以及100次测试中完成全程的百分比进行对比来衡量Agent控制车辆的准确度,同时采用了沿道路方向的奖励函数进行对比来衡量Agent控制车辆的速度。其中所采用的奖励函数为:1)如果没有发生碰撞,则奖励函数为车辆速度在道路方向上的投影 Rt=Vxcos(θ)/Vmax,其中x为道路的方向;2)如果发生碰撞或逆行时,则奖励函数为-1。
4.2 实验环境设置与结果分析
文中所有实验都是基于TORCS开源车辆仿真器进行,深度学习框架是基于TensorFlow开源框架。所采用的网络结构如图3所示。另外DDPG的参数如表1。其中γ为奖励函数的折扣因子,τ为评价网络的软更新参数,Buffer size为经验回放Buffer的大小。另外优化器采用Adam,梯度下降更新的批量大小(Batch size)为16。
表1 DDPG参数γ τ 0.990.001 Actor学习率10-4 Critic学习率10-3  106 Buffer大小
分别对基于2D卷积神经网络的DDPG和基于3D卷积神经网络的DDPG算法通过10 000个episode的训练之后进行测试对比。结果如表2所示。
表2 实验结果奖励函数312.3 379.8 DDPG-2D DDPG-3D标准差(m)0.313 0.112完成率(%)89%98%
从实验结果可以看出,本文提出的基于3D卷积神经网络的DDPG算法对比基于2D卷积神经网络的DDPG算法,在控制车辆保持中线的评价标准中,其行驶轨迹与中线的距离的平均标准差只有0.113米,大约是基于2D算法的三分之一,这表示基于3D卷积神经网络的DDPG算法在控制车辆上更平稳。同时在完成率上,3D CNN-DDPG比2D CNN-DDPG高了9%。实验现象表明奖励函数设置的合理性和基于3D卷积神经网络的DDPG能利用视频帧的时序信息,取得了更好的性能。
5 结论
文中提出了一种基于三维卷积神经网络的深度确定性策略梯度(3D CNN-DDPG)的端到端无人驾驶控制。通过在TORCS模拟器上的实验,我们发现通过加入三维卷积神经网络,荣威w5报价和图片
3D CNN-DDPG利用了车辆传感器连续图像帧中的时序属性可以更好得学习出控制车辆的算法,并在保持中线和完成率的评价标准上远超过基于二维卷积神经网络的算法。虽然实验中,3D CNN-DDPG会消耗更多的计算能力,收敛速度会比2D CNN-DDPG慢。但实验中验证了,基于三维卷积神经网络的算法对性能提升的有效性。