首页> 中国专利> 一种无人机飞控控制参数的模糊测试方法及系统

一种无人机飞控控制参数的模糊测试方法及系统

摘要

本发明提供的一种无人机飞控控制参数的模糊测试方法及系统,将飞行质量预测模型和质量‑多样性方法相结合,利用多样性指标提升状态空间中样本稀疏区域的搜索权重,鼓励算法提出和已有样本差距更大的解,克服了现有方法故障覆盖率低、搜索结果同质化严重的问题,同时使用飞行质量预测模型替代计算开销高昂的仿真,减少计算开销的同时还允许本发明采用复杂搜索算法,提升了测试的速度和精度。

著录项

  • 公开/公告号CN112668697A

    专利类型发明专利

  • 公开/公告日2021-04-16

    原文格式PDF

  • 申请/专利权人 西安电子科技大学;

    申请/专利号CN202011574457.5

  • 发明设计人 王运柏;杨超;马建峰;

    申请日2020-12-25

  • 分类号G06N3/04(20060101);G06N3/08(20060101);G06K9/62(20060101);G06N3/00(20060101);G06Q10/06(20120101);B64F5/60(20170101);

  • 代理机构61200 西安通大专利代理有限责任公司;

  • 代理人王艾华

  • 地址 710071 陕西省西安市雁塔区太白南路2号

  • 入库时间 2023-06-19 10:38:35

说明书

技术领域

本发明涉及计算机技术领域,具体为一种无人机飞控控制参数的模糊测试方法及系统。

背景技术

无人机被广泛应用于能源、交通、安全等领域。为了满足不同软硬件和领域任务的适配要求,无人机通常装备飞控程序,并提供控制参数接口和通信协议(如MAVLink)供用户进行远程控制。当无人机执行任务时,飞控程序会通过网络接收用户提供的控制参数,以决定无人机和软硬件交互(如:从传感器处获取数据)或执行任务的方式。这一设计在方便用户使用的同时,也让控制指令易于为恶意攻击者截获并篡改,导致无人机偏离任务目标、无法完成任务甚至失控坠毁等安全问题。因此,确保控制参数正确可靠是无人机飞控运行时需要考虑的重要目标。为实现这一目标,现有的飞控软件常通过人为设定一个不随无人机状态变化的合法区间,当飞控接收到的控制指令包含不在合法区间的参数时,则认为指令非法并放弃本次变更;否则接受并应用指令所包含的变更。

然而,随着无人机系统功能和应用场景日益多样,控制参数的数量和耦合度也在提高,人工设定合法区间的方式效率低、可靠性差,已不能满足发现漏洞的需要。因此有研究人员提出借鉴现有漏洞挖掘技术,实现对无人机飞控的半自动化或自动化测试的思想。根据使用场景,现有漏洞挖掘技术可分为黑盒测试、白盒测试及灰盒测试三种方式。模糊测试是一种简单有效的黑盒测试技术,可以在不知晓被测对象实现细节的前提下,半自动或自动地完成测试。

西安电子科技大学在其申请的专利文献“一种面向无人机的模糊测试方法及无人机的模糊测试系统”(申请号:201910228389.8,公开号:109977681A)中公开了一种自动化测试方法。该文献中测试方法的具体步骤如下:在本地存储的典型报文库中随机选取一份报文,初始报文符合协议规范,且保证变异后仍有高比例的报文符合协议规范;对该报文进行若干次变异,其中变异次数、单次变异的手段均为随机选取;然后检查变异得到的报文,对符合要求的报文进行后续处理,以保证测试报文符合协议要求;最后将符合要求的测试报文发送给发送模块,通过发送模块将数据包发送出去。然而,该方法没有考虑到控制参数的合法性与无人机所处物理环境、所执行任务内容紧密相关这一事实,致使其搜索得到的合法区间适配性差,因此该方法并不能直接适用于前述问题的检测。

普渡大学与NEC实验室在其合作发表的论文文献“RVFuzzer:Finding InputValidation Bugs in Robotic Vehicles through Control-Guided Testing”(发表于第28届USENIX安全论坛)中首次提出通过拦截并篡改控制参数的方式来攻击无人机的构想,并针对这一新型攻击提出了一种自动化测试方法。该文献中测试方法的具体步骤如下:首先初始化起始合法区间的上下界;在合法区间中随机选取一组控制参数组合,并使用遗传算法对各参数依次进行变异;在仿真环境中对变异后的参数进行测试,评估参数对无人机运行的影响;根据仿真测试结果,使用二分搜索来缩小区间;反复执行上述步骤,直到得到期望的合法区间上下界。

