基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法



1.本发明涉及无信号灯交叉路口自动驾驶车辆路径规划方法,具体是一种基于cnn和dqn 双学习网络的无信号灯交叉路口自动驾驶车辆精细化路径调度方法。


背景技术:



2.自动驾驶车辆在无信号灯路口的路径规划已经成为自动驾驶工业和学术领域的一个热点。然而,当今自动驾驶领域的大多数路径规划算法都是在网络拓扑结构稳定的情况下使用的。这些路径规划算法无法保证其在动态环境(如无信号灯路口)中的鲁棒性,这已成为自动驾驶汽车动态路径规划发展的瓶颈。
3.相关交叉路口路径规划方案可分为集中式和分布式两类。集中式车辆路径规划以全局最优为规划目标,通常由智能路基单元(road side unit,rsu)搜集获取全局信息并进行规划,再将规划路径发送至每个自动驾驶车辆。集中式车辆路径规划模式简单,但对路基单元的算力要求较高,且网络负载过于集中,系统可靠性较差。相比之下,分布式车辆路径规划采用去中心化的系统架构,每个自动驾驶车俩仅利用自身感知的局部信息进行路径规划。虽然分布式车辆路径规划模式存在全局寻优困难等问题,但不依赖于中心节点(如路基单元rsu等),具有算量小、负载相对均衡等优点,表现出较好的应用前景。
4.当前主流的分布式车辆路径规划方案主要分为以下三类:
5.(1)网格权值法,其基本原理是将交叉路口描述为一个网格图,每个网格具有不同权值,每个车辆依据网格权值选择下一步前进的目标网格,进而得出最优的路径规划策略,如改进 dijkstra算法、快速扩展随机树(rrt)算法和a*算法等。刘子豪等人结合跳跃点搜索理论,用选取的关键点代替了传统a*算法中openlist和closelist的点,提高了路径规划算法的寻优速度;姜辰凯等人提出了一种基于时间窗的改进dijkstra算法,实现多agv的动态路径规划。该算法能够在最优路径下避免冲突与死锁,使系统具有较好的鲁棒性。吴伟等人提出了交叉路口网格化下的车辆路径规划优化模型和时间优化分配算法,以交叉口总延误最小为控制目标,运用分支定界法确定车辆在交叉口的最佳行驶路径、速度及驶入时刻。此类算法虽然模型简单,但均属于静态算法,并不是适用于移动车辆较多的路口场景。
6.(2)仿生路径规划法,即自动驾驶车辆通过模拟自然界生物的行为规律对交叉路口下的路径规划策略进行寻优,具有自学习、自决定等特点,如优化粒子算法、改进遗传算法和人工鱼算法等。zhuofei li等人基于遗传算法的优化方法对车辆通过序列进行决策,同时计算最优车辆轨迹,降低了交叉口平均行程时延;覃磊等人提出了一种基于改进的人工鱼算法的车辆优化路径规划方法,首先将车辆与路径通过三维粒子编码方法进行编码,构造有效的车辆路径,再通过原始算法进行迭代,寻最优解,仿真表明该算法具有较快的收敛速度,而且以较大的概率收敛于人工鱼算法的最优解。陈秋莲等人本专利提出了一种基于神经网络和三次样条曲线函数的改进粒子算法,统一了静态和动态障碍物环境表示和碰撞检测模型,能够快速规划出光滑的无碰撞机器人路径,使得路径长度更短,算
法的迭代次数更少。 jian wang等人提出了一种解决车辆路径规划问题的混合蚁算法,在分析其优缺点的基础上,提出了考虑实时路况的蚁算法的改进策略,提高了求解动态vrp的算法性能。此类算法对环境、参数和任务的变化具有较强的适用性和灵活性,但其全局搜索能力弱,寻优时间受个体分布的影响明显。
7.人工智能算法,其核心在于自动驾驶车辆与外部环境进行交互试错学习。例如,自动驾驶车辆在感知到新环境特征时,会根据历史数据进行判断并规划出路径,再跟最佳路径对比,得出误差并将数据更新到历史数据中。这个过程是训练过程,当训练完毕后,算法对新的环境能规划出与最优路径近似的路径。常用的人工智能算法有神经网络算法、sarsa算法、q-learning算法和深度强化学习等。顾洵等人提出了基于detroit模型和深度学习的交通流调度方法,采用detroit模型预测车辆需求分布情况,同时采用深度学习模型获取不同道路的实际车辆流,实现交通流的优化调度。王程博等人建立了一种基于q-learning的无人驾驶船舶路径规划模型,基于马尔科夫过程设计激励函数,规划最优策略,能够在未知环境中规划出最优路径并成功避让多个障碍物。su min jeon等人提出了一种基于q-learning技术的港口码头自动化引导车辆路径选择方法,利用q-learning技术并通过构造给定的码头起重机位置的最短时间路由矩阵,估计每辆车在行驶过程中由于车辆之间的干扰而产生的等待时间,为车辆到最短路线。此类算法能在复杂环境下获得最短路径,并对移动车辆较多的路口场景适应性好,但是人工智能算法得出的解是逼近最优解但不是最优解,其对于参数的设置敏感,与最优解的误差与参数有很大的关系。


技术实现要素:



8.本发明所要解决的技术问题是针对上述现有技术的不足提供一种基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法,本基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法能够提升自动驾驶车辆在通过无信号灯交叉路口时的通行效率,适用于移动车辆较多的无信号灯交叉路口场景;且本发明与现有的其他路径规划算法相比,具有更高的路径预测准确率,以及更低的模型系统开销。
9.为实现上述技术目的,本发明采取的技术方案为:
10.基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法,包括:
11.(1)、定义交叉路口内部矩形区域为冲突区域,不同方向进入交叉路口的车道区域为缓冲区域,将冲突区域进行网格化,每个网格仅能同时容纳一个自动驾驶车辆,规定自动驾驶车辆的起点与终点,获取在无信号灯交叉路口下的每个自动驾驶车辆的初始路径;
12.(2)、选取无信号灯交叉路口下的一个自动驾驶车辆为目标车辆,选择其中一条初始路径作为该目标车辆的路径,根据目标车辆驾驶过程中的实际情况修改并更新目标车辆的路径,得到目标车辆的新路径;其中目标车辆每经历一个时刻能单跳一个网格;
13.(3)、将无信号灯交叉路口下的所有自动驾驶车辆依次作为目标车辆,并按照步骤(2) 的方法获取无信号灯交叉路口下的目标车辆的新路径;
14.(4)、对目标车辆的新路径中每一时刻的环境状态进行编码,得到每一时刻的环境状态对应的特征数据;
15.(5)、在目标车辆的新路径中,目标车辆在t时刻的环境状态对应的特征数据称作目标车辆在t时刻的状态s
t
,目标车辆在t时刻做出的动作称作目标车辆在t时刻的动作a
t

