基于学习算法的交通仿真软件参数标定方法、系统及介质与流程

文档序号:19529713发布日期:2019-12-27 15:16阅读:来源:国知局

技术特征:

1.一种基于学习算法的交通仿真软件参数标定方法,其特征在于,包括:

步骤a:对参数进行初步筛选,并对筛选后的参数进行灵敏度分析,获取符合预设要求的第一待标定参数,并采集训练用数据集;

步骤b:根据获取的第一待标定参数及训练用数据集,进行神经网络模型训练,获得训练后的神经网络模型;

步骤c:根据获得的训练后的神经网络模型,进行粒子群算法寻优。

2.根据权利要求1所述的一种基于学习算法的交通仿真软件参数标定方法,其特征在于,所述步骤a包括如下步骤:

步骤a1:对工程应用中的参数或仿真结果有影响的参数进行初步筛选;

所述初步筛选是选出与工程相关或需要重点关注确定其影响程度的参数;

步骤a2:对初步筛选的参数进行灵敏度分析,找出符合预设影响程度的参数作为本次标定过程中的第一待标定参数;

步骤a3:以需要研究的地点为背景,运用待标定的微观交通仿真软件建立路网模型;所述研究的地点包含γ条目标路段,选取某一个指标以及已知路网中目标路段对应指标的实际值;

步骤a4:训练数据采集:运用建立好的路网模型,根据预设的训练精度标准,采集m组数据对,方法如下:随机生成m组参数取值,每组参数分别输入路网模型,多次仿真记录目标路段指标输出结果的平均值,将参数组与输出结果一一对应得到训练用数据集;

步骤a5:根据获得的训练用数据集,再根据研究目标选取指标,并分析根据研究目标选取的指标是否落在训练用数据集输出结果的取值范围内以确保神经网络模型能够包含实际情况,若真实的指标不落在数据集输出结果的取值范围内,则调整采数据集时的参数取值范围重新采样;否则,则不重新采样;

所述根据研究目标选取的指标指:本次标定过程中与实际情况一致的路段的指标,包括:平均速度、流量。

3.根据权利要求2所述的一种基于学习算法的交通仿真软件参数标定方法,其特征在于,所述步骤b包括如下步骤:

步骤b1:根据获取的第一待标定参数,从不同的驾驶情景下取值情况不同的第一待标定参数中,通过灵敏度分析的方法选出影响程度符合预设要求的α个参数作为第二待标定参数;

步骤b2:运用建立好的路网模型,根据预设的训练精度标准,采集m组数据对,方法如下:随机生成m组参数取值,每组参数分别输入路网模型,多次仿真记录目标路段指标输出结果的平均值,将参数组与输出结果一一对应得到训练用数据集,然后将得到的数据集以预设比例分为训练集、验证集以及测试集;

所述预设比例根据工程实践确定;

步骤b3:训练神经网络:

首先,确定神经网络的初始参数,包括:隐含层的层数、每个隐含层神经元个数、每层的激活函数、学习率以及正则项;

然后,赋予每个神经网络连接权重初始值,根据训练集,运用误差逆传播算法,通过一定次数的迭代,找到输出结果与验证集的损失值最小的模型;

最后,调整神经网络参数,训练新的模型,直到最优模型达到预设要求为止;所述要求指损失值小于预先设定的某个值,所述损失值即在具体问题中可接受的输出结果与实际情况的误差值;

步骤b4:将训练好的模型用测试集进行测试,如果测试集的损失值小于验证集,即认为模型没有收敛,增加迭代次数继续训练,返回步骤b3继续执行;

如果测试集损失值大于验证集且在第一预设范围内,即判定模型可接受;

如果测试集损失值大于验证集且在第二预设范围内,即判定过拟合,返回步骤b3继续执行,重新调参继续训练,直到模型可接受为止。

4.根据权利要求3所述的一种基于学习算法的交通仿真软件参数标定方法,其特征在于,所述神经网络包括:输入层,输出层,隐含层以及它们之间的连接权重;

所述输入层的神经元数由第二待标定参数的个数决定;

所述输出层的神经元数由目标路段的个数决定;

所述隐含层的层数以及每层神经元数通过调参确定。

5.根据权利要求3所述的一种基于学习算法的交通仿真软件参数标定方法,其特征在于,所述步骤c包括如下步骤:

步骤c1:初始化:设定整个粒子群中有β个粒子,对于第k次迭代:

aki=(aki1,aki2,……,akiα)是第i个粒子在α维线性空间的位置,其中每个分量代表对应参数的取值,i∈[1,β]且i是整数;vki=(vki1,vki2,……,vkiα)是第i个粒子在α维线性空间的速度;fki是第i个粒子的适应值;fi是第i个粒子的最佳适应值;f是整个粒子群的最佳适应值;x0=(x01,x02,……,x0γ)代表目标路段的实际平均速度值;pi=(pi1,pi2,……,piα)是第i个粒子的最优位置;g=(g1,g2,……,gα)是总体最优位置,当k=1时设定:a1i=(a1i1,a1i2,……,a1iα);

