智能网联汽车自动驾驶行为决策方法研究
2021-06-19徐泽洲曲大义洪家乐宋晓晨
徐泽洲,曲大义,洪家乐,宋晓晨
(1.青岛市城市规划设计研究院,山东 青岛 266071;2.青岛理工大学,山东 青岛 266520)
0 引言
驾驶决策是交通安全永恒的话题,车辆在交叉口的交通事故仍有发生,剖析车辆交互驾驶行为对驾驶决策具有重要的指导作用。驾驶决策是车辆在进行驾驶操作时通过实时获取车辆之间的交通信息,做出更安全的判断,实现车车安全交互的目的,提高行车的安全性和快速性。自动驾驶车辆通过安装各种先进感知设备实现自动运行,减少人为产生的交通事故[1]。随着智能网联、车路协同技术的发展,自动驾驶技术有望代替人从“车—道路—人”的控制系统彻底分离开来,从源头解决道路运行中的交通问题[2]。然而,由于各种实际交通运行环境复杂多变,自动驾驶仍然极具挑战。
智能驾驶技术包括网络导航、自主驾驶,车上的传感器通过收集交通环境信息,进行认知计算控制相应的控制系统。自主驾驶是车辆从人工向智能的转变,完全自动驾驶面对的是复杂多变的道路环境,无法被抽象成公式或简单逻辑去使机器执行。对此国内外学者进行了广泛且深入的研究,Lange等[3]通过深度强化学习方法构造深度自动编码器,利用任务相关信息改进特征空间拓扑结构的方法成功地学习良好的控制策略,直接合成真实的图像。Lange和Riedmiller等[4]提出深度拟和Q学习框架,尝试对模型小车进行控制。Mnih等[5]将深度学习与强化学习方法结合进行决策与控制,给控制决策领域开启了一种解决问题的新思路。Chae等[6]提出了一种基于深度强化学习的新型自动制动系统,当遇到碰撞风险时,所提出的自动制动系统利用传感器获得的障碍物信息自动决定是否在每个时间步长应用制动,而用于制动控制的策略是通过DQN方法进行计算机模拟学习,实验表明该控制策略在各种不确定环境中表现出了理想的控制行为,避免了汽车碰撞。Sallab等[7]采用深度确定性策略梯度算法在开放赛车模拟器中训练自动驾驶汽车决策模型,并在TORCS上进行了测试,仿真显示在复杂的弯曲道路和其他车辆简单交互的情况下自主机动的学习决策。Vasquez等[8]提出了一种基于深度强化学习的多目标自主制动系统,制动控制策略通过使用两种强化学习方法(即最近策略优化和深度确定性策略梯度)的计算机模拟来学习,并仿真比较了两种方法的效率。结果表明,该系统能够在保持安全制动运行的同时,将对乘客舒适性的负面影响降低一半。智能网联技术为车辆精确控制和车辆轨迹优化提供了巨大的活力,Wang等[9]对过去十年间CAV(Connected Automated Vehicle)优化研究进行总结,对CAV轨迹优化研究进行分类梳理。CAV精确控制和轨迹优化主要包括优化目标模型、场景构建、通信类型、CAV占有率及基于各种场景的现场实验。Ubiergo等[10]将跟驰模型和排放模型结合,模拟CAV通过信号交叉口的行为,提出一种V2I环境下的速度反馈控制策略,讨论车辆渗透率、交通拥堵水平、通信类型和定位精度以及跟车模型本身几个参数对策略的影响,并进行不同场景实验进行分析来验证策略的效果。Yao等[11]在Ubiergo的基础上提出一种基于轨迹优化的可变限速系统,利用V2I通信的车载设备来平滑车辆轨迹,使车辆在不同时间不同路段采用不同的速度快速通过信号控制的交叉口,减少停车次数及时间损失、提高交通流的通行效率从而降低油耗。Jiang等[12]提出了一个独立交叉口联网环境下AV(Automated Vehicle)生态驾驶系统,通过AV的速度分布来优化整个交通流。AV的速度通过最优控制问题求解,通过服务水平、油耗、排放等参数进行模拟评估及分析。研究表明所提出的生态驾驶系统能够消除信号控制引起的冲击波,并对传统车辆的阻抗和交通的随机性具有鲁棒性。Xu等[13]提出了一种交通信号优化和车速控制的协同方法,可以同时优化交通信号配时和车速轨迹,从而提高通行效率,降低燃油消耗。Han等[14]提出一种基于车队的轨迹优化方法,帮助车辆以最大的速度通过交叉口。该方法通过间隙反馈控制系统将车队的轨迹优化转化为车队领头车的轨迹优化问题,从而平滑车辆轨迹来减少车队停车,实现节油、缓解交通拥堵。夏伟等[15]研究了深度强化学习方法在自动驾驶方向中的应用,通过交互式学习阶段获取到具备自动驾驶能力的策略网络模型。范鑫磊等[16]通过深度强化学习方法使得导弹自主规避决策更好,测试结果具备一定的泛化能力。徐国艳等[17]通过采用改进的确定性策略梯度算法,定义无人车的输入和输出状态,讨论车辆内外约束条件,通过设计静态和动态障碍环境进行仿真训练生成无人车避障的最优决策行为。杨顺等[18]提出了一种基于多类型传感数据训练自动驾驶策略的方法,采用卷积网络对传感数据进行特征提取并进行组合,采用组合特征学习自动驾驶策略。通过TORCS软件仿真中设计车道跟随任务对提出的决策方法进行验证,仿真结果表明基于多类型传感信息进行深度强化训练可以取得较好的车速和车辆横向偏移控制效果。故针对交叉口自动驾驶车辆与其他车辆直行冲突的问题,构建自动驾驶汽车行为决策模型,采用深度确定性策略梯度算法在仿真平台上对自动驾驶行为决策进行训练优化,探索自动驾驶汽车通过交叉口的最优决策行为,并通过非支配排序遗传算法对比验证此算法的稳定性,保证自动驾驶车辆的安全性和舒适性,使得驾驶决策能够更快且策略最优。
1 行为决策方法原理
1.1 算法原理
深度确定性策略梯度算法[8](Deep Deterministic Policy Gradient,DDPG)是将深度学习神经网络融合进DPG的策略学习方法,包括Actor网络和Critic网络(如图1所示),利用深度神经网络逼近确定性策略μ和行为值函数Q。
图1 DDPG算法的网络结构及其功能
DDPG算法结合了确定性策略方法和神经网络作为函数逼近器,故DDPG有一个行动者和批评者网络,算法的步骤如下:
首先将当前状态s作为输入提供给参与者网络,计算当前状态的输出动作a
a=μ(s;θμ)+Nt
(1)
其中,a为当前状态的输出动作值;s为当前状态;μ为行为策略;Nt为随机噪声;θ为神经网络的更新参数;θμ为演员网络的权重。
yi=ri+γQ′(si+1,μ′(si+1|θμ′)|θQ′)
(2)
其中,yi为下一个状态的目标行动者和目标批评者网络的即时报酬和输出的总和;ri为即时奖励;γ为折扣因子;通过最小化的yi和使用批评者网络计算的原始Q值之间的均方差损失来更新批评网络,即Q(si,ai|θQ)。
目标更新方式为
ω′←τω+(1-τ)ω′
(3)
θ′←τθ+(1-τ)θ′
(4)
其中,Actor当前网络、Actor目标网络、Critic当前网络、Critic目标网络参数分别为θ、θ′,ω,ω′;τ是状态-动作的序列,为软更新系数。
DDPG的损失函数为
(5)
其中,φ(Sj)为状态的特征向量。
确定性策略梯度公式为
(6)
其中,πθ为采样空间;∇θπθ(s)为分值函数;m为批量梯度下降的样本数。
1.2 算法流程
输入:Actor当前网络,Actor目标网络,Critic当前网络,Critic目标网络参数分别为θ、θ′、ω、ω′,衰减因子γ,软更新系数τ,批量梯度下降的样本数m,目标Q网络参数更新频率C。最大迭代次数T,随机噪音函数Nt。
输出:最优Actor当前网络参数θ,Critic当前网络参数ω。具体流程如图2所示。
图2 DDPG算法执行流程示意图
2 决策模型构建
2.1 交叉口驾驶行为分析
由于交叉路口处车辆的行驶方向和路线不同,可能会发生碰撞,本文以无信号十字形交叉口为例。如图3所示,黑色的自动驾驶汽车(AV)可能会与灰色的驾驶人汽车(HV)发生碰撞,灰黑色区域是可能的冲突区域。基于车辆在不同时间穿越十字路口,本文仅考虑驾驶人车辆的影响,建立了在这些空间中发生碰撞可能的决策模型。
图3 无信号十字型交叉口冲突示意图
2.2 模型构建及效果评价
减少制动被认为是一种直接的节油策略,这种策略产生了一种被称为生态驾驶的驾驶实践,有助于驾驶员实现更平稳的速度波动。生态驾驶包括以生态友好的方式驾驶(避免驾驶中的突然速度变化,并在最佳燃油速度附近保持恒定速度,这与提高燃油经济性和减少排放有关),生态路线包括选择消耗最少能源和产生最小排放水平的路线。考虑在交叉路口车辆产生碰撞的速度,引入预估通行侵入区域时间差EPET参数[19](Estimating Post Encroachment Time),该参数是指车辆通过冲突区域中心的时间差,可以有效地评估车辆任何角度的碰撞危险,如图4所示。自动驾驶决策系统通过传感器感知交叉口附近车辆运行的状态来调整车辆速度,以节省延迟、燃料和排放。如果自动驾驶车辆预测到相邻车道即将到来的车辆状态,则可以相应地调节车辆的速度以避免急刹车或加速,从而减少能量消耗和污染物排放。
图4 EPET原理示意图
其中,TAv和THv分别是AV和HV到达冲突区域的时间。较大的EPET值意味着发生碰撞的风险较小,则有:
(7)
其中,U是收益函数,更大的U代表更理想的驾驶行为;Vcri是HV的预期速度,AV和HV在通过交叉口的速度均小于交叉口限定速度[14]。定义U负数的原因是为了方便观测模型在通行效率上的表现。
3 仿真分析与对比
3.1 仿真分析
在OpenAI Gym软件平台上训练DDPG算法(见图5);然后在Prescan上验证DDPG算法的可靠性(见图6)。仿真参数设置如下:选取多车场景测试算法,设置两辆从北向南直行的驾驶人车辆(HV),自动驾驶车辆(AV)作为研究对象,AV由决策算法控制行驶以确保安全、无碰撞地通过交叉路口。HV和AV的长度和宽度分别为4 800mm和2 178mm,两车通信范围为200m,交叉路口限速60 km/h。DDPG算法中,确定性行为策略网络和评价策略网络具有相同的结构,它们是具有两个隐藏层(64-64)的多层感知网络。采用基于随机策略梯度的独立探索网络为DDPG算法探索策略,加快训练时网络的收敛速度。
图5 OpenAI gym仿真平台
图6 Prescan仿真平台
3.2 算法对比
基于非支配排序的多目标遗传算法[20](Non-dominated Sorting Genetic Algorithms-Ⅱ,NSGA-Ⅱ),通过引入精英策略,扩大采样空间,对目标种群快速非支配排序,降低了算法的计算复杂度,提高了算法的运算速度和鲁棒性。
为对本文提出的算法做出一个客观的评价,将本文提出的DDPG算法与NSGA-Ⅱ算法进行对比,在同一场景下进行了两组实验,其中HV1和HV2距离交叉口的初始位置分别为10m和32m(南北方向),AV的初始位置为30m(东西方向),设置HV1和HV2以40km/h的速度匀速行驶,如图7a和图7b所示。分别基于NSGA-Ⅱ算法(A组)和DDPG算法(B组)对提出的交叉口多目标优化模型进行了训练,并测试了算法的性能,结果如图8所示。
图7 不同算法交叉口仿真示意图
图8 不同算法求解的通行效率对比
A组中,AV在t=3s之前采取减速策略以等待HV1和HV2优先通过交叉口,t=3s后,HV1和HV2驶离交叉口,AV加速通过交叉口。通行过程中,当速度低于预期速度时(t=3s之前),奖励值下降,而当速度高于预期速度时(t=3s之后),奖励值上升,整个过程中A组的总奖励为-44.184,如图8a所示。B组中,AV采取效率通行策略,选择在HV1和HV2之间通过交叉口,AV在t=2s时到达冲突区域,在HV2到达冲突区域前0.5s驶离。DDPG算法能探索最优行驶策略,使AV在交叉口通行过程中保持2m/s2的加速度,整个过程的总奖励为-18.743,明显高于A组,如图8b所示。可以看出,B组中AV通过交叉口的时间相较于A组减少了1.5 s,加速度变化更小,这意味着DDPG算法能有效减少交叉口拥堵,提高通行效率。具体数据对比如表1所示。
表1 不同算法的效果评价
为了比较DDPG算法和NSGA-Ⅱ算法的稳定性,设置一组对比实验,自动驾驶车辆(AV)的初始速度从30km/h至55km/h之间随机选取。建立只有AV的单车场景,然后用训练好的DDPG算法为AV生成最佳行驶策略,同样将NSGA-Ⅱ算法设置为对比组,对同一交叉口通行任务进行10次重复实验,结果如图9所示。结果显示,NSGA-Ⅱ算法用于求解该问题时,每次实验都需要重新探索最优策略,因此在相同的车辆初始速度下,每次实验的总奖励都是完全不同的,而DDPG算法在同一初始速度下不需要重复探索最优策略,性能更稳定,因此DDPG算法的总奖励平均值明显高于NSGA-Ⅱ算法。值得一提的是,当初始速度超过50km/h时,发生碰撞的可能性大大增加,两种算法的总奖励平均值均下降。
图9 DDPG和NSGA-Ⅱ算法稳定性对比
4 结语
通过对智能网联汽车决策方法进行优化设计使得车辆应对复杂交通场景可以更加灵活安全,对比多目标遗传算法,可以减少交叉口的冲突,提高通行效率。但智能网联车辆在城市交叉口的决策过程通常受“人—车—路(环境)”的影响,受限于篇幅,本研究未考虑行人,非机动车,道路结构类型和交通流密度对车辆决策的影响。将来会研究和讨论这些因素的影响,并考虑驾驶员与车辆之间的交互作用,以进一步改善真实道路下的智能车辆行为决策模型。