其中a
t
为 s
t
的标签值;
16.(6)、将多组状态s
t
和与状态s
t
对应的标签值作为cnn快速决策网络的路径学习数据集,对cnn快速决策网络进行训练,得到训练好的快速路径调度决策模型;
17.(7)、初始化dqn网络,dqn网络包括当前q网络q(s
t
,a
t
;θ)、目标q网络 q(s
t+1
,a
t+1
;θ-)和经验池,其中,s
t
表示目标车辆在t时刻的状态,a
t
表示目标车辆在t时刻做出的动作,θ表示当前q网络参数,s
t+1
表示目标车辆在t+1时刻的状态,a
t+1
表示目标车辆在t+1时刻做出的动作,θ-表示目标q网络参数;dqn网络采用自适应学习率;
18.(8)、设置贪婪值ε;
19.(9)、将目标车辆在t时刻的状态s
t
发送给快速路径调度决策模型,输出动作的概率分布,选取其中概率值最高的动作作为其候选动作,该候选动作的概率值记为ρ(a
t
);目标车辆在t时刻的状态s
t
发送给当前q网络q(s
t
,a
t
;θ),输出所有合法动作的q值,选取其中q值最高的动作作为其候选动作,该候选动作的q值记为q(a
t
);
20.(10)、随机数x小于贪婪值ε时,在所有合法动作中随机选择一个动作作为当前t时刻做出的动作a
t
,随机数大于贪婪值ε时,则从ρ(a
t
)与q(a
t
)中选择值最高的动作作为当前t时刻做出的动作a
t

21.(11)、执行动作a
t
,得到奖励r
t
和下一时刻的状态s
t+1

22.(12)、将(s
t
,a
t
,r
t
,s
t+1
)整合成经验,存入经验池中;
23.(13)、经验池将t时刻的(s
t
,a
t
)输入给当前q网络q(s
t
,a
t
;θ),s
t+1
输入给目标q网络 q(s
t+1
,a
t+1
;θ-),将奖励值r
t
输入给损失函数,计算出损失函数值,根据损失函数值进行随机梯度下降,更新当前q网络参数θ;
24.(14)、经过c轮训练后,更新目标q网络参数θ-←
θ,当损失函数得出的值收敛于0时,得到最优q网络;
25.(15)、将待预测的车辆在当前时刻的状态输入至最优q网络,得到当前时刻需做出的动作。
26.作为本发明进一步改进的技术方案,所述的步骤(2)中,根据目标车辆驾驶过程中的实际情况修改并更新目标车辆的路径,得到目标车辆的新路径,具体为:
27.(2.1)、选择其中一条初始路径作为目标车辆av的路径,该初始路径记为l
av
,l
av
包含目标车辆av在不同时刻的路径坐标点,在目标车辆av在行驶过程中,以目标车辆av为中心规定警示区域,所述警示区域包括内层警示区域和外层警示区域,目标车辆av单跳区域为内层警示区域,目标车辆av两跳区域为外层警示区域;
28.(2.2)、以目标车辆av在t时刻的路径坐标点为中心,若在t时刻检测到外层警示区域内有其余车辆ov,则提取车辆ov在路径l
ov
中在t+1时刻的路径坐标点,并将提取的路径坐标点更新为目标车辆av在t时刻的障碍点ob
t

29.(2.3)、若在t时刻检测到内层警示区域内有其余车辆ov,则提取车辆ov在路径l
ov
中在t 时刻的路径坐标点和t+1时刻的路径坐标点,并将提取的两个路径坐标点共同更新为目标车辆av在t时刻的障碍点ob
t