v1i=(v1i1,v1i2,……,v1iα);fi=∞;f=∞;pi=0;g=0;

步骤c2:仿真:将aki输入进训练好的神经网络模型中作为参数,并记录模型输出的各目标路段平均速度记为xki=(xki1,xki2,……,xkiγ);

步骤c3:计算适应值:按照如下公式计算各个粒子在该次迭代的适应值:

其中,fki表示第i个粒子在第k次迭代的适应值;

xkij表示第i个粒子在第k次迭代的目标路段模型输出的第j条目标路段平均速度;

x0j表示第j条目标路段的实际平均速度;

步骤c4:更新每个粒子以及整个粒子群的最优适应值与最优位置:

若,fki≤fi则接受新的适应值:将fki的值赋给fi,将aki的值赋给pi;

否则拒绝新的适应值:保留fi和pi的值不变;

若minfi≤f,则更新全局最优适应值:将minfi的值赋给f,将minpi的值赋给g;

否则,保留f和g的值不变;

其中,minfi表示整个粒子群当前最小适应值;

minpi表示最小适应值对应的粒子位置;

步骤c5:更新每个粒子的位置与速度:

粒子根据下面的公式更新每次迭代的位置与速度:

a(k+1)i=aki+vki

v(k+1)i=ρkvki+c1r1(pi-a(k+1)i)+c2r2(g-a(k+1)i)

其中,a(k+1)i表示下一次迭代第i个粒子的位置;

v(k+1)i表示下一次迭代第i个粒子的速度;

ρkvki表示第k次迭代第i个粒子的速度与本次迭代的惯性系数乘积;

c1r1表示学习因子1与一个0到1的随机数的乘积;

c2r2表示学习因子2与一个0到1的随机数的乘积;

步骤c6:判断是否符合停止条件:

若k<n且minfi≠maxfi,那么令k加1,返回步骤c2,继续执行;否则,停止,输出当前全局最优适应值与对应的最优位置;

其中,maxfi表示整个粒子群当前最大适应值,n表示根据工程实际需要预先设定的最大迭代次数。

6.一种基于学习算法的交通仿真软件参数标定方法参数标定系统,包括:

模块a:对参数进行初步筛选,并对筛选后的参数进行灵敏度分析,获取符合预设要求的第一待标定参数,并采集训练用数据集;

模块b:根据获取的第一待标定参数及训练用数据集,进行神经网络模型训练,获得训练后的神经网络模型;

模块c:根据获得的训练后的神经网络模型,进行粒子群算法寻优。

7.根据权利要求6所述的一种基于学习算法的交通仿真软件参数标定方法参数标定系统,其特征在于,所述模块a包括:

模块a1:对工程应用中的参数或仿真结果有影响的参数进行初步筛选;

所述初步筛选是选出与工程相关或需要重点关注确定其影响程度的参数;

模块a2:对初步筛选的参数进行灵敏度分析,找出符合预设影响程度的参数作为本次标定过程中的第一待标定参数;

模块a3:以需要研究的地点为背景,运用待标定的微观交通仿真软件建立路网模型;所述研究的地点包含γ条目标路段,选取某一个指标以及已知路网中目标路段对应指标的实际值;

模块a4:训练数据采集:运用建立好的路网模型,根据预设的训练精度标准,采集m组数据对,方法如下:随机生成m组参数取值,每组参数分别输入路网模型,多次仿真记录目标路段指标输出结果的平均值,将参数组与输出结果一一对应得到训练用数据集;

模块a5:根据获得的训练用数据集,再根据研究目标选取指标,并分析根据研究目标选取的指标是否落在训练用数据集输出结果的取值范围内以确保神经网络模型能够包含实际情况,若真实的指标不落在数据集输出结果的取值范围内,则调整采数据集时的参数取值范围重新采样;否则,则不重新采样;

所述根据研究目标选取的指标指:本次标定过程中与实际情况一致的路段的指标,包括:平均速度、流量。

8.根据权利要求7所述的一种基于学习算法的交通仿真软件参数标定方法参数标定系统,其特征在于,所述模块b包括:

模块b1:根据获取的第一待标定参数,从不同的驾驶情景下取值情况不同的第一待标定参数中,通过灵敏度分析的方法选出影响程度符合预设要求的α个参数作为第二待标定参数;

模块b2:运用建立好的路网模型,根据预设的训练精度标准,采集m组数据对,方法如下:随机生成m组参数取值,每组参数分别输入路网模型,多次仿真记录目标路段指标输出结果的平均值,将参数组与输出结果一一对应得到训练用数据集,然后将得到的数据集以预设比例分为训练集、验证集以及测试集;

所述预设比例根据工程实践确定;

模块b3:训练神经网络:

首先,确定神经网络的初始参数,包括:隐含层的层数、每个隐含层神经元个数、每层的激活函数、学习率以及正则项;

然后,赋予每个神经网络连接权重初始值,根据训练集,运用误差逆传播算法,通过一定次数的迭代,找到输出结果与验证集的损失值最小的模型;

最后,调整神经网络参数,训练新的模型,直到最优模型达到预设要求为止;所述要求指损失值小于预先设定的某个值,所述损失值即在具体问题中可接受的输出结果与实际情况的误差值;

模块b4:将训练好的模型用测试集进行测试,如果测试集的损失值小于验证集,即认为模型没有收敛,增加迭代次数继续训练,调用模块b3;

如果测试集损失值大于验证集且在第一预设范围内,即判定模型可接受;

如果测试集损失值大于验证集且在第二预设范围内,即判定过拟合,调用模块b3,重新调参继续训练,直到模型可接受为止;

所述神经网络包括:输入层,输出层,隐含层以及它们之间的连接权重;

所述输入层的神经元数由第二待标定参数的个数决定;

所述输出层的神经元数由目标路段的个数决定;

所述隐含层的层数以及每层神经元数通过调参确定。

9.根据权利要求8所述的一种基于学习算法的交通仿真软件参数标定方法参数标定系统,其特征在于,所述模块c包括如下模块:

模块c1:初始化:设定整个粒子群中有β个粒子,对于第k次迭代:

aki=(aki1,aki2,……,akiα)是第i个粒子在α维线性空间的位置,其中每个分量代表对应参数的取值,i∈[1,β]且i是整数;vki=(vki1,vki2,……,vkiα)是第i个粒子在α维线性空间的速度;fki是第i个粒子的适应值;fi是第i个粒子的最佳适应值;f是整个粒子群的最佳适应值;x0=(x01,x02,……,x0γ)代表目标路段的实际平均速度值;pi=(pi1,pi2,……,piα)是第i个粒子的最优位置;g=(g1,g2,……,gα)是总体最优位置,当k=1时设定:a1i=(a1i1,a1i2,……,a1iα);

v1i=(v1i1,v1i2,……,v1iα);fi=∞;f=∞;pi=0;g=0;

模块c2:仿真:将aki输入进训练好的神经网络模型中作为参数,并记录模型输出的各目标路段平均速度记为xki=(xki1,xki2,……,xkiγ);

模块c3:计算适应值:按照如下公式计算各个粒子在该次迭代的适应值:

其中,fki表示第i个粒子在第k次迭代的适应值;

xkij表示第i个粒子在第k次迭代的目标路段模型输出的第j条目标路段平均速度;

x0j表示第j条目标路段的实际平均速度;

模块c4:更新每个粒子以及整个粒子群的最优适应值与最优位置:

若,fki≤fi则接受新的适应值:将fki的值赋给fi,将aki的值赋给pi;

否则拒绝新的适应值:保留fi和pi的值不变;

若minfi≤f,则更新全局最优适应值:将minfi的值赋给f,将minpi的值赋给g;

否则,保留f和g的值不变;

其中,minfi表示整个粒子群当前最小适应值;

minpi表示最小适应值对应的粒子位置;

模块c5:更新每个粒子的位置与速度:

粒子根据下面的公式更新每次迭代的位置与速度:

a(k+1)i=aki+vki

v(k+1)i=ρkvki+c1r1(pi-a(k+1)i)+c2r2(g-a(k+1)i)

其中,a(k+1)i表示下一次迭代第i个粒子的位置;

v(k+1)i表示下一次迭代第i个粒子的速度;

ρkvki表示第k次迭代第i个粒子的速度与本次迭代的惯性系数乘积;

c1r1表示学习因子1与一个0到1的随机数的乘积;

c2r2表示学习因子2与一个0到1的随机数的乘积;

模块c6:判断是否符合停止条件:

若k<n且minfi≠maxfi,那么令k加1,调用模块c2;否则,停止,输出当前全局最优适应值与对应的最优位置;

其中,maxfi表示整个粒子群当前最大适应值,n表示根据工程实际需要预先设定的最大迭代次数。

10.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的基于学习算法的交通仿真软件参数标定方法的步骤。


技术总结
本发明提供了一种基于学习算法的交通仿真软件参数标定方法、系统及介质,包括:步骤A:对参数进行初步筛选,并对筛选后的参数进行灵敏度分析,获取符合预设要求的第一待标定参数,并采集训练用数据集;步骤B:根据获取的第一待标定参数及训练用数据集,进行神经网络模型训练,获得训练后的神经网络模型;步骤C:根据获得的训练后的神经网络模型,进行粒子群算法寻优。本发明提出的方法能够高效的找到适合于当前路网的最优参数,且适合于实际应用。

技术研发人员:倪安宁;刘晏尘;李桃;俞岑歆;张小宁
受保护的技术使用者:上海交通大学
技术研发日:2019.09.27
技术公布日:2019.12.27
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1