法律状态公告日
法律状态信息
法律状态
2022-03-18
授权
发明专利权授予
技术领域
本发明涉及自动驾驶的仿真训练领域,尤其涉及一种根据被测系统测试表现动态生成测试案例的智能测试方法。
背景技术
仿真训练相比于现实场景的训练具有更高效、低成本等特点,在训练系统的过程中被广为应用。案例生成作为其中的重要环节,可在仿真环境中训练被测系统可能遇到的各种情况,并模拟不常见的特殊情况,提升训练效率。为检测被测系统在各场景中的性能表现,现有案例生成方法通过生成大量案例,以覆盖各种现实情况,但是这种方式需要对算力和时间成本有较高的要求。如何根据自动被训系统的已有表现,更智能地动态生成有效案例,是亟待解决的问题。
发明内容
针对现有技术的不足,本发明提供一种根据被测系统测试表现动态生成测试案例的智能测试方法,该方法在仿真中考虑被训练代理在之前测试案例的表现,根据测试结果动态生成更符合测试需求的案例。
本发明的目的是通过以下技术方案来实现的:
一种根据被测系统测试表现动态生成测试案例的智能测试方法,该方法包括如下步骤:
S1:选择一个包含N个变量var的测试模板test_case_template;
S2:每个变量var在其取值区间内进行数值采样,全部采样数值均形成一个采样集合Q;
S3:每个变量从其对应的采样集合Q中选取一个值,组成模板变量数值采样向量g=(s
S4:开始第k轮测试,且当k=1时,集合G
S5:判断k是否等于1;若k=1,使用D
若k>1,分别使用决策树T
S6:根据T
S7:在g所在的N维空间中采样一批新的向量g_new,且保证向量分布密度与g_new与R
进一步地,所述S4中,为了得到G
进一步地,所述S7中保证向量分布密度与g_new距离R区域边界的距离正相关具体为G_new内的向量满足以下条件:
(1)距离R
(2)新采样的向量与已被测试过的向量有一定的距离。
进一步地,所述新采样的向量g与已被测试过的向量g_old的距离满足:
g-g_old在第j维的投影绝对值大于等于d
进一步地,所述类别标签label(g)为LOW或NORMAL,当测试评分score(g)小于设定的评分阈值时,类别标签label(g)为LOW,当测试评分score(g)大于等于设定的评分阈值时,类别标签label(g)为NORMAL。
进一步地,d
d
其中,alpha为预先给定的正常数,0 本发明的有益效果如下: 本发明在仿真过程中充分使用了之前测试案例的结果,通过构建多棵决策树,使算法准确预测不同案例下的被训练代理的表现,学习到仿真测试中会导致不同结果的各变量的空间划分。根据这种空间划分设置下一阶段的案例分布特征,提升生成案例时的有效性,提高训练效率。且整个过程可以在线实时迭代,决策树的更新与案例测试并行完成。此时该方法能使仿真训练的效率显著提高,且具有通用性,适用于各场景中的仿真案例测试,在多种需要虚拟仿真训练的应用场景中都可得到优秀的表现。 附图说明 图1为本发明的根据被测系统测试表现动态生成测试案例的智能测试方法的流程图。 具体实施方式 下面根据附图和优选实施例详细描述本发明,本发明的目的和效果将变得更加明白,应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。 将如图1所示的本发明的方法应用于自动驾驶虚拟现实的仿真测试过程中,实现根据被测系统测试表现动态生成案例的智能测试。在这样的场景下,该实施例具体包括如下步骤: S1:在自动驾驶中容易出车祸的案例中,选择一个用于被测试的自动驾驶代理车辆超越前车的测试模板案例test_case_template;其中,测试模板包含了6个变量Var={A_x, A_y, A_v, B_x, B_y, B_v}。其中(A_x, A_y)为被测试代理车辆的当前坐标,单位为m;A_v为被测车辆当前速度,单位为km/h;(B_x, B_y)为前车坐标单位为m;B_v为前车速度,单位为km/h。 每个变量具有确定的取值区间:A_x属于[2,4],A_y属于[0,3],B_x属于[1,5],B_y属于[4,10],A_v属于[30,50],B_v属于[30,60]。 S2:每个变量var在其取值区间内进行数值采样100次,采样时各个变量在其取值区间内均匀分布,每个变量var的全部采样数值均形成一个采样集合Q; S3:每个变量从其对应的采样集合Q中选取一个值;每次采样后得到一个向量g,然后再将g生成集合G_init={g S4:开始第k轮测试,且当k=1时,集合G 对集合G (1)生成自动驾驶测试模板test_case_template的一个副本,用g中s (2)用H(g)对被测系统进行测试,得到测试评分score(g),再根据score(g)为测试案例H(g)设置一个二分类的类别标签label(g);作为其中一种实施方式,所述类别标签label(g)为LOW或NORMAL,当测试评分score(g)小于设定的评分阈值时,类别标签label(g)为LOW,当测试评分score(g)大于等于设定的评分阈值时,类别标签label(g)为NORMAL。 (3)将二元组( g,label(g) )放入测试表现数据集D 在该自动驾驶的实施例中,用g S5:判断k是否等于1;若k=1,使用D 若k>1,分别使用决策树T S6:根据T 在该自动驾驶的实施例中,将据T S7:在g所在的N维空间中采样一批新的向量g_new,且保证向量分布密度与g_new与R 其中,集合G_new内的向量满足以下条件: (1)为使得新的测试案例尽量在边界附近,距离R (2)为减少相似案例重复运行测试的情况,新采样的向量与已被测试过的向量有一定的距离,满足如下条件: g-g_old在第j维的投影绝对值大于等于d 因随着迭代轮数的增多,累积的向量逐渐增多,为了降低数据的计算量,将d d 其中,alpha为预先给定的正常数,0 在自动驾驶的实施例中,alpha取0.9。 将本发明的智能测试方法应用在自动驾驶场景下,可影响自动驾驶案例选择的算法逻辑,选取更可能被测试为low和normal交界处的案例,增加自动驾驶在虚拟训练场中的训练效率。 本领域普通技术人员可以理解,以上所述仅为发明的优选实例而已,并不用于限制发明,尽管参照前述实例对发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在发明的精神和原则之内,所做的修改、等同替换等均应包含在发明的保护范围之内。
机译: 基金系统测试案例测试方法,设备和设备以及存储介质
机译: 测试案例创建装置,测试案例创建方法,测试案例和测试方法
机译: 软件系统测试案例创建