System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及自动驾驶测试领域,尤其涉及一种自动驾驶系统仿真测试方法、系统、设备及存储介质。
技术介绍
1、随着人工智能的高速发展,自动驾驶系统(ads)的研发成为近年来计算机与汽车交通交叉领域的研究重点。然而,自动驾驶系统属于安全攸关系统,即系统中任何组件的错误都可能导致系统失效并引起重大事故与损失。因此,确保系统在各种交通场景下能够做出正确决策并进行安全行驶是一项关键挑战。
2、测试是评估和提高自动驾驶系统安全性的重要方法。然而,由于资源限制,完全依赖于实车装载自动驾驶系统在现实世界中进行测试是不切实际的。为了应对这一挑战,仿真测试仿真成为测试自动驾驶系统安全性的一种关键方法。
3、仿真测试的主要方法是在驾驶仿真器中通过场景参数设定交通场景(参数包括如光照、积水等环境参数,以及如速度、加速度等环境中其他个体的运动参数),进而在场景中运行自动驾驶系统完成一次行驶任务,最终监测相关安全性指标(如自动驾驶车辆与其他个体的最小距离)是否满足安全要求。
4、仿真测试的目的在于:通过自动驾驶在不同参数场景下模拟驾驶,发现导致自动驾驶系统产生不安全行为的场景参数(称为反例),从而对系统进行改进。
5、目前仿真测试方法中存在的问题主要在于测试效率的问题:
6、一方面交通场景的参数空间庞大(即参数量多且数值范围广,不同参数的数值组合数量是指数级别的);
7、另一方面在驾驶仿真器中执行一次行驶任务测试时间开销大(通常需要数十秒)。综合两方面原因,很难对大量的场景参数数值组合
8、因此,通过上述这种现有的仿真测试方法来发现自动驾驶系统不安全行为的效率很低。
技术实现思路
1、专利技术目的:提出一种自动驾驶系统仿真测试方法,并进一步提出一种用于实现上述方法的系统、设备及存储介质,以解决现有技术存在的上述问题。
2、第一方面,提出一种自动驾驶系统仿真测试方法,包括如下步骤:
3、s1、确定场景参数与安全性指标;
4、s2、对所述场景参数进行随机采样,形成多组参数数值组合;
5、s3、将步骤s2中的每一组所述参数数值组合导入驾驶仿真器执行一次行驶任务,采集与所述参数数值组合对应的安全性指标;
6、s4、建立神经网络模型,利用所述参数数值组合和所述安全性指标对所述神经网络模型进行训练,得到训练后的模型;
7、s5、对所述训练后的模型进行测试:重复执行步骤s2,将形成的多组参数数值组合输入到所述训练后的模型中,输出近似的安全性指标,检验所述近似的安全性指标是否满足安全要求:
8、若满足,则结束当前轮次的仿真测试;
9、若不满足,则将不满足安全要求的场景参数所属的参数数值组合作为潜在反例,将所述潜在反例放回驾驶仿真器中重复执行步骤s3至s5,得到新的安全性指标,检验新的安全性指标是否满足安全要求:
10、若不满足,则发现一个导致系统出现不安全行为的场景参数数值组合,输出告知测试者;
11、若满足,则结束当前轮次的仿真测试。
12、在第一方面进一步的实施例中,步骤s1进一步包括:
13、确定m个场景参数及所述场景参数的数值范围,用m维向量表示一组由上述m个场景参数的具体数值组成的向量;
14、确定安全性指标y,以及所述安全性指标y需要满足的安全要求。
15、在第一方面进一步的实施例中,步骤s2进一步包括:对场景参数在其数值范围内进行均匀随机采样,形成n组不同的参数数值组合。
16、在第一方面进一步的实施例中,步骤s3进一步包括:
17、对于每一组所述参数数值组合,在驾驶仿真器中生成对应的交通场景;
18、将装载自动驾驶系统的仿真车辆在对应的所述交通场景中执行一次行驶任务,采集与所述参数数值组合对应的安全性指标。
19、在第一方面进一步的实施例中,步骤s4中所述神经网络模型的输入为所述参数数值组合,输出为近似的安全性指标;
20、通过机器学习算法利用采集到的数据进行模型训练,得到训练后的模型m。此处,模型m的结构采用输入为m维、输出为1维的全连接神经网络,其具有2个隐藏层,每个隐藏层包含50个神经元节点(隐藏层的数量及其中包含神经元节点的数量可根据实际测试系统与场景的复杂程度进行增减)。模型训练使用标准的自适应动量估计(adam)算法进行训练,其中训练使用的损失函数采用预测值于实际值的均方误差(mse)。
21、作为本专利技术的第二个方面,提出一种自动驾驶系统仿真测试系统,该仿真测试系统包括驾驶仿真器、预设单元、采样单元、第一执行单元、训练单元、测试单元、第一判断单元、第二判断单元。
22、驾驶仿真器用于执行仿真驾驶任务。预设单元用于确定场景参数与安全性指标。采样单元用于对所述场景参数进行随机采样,形成多组参数数值组合。
23、第一执行单元用于将每一组所述参数数值组合导入驾驶仿真器执行一次行驶任务,采集与所述参数数值组合对应的安全性指标。
24、训练单元用于建立神经网络模型,利用所述参数数值组合和所述安全性指标对所述神经网络模型进行训练,得到训练后的模型。
25、测试单元用于对场景参数在其数值范围内进行均匀随机采样,将形成的多组参数数值组合输入到所述训练后的模型中,输出近似的安全性指标。
26、第一判断单元用于接收所述测试单元输出的近似的安全性指标,检验所述近似的安全性指标是否满足安全要求:若满足,则结束当前轮次的仿真测试;若不满足,则将不满足安全要求的场景参数所属的参数数值组合作为潜在反例,将所述潜在反例放回所述驾驶仿真器中,并反馈至测试单元,得到新的安全性指标。
27、第二判断单元用于接收所述新的安全性指标,检验新的安全性指标是否满足安全要求:若不满足,则发现一个导致系统出现不安全行为的场景参数数值组合,输出告知测试者;若满足,则结束当前轮次的仿真测试。
28、作为本专利技术的第三个方面,提出一种电子设备,该电子设备包括处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如第一方面所公开的自动驾驶系统仿真测试方法。
29、作为本专利技术的第三个方面,提出一种计算机可读存储介质,该存储介质中存储有至少一个可执行指令,所述可执行指令在电子设备上运行时,使得电子设备执行如第一方面所公开的自动驾驶系统仿真测试方法。
30、有益效果:本专利技术改进了现有自动驾驶系统仿真测试方法效率低下的不足,通过建立神经网络模型,利用参数数值组合和安全性指标对神经网络模型进行训练,得到训练后的模型,通过神经网络模型快速筛选潜在反例,以提高测试有效性与效率,并且节省了自动驾驶系统仿真测试的时间与算力的开销。
本文档来自技高网...【技术保护点】
1.一种自动驾驶系统仿真测试方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的自动驾驶系统仿真测试方法,其特征在于,步骤S1进一步包括:
3.根据权利要求2所述的自动驾驶系统仿真测试方法,其特征在于,步骤S2进一步包括:对场景参数在其数值范围内进行均匀随机采样,形成N组不同的参数数值组合。
4.根据权利要求3所述的自动驾驶系统仿真测试方法,其特征在于,步骤S3进一步包括:
5.根据权利要求2所述的自动驾驶系统仿真测试方法,其特征在于,步骤S4中所述神经网络模型的输入为所述参数数值组合,输出为近似的安全性指标;
6.一种自动驾驶系统仿真测试系统,其特征在于,包括:
7.根据权利要求6所述的自动驾驶系统仿真测试系统,其特征在于,还包括:
8.根据权利要求7所述的自动驾驶系统仿真测试系统,其特征在于,还包括:
9.一种电子设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求1至5中任一项所述的自动驾驶系统仿真测试方法
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一个可执行指令,所述可执行指令在电子设备上运行时,使得电子设备执行如权利要求1至5中任一项所述的自动驾驶系统仿真测试方法。
...【技术特征摘要】
1.一种自动驾驶系统仿真测试方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的自动驾驶系统仿真测试方法,其特征在于,步骤s1进一步包括:
3.根据权利要求2所述的自动驾驶系统仿真测试方法,其特征在于,步骤s2进一步包括:对场景参数在其数值范围内进行均匀随机采样,形成n组不同的参数数值组合。
4.根据权利要求3所述的自动驾驶系统仿真测试方法,其特征在于,步骤s3进一步包括:
5.根据权利要求2所述的自动驾驶系统仿真测试方法,其特征在于,步骤s4中所述神经网络模型的输入为所述参数数值组合,输出为近似的安全性指标;
6.一种自动驾驶...
【专利技术属性】
技术研发人员:黄承超,李仞珏,杨鹏飞,张立军,
申请(专利权)人:中科南京软件技术研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。