无人机飞控计算机广义变力度组合测试数据生成方法及设备

文档序号:34060305发布日期:2023-05-06 02:26阅读:25来源:国知局
无人机飞控计算机广义变力度组合测试数据生成方法及设备

本发明属于软件测试领域,具体涉及一种无人机飞控计算机的广义变力度组合测试数据生成方法及设备。


背景技术:

1、无人机的应用领域主要分为民用和军用,民用包括监控、测绘、救援等诸多领域,军用主要体现在公共安全和国防等领域。无人机之所以能应用如此广泛有赖于其飞控计算机系统,飞控计算机系统承担着计算、控制、信息处理和通信等重要的任务。

2、飞控计算机系统极其复杂,主要体现在其结构复杂、集成的功能项多、功能之间的耦合程度紧密、通信接口多样和输入参数复杂等方面。如此复杂的系统一旦遇到一些微小的错误或偶然因素的影响就可能带来巨大的财产损失和严重的人员伤害,造成难以估计的后果。为了减少损失、降低伤害、保证质量和可靠性,需要对飞控计算机系统进行全面的测试。

3、飞控计算机系统接收前端传感器传输的多种飞行状态数据,根据飞行状态做出及时必要的控制。若要保证飞控计算机系统的可靠性,需要进行全面的测试,理论上需要对传感器输出的全部可能数据进行全因子测试,全因子测试的数据量是每个参数可选取值数量之积。如表1所示是飞控计算机接收的部分状态参数及存储空间情况,由于每个参数的可取数据范围都非常大,全因子测试的数据量将是一个天文数字,显然这是无法在实际测试中实现的。组合测试是一种科学有效的黑盒测试方法,可以使用较少的测试数据有效地检测飞控计算机中参数之间的相互作用产生的影响。组合测试可以使用较少的测试数据达到全因子测试的效果,因此,实际中常常使用组合测试代替全因子测试。

4、表1输入到飞控计算机的部分状态参数及存储空间

5、

6、

7、实际的飞控计算机中状态参数间普遍存在着相互作用,这种相互作用和实际的物理含义相对应,不同的相互作用关系涉及的参数不同、参数数量不同。有时是两个参数相互作用、有时是三个参数相互作用、有时是多于三个参数相互作用。传统的组合测试数据生成方法将这些参数相互作用关系一视同仁,生成的测试数据集都是针对固定数量的参数组合,很少能做到根据实际的参数作用关系生成测试数据。为了保障飞控计算机的可靠性,必须做到对参数作用关系进行全面的测试,然而这是目前最为欠缺的。

8、相互作用的参数数量可变的组合测试数据集被称为变力度组合测试数据。变力度组合测试又分为狭义变力度和广义变力度两种。狭义变力度是在固定的一个t维力度的基础上增加一个t+1维力度;而广义变力度则没有固定力度,参数之间的覆盖力度可以是任意。相比狭义变力度广义变力度的应用情况则更普遍,目前广义变力度测试数据生成方法较少,且生成的测试冗余较多。


技术实现思路

1、本发明为了解决现有的飞控计算机系统广义变力度组合测试数据生成方法较少,且存在生成的测试冗余较多的问题。

2、无人机飞控计算机广义变力度组合测试数据生成方法,包括以下步骤:

3、首先,根据待覆盖的广义变力度取值组合生成寻优目标集,初始化gwo算法的相关参数,包括初始化gwo优化算法自身参数和初始化生成测试数据过程中用到的参数;具体初始化过程中,

4、设飞控计算机系统输入的传感器监测参数有k个,分别是p1,p2,...,pk,每个参数选择的测试数据集分别为g1,g2,...,gk;

5、初始化gwo优化的种群数量及迭代次,初始化种群中的每个群体为k维的一个向量;

6、将广义变力度覆盖目标取值组合使用“map”数据结构表示,目标取值组合“map”中的每一个t维覆盖力度的参数组合“key”对应的参数组合包括参数参数…、参数i1,...,it∈[1,k];每一个t维覆盖力度的参数组合对应的“value”数组中的每一个索引表示一个覆盖目标取值组合;采用整数集表示任意t个参数的全部取值组合,即索引;

7、然后,初始化狼群初始位置,计算狼群个体适应值:

8、为种群中每个个体位置进行初始化,每个个体的位置代表一条测试数据,是维度为k的一个向量,其中每个维度对应一个参数的取值;每个个体位置的每个维度对应的参数初始值从第j个参数的取值区间[0,gj-1]中随机选择;为了防止狼群位置随机初始化的盲目性,在每个个体位置随机初始化后,从中随机选取一个未被已生成的测试数据覆盖的目标取值组合放入个体的位置中,使个体位置的初始适应值至少为1,加速个体的寻优过程;

9、狼群每个个体位置的适应值设置为个体位置中包含的未被覆盖的广义变力度取值组合的个数;

10、选择最优的三个头狼位置α、β和δ,更新gwo参数,并根据gwo个体的位置更新群体的位置;最优的三个头狼的位置由pso算法优化得到,pso优化算法依据当前狼群的位置进行寻优,根据寻优目标经过迭代更新之后输出三个头狼的位置;根据三个头狼的位置更新狼群个体的位置,完成一次移动,即完成一条最优的测试数据的生成;若生成的测试数据覆盖全部的目标则结束算法,否则重新开始此过程继续生成下一条测试数据,直到结束。