该方法中存在的不足之处有:该方法采用二分搜索和单维度变异手段,这种方式会限制可行搜索方向,导致漏报并降低搜索效率;该方法依赖仿真来验证搜索结果的影响,然而仿真需要大量算力和时间开销,导致测试时间开销骤增;除此以外,该方法在搜索时未考虑测试参数在参数空间分布的多样性,容易出现搜索结果同质化严重、代表性差、故障覆盖率低的问题。

发明内容

针对现有技术中存在的问题,本发明提供一种无人机飞控控制参数的模糊测试方法及系统,解决已有技术忽视具体任务和环境状态、漏报严重、搜索效率低下及搜索结果同质化严重等问题。

本发明是通过以下技术方案来实现:

一种无人机飞控控制参数的模糊测试方法,包括以下步骤:

步骤1、根据无人机飞行记录数据得到飞行质量预测模型的数据样本集,并采用数据样本集对构建的飞行质量预测模型进行训练;

步骤2、构建质量-多样性方法的当前种群,对当前种群执行变异操作得到变异种群,将当前种群和变异种群的个体输入飞行质量预测模型,得到当前种群和变异种群个体的预估飞行质量,根据预估飞行质量确定当前种群和变异种群中个体的质量指标和多样性指标,根据质量指标和多样性指标获取最终种群;

步骤3、获取最终种群中各个个体真实的飞行质量指标,使用真实的飞行质量指标更新最终种群中个体的输出向量,得到更新后的数据样本集,使用更新后的数据样本集再次优化飞行质量预测模型,得到最优飞行质量预测模型;

步骤4、将最优飞行质量预测模型作为质量-多样性方法的评估模型,对无人机的飞行状态和控制参数进行测试。

优选的,步骤1中所述数据样本集包括输入向量X和输出向量Y;

所述输入向量X为无人机飞行状态和控制参数的集合,输出向量Y为飞行质量评估指标的集合,飞行状态、控制参数和飞行质量评估指标的取值区间组成的集合为飞行数据样本的状态空间。

优选的,步骤1中构建飞行质量预测模型的方法如下:

根据输入向量和输出向量的维度,以及无人机飞行记录数据确定多层神经网络的层数和维度,设定多层神经网络的激活函数,以及多层神经网络训练过程中使用的学习率、训练轮数和损失函数;

使用数据样本集训练多层神经网络,得到初始的飞行质量预测模型。

优选的,步骤2中采用伪随机数生成器随机生成包含N个个体的初始种群G

优选的,步骤2中确定最终种群的方法如下:

根据飞行数据样本的状态空间,随机生成质量-多样性方法的初始种群,并将其作为方法的当前种群,对当前种群的每一个体执行变异操作,得到变异种群,将当前种群和变异种群的个体输入飞行质量预测模型,根据模型预测结果计算当前种群和变异种群个体的质量指标和多样性指标,根据质量指标和多样性指标获取下一代种群,并确认下一代种群是否符合设定条件;若符合设定条件,则将下一代种群作为最终种群并执行步骤3,若不符合则将下一代种群作为当前种群,重复该步骤。

优选的,所述质量指标Q和多样性指标D的计算方法如下:

其中,x′

其中,y′

优选的,所述下一代种群的判断条件如下:

优先选取D≥D

当下一代种群中所有个体的D≥D

其中,D

优选的,所述变异处理包括变异操作和交叉操作;

采用单缩放因子对种群个体进行变异得到变异个体;

采用二项式交叉算子将变异个体的集合和当前种群进行交叉操作,得到变异种群。

优选的,步骤3中使用软件在环仿真获取最终种群各个个体真实的飞行质量指标,采用真实飞行质量指标替换最终种群中个体的输出向量,得到更新后的数据样本集。

一种无人机飞控控制参数的模糊测试方法的系统,包括,

飞行质量预测模型训练模块,用于根据无人机飞行记录数据对构建的飞行质量预测模型进行训练;

测试样例搜索模块,用于根据构建的质量-多样性方法的当前种群得到变异种群,计算当前种群和变异种群中个体的质量指标和多样性指标,根据质量指标和多样性指标获取最终种群,并将最终种群中的个体作为测试样例;

软件在环仿真模块,用于获取最终种群中各个个体真实的飞行质量指标,使用真实的飞行质量指标更新最终种群中个体的输出向量,得到更新后的数据样本集,使用更新后的数据样本集再次优化飞行质量预测模型,得到最优飞行质量预测模型;

测试模块,用于将最优飞行质量预测模型作为质量-多样性方法的评估模型,对无人机的飞行状态和控制参数进行测试。

与现有技术相比,本发明具有以下有益的技术效果:

本发明提供的一种无人机飞控控制参数的模糊测试方法,将飞行质量预测模型和质量-多样性方法进行了结合。其中,质量指标代表搜索结果在飞行质量评估指标上相对于已知样本的改进大小,多样性指标反映了搜索结果和已知样本的距离远近。由于搜索算法同时以最大化质量指标和多样性指标为优化目标,在搜索过程中,算法不仅会考虑种群个体在飞行质量评估指标上的改进大小,还会优先选取和已知样本最近距离更远(即样本差异更大)的种群个体。使得搜索结果不仅包含最优解,在状态空间中的分布也更加均匀,克服了现有方法故障覆盖率低、搜索结果同质化严重的问题。

同时,本方法使用飞行质量预测模型替代软件在环仿真。相较于需要多次迭代来完整模拟飞行过程、之后才能输出结果的软件在环仿真,飞行质量预测模型仅需若干矩阵计算即可得到预期的评估指标值,降低了单步搜索过程的时间开销和算力开销。因此在同等开销下,本方法可以执行的搜索次数更多,并在状态空间上采用粒度更细的搜索算法,提升了测试的整体速度和精度。

附图说明

图1为本发明无人机飞控控制参数的模糊测试方法的流程图。

具体实施方式

下面结合附图对本发明做进一步的详细说明,所述是对本发明的解释而不是限定。

一种无人机飞控控制参数的模糊测试方法,包括以下步骤:

步骤1、对无人机飞行记录数据进行预处理,将预处理的飞行数据作为飞行质量预测模型的训练样本集和测试样本集。

具体的,为适应机器学习模型的特点,无人机飞行记录数据需要进行预处理,预处理后得到飞行数据样本集,将飞行数据样本集分为两部分,分别作为机器学习模型的训练样本集和测试样本集,飞行数据样本集包括输入向量X和输出向量Y。

输入向量X包括无人机飞行状态和控制参数,其表达式如下:

X={S

其中,S

输出向量Y为飞行质量评估指标的集合,其表达式如下:

Y={E

其中,E

飞行状态、控制参数和飞行质量评估指标的取值区间组成的集合为飞行数据样本的状态空间。输入向量和输出向量状态空间的定义形式与之相同,不再赘述。

由于不同飞行状态、控制参数和飞行质量评估指标在量级和区间上存在较大差异,因此需要对飞行数据进行预处理。

预处理过程如下,将飞行状态、控制参数和飞行质量评估指标值的不同区间值统一放缩到一个固定区间(例如实数[0,1]区间),完成数据预处理后得到飞行数据样本集,选取飞行数据样本集中一定比例的输入向量和输出向量作为下述多层神经网络的训练样本集,将其余的输入向量和输出向量作为多层神经网络的测试样本集,划分所用的比例可根据实际情况选择。

步骤2、构建飞行质量预测模型并采用训练样本集进行训练。

具体地说,采用PyTorch开源深度学习框架构建多层神经网络并进行训练,将训练后的多层神经网络作为飞行质量预测模型,飞行质量预测模型构建过程如下:

S2.1、首先确定多层神经网络的结构和训练过程的超参数。

根据输入向量和输出向量的维度,以及无人机飞行记录数据的复杂程度来确定神经网络层的层数和维度,并设定多层神经网络的激活函数,激活函数为非线性函数,在本实施例中以ReLU作为激活函数。

根据无人机飞行记录数据的特点,以及多层神经网络的结构特点来确定神经网络训练过程中使用的学习率、训练轮数和损失函数。

S2.2、使用训练样本集训练多层神经网络,使用测试样本集评估神经网络的性能,反复迭代,以得到最优的初始飞行质量预测模型。

步骤3、使用质量-多样性方法搜索飞行数据样本集的状态空间,首先确定质量-多样性方法的搜索参数,设计质量指标和多样性指标的计算式。

具体包括以下步骤:

设定质量-多样性方法的搜索参数,并确定质量-多样性方法的质量指标和多样性指标的计算式。

质量-多样性方法的搜索参数包括质量阈值Q

多样性指标的计算过程如下:采用质量-多样性方法对飞行数据样本的状态空间进行搜索,将当前搜索中找到的输入向量X′与飞行数据样本集中的输入向量进行比较,寻找飞行数据样本集中与X′在欧氏距离上最近的K个样本{X

其中,x′

质量指标的计算方法与多样性指标的计算方法相同,不再赘述,质量指标的表达式如下:

其中,y′

步骤4、根据飞行数据样本的状态空间,确定质量-多样性方法的初始种群,并将其作为方法的当前种群;对当前种群的每一个体执行变异操作,得到变异种群;将当前种群和变异种群的个体输入飞行质量预测模型,根据模型预测结果计算个体的质量指标和多样性指标;根据质量指标和多样性指标获取下一代种群,并确认下一代种群是否符合设定条件;若符合设定条件,则将下一代种群作为最终种群并执行步骤5,若不符合则把下一代种群作为当前种群,重复该步骤。

S4.1、令质量-多样性方法的仿真次数T=0。

S4.2、令质量-多样性方法的演化代数G=0,采用伪随机数生成器随机生成包含N个个体的初始种群G

其中,“个体”即为前述提及的输入向量X,由无人机飞行状态和控制参数组成。

需要说明的是,该初始种群的输入向量仅在形式上与样本集相同,其内容则由伪随机数生成器通过随机采样方法生成。

S4.3、对当前种群G

其中,X′

变异处理包括变异操作和交叉操作。

种群变异采用单缩放因子变异,即X′

其中,X

交叉操作采用二项式交叉算子,将变异种群与当前种群进行交叉操作。

交叉操作的具体步骤为:在X′

S4.4、将当前种群G

具体选取方法如下:(1)优先选取多样性指标D≥D

S4.5、对下一代种群G

步骤5:获取最终种群中各个个体的真实飞行质量指标,使用真实飞行质量指标更新最终种群中个体的输出向量,得到更新后的训练样本集,使用更新后的训练样本集再次优化飞行质量预测模型,并将优化后模型设为质量-多样性方法的评估模型;重复步骤2到5,直到仿真次数达到仿真开销上限,停止搜索,得到最优飞行质量预测模型和扩充后的飞行数据样本集。

S5.1、使用软件在环仿真对新样本X

若训练样本集有更新,则按照步骤S2.3所述方式再次优化飞行质量预测模型。

若新样本数量少于种群规模N/10,则缩小质量阈值和多样性阈值,令Q

S5.2、更新仿真次数T,若T≥T

步骤6:使用者可利用飞行质量预测模型给出的评估指标,快速准确地判断飞行状态和控制参数的安全性与合理性,并根据分析结果调整无人机的控制参数设置;使用者还能利用预测模型合成飞行数据样本,扩充飞行数据样本集,以分析飞行状态、控制参数和无人机飞行质量、异常之间的关联性。

搜索结束后,使用者将获得优化后的飞行质量预测模型,且已有的飞行数据样本集也得到了合理扩充。一方面,使用者可以将待测参数输入飞行质量预测模型,模型输出的评估指标经阈值法等手段处理后,可用来预测无人机在任务中出现的异常种类和出现概率,并作为调整或保留控制参数的安全性与合理性依据。另一方面,在预测模型和质量-多样性方法的共同引导下,新增加的数据样本具有良好的代表性,使用者既可以直接利用扩充完成的飞行数据样本集,也可利用飞行质量预测模型对已知样本进行插值来合成新的数据样本,并利用热点图、频率分析等统计分析手段来拟合不同飞行状态、控制参数和飞行质量指标的关系函数,以此识别三者间的关联性。

本发明还提供了一种无人机飞控控制参数的模糊测试方法的系统,包括飞行质量预测模型训练模块、最终种群获取模块、飞行质量预测模型优化模块和测试模块。

飞行质量预测模型训练模块,用于根据无人机飞行记录数据对构建的飞行质量预测模型进行训练;

测试样例搜索模块,用于根据构建的质量-多样性方法的当前种群得到变异种群,计算当前种群和变异种群中个体的质量指标和多样性指标,根据质量指标和多样性指标获取最终种群,并将最终种群中的个体作为测试样例;

软件在环仿真模块,用于获取最终种群中各个个体真实的飞行质量指标,使用真实的飞行质量指标更新最终种群中个体的输出向量,得到更新后的数据样本集,使用更新后的数据样本集再次优化飞行质量预测模型,得到最优飞行质量预测模型;

测试模块,用于将最优飞行质量预测模型作为质量-多样性方法的评估模型,对无人机的飞行状态和控制参数进行测试。

本发明提供的一种无人机飞控控制参数的模糊测试方法,使用最优的飞行质量预测模型对无人机的飞控参数进行预测,能够得到飞控参数的飞行质量评估指标,进而根据飞行质量评估指标判断在该飞控参数下飞行是否会出现异常状态,例如无人机出现偏航、损失高度、坠机等状态。当无人机在某次飞行任务中出现异常时,该任务对应的飞行质量评估指标将会升高。通过观察飞行质量评估指标的数值,使用者可以判断异常的种类和发生概率。本发明通过结合机器学习与质量-多样性的结合,使用基于多层神经网络的飞行质量预测模型替代计算开销高昂的仿真,减少计算开销的同时还允许本发明采用复杂搜索算法,提升了测试速度和精度,解决了现有技术搜索速度慢、故障覆盖率低的问题;本发明结合质量-多样性方法,利用多样性指标提升状态空间中样本稀疏区域的搜索权重,鼓励算法提出和已有样本差距更大的解,克服了故障覆盖率低、搜索结果同质化严重的问题。

在示例性实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述无人机飞控控制参数的模糊测试方法的步骤。其中,所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD))等。

在示例性实施例中,还提供了一种测试系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述无人机飞控控制参数的模糊测试方法的步骤。处理器可能是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号