一种融合Q算法和模糊化状态划分的自适应巡航决策方法
未命名
07-12
阅读:64
评论:0

一种融合q算法和模糊化状态划分的自适应巡航决策方法
技术领域
1.本发明涉及无人车控制技术领域,具体涉及一种融合q算法和模糊化状态划分的自适应巡航决策方法。
背景技术:
2.近年来人工智能系统越来越受到关注,并得到了广泛的应用。人工智能是融合了多种科学门类的新技术,与大量技术领域有着交互。目前随着芯片技术、计算机大数据技术、电池技术的高速发展,人工智能技术也得到了迅速提高,与它相关的产品和概念也逐渐融入到社会的各个领域。自动驾驶领域也不可避免的引入了人工智能的概念。在自动驾驶领域内的智能自适应巡航系统不仅能降低驾驶员的操作复杂度,也能更高效精准的完成驾驶任务,而这就要求具备较强的人工智能决策能力。
3.很多学者对自适应巡航技术开展了大量的研究工作。例如,王泽宝以pid控制算法为基础,基于两车之间相对速度的可变车头间距策略,分析了其稳定性,并据此设计了一种增量pid控制算法。刘道旭东也在pid控制算法框架下考虑了人脑的多元信息处理能力和强大的学习能力,将其与人工神经网络进行整合,提升车辆上层控制器的灵敏性和高效性,在诸多场景中体现出了良好的效果。陈峥峰和陈林林等人研究了pid控制策略,针对车辆的支流点击的机械特性进行了性能提升和优化,利用单片机产生pwm控制车辆电机,通过仿真实验证明这个策略控制效果良好。
4.但是上述算法因缺少人工智能技术而缺乏自动推理及泛化能力,并且传统机器学习算法的训练效果强烈依赖训练样本,常常因为训练样本的数量不足、采集不均衡导致效果不佳。
5.此外,传统q-learning算法中以矩阵的形式来存储状态-行为值,在实际场景中,此存储形式在很多情况下是不可行的,因为复杂场景中的状态量太大,矩阵的存储空间有限。
技术实现要素:
6.为解决传统算法的训练效果依赖训练样本,常常因为训练样本的数量不足、采集不均衡导致效果不佳的问题,以及传统算法因为复杂场景中的状态量太大,矩阵的存储空间有限而无法实施的问题,本发明的目的在于提供一种融合q-learning和模糊化状态划分的自适应巡航决策方法。
7.该方法可以对智能体的“大脑”进行训练,车辆可以在多种场景中进行试错,自动的产生大量有效数据,节省了大量的时间成本和人力成本,达到极强的扩充神经网络训练样本的效果,从而得到足够的经验知识,通过不同状态下得到的奖励值,学习到哪些决策是好的哪些决策是不好的,该算法为传统的机器学习算法补充了大量数据,弥补了短板。
8.另外,本发明融合了模糊数学算法对状态和动作空间进行维度压缩,极大的节省了算法所需要的空间复杂度,提升了训练速度。
9.为实现上述目的,本发明的技术方案如下。
10.一种融合q算法和模糊化状态划分的自适应巡航决策方法,包括以下步骤:
11.步骤1,建立离散化的状态变量模型;
12.步骤2,建立状态和动作的模糊化变量模型;
13.步骤3,根据步骤2建立的模糊化变量模型,初始化q矩阵中的值,并设定学习率α,衰减率γ和奖励值r;
14.其中,其中,a为加速度,s为二维状态量;
15.步骤4,计算适应度μi(s),并选取具有最大适应度μk(s)的状态;
16.其中,
17.步骤5,从步骤3的q矩阵中的第k行选择待执行的动作b;
18.步骤6,执行动作b,得到下一时刻状态s
′
和奖励值r;
19.步骤7,计算置信度ωj,并更新q值;
20.其中,
21.q(sk,a
l
)=q(sk,a
l
)+α(r+γωq
′
(sk′
,a
l
′
)),sk←
sk′
;其中,a为加速度,s为二维状态量;
22.步骤8,将离散动作连续化,以获得自适应巡航任务的完成情况;
[0023][0024]
步骤9,根据步骤8的自适应巡航任务的完成情况,判断是否满足自适应巡航任务的停止条件,若满足则自适应巡航任务截止,若不满足则再次进入步骤4的计算适应度步骤。
[0025]
进一步,步骤1中,离散化的状态变量模型如下:
[0026][0027]
其中,v
pre
为第一辆车速度,为第一辆车速度的离散状态量;
[0028][0029]
其中,v
host
为第二辆车速度,为第二辆车速度的离散状态量;
[0030][0031]
其中,x
real
为两车实际距离,为两车实际距离的离散状态量;
[0032][0033]
其中,s3为组合而成的三维状态量,s1为将s3经过映射而成的一维状态量。
[0034]
更进一步,步骤2中,建立状态和动作的模糊化变量模型之前,先将三维状态量s3转变为二维状态量s
*
:
[0035]s*
=(xe,ve)
[0036]
xe=(x
real-x
safe
)/x
safe
[0037]
ve=v
host-v
pre
;
[0038]
其中,x
real
为两车实际距离;x
safe
为两车安全距离;v
host
为第二辆车速度,v
pre
为第
一辆车速度。
[0039]
更进一步,步骤2中,模糊化变量模型包括距离相对误差xe的模糊化变量模型、速度误差ve的模糊化变量模型和加速度a的模糊化变量模型。
[0040]
更进一步,针对距离相对误差xe的模糊化变量模型和速度误差ve的模糊化变量模型,设定七个模糊状态变量,且七个模糊状态变量分别为负大、负中、负小、零、正小、正中、正大;
[0041]
距离相对误差xe的模糊化变量模型如下:
[0042]
(1)当xe低于-0.28时,xe对于负大的隶属度为1;当xe大于-0.16时,xe对于负大的隶属度为0;据此设定负大的三角形函数值为[-∞,-0.28,-0.16];
[0043]
(2)当xe低于-0.28或高于-0.08时,xe对于负中的隶属度为0;当xe为-0.16时,xe对于负中的隶属度为1;据此设定负中的三角形函数值为[-0.28,-0.16,-0.08];
[0044]
(3)当xe低于-0.16或高于0时,xe对于负小的隶属度为0;当xe为-0.08时,xe对于负小的隶属度为1;据此设定负小的三角形函数值为[-0.16,-0.08,0];
[0045]
(4)当xe低于-0.08或高于0.08时,零的隶属度为0;当xe为0时,零的隶属度为1;据此设定零的三角形函数值为[-0.08,0,0.08];
[0046]
(5)当xe低于0或高于0.16时,xe对于正小的隶属度为0;当xe为0.08时,xe对于正小的隶属度为1;据此设定正小的三角形函数值为[0,0.08,0.16];
[0047]
(6)当xe低于0.08或高于0.28时,xe对于正中的隶属度为0;当xe为0.16时,xe对于正中的隶属度为1;据此设定正中的三角形函数值为[0.08,0.16,0.28];
[0048]
(7)当xe低于0.16时,xe对于正大的隶属度为0;xe大于0.28时,xe对于正大的隶属度为1;据此设定正大的三角形函数值为[0.16,0.28,∞];
[0049]
速度误差ve的模糊化变量模型如下:
[0050]
(1)当ve低于-4时,ve对于负大的隶属度为1;当ve大于-2时,ve对于负大的隶属度为0;据此设定负大的三角形函数值为[-∞,-4,-2];
[0051]
(2)当ve低于-4或高于-1时,ve对于负中的隶属度为0;当ve为-2时,ve对于负中的隶属度为1;据此设定负中的三角形函数值为[-4,-2,-1];
[0052]
(3)当ve低于-2或高于0时,ve对于负小的隶属度为0,当ve恰好为-1时,ve对于负小的隶属度为1;据此设定负小的三角形函数值为[-2,-1,0];
[0053]
(4)当ve低于-1或高于1时,ve对于零的隶属度为0;当ve为0时,ve对于零的隶属度为1;据此设定零的三角形函数值为[-1,0,1];
[0054]
(5)当ve低于0或高于2时,ve对于正小的隶属度为0;当ve为1时,ve对于正小的隶属度为1;据此设定正小的三角形函数值为[0,1,2];
[0055]
(6)当ve低于1或高于4时,ve对于正中的隶属度为0;当ve为2时,ve对于正中的隶属度为1;据此设定正中的区间设置为[1,2,4];
[0056]
(7)当ve低于2时,ve对于正大的隶属度为0;当ve大于4时,ve对于正大的隶属度为1;据此设定正大的三角形函数值为[2,4,∞]。
[0057]
更进一步,针对加速度a的模糊化变量模型,设定九个模糊状态变量,且九个模糊状态变量分别为负很大、负大、负中、负小、零、正小、正中、正大、正很大;
[0058]
加速度a的模糊化变量模型如下:
[0059]
(1)当a低于-2.5或高于0.7时,a对于负很大的隶属度为0;当a大于-2时,a对于负很大的隶属度为1;据此设定负很大的三角形函数值为[-2.5,-2,-0.7];
[0060]
(2)当a低于-1.2或高于-0.3时,a对于负大的隶属度为0;当a等于-0.7时,a对于负大的隶属度为1;据此设定负大的三角形函数值为[-1.2,-0.7,-0.3];
[0061]
(3)当a低于-0.7或高于-0.1时,a对于负中的隶属度为0,当a为-0.3时,a对于负中的隶属度为1;据此设定负中的三角形函数值为[-0.7,-0.3,-0.1];
[0062]
(4)当a低于-0.3或高于0时,a对于负小的隶属度为0,当a为-0.1时,a对于负小的隶属度为1;据此设定负小的三角形函数值为[-0.3,-0.1,0];
[0063]
(5)当a低于-0.1或高于0.1时,a对于零的隶属度为0,当a为0时,a对于零的隶属度为1;据此设定零的三角形函数值为[-0.1,0,0.1];
[0064]
(6)当a低于0或高于0.2时,a对于正小的隶属度为0,当a为0.1时,a对于正小的隶属度为1;据此设定正小的三角形函数值为[0,0.1,0.2];
[0065]
(7)当a低于0.1或高于0.5时,a对于正中的隶属度为0,当a为0.2时,a对于正中的隶属度为1;据此设定正中的三角形函数为[0.1,0.2,0.5];
[0066]
(8)当a低于0.2或高于0.9时,a对于正大的隶属度为0,当a为0.5时,a对于正大的隶属度为1;据此设定正大的三角形函数为[0.2,0.5,0.9];
[0067]
(9)当a低于0.5或高于1.5时,a对于正很大的隶属度为0,当a为0.9时,a对于正很大的隶属度为1;据此设定正很大的三角形函数为[0.5,0.9,1.5]。
[0068]
更进一步,步骤6中,执行动作b之后,离散化的状态变量模型更新如下:
[0069][0070]
其中,为第二辆车的动作;和分别为不同时间下第二辆车速度的离散状态量;为第一辆车的动作;和分别为不同时间下第二辆车速度的离散状态量;为两车实际距离的离散状态量;τ=1。
[0071]
更进一步,步骤6中,执行动作b之后,得到的奖励值r的计算公式如下:
[0072]
r=rg+r
p
;
[0073]
其中,rg为目标奖励值,rg针对自适应巡航任务中是否达到目标进行奖励或惩罚;rg设定如下:
[0074][0075]rp
为过程奖励值,r
p
针对自适应巡航过程中是否趋向更好的状态进行奖励或惩罚;r
p
设定如下:
[0076][0077]
其中,x
real
为两车实际距离;x
safe
为两车安全距离。
[0078]
更进一步,步骤6中,执行动作b之后,得到的下一时刻状态s
′
设定如下:
[0079][0080]
其中,v
host
为第二辆车速度,x
safe
为两车安全距离。
[0081]
本发明的有益效果:
[0082]
1、本发明的方法首先针对自适应巡航系统提出了一种新的状态空间划分方法,通过模糊数学算法将自适应巡航系统的状态空间做了合理划分,使得q-learning算法可以有效应用于无人车自适应巡航系统。然后基于两车之间多种因素合理设定了启发性的奖励值函数,加强了q-learning算法的训练效果。最后通过计算机仿真环境和智能车仿真实验平台,设定了多种自适应巡航的场景,分别对本发明的上述算法进行了验证,根据试验效果表明该方法可以很好的完成自适应巡航的任务,并且具有良好的适用性和鲁棒性。本发明的方法解决了传统算法的训练效果依赖训练样本,常常因为训练样本的数量不足、采集不均衡导致效果不佳的问题,以及传统算法因为复杂场景中的状态量太大,矩阵的存储空间有限而无法实施的问题。
[0083]
2、本发明的方法可以对智能体的“大脑”进行训练,车辆可以在多种场景中进行试错,自动的产生大量有效数据,节省了大量的时间成本和人力成本,达到极强的扩充神经网络训练样本的效果,从而得到足够的经验知识,通过不同状态下得到的奖励值,学习到哪些决策是好的哪些决策是不好的,该方法为传统的机器学习算法补充了大量数据,弥补了短板。
[0084]
3、本发明的方法融合了模糊数学算法对状态和动作空间进行维度压缩,极大的节省了该方法所需要的空间复杂度,提升了训练速度。
附图说明
[0085]
图1为本发明实施例1提供的融合q算法和模糊化状态划分的自适应巡航决策方法的流程图。
[0086]
图2为本发明实施例2进行仿真试验的速度跟踪曲线。
[0087]
图3为本发明实施例2进行仿真试验的距离跟踪曲线。
具体实施方式
[0088]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0089]
基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0090]
下述各实施例中所述实验方法如无特殊说明,均为常规方法;所述试剂和材料,如无特殊说明,均可在市场上购买得到。
[0091]
实施例1
[0092]
请参阅图1,一种融合q算法和模糊化状态划分的自适应巡航决策方法,包括以下步骤:
[0093]
步骤1,建立离散化的状态变量模型;
[0094]
具体的,离散化的状态变量模型如下:
[0095][0096]
其中,v
pre
为第一辆车速度,为第一辆车速度的离散状态量;
[0097][0098]
其中,v
host
为第二辆车速度,为第二辆车速度的离散状态量;
[0099][0100]
其中,x
real
为两车实际距离,为两车实际距离的离散状态量;
[0101][0102]
其中,s3为组合而成的三维状态量,s1为将s3经过映射而成的一维状态量。
[0103]
步骤2,先将三维状态量s3转变为二维状态量s
*
:
[0104]s*
=(xe,ve)
[0105]
xe=(x
real-x
safe
)/x
safe
[0106]
ve=v
host-v
pre
;
[0107]
其中,x
real
为两车实际距离;x
safe
为两车安全距离;v
host
为第二辆车速度,v
pre
为第一辆车速度。
[0108]
然后建立状态和动作的模糊化变量模型;模糊化变量模型包括距离相对误差xe的模糊化变量模型、速度误差ve的模糊化变量模型和加速度a的模糊化变量模型。
[0109]
针对距离相对误差xe的模糊化变量模型和速度误差ve的模糊化变量模型,设定七个模糊状态变量,且七个模糊状态变量分别为负大、负中、负小、零、正小、正中、正大;
[0110]
距离相对误差xe的模糊化变量模型如下:
[0111]
(1)当xe低于-0.28时,xe对于负大的隶属度为1;当xe大于-0.16时,xe对于负大的隶属度为0;据此设定负大的三角形函数值为[-∞,-0.28,-0.16];
[0112]
(2)当xe低于-0.28或高于-0.08时,xe对于负中的隶属度为0;当xe为-0.16时,xe对于负中的隶属度为1;据此设定负中的三角形函数值为[-0.28,-0.16,-0.08];
[0113]
(3)当xe低于-0.16或高于0时,xe对于负小的隶属度为0;当xe为-0.08时,xe对于负小的隶属度为1;据此设定负小的三角形函数值为[-0.16,-0.08,0];
[0114]
(4)当xe低于-0.08或高于0.08时,零的隶属度为0;当xe为0时,零的隶属度为1;据此设定零的三角形函数值为[-0.08,0,0.08];
[0115]
(5)当xe低于0或高于0.16时,xe对于正小的隶属度为0;当xe为0.08时,xe对于正小的隶属度为1;据此设定正小的三角形函数值为[0,0.08,0.16];
[0116]
(6)当xe低于0.08或高于0.28时,xe对于正中的隶属度为0;当xe为0.16时,xe对于正中的隶属度为1;据此设定正中的三角形函数值为[0.08,0.16,0.28];
[0117]
(7)当xe低于0.16时,xe对于正大的隶属度为0;xe大于0.28时,xe对于正大的隶属度为1;据此设定正大的三角形函数值为[0.16,0.28,∞];
[0118]
速度误差ve的模糊化变量模型如下:
[0119]
(1)当ve低于-4时,ve对于负大的隶属度为1;当ve大于-2时,ve对于负大的隶属度为0;据此设定负大的三角形函数值为[-∞,-4,-2];
[0120]
(2)当ve低于-4或高于-1时,ve对于负中的隶属度为0;当ve为-2时,ve对于负中的隶属度为1;据此设定负中的三角形函数值为[-4,-2,-1];
[0121]
(3)当ve低于-2或高于0时,ve对于负小的隶属度为0,当ve恰好为-1时,ve对于负小的隶属度为1;据此设定负小的三角形函数值为[-2,-1,0];
[0122]
(4)当ve低于-1或高于1时,ve对于零的隶属度为0;当ve为0时,ve对于零的隶属度为1;据此设定零的三角形函数值为[-1,0,1];
[0123]
(5)当ve低于0或高于2时,ve对于正小的隶属度为0;当ve为1时,ve对于正小的隶属度为1;据此设定正小的三角形函数值为[0,1,2];
[0124]
(6)当ve低于1或高于4时,ve对于正中的隶属度为0;当ve为2时,ve对于正中的隶属度为1;据此设定正中的区间设置为[1,2,4];
[0125]
(7)当ve低于2时,ve对于正大的隶属度为0;当ve大于4时,ve对于正大的隶属度为1;据此设定正大的三角形函数值为[2,4,∞]。
[0126]
针对加速度a的模糊化变量模型,设定九个模糊状态变量,且九个模糊状态变量分别为负很大、负大、负中、负小、零、正小、正中、正大、正很大;
[0127]
加速度a的模糊化变量模型如下:
[0128]
(1)当a低于-2.5或高于0.7时,a对于负很大的隶属度为0;当a大于-2时,a对于负很大的隶属度为1;据此设定负很大的三角形函数值为[-2.5,-2,-0.7];
[0129]
(2)当a低于-1.2或高于-0.3时,a对于负大的隶属度为0;当a等于-0.7时,a对于负大的隶属度为1;据此设定负大的三角形函数值为[-1.2,-0.7,-0.3];
[0130]
(3)当a低于-0.7或高于-0.1时,a对于负中的隶属度为0,当a为-0.3时,a对于负中的隶属度为1;据此设定负中的三角形函数值为[-0.7,-0.3,-0.1];
[0131]
(4)当a低于-0.3或高于0时,a对于负小的隶属度为0,当a为-0.1时,a对于负小的隶属度为1;据此设定负小的三角形函数值为[-0.3,-0.1,0];
[0132]
(5)当a低于-0.1或高于0.1时,a对于零的隶属度为0,当a为0时,a对于零的隶属度为1;据此设定零的三角形函数值为[-0.1,0,0.1];
[0133]
(6)当a低于0或高于0.2时,a对于正小的隶属度为0,当a为0.1时,a对于正小的隶属度为1;据此设定正小的三角形函数值为[0,0.1,0.2];
[0134]
(7)当a低于0.1或高于0.5时,a对于正中的隶属度为0,当a为0.2时,a对于正中的隶属度为1;据此设定正中的三角形函数为[0.1,0.2,0.5];
[0135]
(8)当a低于0.2或高于0.9时,a对于正大的隶属度为0,当a为0.5时,a对于正大的隶属度为1;据此设定正大的三角形函数为[0.2,0.5,0.9];
[0136]
(9)当a低于0.5或高于1.5时,a对于正很大的隶属度为0,当a为0.9时,a对于正很
大的隶属度为1;据此设定正很大的三角形函数为[0.5,0.9,1.5]。
[0137]
步骤3,根据步骤2建立的模糊化变量模型,初始化q矩阵中的值,并设定学习率α,衰减率γ和奖励值r;
[0138]
其中,其中,a为加速度,s为二维状态量;
[0139]
步骤4,计算适应度μi(s),并选取具有最大适应度μk(s)的状态;
[0140]
其中,
[0141]
步骤5,从步骤3的q矩阵中的第k行选择待执行的动作b;
[0142]
步骤6,执行动作b,得到下一时刻状态s
′
和奖励值r;
[0143]
执行动作b之后,离散化的状态变量模型更新如下:
[0144][0145]
其中,为第二辆车的动作;和分别为不同时间下第二辆车速度的离散状态量;为第一辆车的动作;和分别为不同时间下第二辆车速度的离散状态量;为两车实际距离的离散状态量;τ=1。
[0146]
执行动作b之后,得到的奖励值r的计算公式如下:
[0147]
r=rg+r
p
;
[0148]
其中,rg为目标奖励值,rg针对自适应巡航任务中是否达到目标进行奖励或惩罚;rg设定如下:
[0149][0150]rp
为过程奖励值,r
p
针对自适应巡航过程中是否趋向更好的状态进行奖励或惩罚;r
p
设定如下:
[0151][0152]
其中,x
real
为两车实际距离;x
safe
为两车安全距离。
[0153]
执行动作b之后,得到的下一时刻状态s
′
设定如下:
[0154][0155]
其中,v
host
为第二辆车速度,x
safe
为两车安全距离。
[0156]
步骤7,计算置信度ωj,并更新q值;
[0157]
其中,
[0158]
q(sk,a
l
)=q(sk,a
l
)+α(r+γωq
′
(sk′
,a
l
′
)),sk←
sk′
;其中,a为加速度,s为二维状态量;
[0159]
步骤8,将离散动作连续化,以获得自适应巡航任务的完成情况;
[0160][0161]
步骤9,根据步骤8的自适应巡航任务的完成情况,判断是否满足自适应巡航任务的停止条件,若满足则自适应巡航任务截止,若不满足则再次进入步骤4的计算适应度步骤。
[0162]
实施例2
[0163]
根据实施例1的方法进行仿真试验,具体仿真结果见图2和图3。
[0164]
由图2和图3结果可以看出,整个自适应巡航时间为250秒。
[0165]
图2表示速度跟踪曲线,图2中虚线表示前车速度,实线表示本车速度,可以看出本车(第二辆车)在15秒内将速度变为和前车(第一辆车)一样。
[0166]
图3表示距离跟踪曲线,图3中虚线表示两车安全距离,此安全距离设定为本车(第二辆车)速度的2倍,实线表示两车实际距离,可以看出在20秒内,本车(第二辆车)达到了与前车(第一辆车)之间的安全距离。以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种融合q算法和模糊化状态划分的自适应巡航决策方法,其特征在于,包括以下步骤:步骤1,建立离散化的状态变量模型;步骤2,建立状态和动作的模糊化变量模型;步骤3,根据步骤2建立的模糊化变量模型,初始化q矩阵中的值,并设定学习率α,衰减率γ和奖励值r;其中,其中,a为加速度,s为二维状态量;步骤4,计算适应度μ
i
(s),并选取具有最大适应度μ
k
(s)的状态;其中,步骤5,从步骤3的q矩阵中的第k行选择待执行的动作b;步骤6,执行动作b,得到下一时刻状态s
′
和奖励值r;步骤7,计算置信度ω
j
,并更新q值;其中,q(s
k
,a
l
)=q(s
k
,a
l
)+α(r+γωq
′
(s
k
′
,a
l
′
)),s
k
←
s
k
′
;其中,a为加速度,s为二维状态量;步骤8,将离散动作连续化,以获得自适应巡航任务的完成情况;步骤9,根据步骤8的自适应巡航任务的完成情况,判断是否满足自适应巡航任务的停止条件,若满足则自适应巡航任务截止,若不满足则再次进入步骤4的计算适应度步骤。2.根据权利要求1所述的融合q算法和模糊化状态划分的自适应巡航决策方法,其特征在于,步骤1中,离散化的状态变量模型如下:其中,v
pre
为第一辆车速度,为第一辆车速度的离散状态量;
其中,v
host
为第二辆车速度,为第二辆车速度的离散状态量;其中,x
real
为两车实际距离,为两车实际距离的离散状态量;其中,s3为组合而成的三维状态量,s1为将s3经过映射而成的一维状态量。3.根据权利要求2所述的融合q算法和模糊化状态划分的自适应巡航决策方法,其特征在于,步骤2中,建立状态和动作的模糊化变量模型之前,先将三维状态量s3转变为二维状态量s
*
:s
*
=(x
e
,v
e
)x
e
=(x
real-x
safe
)/x
safe
v
e
=v
host-v
pre
;其中,x
real
为两车实际距离;x
safe
为两车安全距离;v
host
为第二辆车速度,v
pre
为第一辆车速度。4.根据权利要求3所述的融合q算法和模糊化状态划分的自适应巡航决策方法,其特征
在于,步骤2中,模糊化变量模型包括距离相对误差x
e
的模糊化变量模型、速度误差v
e
的模糊化变量模型和加速度a的模糊化变量模型。5.根据权利要求4所述的融合q算法和模糊化状态划分的自适应巡航决策方法,其特征在于,针对距离相对误差x
e
的模糊化变量模型和速度误差v
e
的模糊化变量模型,设定七个模糊状态变量,且七个模糊状态变量分别为负大、负中、负小、零、正小、正中、正大;距离相对误差x
e
的模糊化变量模型如下:(1)当x
e
低于-0.28时,x
e
对于负大的隶属度为1;当x
e
大于-0.16时,x
e
对于负大的隶属度为0;据此设定负大的三角形函数值为[-∞,-0.28,-0.16];(2)当x
e
低于-0.28或高于-0.08时,x
e
对于负中的隶属度为0;当x
e
为-0.16时,x
e
对于负中的隶属度为1;据此设定负中的三角形函数值为[-0.28,-0.16,-0.08];(3)当x
e
低于-0.16或高于0时,x
e
对于负小的隶属度为0;当x
e
为-0.08时,x
e
对于负小的隶属度为1;据此设定负小的三角形函数值为[-0.16,-0.08,0];(4)当x
e
低于-0.08或高于0.08时,零的隶属度为0;当x
e
为0时,零的隶属度为1;据此设定零的三角形函数值为[-0.08,0,0.08];(5)当x
e
低于0或高于0.16时,x
e
对于正小的隶属度为0;当x
e
为0.08时,x
e
对于正小的隶属度为1;据此设定正小的三角形函数值为[0,0.08,0.16];(6)当x
e
低于0.08或高于0.28时,x
e
对于正中的隶属度为0;当x
e
为0.16时,x
e
对于正中的隶属度为1;据此设定正中的三角形函数值为[0.08,0.16,0.28];(7)当x
e
低于0.16时,x
e
对于正大的隶属度为0;x
e
大于0.28时,x
e
对于正大的隶属度为1;据此设定正大的三角形函数值为[0.16,0.28,∞];速度误差v
e
的模糊化变量模型如下:(1)当v
e
低于-4时,v
e
对于负大的隶属度为1;当v
e
大于-2时,v
e
对于负大的隶属度为0;据此设定负大的三角形函数值为[-∞,-4,-2];(2)当v
e
低于-4或高于-1时,v
e
对于负中的隶属度为0;当v
e
为-2时,v
e
对于负中的隶属度为1;据此设定负中的三角形函数值为[-4,-2,-1];(3)当v
e
低于-2或高于0时,v
e
对于负小的隶属度为0,当v
e
恰好为-1时,v
e
对于负小的隶属度为1;据此设定负小的三角形函数值为[-2,-1,0];(4)当v
e
低于-1或高于1时,v
e
对于零的隶属度为0;当v
e
为0时,v
e
对于零的隶属度为1;据此设定零的三角形函数值为[-1,0,1];(5)当v
e
低于0或高于2时,v
e
对于正小的隶属度为0;当v
e
为1时,v
e
对于正小的隶属度为1;据此设定正小的三角形函数值为[0,1,2];(6)当v
e
低于1或高于4时,v
e
对于正中的隶属度为0;当v
e
为2时,v
e
对于正中的隶属度为1;据此设定正中的区间设置为[1,2,4];(7)当v
e
低于2时,v
e
对于正大的隶属度为0;当v
e
大于4时,v
e
对于正大的隶属度为1;据此设定正大的三角形函数值为[2,4,∞]。6.根据权利要求5所述的融合q算法和模糊化状态划分的自适应巡航决策方法,其特征在于,针对加速度a的模糊化变量模型,设定九个模糊状态变量,且九个模糊状态变量分别为负很大、负大、负中、负小、零、正小、正中、正大、正很大;加速度a的模糊化变量模型如下:
(1)当a低于-2.5或高于0.7时,a对于负很大的隶属度为0;当a大于-2时,a对于负很大的隶属度为1;据此设定负很大的三角形函数值为[-2.5,-2,-0.7];(2)当a低于-1.2或高于-0.3时,a对于负大的隶属度为0;当a等于-0.7时,a对于负大的隶属度为1;据此设定负大的三角形函数值为[-1.2,-0.7,-0.3];(3)当a低于-0.7或高于-0.1时,a对于负中的隶属度为0,当a为-0.3时,a对于负中的隶属度为1;据此设定负中的三角形函数值为[-0.7,-0.3,-0.1];(4)当a低于-0.3或高于0时,a对于负小的隶属度为0,当a为-0.1时,a对于负小的隶属度为1;据此设定负小的三角形函数值为[-0.3,-0.1,0];(5)当a低于-0.1或高于0.1时,a对于零的隶属度为0,当a为0时,a对于零的隶属度为1;据此设定零的三角形函数值为[-0.1,0,0.1];(6)当a低于0或高于0.2时,a对于正小的隶属度为0,当a为0.1时,a对于正小的隶属度为1;据此设定正小的三角形函数值为[0,0.1,0.2];(7)当a低于0.1或高于0.5时,a对于正中的隶属度为0,当a为0.2时,a对于正中的隶属度为1;据此设定正中的三角形函数为[0.1,0.2,0.5];(8)当a低于0.2或高于0.9时,a对于正大的隶属度为0,当a为0.5时,a对于正大的隶属度为1;据此设定正大的三角形函数为[0.2,0.5,0.9];(9)当a低于0.5或高于1.5时,a对于正很大的隶属度为0,当a为0.9时,a对于正很大的隶属度为1;据此设定正很大的三角形函数为[0.5,0.9,1.5]。7.根据权利要求2所述的融合q算法和模糊化状态划分的自适应巡航决策方法,其特征在于,步骤6中,执行动作b之后,离散化的状态变量模型更新如下:其中,为第二辆车的动作;和分别为不同时间下第二辆车速度的离散状态量;为第一辆车的动作;和分别为不同时间下第二辆车速度的离散状态量;为两车实际距离的离散状态量;τ=1。8.根据权利要求7所述的融合q算法和模糊化状态划分的自适应巡航决策方法,其特征在于,步骤6中,执行动作b之后,得到的奖励值r的计算公式如下:r=r
g
+r
p
;其中,r
g
为目标奖励值,r
g
针对自适应巡航任务中是否达到目标进行奖励或惩罚;r
g
设定如下:r
p
为过程奖励值,r
p
针对自适应巡航过程中是否趋向更好的状态进行奖励或惩罚;r
p
设定如下:
其中,x
real
为两车实际距离;x
safe
为两车安全距离。9.根据权利要求8所述的融合q算法和模糊化状态划分的自适应巡航决策方法,其特征在于,步骤6中,执行动作b之后,得到的下一时刻状态s
′
设定如下:其中,v
host
为第二辆车速度,x
safe
为两车安全距离。
技术总结
本发明提供一种融合Q算法和模糊化状态划分的自适应巡航决策方法,包括以下步骤:步骤1,建立离散化的状态变量模型;步骤2,建立模糊化变量模型;步骤3,初始化Q矩阵中的值,并设定学习率α,衰减率γ和奖励值r;步骤4,计算适应度μ
技术研发人员:尚靖皓 冯建伟 陈豪
受保护的技术使用者:中国人民武装警察部队工程大学
技术研发日:2023.04.23
技术公布日:2023/6/27
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/