11、进一步地,已知每个取值对应参数的取值个数集gj为对应参数的取值个数,任意一个取值组合对应的索引index的求解过程为:

12、(1)令

13、(2)令j从2取到t,循环执行index即为取值组合对应的索引。

14、进一步地,由pso算法优化得到三个头狼的位置的过程包括以下步骤:

15、(1)pso参数初始化

16、初始化粒子群优化算法的粒子数、迭代次数、惯性权重ω和学习因子c1、c2;

17、(2)狼群位置进化

18、在寻优过程中,用粒子的位置表示一条待优化的测试数据,用粒子的速度表示当前运动趋势和变化程度;

19、迭代更新时,种群中每个粒子根据两个极值pbest和gbest来更新自己的速度和位置,即在第t+1次迭代时,粒子i通过如下公式进行更新:

20、

21、

22、其中:ω为惯性权重;c1、c2为学习因子;r1、r2为均匀分布在(0,1)间的随机数;i为第i个粒子,设粒子的规模为m,则i的范围为1,2,...,m;j为第j个维度,设粒子位置的维度数为k,则j的范围为1,2,...,k;pbest为个体极值,表示每个粒子在整个迭代过程中的最优位置;gbest为全局极值,表示全体粒子在整个迭代过程中的最优位置;

23、如果粒子的位置超出参数取值范围则粒子返回之前的位置

24、(3)更新狼群位置

25、种群进化之后,更新个体极值和全局极值;每个个体的粒子的位置的适应值如果大于其个体极值pbest,则替换pbest,否则不替换;更新完个体极值pbest之后,逐个比较个体极值pbest和全局极值gbest的适应值大小,如果适应值大于gbest的适应值,则替换gbest,否则不替换;

26、(4)扰动狼群个体位置

27、对每一个粒子位置中的每一个维度xij,在范围[0,gj-1]中随机生成一个新的位置,并按照设定的概率进行更新,更新之后粒子的位置表示为如果的适应值大于的适应值,用替换粒子的位置

28、(5)计算适应值并确定头狼位置

29、由pso优化迭代更新狼群个体的位置,经过多次迭代之后对狼群个体位置的适应值进行计算,从中选择出适应值最大的三个位置作为三个头狼的位置;选择时,首先选择一个最优个体的位置,记为α;然后更新覆盖目标,将α中出现的取值组合从覆盖目标中移除,在剩余的个体位置中选择最优的个体位置,记为β;最后用同样的方法再找出一个最优个体的位置,记为δ。

30、进一步地,在扰动狼群个体位置的过程中,按照50%的概率进行更新。

31、进一步地,所述更新gwo参数的过程包括以下步骤:

32、狼群个体按照公式(3)进行更新:

33、x(t+1)=x(t)-a·d                            (3)

34、其中,x(t+1)是个体的新位置,x(t)是个体当前的位置;a是系数矩阵,d=|c·xp(t)-x(t)|,c=2r2,r2是[0,1]中的随机数;xp(t)是pso优化得到的三个头狼的位置α、β和δ中的一个。

35、进一步地,所述系数矩阵a=2a·r1-a;其中,a=2-2t/t,t为当前迭代次数,t是设定的迭代次数,r1是[0,1]中的随机数。

36、进一步地,根据gwo个体的位置更新群体的位置的过程包括以下步骤:

37、每一个个体由公式(4)进行更新:

38、

39、x1=xα(t)-a1·dα                            (5)

40、x2=xβ(t)-a2·dβ                            (6)

41、x3=xδ(t)-a3·dδ                            (7)

42、dα=|c1·xα(t)-x(t)|                           (8)

43、dβ=|c2·xβ(t)-x(t)|                           (9)

44、dδ=|c3·xδ(t)-x(t)|                          (10)

45、其中,xα(t)、xβ(t)、xδ(t)分别为α、β和δ的当前位置,a1至a3分别系数矩阵,c1至c3分别为随机向量。

46、进一步地,生成的测试数据覆盖全部的目标的判断过程中,每次记录一条测试数据之后,将覆盖的目标取值组合从覆盖目标集中移除,然后判断覆盖目标集是否为空,如果为空则输出测试数据集。

47、一种计算机存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现所述的无人机飞控计算机广义变力度组合测试数据生成方法。

48、一种无人机飞控计算机广义变力度组合测试数据生成设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现所述的无人机飞控计算机广义变力度组合测试数据生成方法。

49、本发明有益效果:

50、本发明提供了一种实现飞控计算机广义变力度组合测试数据生成方法,而且本发明的生成可以生成任意变力度的组合测试数据,且测试的覆盖冗余很少,这不仅能够保证以最小的代价更加全面的覆盖样本空间,从而使得数据更加符合参数状态的实际分布,从而提高生成数据测试的准确性和可靠性,而且这也使得生成数据的效果更加符合使用者的意图,使得使用起来更加有针对性,也更加方便,同时这也极大地提高了生成数据的效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1