30.(2.4)、将外层警示区域与原初始路径l
av
的交点更新为局部终点a’,然后目标车辆av调用 a-star算法并计算出目标车辆av从t时刻的路径坐标点行驶至局部终点a’的局部路径,再将局部路径更新至l
av
中;
31.(2.5)、按照步骤(2.2)至步骤(2.4)的方法遍历完目标车辆路径l
av
中的所有时刻的路径坐标点后结束该轮次,得到目标车辆av的新路径;
32.其中路径l
ov
为车辆ov的初始路径。
33.作为本发明进一步改进的技术方案,所述的步骤(4)中的每一时刻的环境状态对应的特征数据均包括当前时刻目标车辆位置、当前时刻其余车辆ov位置、目标车辆在冲突区域的终点、以目标车辆为中心当前时刻目标车辆两跳点范围的区域、以目标车辆为中心当前时刻目标车辆单跳点范围的区域、目标车辆在当前时刻的障碍点、上一时刻目标车辆位置以及外层警示区域与目标车辆初始路径的交点位置。
34.作为本发明进一步改进的技术方案,cnn快速决策网络包括8个卷积层、8个relu激活层、展平层、2个全连接层和softmax激活层;
35n快速决策网络的损失函数为:
36.loss=-log(yi);
37.其中yi为cnn快速决策网络的输出;
38n快速决策网络的参数w更新公式为:
[0039][0040]
其中,w
+
为更新后的参数,w为原参数,g为一个对角矩阵,α为cnn快速决策网络的全局学习率,δ为最新的梯度贡献值,为参数w的梯度。
[0041]
作为本发明进一步改进的技术方案,所述dqn网络的奖励函数r
t
为:
[0042][0043][0044][0045]
其中,表示目标车辆av与目标车辆av在冲突区域的终点e之间的距离,表示目标车辆av与目标车辆av在冲突区域的终点e之间的距离,其中表示目标车辆av在t时刻的位置坐标,(xe,ye) 表示目标车辆av在冲突区域的终点e的位置坐标;表示在t时刻时目标车辆av与其余车辆ov之间的距离,辆av与其余车辆ov之间的距离,表示其余车辆 ov在t时刻的位置坐标,cov
t
表示在t时刻时以目标车辆av为中心的外层警示区域内其余车辆 ov的数量;cov
min
表示在t时刻时以目标车辆av为中心的内层警示区域内其余车辆ov的数量,cov
max
表示在t时刻时以目标车辆av为中心的警示区域内所有其余车辆ov的数量;
[0046]
累计奖励值r
t
为:
[0047][0048]
其中t表示目标车辆av到达终点e的时刻,γ是一个衰减因子,取值范围为0≤γ≤1;
[0049]
所述dqn网络的损失函数为:
[0050]
l(θ)=e[(q
target-q(s
t
,a
t
;θ)];
[0051]
其中e表示取期望,q
target
表示将s
t+1
输入给目标q网络q(s
t+1
,a
t+1
;θ-)时目标q网络 q(s
t+1
,a
t+1
;θ-)的输出值,q(s
t
,a
t
;θ)表示将t时刻的(s
t
,a
t
)输入给当前q网络q(s
t
,a
t
;θ)时当前q网络q(s
t
,a
t
;θ)的输出值;
[0052]
当前q网络参数θ的梯度下降公式为:
[0053][0054]
θ
t
表示t时刻的当前q网络参数θ的值,θ
t+1
表示t+1时刻的当前q网络参数θ的值;η
t
表示t时刻的学习率;
[0055]
dqn网络采用自适应学习率,自适应学习率的公式为:
[0056][0057]
其中η
t-1
表示t-1时刻的学习率;l
t-1
表示t-1时刻的损失函数值,l
t
表示t时刻的损失函数值,τ表示极小的正数。
[0058]
本发明的有益效果为:
[0059]
本发明针对车辆在通过无信号灯交叉路口时存在等待时间长,通行效率低的问题,且现有路径规划算法,预测准确率不高,模型性能不高的问题,提出了一种基于cnn和dqn双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法。本发明以自动驾驶车辆为研究对象,对无信号交叉路口进行网格离散化处理,并依据现有的路径规划算法获取路径学习数据集。基于这个数据集,首先通过cnn网络构建一个粗颗粒度的快速路径调度决策模型,对自动驾驶车辆在无信号交叉口的实时路径进行快速决策调度。同时,为实现自动驾驶车辆的精细化路径调度,在粗颗粒度快度路径调度决策模型的基础上,本发明增加了dqn强化学习网络来计算模型决策行为的评价值,并构建了奖励函数以及使用自适应学习率来提高模型预测的准确率,平衡自动驾驶车辆在无信号交叉口中路径规划调度的实时性和精准性。通过本发明的算法,能够提升自动驾驶车辆在通过无信号灯交叉路口时的通行效率,适用于移动车辆较多的无信号灯交叉路口场景;且本发明与现有的其他路径规划算法相比,具有更高的路径预测准确率,以及更低的模型系统开销,模型性能更好。
附图说明
[0060]
图1是自动驾驶车辆在无信号灯交叉路口的路径规划模型图。
[0061]
图2是自动驾驶车辆通行时刻图。
[0062]
图3是带有权重的网格路径示意图。
[0063]
图4是cnn快速决策网络结构示意图。
[0064]
图5是dqn价值网络结构示意图。
[0065]
图6是三种模型的smape对比图。
[0066]
图7是三种模型的平均完成时间对比图。
[0067]
图8是三种模型的平均奖励对比图。
[0068]
图9是平均冲突次数对比图。
[0069]
图10是有效通行时间对比图。
[0070]
图11是通行时间中平均停顿时间的占比对比图。
具体实施方式
[0071]
下面根据附图对本发明的具体实施方式作出进一步说明:
[0072]
本实施例提出了一种基于cnn和dqn双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法。本实施例以自动驾驶车辆为研究对象,对无信号交叉路口进行网格离散化处理,并依据现有的路径规划算法获取路径学习数据集。基于这个数据集,首先通过cnn网络构建一个粗颗粒度的快速路径调度决策模型,对自动驾驶车辆在无信号交叉口的实时路径进行快速决策调度。同时,为实现自动驾驶车辆的精细化路径调度,在粗颗粒度快度路径调度决策模型的基础上,本实施例增加了dqn强化学习网络来计算模型决策行为的评价值,并构建了奖励函数以及使用自适应学习率来提高模型预测的准确率,平衡自动驾驶车辆在无信号交叉口中路径规划调度的实时性和精准性。在实验部分,本实施例比较和分析了不同超参数的模型和自适应学习率模型的性能,得到本实施例的模型准确率为96.5%。此外,本实施例提出了三个评价指标,并根据这些指标对模型与三种不同类型的算法的性能进行了比较和分析,然后得出结论:与其他路径规划算法相比,本实施例模型的性能提高了61.54%~85.37%。
[0073]
1、系统模型:
[0074]
如图1所示,考虑一个无信号灯控制的交叉路口,每个方向包含双向六个车道。假设每个自动驾驶车辆均装备了车载传感单元,可以获取当前的状态参数,如地理位置、实时车速、航向角度等。同时,每个自动驾驶车辆还装备了无线收发装置,其广播覆盖半径为r米,通过周期性广播的方式与其他车辆进行信息交互。在交叉路口中心位置安装了一个具有无线收发功能的智能路基单元rsu。假设rsu的广播覆盖范围足够大,能够覆盖交叉路口范围内所有的自动驾驶车辆,并通过协同转发的方式实现数据信息在自动驾驶车辆之间的可靠交互共享。定义交叉路口内部矩形区域为冲突区域,不同方向的进入交叉路口的车道区域为缓冲区域。依据相关交通法规,自动驾驶车辆在进入缓冲区域后不再允许更换车道。
[0075]
以冲突区域中心为原点,水平方向为x轴,垂直方向为y轴建立直角坐标系。定义v= {vi|i≤n,i∈n
+
}为当前交叉路口所有自动驾驶车辆的集合。为所有自动驾驶车辆在当前t时刻瞬时转向角的集合,d为车辆之间的安全距离。以车辆vi为例,定义为其在t时刻的速度,为t时刻的转向角,为车辆vi在t时刻的地理位置。此外,定义为自动驾驶车辆vi进入冲突区域的起始时刻,为车辆vi离开冲突区域的终了时刻,为车辆vi从进入冲突区域到离开冲突区域所消耗的通行时间。
[0076]
定义δt为交叉路口调度总时间,即交叉路口内所有自动驾驶车辆从进入冲突区域时刻到全部驶离冲突区域时刻的总时间间隔。图2描述了每个自动驾驶车辆vi从进入冲突区域到离开冲突区域所消耗的通行时间ti与路口通行时间δt之间的逻辑关系。其中,集合l= {l1,l2,l
3,
l4,

,l
n-1
,ln}中每个横段在水平轴上的投影表示相应自动驾驶车辆在冲
突区内的行驶时间。定义车辆vi的有效区段为车辆vi与车辆v
i-1
离开冲突区的时间差

ti,即即不妨设v1为最先进入冲突区内的自动驾驶车辆,则车辆v1通行时间的有效区段为

t1。车辆vi的重合区段为车辆vi与v
i-1
通行时间的交集δ(ti∩t
i-1
)。令t,表示集合v中自动驾驶车辆最早进入冲突区的时刻,t”表示集合v中车辆最后离开冲突区的时刻,则集合v中自动驾驶车辆从开始进入冲突区到全部驶离冲突区的路口通行时间

t与每个自动驾驶车辆通行时间的关系可以表示为:
[0077][0078]
δt=t
”‑
t’;
ꢀꢀꢀ
(2);
[0079][0080][0081]
根据上述定义,可将自动驾驶车辆在交叉路口的路径规划过程描述成如式(5)所示的数学优化问题。
[0082][0083][0084][0085][0086]
其中,式(5)为自动驾驶车辆在交叉路口通行的目标函数;约束条件(5a)要求自动驾驶车辆在行驶过程中不能出现停顿;约束条件(5b)要求车辆转向角不能发生突变;约束条件(5c)要求车辆之间保持最小安全距离。
[0087]
2、增强型dijkstra算法:
[0088]
针对最优路径问题,目前常用的方法包括dijkstra算法、a-star算法、floyd算法和 bellman-ford算法等。其中,已经有许多针对上述算法的改进研究,改进的算法在路径优化、节点调度等领域得到了广泛的应用。以一种增强型dijkstra为例作简单介绍,其核心思想是在dijkstra算法的基础上加入方向权值、安全权值、优先级权值。
[0089]
方向权值α用于表示当前车辆前进方向与目标终点方向之间的偏差,约束车辆朝着目标终点方向前进;安全权值β用于表征当前车辆与其他车辆之间的相对位置关系,约束车辆选择最安全的网格作为下一步的前进目标,避免在路口中发生碰撞;优先级权值γ用于表示车辆在选择下一步目标网格的优先程度,约束车辆在网格中的通行次序,避免车辆在路径规划时产生冲突。当自动驾驶车辆处于某个位置时,就可以计算周围路径网格的权值w,即w=α*β*γ,然后依据dijkstra算法的基本思想重新计算出车辆位置与终点的最短路径。
[0090]
如图3所示,以车辆a为例,车辆a需要从起点网格a出发至终点网格a

,在车辆a转向范围内的相邻网格中,网格11和16、15的方向权值α分别为0.7、1和1;网格11未受其他车辆影响,网格15对于车辆a属于危险网格和预警网格,网格16对于车辆a属于危险网格,故安全权值β分别为0.9、0.05和0.01;车辆va在网格12处与车辆ve同时选择网格 15,与车辆e和d同时选择网格16,此时车辆a驶入网格15和16分别属于直行和左转,优先级权值相乘后网格
11、15和16的优先级权值γ分别为0.8、0.8和0.16。按照网格权值w的定义,此时网格11、15和16的权值分别为0.504、0.04和0.0016,网格11的权值最大,故选择网格11为下一步目标网格。当车辆a行驶至网格11后,重复上述算法寻下一网格,直至到达终点,调度结束。
[0091]
这种方法虽然一部分适应了交叉口下动态拓扑环境,但三种权值的参数是人为设定的,在权值的赋值上欠缺理论系统的分析。针对上述问题,提出了一种基于历史轨迹的cnn快速决策网络+dqn强化学习双网络预测模型。
[0092]
3、cnn快速决策网络:
[0093]
在本节中,首先介绍了数据集,并且提出了基于此数据集,通过cnn网络构建一个粗颗粒度的快速路径调度决策模型,对自动驾驶车辆在无信号交叉口的实时路径进行快速决策调度,然后,为实现自动驾驶车辆的精细化路径调度,在粗颗粒度快度路径调度决策模型的基础上,加入了dqn强化学习网络,对模型的决策动作计算评估,提高决策动作的准确率。
[0094]
3.1、数据集:
[0095]
在本小节,介绍了数据集的组成,并对各部分进行简要讨论。无信号灯交叉口是一个动态复杂拓扑的环境,为了真实模拟出自动驾驶车辆在无信号灯交叉口下的驾驶路径,本文采用四种不同类型的驾驶路径混合成路径学习数据集。数据集包含的路径种类有:(i)网格权值类:dijkstra算法、a-star算法;(ii)仿生学类:蚁算法;(iii)人工智能类:神经rrt算法; (iiii)人为驾驶路径。
[0096]
在图1中,将冲突区域分化为一个20*20的网格图,以网格图中心为原点,水平方向为 x轴,垂直方向为y轴建立直角坐标系。每个网格仅能同时容纳一个自动驾驶车辆。自动驾驶车辆每经历一个时刻能单跳一个网格。规定车辆的起点与终点,并用上述算法遍历出不同的路径。然后,模拟自动驾驶车辆按照网格图中的路径行驶。在本文的方法中,选择其中一辆av作为目标车辆,并根据其驾驶过程中的情况修改路径,如以下例子所示。
[0097]
首先,假设一共有i辆自动驾驶车经过冲突区域,每辆车都会产生一条完整的驾驶路径,则将他们对应的路径以列表的形式储存起来。选取n条初始路径ln,并将他们按照索引顺序依次在网格盘上重现,选择其中某一条路径作为目标车辆av的初始路径,记为l
av
,如图3所示,在目标车辆av在行驶过程中,以目标车辆av为中心规定两个范围的警示区域,目标车辆av单跳区域为内层警示区域,目标车辆av两跳区域为外层警示区域。若外层警示区域在t时刻检测到有其余车辆ov(图中为车辆e),则提取l
ov
中在t+1时刻的路径点,并将此路径点更新为t时刻的障碍点ob
t
,若有其余车辆ov(如车辆d)在内层警示区域,则将此车t时刻的位置和t+1时刻的路径点共同更新为障碍点ob
t
。将外层警示区域与原路径的交点更新为局部终点a’,然后目标车辆av调用a-star算法并计算出从t时刻的路径点行驶至局部终点a’的局部路径再将局部路径更新至l
av
中。当遍历完目标车辆路径l
av
中的所有元素后结束该轮次,并选取下一个目标车辆开始新轮次。
[0098]
为了将上述路径数据转化为cnn神经网络可处理的对象,需要对路径数据进行编码。本文采用one-hot编码形式,针对目标车辆所产生的路径数据进行编码,将目标车辆路径中每一步的环境状态编码为20*20*8的特征张量。本文使用的编码器名称为八平面编码,
其包含了 8个特征平面,特征平面的解释如下表所示8个特征平面对应的特征数据。
[0099]
表1,特征平面:
[0100][0101]
[0102]
将数据按上述编码后,则可以定义目标车辆在当前时刻产生的特征数据(即上表1中的 8个特征)可以称作状态s
t
,而目标车辆在当前时刻做出的动作则可以称作动作a
t
,本文将动作a
t
作为对应特征数据s
t
的标签值。将目标车辆在每一时刻产生的特征数据与其对应时刻做出的动作作为cnn快速决策网络的路径学习数据集。
[0103]
3.2、cnn快速决策网络:
[0104]
在交叉口的复杂场景中,为了让模型根据状态s
t
快速做出相应的策略动作a
t
,本文采用卷积神经网络来提取状态s
t
的特征,以此来输出策略动作a
t
的概率分布,并选取概率值最大的动作作为cnn快速决策网络的候选动作。
[0105]
如图4所示,展示了本文的cnn快速决策网络结构,cnn快速决策网络包括8个卷积层、8个relu激活层、展平层、2个全连接层和softmax激活层。神经网络以目标车辆的状态s
t
作为输入,数据经过八平面编码器编码后输入至conv2d层执行卷积操作。本网络结构中一共有8个conv2d层,分别提取出8个特征值,每个conv2d层都采用3*3*1大小的过滤器,并且设置卷积步长stride为1,为了保持最后输出的概率矩阵大小为20*20,本文采用 samepadding技术使得数据经过卷积层后能够保持原来的尺寸大小。
[0106]
考虑到本文使用了11层的神经网络,其适配输入数据的能力较好,但有可能会产生过拟合的情况,在更极端的情况下,模型会完全记住它学习过的数据,但对稍有不同的新数据却预测不准确。为了避免这种情况的发生,使模型具有泛化能力,本文在每一个卷积层后都添加了一个用于正则化的丢弃层(dropout)并设定丢弃率(dropoutrate)为50%,丢弃层的作用是在每个训练步骤中,该层随机挑选一定比例的神经元并完全丢弃,然后将剩下的神经元传递到下一层,并最终参与到反向传播中。通过这样的技术,可以防止单个层(因此整个神经网络也不会)过度专注于给定的数据,这样就可以防止神经网络产生过拟合。
[0107]
在本神经网络架构中,使用线性整流单元(relu)为激活函数,这种激活函数以将负值输入设为0的方式忽略负值输入,而正值输入则保持不变。因此,正信号越强,relu的激活度就越强,其增加了梯度下降和反向传播的效率,避免了梯度爆炸和梯度消失的问题。
[0108]
当数据经过8个conv2d层的卷积计算后,需要将数据张量经过flatten层展平为向量,然后再输入到最后两层的稠密层(全连接层)中。由于快速决策模型最后的输出是当前时刻需做出的动作的概率值,所以本结构中在最后采用了softmax激活函数,并输出合法动作a的概率分布ρw(a|s),其中w为快速预测网络的参数。
[0109]
在本网络架构中参数w更新采用随机梯度下降(sgd)的方法,为了适应sgd使得参数更新的变化与预测值和真实值之间的差异成正比。本文引入了分类交叉熵损失函数,这个函数的定义如下:
[0110][0111]
其中为模型的标签值,i为索引,yi为模型的输出,在本应用中,此公式可以归结为一项,即的那一项。所以公式(6)可以更新为:
[0112]
loss=-log(yi)
ꢀꢀꢀ
(7);
[0113]
由于此网络使用的数据较多,不能直接设置全局学习率α,所以在此网络中采用了自适应梯度方法,即为每个参数w单独调整学习率,其参数权重更新公式如下:
[0114]
[0115]
其中,w
+
为更新后的参数,w为原参数,α为cnn快速决策网络的全局学习率,g为一个对角矩阵,每次参数更新后,把对角项与最新的梯度贡献值δ相加来更新g,θw为参数w的梯度。
[0116]
相对于其他网络结构而言,本文的网络结构能在保证有60%-70%准确率的同时快速地做出决策动作。其前8层conv2d层能够有效地提取出状态s的特征,使得模型能检测出目标车辆av与状态s的空间关系,然后经过两层dense层将提取的特征作非线性变化,提高特征之间的关联性,最后通过softmax激活函数输出所有可能动作的概率分布。
[0117]
基于以上路径学习数据集,通过cnn网络构建一个粗颗粒度的快速路径调度决策模型。
[0118]
4、dqn价值网络:
[0119]
4.1、奖励函数设定:
[0120]
在上一节中快速路径调度决策模型能针对目标车辆av的当前状态s
t
输出所有下一合法动作的概率分布ρw(a|s),然后模型从中选取概率最高的动作作为快速路径调度决策模型的候选动作a
t
,但是此候选动作a
t
对于目标车辆i可能并不是最优的动作。所以本文加入dqn网络对模型决策进行优化。
[0121]
假设有一个策略函数π表示状态s
t
与动作a
t
之间的关系即a
t
=π(s
t
)。当目标车辆av在状态s
t
执行了动作a
t
后需要获得奖励来学习改进其行为,并做出最佳决策π以获得最大的未来奖励。因此,合适的奖励函数设计对于有效地评估策略π并指导目标车辆获得更好的学习性能是非常重要的。
[0122]
当av通过冲突区时,目标车辆av与终点e之间的距离可以使用曼哈顿距离表示。在t时刻,av到终点e的距离可表示为其中与(xe,ye) 分别表示av在t时刻的位置坐标以及av的终点坐标。av与其余车辆ov在t时刻的距离则可以表示为假设冲突区内的所有车辆速度是恒定的,则即使奖励函数r
t
可以描述为如下所示:
[0123][0124][0125][0126]
其中cov
t
表示在t时刻时以目标车辆av为中心的外层警示区域内其余车辆ov的数量; cov
min
表示在t时刻时以目标车辆av为中心的内层警示区域内其余车辆ov的数量,cov
max
表示在t时刻时以目标车辆av为中心的警示区域内所有其余车辆ov的数量。为了使得目标车辆 av所采取的动作a
t
能够让av越来越接近终点e,而不是远离终点e或保持两者距
离不变,本文设计了公式(9)的奖励函数。为了鼓励安全和有效的驾驶行为,本文设计了奖励函数(10),其意义在于,动作a
t
是否对下一个状态的cov
t+1
产生影响。若动作a
t
使得下一状态外层警示区域内的ov数量增加,则对应给予惩罚,反之,若使得下一状态外层警示区域内ov数量减少,则对应基于奖励。为了激励av尽量不让ov进入内层警示区域在公式(10)中只对内层警示区域ov数量增加的情况做惩罚处理,反之不再给予奖励。
[0127]
由公式(11)再得出累计奖励值,其公式如下:
[0128][0129]
其中t表示av到达终点e的时刻,γ是一个衰减因子,取值范围为0≤γ≤1,距离t时刻越远的奖励衰减越显著。
[0130]
4.2、q函数定义:
[0131]
q-learning方法是dqn的核心思想,这种方法可以评估t时刻动作a
t
的价值,并由此学习出一个最佳的驾驶决策,使当前状态下的未来回报之和最大化。最佳决策可以通过选择具有最大q值的a
t
来获得,q值是用来评估一个给定状态下某个动作的价值。q
π
(s
t
,a
t
)表示根据决策π在状态s
t
执行动作a
t
的q值,其定义如下:
[0132]qπ
(s
t
,a
t
)=e[r
t+k
|s
t+k
=s,a
t+k
=a,π]
ꢀꢀꢀ
(13);
[0133]
其中e表示取期望,q函数从状态s开始,使用a作为第一个行为的最大积累奖励值,k代表t时刻之后的时间步骤。q
π
(s
t
,a
t
)与q
π
(s
t+1
,a
t+1
)之间的递归关系可以使用bellman方程来描述:
[0134]qπ
(s
t
,a
t
)=e[r
t
+γmaxq
π
(s
t+1
,a
t+1
)]
ꢀꢀꢀ
(14);
[0135]
在本文中,由于动态拓扑环境会引起大量状态,所以动作的q值必须用参数化的方法来近似表达。因此采用dqn来非线性地拟合q网络,使用卷积神经网络(cnn)建立参数为θ的当前q网络,当前q网络的参数在每次迭代中更新,使用随机梯度下降法(sgd)来最小化损失函数。以下公式l(θ)为损失函数:
[0136]qtarget
=r
t
+γmaxq(s
t+1
,a
t+1
;θ-)
ꢀꢀꢀ
(15);
[0137]
l(θ)=e[(q
target-q(s
t
,a
t
;θ)]
ꢀꢀꢀ
(16);
[0138][0139]
其中e表示取期望,maxq(s
t+1
,a
t+1
;θ-)表示将s
t+1
输入给目标q网络q(s
t+1
,a
t+1
;θ-) 时目标q网络q(s
t+1
,a
t+1
;θ-)的输出值,q(s
t
,a
t
;θ)表示将t时刻的(s
t
,a
t
0输入给当前q网络 q(s
t
,a
t
;θ)时当前q网络的输出值。公式(17)为参数θ的梯度下降公式,η
t
为参数θ的学习率。 s
t
表示目标车辆在t时刻的状态,a
t
表示目标车辆在t时刻做出的动作,θ表示当前q网络参数, s
t+1
表示目标车辆在t+1时刻的状态,a
t+1
表示目标车辆在t+1时刻做出的动作,θ-表示目标q网络参数;dqn网络采用自适应学习率。
[0140]
4.3、dqn价值网络结构:
[0141]
本文所提出的dqn价值网络结构如图5所示,dqn价值网络包括当前q网络q(s
t
,a
t
;θ)、目标q网络q(s
t+1
,a
t+1
;θ-)和经验池。图5中环境是指目标车辆av所在的交叉口。若目标车辆在t时刻处于一个状态s
t
,则在此网络中环境将状态s
t
发送给快速路径调度决策模型与当前 q网络,快速路径调度决策模型根据状态s
t
输出动作的概率分布ρw(a
t
|s
t
),并选取概率值最高的动作作为其候选动作,该候选动作的概率值记为ρ(a
t
)。当前q网络则根据s
t
并利
用公式 (13)计算出所有合法动作的q值,并选取q值最高的动作作为其候选动作,该候选动作的 q值记为q(a
t
)=argmaxq(s
t
,a
t
;θ)。
[0142]
为了让模型能够探索未知动作,并与最佳动作之间维持平衡,本文设定一个ε值来控制这个平衡,这个值称为贪婪值。在图5中,为贪婪值ε设定了一个判断逻辑,当快速路径调度决策模型和当前q网络都选出候选动作后,给定一个随机数x,这个x介于[0,1]之间。判断随机数x是否小于贪婪值ε,若是,则在所有合法动作中随机选择一个动作ra
t
作为当前采取动作 a
t
;若否,则在{ρ(a
t
),q(a
t
)}两个候选动作对应的值中选择估计值最高的动作作为采取动作 a
t
。在训练初期贪婪值ε会选取一个相对较高的值,本文采用0.5。随着训练不断改进,模型学习到的新动作越来越多,并且dqn价值网络中的loss函数越来越收敛于0,则逐渐降低贪婪值ε,此时模型将会更依赖当前q网络的评估值,并选取q值最高的动作。
[0143]
假设已经选出动作a
t
,则先将动作a
t
返回至环境中并输出t+1时刻的状态s
t+1
。为了保证 dqn价值网络中的loss稳定收敛,使用记忆回放技术,即将t时刻的(s
t
,a
t
,r
t
,s
t+1
)成为t时刻的记忆e
t
,将时刻1到t所有记忆{e1,e2,

,e
t
}都储存到经验池replaymemory中。在每次训练迭代的过程中,会从经验池replaymemory中均匀采样得到一组记忆,这样能够避免使用相邻记忆而产生过度耦合的情况发生。
[0144]
在训练过程中,经验池replaymemory会将t时刻的(s
t
,a
t
)输入给当前q网络(q network), s
t+1
输入给目标q网络(target q network),并将奖励值r
t
输入给loss函数,其意义在于利用公式(16)计算出损失函数值。当前q网络得到t时刻关于参数θ的q值,目标q网络计算出 t+1时刻的maxq(s
t+1
,a
t+1
;θ-)值,然后函数l(θ)返回损失函数值,并利用梯度下降更新目标q网络中的参数θ。
[0145]
再经过c轮训练后,当前q网络将其中所有的参数复制给目标q网络并更新目标q网络中的参数θ-。当损失函数得出的值收敛于0时,则认为得到了最优q函数,也即最优q网络模型。
[0146]
4.4、自适应学习率在双网络中的收敛性证明:
[0147]
在dqn训练过程中,利用当前q网络去拟合目标q网络。虽然神经网络具有较强的非线性映射能力,但由于在双网络中增加了贪婪策略,在选择了预测值较差的动作后,会引起 l(θ)的收敛震荡,使得模型训练时间增加,且提升的训练精度不高。
[0148]
针对上述问题,本文提出了一种改进型自适应学习率,能够依据损失函数l(θ)的变化,自适应更新学习率的取值,并从数学角度分析证明了其在迭代过程中的收敛性。具体描述如下,定义η
t
为t时刻的学习率;l
t
为t时刻损失函数的值;l
t-1-l
t
为t-1时刻与t时刻损失函数的变化值。则自适应学习率公式如下:
[0149][0150]
其中τ是一个极小的正数,为了防止在神经网络训练后期学习率递减为0,并让学习率稳定在某一数值。此学习率能在损失函数由小变大,训练出现过拟合的情况时自适应减少,有效减小了由于震荡问题使得模型不收敛的情况。
[0151]
本文再利用数学公式进一步推导证明在自适应学习率下损失函数l(θ)收敛。通常认为 pi=l
t-1-l
t
与t迭代次数满足即:
[0152][0153]
同理,认为在不考虑鞍点的情况下函数的梯度等于0,也认为算法收敛具体如公式(20) 所示:
[0154][0155][0156]
在本文的非凸条件下,可以将收敛条件更新为公式:
[0157][0158]
其中:g
t
代表反向传播时的梯度,其基本原理是在序列{‖g
t
‖}到其最小值,并且这一值趋于0,认为此时算法收敛。
[0159]
lipschitz连续作为非凸优化分析的重要工具,在实际研究中,lipschitz梯度连续更加常见,其函数需要满足:
[0160][0161]
定义1:当函数l:都满足存在常数b,使得:
[0162][0163]
即称函数l在上是l光滑的。
[0164]
为验证lipschitz梯度连续等价于l光滑,通过定义可知当函数f(x)满足lipschitz梯度连续时,需满足式(23),可得到如下式:
[0165][0166]

[0167]
于是可知,当二阶梯度存在时,lipschitz梯度连续实际上意味着函数l的二阶梯度(即 hessian矩阵)对满足:
[0168][0169]
其中,矩阵i表示单位矩阵,则上式表示矩阵半正定且矩阵也为半正定。
[0170]
对于函数l(x)进行taylor展开,整理可得到:
[0171][0172]
于是有式(23)成立,因此两者等价。
[0173]
证明:根据式(23),可得存常数b满足:
[0174][0175]
依据公式(17)中θ
t
更新规则有:
[0176][0177]
不等式两边同时关于随机变量取期望值即:
[0178][0179]
对于函数f(θ)其梯度的无偏估计为随机梯度g
t
即:
[0180][0181]
对于随机梯度g
t
存在常数d满足:
[0182]
||(gt)||<d
ꢀꢀꢀ
(32);
[0183]
结合式(30)、(31)、(32),整理可得:
[0184][0185]
定义2:学习率{η
t
}是一个非增正项数列,且满足下列条件:
[0186][0187]
定理1:当函数l(x)满足定义1,其随机梯度满足式(32)、(33),其学习率η
t
满足定义2且函数l(x)在定义域l
inf
=l
*
,则有:
[0188][0189]
依据定理1,将式(34)从t=1到t叠加,则有:
[0190][0191]
由于学习率满足定义2,于是有:
[0192][0193]
则可以得出损失函数l(θ)在自适应学习率η
t
下收敛。
[0194]
5、仿真分析:
[0195]
本节中解释了如何评估提出的车辆路径预测模型。首先给出具有不同超参数的模型,然后对指标进行评估并对其相关参数曲线进行比较分析。其次,给出了自适应学习率下的模型曲线并证明了上述分析。然后,说明了该模型与其他算法的比较性能分析。
[0196]
5.1、比较不同超参数下模型性能:
[0197]
所有网络模型架构都按照第3节中的描述使用。此外,这些模型是通过python和 pytorch库实现的。由于dqn网络采用l_1损失函数的形式,并且在训练过程中q值逐渐增加,因此l_1损失函数的值在增加。针对这个问题,我们使用对称平均绝对百分比误差 (smape)作为评价指标。方程如下所示:
[0198][0199]
其中,表示当前循环中第i个episode的目标q网络输出的最大q值,qi表示当前循环中第i个episode的当前q网络输出的q值。
[0200]
此外,本文将人为选择的超参数的模型、通过网格搜索技术优化的超参数的模型、 avp-rln进行比较。avp-rln表示本文最优q网络模型(也即自适应学习率下的模型),本文分析了smape、训练期间每episode花费的时间以及平均奖励值来说明。超参数设置显示在表2中。
[0201]
表2:超参数设定;
[0202]
参数参数设置优化后的参数设置学习率0.0020.004学习strarts4096040960批量大小10241024梯度下降步长1010缓存大小400000200000gammaγ0.960.99
[0203]
如表2所示,优化后的参数设置是基于网格搜索技术的,并经过交叉验证。图6显示了两种不同的超参数模型和avp-rln的smape的比较情况。
[0204]
在smape误差图中,可以发现,模型在第110次循环前后达到最高值。这是由于在训练期开始时需要初始化训练参数,在此期间参数是随机选择的,当参数选择到40960个时,模型开始学习训练。在这组参数中,普通超参数模型的最大smape值与优化后的超参数模型接近,数值在0.42左右,这是由于两组模型在训练的初始化阶段都是随机选择参数。优化的超参数模型在第110次循环后逐渐收敛到一个最小值,最小值在0.08和0.06之间。普通超参数模型在第100次循环后也收敛到一个最小值,但其最小值在0.13-0.11左右。可以看出,与普通模型相比,优化后的超参数模型提高了约5%的预测精度。avp-rln的smape曲线的趋势与前两个模型大致相同,在第110个循环左右达到最大值,在后面的训练中逐渐收敛。其原因也是在训练开始时参数的初始化。然而,在第150个周期后,它逐渐收敛到约 0.035的最小值,这相当于约96.5%的精度。与一般超参数模型和具有优化超参数的模型的 smape值相比,avp-rln的smape值有10%-5.2%的提高。原因是根据公式(18),当训练过程中smape误差值较高时,自适应学习率提高,使模型更依赖于经验,反之,当训练过程中出现过拟合时,学习率下降。
[0205]
图7显示了模型在每个episode中获得的平均奖励值。可以看出,该模型在第 6000episode左右开始收敛,奖励值也振荡上升。在一定的区间内,由于训练时各组环境不同,但从曲线趋势看,模型在这个区间内收敛。一般超参数模型的平均奖励值收敛区间为 [0.4,0.45],而优化超参数模型的平均奖励值收敛区间为[0.50,0.55],所以可以看出,与一般超参数模型相比,优化超参数模型在训练过程中对不同环境可以获得更高的奖励值,这说明模型可以选择更好的策略来控制av,在不与ov冲突的情况下选择更短的路径。从avp
‑ꢀ
rln的奖励值曲线可以看出,该模型在第3000个episode左右获得最高的平均奖励值,此时模型的性能是最优的,其最高平均奖励远远超过其他两个模型约0.25-0.34。然而,随着训练集数的增加,学习率逐渐降低并接近零,奖励值逐渐达到峰值,然后下降到约0.46
[0206]
图8显示了在训练过程中,模型完成一个episode的时间,单位是秒。在这个参数中,可以认为是从av开始到结束的时间。从图中我们可以看出,完成每一个episode的时间是逐渐收敛的,收敛的时间间隔与奖励值相同,原因与图7相同,每一个episode是不同的环境。一般超参数模型的过去时间在[70,65]之间逐渐收敛,而优化的超参数模型的过去时间则在[60,55]之间收敛。可以看出,与一般的超参数模型相比,优化的超参数模型将完成一个episode所需的时间减少了约10秒。avp-rln在3000集左右完成一集的平均时间最少,这是因为此时avp-rln能够选择具有最高奖励值的策略,同时保持96.5%的准确率。
[0207]
5.2、与其他算法的性能比较:
[0208]
本文说明了用于评估和比较路径预测方法的性能的三种指标。在实验中,本文将提出的算法与其他三种典型算法进行了比较,这三种算法分别是:dijkstra算法、蚁算法和rnn 模型算法。本文使用了以下三个指标,并在此基础上比较了性能结果。
[0209]
平均冲突次数:四种算法控制的av在不同交通密度下的平均冲突次数。
[0210]
有效通过时间:参考第1节提出的有效通过时间

t,比较四种算法在不同交通密度下的性能。
[0211]
平均停顿时间占通行时间的百分比:驾驶期间av中的停顿时间占通行时间的百分比。
[0212]
平均冲突次数如图9所示。从图中可以得出结论,当车辆数量为20-30时,avp-rln和 rnn神经网络可以保持在0冲突,这表明两种算法在交通密度较低。随着车辆数量的增加,环境变得更加复杂,冲突的数量也变得更大。然而,与其他三种算法相比,avp-rln能够在较高的流量密度下保持较低的冲突数量,最高平均冲突数为6,而dijkstra算法的最高平均冲突数为41,与dijkstra的算法相比,本文算法的模型性能提高了85.37%。而相对于rnn 神经网络和蚁算法的提升分别为61.54%和81.43%。原因是dijkstra算法是静态网格算法,无法适应动态复杂的环境,而蚁算法计算时间较长,不适用于实时性要求高的场景。rnn 神经网络在高流量密度环境中的适应性较差,对于复杂多变的网络拓扑环境无法保证最优解。
[0213]
图10显示了四种算法在不同交通密度下的av有效通过时间。从图中可以看出,自动驾驶汽车的有效通过时间受交通密度的影响,与其余三种算法相比,avp-rln可以保持较低的有效通过时间。dijkstra和蚁算法可以在20-40的低流量密度下保持较低的

t。因为贪心策略要求这两种算法计算的路径始终是最短路径,但随着流量密度的增加,最短路径显然不是最佳路径,因此会导致在高交通密度下的有效通行时间变长。相比之下,avp-rln能够根据环境的变化,同时考虑最短路径和冲突次数,选择评价值最高的策略,使得高交通密度下的有效通行时间保持在45s-60s之间。
[0214]
在图11中,本文将四个算法控制的av在不同交通密度下的平均停顿时间占通行时间的百分比进行对比。可以看出,avp-rln和rnn神经网络能更好地适应动态环境,并且由于rnn神经网络的训练以避开移动障碍物为主要目标,它在低交通密度下的时间百分比略好于我们的算法模型,但总体趋势相似,数值保持在8%到24%之间。dijkstra算法和蚁算法由于其动态拓扑环境适应性较差,因此它们的相对停顿时间百分比较高,受流量密度影响较大,其值范围为15%~48%。
[0215]
6、结束语:
[0216]
在本发明中,研究了自动驾驶车辆在无信号灯交叉口的路径寻优问题。首先,为无信号灯交叉口建立了一个系统模型,并依此提出了目标函数。基于无信号灯交叉口的场景,本发明建立了快速路径调度决策模型,使得av能够根据环境快速选择路径决策。然后,在此基础上加入了dqn价值网络,对av所有可执行的路径动作进行评估,并计算出q值。为了获得准确率更高的预测模型,本发明提出了一种自适应学习率,并对这种自适应学习率作收敛性证明。在实验部分,对比不同超参数模型和自适应学习率模型的性能,数值结果证明自适应学习率下的模型在预测准确率上有优越性能。最后我们提出了三种评价指标,并依据这
三种评价指标将本发明avp-rln与其他三种不同类型的算法进行对比分析,证实了本发明算法的模型能够有效解决无信号灯交叉口动态复杂环境下的路径寻优问题。
[0217]
本发明的保护范围包括但不限于以上实施方式,本发明的保护范围以权利要求书为准,任何对本技术做出的本领域的技术人员容易想到的替换、变形、改进均落入本发明的保护范围。

技术特征:


1.基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法,其特征在于:包括:(1)、定义交叉路口内部矩形区域为冲突区域,不同方向进入交叉路口的车道区域为缓冲区域,将冲突区域进行网格化,每个网格仅能同时容纳一个自动驾驶车辆,规定自动驾驶车辆的起点与终点,获取在无信号灯交叉路口下的每个自动驾驶车辆的初始路径;(2)、选取无信号灯交叉路口下的一个自动驾驶车辆为目标车辆,选择其中一条初始路径作为该目标车辆的路径,根据目标车辆驾驶过程中的实际情况修改并更新目标车辆的路径,得到目标车辆的新路径;其中目标车辆每经历一个时刻能单跳一个网格;(3)、将无信号灯交叉路口下的所有自动驾驶车辆依次作为目标车辆,并按照步骤(2)的方法获取无信号灯交叉路口下的目标车辆的新路径;(4)、对目标车辆的新路径中每一时刻的环境状态进行编码,得到每一时刻的环境状态对应的特征数据;(5)、在目标车辆的新路径中,目标车辆在t时刻的环境状态对应的特征数据称作目标车辆在t时刻的状态s
t
,目标车辆在t时刻做出的动作称作目标车辆在t时刻的动作a
t
,其中a
t
为s
t
的标签值;(6)、将多组状态s
t
和与状态s
t
对应的标签值作为cnn快速决策网络的路径学习数据集,对cnn快速决策网络进行训练,得到训练好的快速路径调度决策模型;(7)、初始化dqn网络,dqn网络包括当前q网络q(s
t
,a
t
;θ)、目标q网络q(s
t+1
,a
t+1
;θ-)和经验池,其中,s
t
表示目标车辆在t时刻的状态,a
t
表示目标车辆在t时刻做出的动作,θ表示当前q网络参数,s
t+1
表示目标车辆在t+1时刻的状态,a
t+1
表示目标车辆在t+1时刻做出的动作,θ-表示目标q网络参数;dqn网络采用自适应学习率;(8)、设置贪婪值ε;(9)、将目标车辆在t时刻的状态s
t
发送给快速路径调度决策模型,输出动作的概率分布,选取其中概率值最高的动作作为其候选动作,该候选动作的概率值记为ρ(a
t
);目标车辆在t时刻的状态s
t
发送给当前q网络q(s
t
,a
t
;θ),输出所有合法动作的q值,选取其中q值最高的动作作为其候选动作,该候选动作的q值记为q(a
t
);(10)、随机数x小于贪婪值ε时,在所有合法动作中随机选择一个动作作为当前t时刻做出的动作a
t
,随机数大于贪婪值ε时,则从ρ(a
t
)与q(a
t
)中选择值最高的动作作为当前t时刻做出的动作a
t
;(11)、执行动作a
t
,得到奖励r
t
和下一时刻的状态s
t+1
;(12)、将(s
t
,a
t
,r
t
,s
t+1
)整合成经验,存入经验池中;(13)、经验池将t时刻的(s
t
,a
t
)输入给当前q网络q(s
t
,a
t
;θ),s
t+1
输入给目标q网络q(s
t+1
,a
t+1
;θ-),将奖励值r
t
输入给损失函数,计算出损失函数值,根据损失函数值进行随机梯度下降,更新当前q网络参数θ;(14)、经过c轮训练后,更新目标q网络参数θ-←
θ,当损失函数得出的值收敛于0时,得到最优q网络;(15)、将待预测的车辆在当前时刻的状态输入至最优q网络,得到当前时刻需做出的动作。2.根据权利要求1所述的基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径
调度方法,其特征在于:所述的步骤(2)中,根据目标车辆驾驶过程中的实际情况修改并更新目标车辆的路径,得到目标车辆的新路径,具体为:(2.1)、选择其中一条初始路径作为目标车辆av的路径,该初始路径记为l
av
,l
av
包含目标车辆av在不同时刻的路径坐标点,在目标车辆av在行驶过程中,以目标车辆av为中心规定警示区域,所述警示区域包括内层警示区域和外层警示区域,目标车辆av单跳区域为内层警示区域,目标车辆av两跳区域为外层警示区域;(2.2)、以目标车辆av在t时刻的路径坐标点为中心,若在t时刻检测到外层警示区域内有其余车辆ov,则提取车辆ov在路径l
ov
中在t+1时刻的路径坐标点,并将提取的路径坐标点更新为目标车辆av在t时刻的障碍点ob
t
;(2.3)、若在t时刻检测到内层警示区域内有其余车辆ov,则提取车辆ov在路径l
ov
中在t时刻的路径坐标点和t+1时刻的路径坐标点,并将提取的两个路径坐标点共同更新为目标车辆av在t时刻的障碍点ob
t
;(2.4)、将外层警示区域与原初始路径l
av
的交点更新为局部终点a’,然后目标车辆av调用a-star算法并计算出目标车辆av从t时刻的路径坐标点行驶至局部终点a’的局部路径,再将局部路径更新至l
av
中;(2.5)、按照步骤(2.2)至步骤(2.4)的方法遍历完目标车辆路径l
av
中的所有时刻的路径坐标点后结束该轮次,得到目标车辆av的新路径;其中路径l
ov
为车辆ov的初始路径。3.根据权利要求1所述的基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法,其特征在于:所述的步骤(4)中的每一时刻的环境状态对应的特征数据均包括当前时刻目标车辆位置、当前时刻其余车辆ov位置、目标车辆在冲突区域的终点、以目标车辆为中心当前时刻目标车辆两跳点范围的区域、以目标车辆为中心当前时刻目标车辆单跳点范围的区域、目标车辆在当前时刻的障碍点、上一时刻目标车辆位置以及外层警示区域与目标车辆初始路径的交点位置。4.根据权利要求1所述的基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法,其特征在于:cnn快速决策网络包括8个卷积层、8个relu激活层、展平层、2个全连接层和softmax激活层;cnn快速决策网络的损失函数为:loss=-log(y
i
);其中y
i
为cnn快速决策网络的输出;cnn快速决策网络的参数w更新公式为:其中,w
+
为更新后的参数,w为原参数,g为一个对角矩阵,α为cnn快速决策网络的全局学习率,δ为最新的梯度贡献值,为参数w的梯度。5.根据权利要求1所述的基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法,其特征在于:所述dqn网络的奖励函数r
t
为:
其中,表示目标车辆av与目标车辆av在冲突区域的终点e之间的距离,表示目标车辆av与目标车辆av在冲突区域的终点e之间的距离,其中表示目标车辆av在t时刻的位置坐标,(x
e
,y
e
)表示目标车辆av在冲突区域的终点e的位置坐标;表示在t时刻时目标车辆av与其余车辆ov之间的距离,车辆ov之间的距离,表示其余车辆ov在t时刻的位置坐标,cov
t
表示在t时刻时以目标车辆av为中心的外层警示区域内其余车辆ov的数量;cov
min
表示在t时刻时以目标车辆av为中心的内层警示区域内其余车辆ov的数量,cov
max
表示在t时刻时以目标车辆av为中心的警示区域内所有其余车辆ov的数量;累计奖励值r
t
为:其中t表示目标车辆av到达终点e的时刻,γ是一个衰减因子,取值范围为0≤γ≤1;所述dqn网络的损失函数为:l(θ)=e[(q
target-q(s
t
,a
t
;θ)];其中e表示取期望,q
target
表示将s
t+1
输入给目标q网络q(s
t+1
,a
t+1
;θ-)时目标q网络q(s
t+1
,a
t+1
;θ-)的输出值,q(s
t
,a
t
;θ)表示将t时刻的(s
t
,a
t
)输入给当前q网络q(s
t
,a
t
;θ)时当前q网络q(s
t
,a
t
;θ)的输出值;当前q网络参数θ的梯度下降公式为:θ
t
表示t时刻的当前q网络参数θ的值,θ
t+1
表示t+1时刻的当前q网络参数θ的值;η
t
表示t时刻的学习率;dqn网络采用自适应学习率,自适应学习率的公式为:其中η
t-1
表示t-1时刻的学习率;l
t-1
表示t-1时刻的损失函数值,l
t
表示t时刻的损失函数值,τ表示极小的正数。

技术总结


本发明公开了一种基于双学习网络的无信号灯交叉口自动驾驶车辆精细化路径调度方法。它以自动驾驶车辆为研究对象,对无信号交叉路口进行网格离散化处理,依据路径规划算法获取路径学习数据集。基于该数据集,通过CNN网络构建粗颗粒度的快速路径调度决策模型,对自动驾驶车辆在无信号交叉口的实时路径进行快速决策调度。为实现自动驾驶车辆的精细化路径调度,在粗颗粒度快度路径调度决策模型的基础上,增加了DQN强化学习网络来计算模型决策行为的评价值,构建了奖励函数以及使用自适应学习率来提高模型预测的准确率,平衡自动驾驶车辆在无信号交叉口中路径规划调度的实时性和精准性。本发明能够提升自动驾驶车辆在通过无信号灯交叉路口时的通行效率。信号灯交叉路口时的通行效率。信号灯交叉路口时的通行效率。


技术研发人员:

孙宁 吴伟豪 肖广兵 张涌

受保护的技术使用者:

南京林业大学

技术研发日:

2022.09.09

技术公布日:

2023/2/23

本文发布于:2024-09-23 08:18:23,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/60526.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:车辆   路径   目标   时刻
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议