李文礼,张友松,韩 迪,钱 洪,石晓辉
(重庆理工大学 汽车零部件先进制造技术教育部重点实验室,重庆400054,中国)
目前,常见的车辆主动避撞控制包括基于规则的方法和基于学习的方法[1-2]。基于规则的控制主要基于安全距离或安全时间模型,结合车辆纵向运动学特性搭建相应的减速度控制器;基于学习的控制方法利用感知信息直接输出控制指令,以近似车辆安全状态与加/减速度的关系。由于车辆行驶环境是动态复杂的,控制方法无法涵盖避撞过程中所有工况,使得基于规则的控制方法在设计过程中难以将所有状态的映射关系抽象成数学公式,因此这种控制方法在灵活性和泛化性上存在局限。
为了更好地使车辆学习驾驶环境并做出最佳避撞决策控制,H. Chae等[3]提出一种基于深度Q网络(deep Q-network, DQN)算法自动制动系统,用于学习最佳制动决策避免车辆和行人之间的碰撞。但该系统在预设的触发点上启动制动决策输出离散的减速度,难以较准确做出决策及无法保证舒适性。
李国法等[4]提出一种基于深度强化学习的交叉路口自动驾驶决策框架,利用DQN算法获得关于安全性和效率的最佳驾驶策略,输出离散化减速度控制车辆减速。虽DQN算法提高了处理高维状态空间的能力,但只能输出离散动作。因深度确定性策略梯度(deep deterministic policy gradient, DDPG)算法采用确定性策略、融合DQN算法优势,解决连续状态空间与连续动作空间的问题[5]。
XIONG Xi等[6]提出了一种自动驾驶和防撞系统,结合深度强化学习和基于安全的控制,利用DDPG算法可以在稳定的环境中学习驾驶策略。徐国艳等[7]提出一种基于DDPG的无人车智能避障方法,利用车辆侧向加速度和交通规则约束实现转向和加速连续输出,经过足够的训练回合,无人车能够安全行驶到达目的地。车辆驾驶操作的自然性和安全性是乘员舒适性主要影响因素。
R. Vasquez等[8]利用近端策略优化(proximal policy optimization,PPO)和DDPG算法来学习制动控制策略,仿真结果表明该系统能够在保持安全制动操作的同时将冲击度的影响减少了50%。但PPO算法是一种在线策略算法[9],需要海量采样才能学习策略。
本文利用深度强化学习方法,设计了以目标物的相对位置、相对速度和自车上一时刻控制量作为状态空间,自车减速度作为动作空间,并基于车辆纵向运动学特性的安全性、舒适性和效率因素为多目标奖励函数,建立了端到端的车辆自主避撞决策模型。通过MATLAB/ Simulink构建系统交互训练模型,并建立了前车静止(car to car stationary, CCRs)和前车制动(car to car braking, CCRb)场景对决策模型的性能进行测试,同时验证了该控制模型的有效性和泛化性。
强化学习主要是学习如何将环境映射到对应的动作,获得最大化收益的行为策略。智能体与环境之间的交互过程常常用Markov决策过程(Markov decision process, MDP)进行建模,MDP由元组〈S,A,p,R,γ〉组成,其中:S为状态,A为动作,p为状态转移概率,R为奖励函数,γ为折扣因子。使用T步折扣累积奖赏
深度强化学习将感知抽象特征的深度学习与自适应决策的强化学习相结合,实现了从原始高维数据的抽象感知到直接控制输出的端到端系统框架[11]。DDPG算法中构建了包括主网络和目标网络的神经网络:
1) 初始化参数后,主网络中演员网络(actor network, Anet)根据当前状态si随机探索选择动作ai,并与环境进行交互生成下一状态si+1和奖励值ri,将产生的样本数据储存于样本池(si,ai,ri,si+1);
2) 当样本池存储一定数量的样本数据后,采集样本池中小批量样本数据对主网络训练,根据策略梯度算法更新Anet的参数θμ、最小化损失函数更新评论家网络(critic network, Cnet)参数θQ;
3) 对目标演员网络(target actor network, T-Anet)和目标评论家网络(target critic network, T-Cnet)参数θμ'、θQ'采用滑动平均的方式进行软更新[12],其逻辑结构如图1所示。
影响汽车安全驾驶重要因素之一是交通参与者违规或紧急行为,如车辆突然制动或强行超车、行人横穿或加速穿越,如图2所示描述该典型危险场景。图2中:
危险场景①为:前车(LV)突然制动,如果自车(FV)无法有效制动,或因猛踩刹车使车辆猛烈摇晃导致乘员不适;
图1 DDPG算法的逻辑结构
危险场景②为:前车强行变道,自车与前车之间状态由并行行驶转变为同车道行驶,自车存在未能及时观测前车驾驶行为的改变导致潜在冲突。
危险场景③为:人行道上行人突然横穿马路,自车存在未及时观测到行人状态的改变,继续保持当前行驶状态而导致交通事故发生;
危险场景④为:在建筑物遮挡行人突然加速通过人行横道,自车未能合理制动停车。
因此为避免交通事故,通过车载传感器实时收集数据,并使用通信技术与周围的车辆交互获取行驶状态信息,提前检测到可能引起事故的威胁,从而执行适当的制动使车辆停车。
图2 典型潜在危险交通场景
针对图2所示的危险场景分析,结合现实驾驶情况在驾驶员收到危险信息后将会采取制动措施,其制动过程主要分为反应阶段、制动器建压阶段及持续制动阶段。对于自动驾驶车辆或智能车反应阶段时间t1= 0,因此在整个制动过程中车辆行驶距离为
式中:v(t0)为开始制动时的速度;t2为制动力增长阶段持续的时间;amax为制动期间的最大减速度。
突然猛踩刹车导致车辆猛烈的晃动将会给人体带来极大的不适,制动时给乘员带来的不适不仅与加速/减速有关,而且还与加速度变化导致的冲击度有关。由车辆加速度变化导致的冲击度[13]为
式中:a(k)为k时刻加速度;Δts为时间间隔。
利用DDPG算法实现端到端的车辆自主避撞决策,以自车先进传感器获取当前行车环境信息和本车状态信息作为观测状态,输出期望动作指令。之后自车跟据当前观测状态决策出车辆运动的行为动作,同时得到当前状态下执行动作后的回报值并进入下一个状态,不断迭代学习到最优的自主制动策略。为使深度强化学习最佳的自主制动策略学习,基于行车安全、驾乘舒适和行驶效率3个原则来设计状态、动作空间和奖励函数。
为提高自主避撞决策模型的泛化性,依据图2典型危险场景的共性等效为自车以随机初速度接近纵向静止目标物(object,ob)自主采取制动措施的在线训练场景,其中自车初始位置为(x,y,)0,目标物信息为(x,y)ob,i如图3所示。
图3 在线训练场景
在决策模型训练过程中,自车与目标物之间距离drel,i、自车的减速度aFV,i以及自车的行驶速度vFV,i。根据纵向运动学特性[14],自车与目标物之间关系式为:
式中:sFV,i为自车行驶距离;sFV,b_p(i)为自车制动距离;引入一阶惯性环节消除时滞影响,系统增益K= 1,时间常数τd= 0.5。
2.1.1 状态空间
状态空间是自车用来确定将会发生什么的信息,包括环境状态和自车状态,而且状态不仅要能全面地表征车辆在某一时刻下的特征,同时也与算法中深度神经网络收敛直接相关。自车中传感器能够获取i时刻目标物的状态信息(x,y)ob,i,同时获取自车的行驶状态信息(x,y,v,a)FV,i,然后将自车和目标物之间相对距离drel,i、自车速度vFV,i及上自车加(减)速度aFV,i-1作为状态空间s,DDPG Agent在i时刻接收到当前时刻状态si,输出动作并得到奖励值,此时状态改变为si+1。其状态空间定义为
2.1.2 动作空间
动作空间是自车所执行的动作指令,在图2所示危险场景中主要研究当自车识别判断出危险场景,能够实现自主制动的目的,所有只对自车进行纵向控制设计。DDPG Agent输出动作ad(i)由策略μ决定,其策略μ为状态s映射到每个动作的概率s→P(ai),由于采用的DDPG算法其输出为连续性的动作,则动作空间定义为:
其中:ad(i) = [-8,0]为制动水平,当ad(i) = 0代表匀速行驶;当ad(i) = -8代表硬制动。在深度强化学习中为探索出最优动作,筛选出更好的策略避免执行动作陷入局部最优。通过对随机采样过程引入噪声模型Ni,从而计算当前时间步的动作,其表达式为:
2.1.3 奖励函数
奖励函数引导深度神经网络参数的调整方向,使输出的动作能够让自车按照期望指令执行。根据避撞控制目标为奖励函数提供设计原则,首先自车能够在潜在危险场景执行正确的动作,而且能够在目标物之前停下来,需满足安全性原则;其次自车在上述制动过程中目标是决策出最优的控制动作并进行平稳控制,防止输出动作在最大与最小值之间频繁切换形成点刹状态,给乘员造成较大压迫感及乘坐不舒适,需满足舒适性原则;之后上述执行制动行为不应过早执行而造成停车距离过于保守,导致乘员过早处于紧张状态,需满足行驶效率设计;最后根据上述避撞控制的设计原则优先级来确定奖励函数具体结构。
1) 为安全性奖励函数。若当前回合周期内自车未采取制动或制动时间过晚,将导致碰撞发生,也即当前时刻自车与目标物之间相对距离drel,i小于安全距离dth。为了描述发生碰撞情况下应给予自车相应惩罚,反映碰撞的严重程度,因此安全性奖励函数rs表达式:
2) 为舒适性奖励。若在当前回合周期内自车采取制动措施,该过程减速度出现突变或变化过大,将带给乘员很大的惯性冲击。为了反映自车在制动过程能够平稳的制动,乘员获得较好的乘坐舒适性,因此舒适性奖励函数rc表达式:
3) 为行驶效率奖励。若当前回合周期内自车与目标物之间距离较远,此时自车采取制动行为导致过早刹车,造成自车停车距离过于保守。为了描述自车行驶效率,因此行驶效率奖励函数re表达式:
综上分析,最终自车的多目标奖励函数r表达式:
上述3部分的奖励函数中α、m、β、η、p、ε、q代表权重参数,其值分别为0.2、20、0.1、0.1、0、0.1、5;跟据相关实验研究[15]选取期望加速度aep= 4 m/s2、期望冲击度的jep= 2 m/s3。一直低于0.1 m/s,则训练回合终止。
事件4,奖励无提升。如果车辆在100个步长内奖励不增长,则训练回合终止。
2.1.4 终止条件
仿真过程中可能存在车辆卡滞、累积多个步长奖励不增长等情况,避免学习到局部最优策略。若训练过程中发生以下至少一项事件,则回合结束进入下一回合并重置环境状态。
事件1,发生碰撞。自车未进行有效制动,不满足安全距离限制,则训练回合终止。
事件2,过早停车。自车过早制动而停车,即自车与目标物相离较远,则训练回合终止。
事件3,车辆卡滞。如果车辆在20个步长内速度
如何在设定的潜在碰撞危险场景中自主避撞,并满足避撞安全需求同时兼顾平稳制动,设计了基于DDPG自主避撞控制决策模型,总体结构如图4所示。
对于该模型在每个时间步长之前,已从车辆传感器系统和车辆通信中获取自车和环境信息,即获得初始状态s1,之后主网络和目标网络中Actor产生减速度、Critic估计动作的Q值(即在状态si下执行动作ai预计获得的价值),并更新相应网络参数,连续迭代最终输出制动策略。因使用数据训练避撞控制模型,采用多层全连接层(fully connected layer,FC)来设计Actor与Critic网络结构。首先Actor网络中输入为i时刻状态,然后依次经过隐藏层FC_1和FC_2,其中各个隐藏层之间通过Relu激活函数,最后输出层为减速度,使用tanh激活函数。Critic网络输入i时刻状态再经过隐藏层FC_1和FC_2得到特征ls,然后i时刻动作集ai作为输入到另一个隐藏层FC_4得到特征la,此时将特征ls、la经add层逐级相加融合得到特征lsa,最后经输出层输出Q值。其中隐藏层之间通过Relu激活函数,特征ls、la传递至add层没有激活函数及输出的Q值也无激活函数。
图4 基于DDPG自主避撞决策模型
为验证所提基于深度强化学习的自主避撞决策方法的有效性和泛化性,利用MATLAB/Simulink实验平台,选取Simulink中Agent模块并构建模块化环境,仿真频率设置为10 Hz。在训练过程中,目标物的位置固定为(100,0),自车的初始位置固定、随机初始速度,共训练了400回合,其主要参数如表1所示。
表1 主要训练参数
在深度强化学习中,通常使用回合奖励和平均奖励来反映训练的收敛水平和学习效果,图5描绘了该控制模型训练过程的奖励值变化。在训练过程初期,奖励值连续波动有时增大或减小,且幅度较大(约600),此时智能体从零开始学习,未针对特定状态而采取特定动作的经验,仅随机选择动作以完成广泛探索。随着训练回合次数的增加,奖励曲线波动幅度逐渐减小,表明智能体能够较好的探索和利用动作进行学习。但在178回合时(约1 754.9)突然波动很大,此时智能体探索过大出现减速度连续阶跃变化,然而在200回合 (约52)之后奖励值波动幅度越来越小,迭代次数增加奖励值慢慢趋于收敛,大约在270回合后,曲线波动非常小,说明该算法已经收敛,智能体成功学习到有效自主避撞策略并最大化长期奖励值。
图5 训练过程中奖励值
为验证决策模型的有效性和泛化性、客观评估其性能,参考中国新车评价规程(China New Car Assessment Program,C-NCAP)测试场景,选取了CCRs和CCRb场景。在C-NCAP中,CCRs场景表示自车以一定速度朝前方静止的车辆匀速移动,测试中自车的速度分别为20、30、40 km/h;CCRb场景表示自车和前车间设置一定的初始距离以相同的速度50 km/h保持匀速移动,之后前车以4 m/s2制动,测试中2车间距分别为12、40 m。
图6表示CCRs测试场景下自车自主避撞过程中相对距离、自车速度、减速度及冲击度的变化曲线。
图6 前车静止(CCRs)场景测试结果
自车以20 km/h行驶的整个自主避撞过程中,期望加速度占比为100%、期望冲击度占比为98.39%;以30 km/h行驶的整个自主制动过程中,期望加速度占比为100%、期望冲击度占比为87.72%。以40 km/h行驶的整个自主制动过程中,期望加速度占比为72.55%、期望冲击度占比为56.86%。仿真结果表明,初始距离为60 m的条件下包含训练场景的测试工况,设计的决策模型能够有效的自主避撞决策,并兼顾良好的舒适性。
图7表示CCRb测试场景下自车自主避撞过程中相对距离、速度、自车减速度及冲击度的变化曲线。
图7 前车制动(CCRb)场景测试结果
在自车与前车相距12 m行驶中,该系统认为当前时刻处于极度危险状态,自车立即开始以最大减速度进行制动,自车在整个自主制动过程中期望加速度占比为11.54%、期望冲击度占比为38.46%;在自车与前车相距40 m行驶中,自车开始以0.65 m/s2的减速度准备制动,前车在2.47 s停车时,此时相距21.06 m,然后自车加速度继续增大,整个自主制动过程中期望加速度占比为83.33%、期望冲击度占比为65.15%。仿真结果表明,在与训练场景不同的测试工况下,设计的决策模型依然能够有效的自主避撞。
根据文献[16] 制动避撞试验分析为保证驾驶员及乘客舒适度的极限值减速度amax= 0.6g、冲击度jmax= 10 m/s-3。因此统计了CCRs测试场景20、30、40、60、80 km/h和CCRb测试场景12、40 m的舒适性能,如图8所示。从图8中知所设计的决策模型在各场景下车辆控制性能基本都满足舒适度要求,当车辆以高速{CCRs(60)或CCRs(80)}行驶时,其车辆减速超过极限值主要集中制动中期(持续时间约为1.5 s、2.3 s);对于CCRb(12)场景决策模型认为该场景极度危险,立即执行硬制动持续超过极限值的时间约为1.5 s。
图8 舒适性能
为进一步直观分析所提方法自主避撞决策性能,结合选取的各场景的制动性能特征设计了模糊控制器[17]实现自主避撞决策,以车辆相对距离及相对速度为输入、制动减速度为输出的模糊控制器,其中图9为模糊控制器的输入输出变量曲面图、图10为模糊控制器的输入输出隶属度图。
设计紧急场景为自车以30 m距离接近目标对象,其仿真结果如图11所示,其中DDPG策略的方法均能实现自主避撞,而模糊控制(FUZZY)策略在车速为60 km/h测试场景中发生碰撞。DDPG策略中制动减速度更加平滑,满足安全性同时兼顾舒适性要求。
根据对比实验,统计了制动过程中制动开始时刻t0和终了时刻ts、减速度初值|a0|、减速度峰值|a|max、冲击度峰值|j|max、最小间距dmin的指标。前车静止场景的控制性能如表2所示。
图9 变量曲面图
图10 变量隶属度图
图11 仿真结果对比
表2 前车静止场景的控制性能比较
除自车以20 km/h场景外,其它测试场景停车时刻的冲击度均超过极限值,且模糊控制策略比DDPG策略更大。对于制动时间,在自车分别以20、30、40 km/h行驶中,DDPG策略相比模糊控制策略减少了0.43%、7.84%、26.97%;对于最小间距,自车分别以20、30 km/h行驶中,DDPG策略相比模糊控制策略减小了55.67%、10.54%,而在自车以40 km/h行驶中,DDPG策略相比模糊控制策略增加了56.29%,但模糊控制策略中最小间距低于设定阈值19%。
本文基于深度确定性策略梯度(DDPG)算法,设计了车辆自主避撞决策算法,利用Markov决策过程分析状态空间、动作空间及奖励函数,确定了以目标物的相对位置、相对速度和自车上一时刻控制量作为状态空间,输入系统模型中直接输出刹车驾驶动作,并根据车辆运动学特性考虑了安全性、舒适性和行驶效率等因素,将奖励函数进行模块化设计,实现了端到端的车辆自主避撞决策控制。利用中国新车评价规程C-NCAP中前车静止(CCRs)和前车制动(CCRb)测试场景对设计的控制模型进行了仿真试验。
试验结果表明:本文设计的基于DDPG的自主避撞方法,能够合理地自主避免碰撞,且在制动过程中减速度变化较为平滑、提高了驾乘人员的舒适性,并且稳定性和泛化性优于模糊控制。
参考文献 (References)
[1] 陈虹, 郭露露, 宫洵, 等. 智能时代的汽车控制[J]. 自动化学报, 2020, 46(7): 1313-1332.
CHEN Hong, GUO Lulu, GONG Xun, et al. Automotive control in intelligent era [J].Acta Automatica Sinica,2020, 46(7): 1313-1332. (in Chinese)
[2] Kuuttis, Bowden R, JIN Yaochu, et al. A survey of deep learning applications to autonomous vehicle control [J].IEEE Transa Intell Transp Syst,2021, 22(2): 712-733.
[3] Chae H, Kang C M, Kim B D, et al. Autonomous braking system via deep reinforcement learning [C]// 2017 IEEE 20th Int'l Conf Intel Transp Syst (ITSC). Yokohama, Japan: IEEE, 2017: 1-6.
[4] LI Guofa, LI Shengbo, LI Shen, et al. Deep reinforcement learning enabled decision-making for autonomous driving at intersections [J].Automotive Innovation,2020(3): 374-385.
[5] Lillicrap T P, Hunt J J, Pritzel A, et al. Continuous control with deep reinforcement learning [J].Computer Sci,2015, 8(6): 187.
[6] XIONG Xi, WANG Jianqiang, ZHANG Fang, et al. Combining deep reinforcement learning and safety-based control for autonomous driving [Z/OL]. (2020-11-10) , https://arxiv.org/abs/1612.00147v1. arXiv preprint arXiv: 1612.00147, 2016.
[7] 徐国艳, 宗孝鹏, 余贵珍, 等. 基于DDPG的无人车智能避障方法研究[J]. 汽车工程, 2019, 41(2): 206-212.
XU Guoyan, ZONG Xiaopeng, YU Guizhen, et al. A research on intelligent obstacle avoidance of unmanned vehicle based on DDPG algorithm [J].Automotive Engineering,2019, 41(2): 206-212. (in Chinese)
[8] Vasquez R, Farooq B. Multi-objective autonomous braking system using naturalistic dataset [C]// 2019 IEEE Intel Transp Syst Conf (ITSC). Auckland, New Zealand: IEEE, 2019: 4348-4353.
[9] Schulman J, Wolski F, Dhariwal P, et al. Proximal policy optimization algorithms [Z/OL]. (2020-11-10), https://arxiv.org/abs/1707.06347. arXiv preprint arXiv: 1707.06347v2, 2017.
[10] 李国法, 陈耀昱, 吕辰, 等. 智能汽车决策中的驾驶行为语义解析关键技术[J]. 汽车安全与节能学报, 2019, 10(4): 391-412.
LI Guofa, CHEN Yaoyu, LV Chen, et al. Key technique of semantic analysis of driving behavior in decision making of autonomous vehicles [J].J Autom Safe Energ, 2019, 10(2): 391-412. (in Chinese)
[11] 李升波, 关阳, 侯廉, 等. 深度神经网络的关键技术及其在自动驾驶领域的应用[J]. 汽车安全与节能学报, 2019, 10(2): 119-145.
LI Shengbo, GUAN Yang, HOU Lian, et al. Key technique of deep neural network and its applications in autonomous driving [J].J Autom Safe Energ, 2019, 10(2): 119-145. (in Chinese)
[12] ZHU Meixin, WANG Yinhai, PU Ziyuan, et al. Safe, eff icient, and comfortable velocity control based on reinforcement learning for autonomous driving [J].Transp Res Part C:Emerging Tech,2020, 117,102662.
[13] 朱冰, 蒋渊德, 赵健, 等. 基于深度强化学习的车辆跟驰控制[J]. 中国公路学报, 2019, 32(6): 54-60.
ZHU Bing, JIANG Yuande, ZHAO Jiao, et al. A carfollowing control algorithm based on deep reinforcement learning [J].Chin J Highway Transp,2019, 32(6): 54-60. (in Chinese)
[14] 朱敏, 陈慧岩. 考虑车间反应时距的汽车自适应巡航控制策略[J]. 机械工程学报, 2017, 53(24): 144-150.
ZHU Mi, CHEN Huiyan. Strategy for vehicle adaptive cruise control considering the reaction headway [J].J Mech Engi,2017, 53(24): 144-150. (in Chinese)
[15] Bae I, Moon J, Seo J. Toward a comfortable driving experience for a self-driving shuttle bus [J].Electronics,2019, 8(9): 943.
[16] 张春雷. 基于驾驶员避撞行为的追尾避撞控制策略研究[D]. 镇江: 江苏大学, 2017.
ZHANG Chunlei. The rear-end collision avoidance control strategy study based on drivers' avoidance behavior [D]. Zhenjiang: Jiangsu University, 2017. (in Chinese)
[17] 郑刚, 俎兆飞, 孔祚. 基于驾驶员反应时间的自动紧急制动避撞策略[J]. 重庆理工大学学报: 自然科学版, 2020, 34(12): 45-52.
ZHENG Gang, ZU Zhaofei, KONG Zuo. The collision avoidance strategy of automatic emergency braking system considering the response time of the driver [J].J Chongqing Univ of Tech: Nat Sci,2020, 34(12): 45-52. (in Chinese)