祁超帅,何文思,焦 毅,马英红*,蔡 伟,任素萍
(1.西安电子科技大学 通信工程学院,西安 710071;2.中国航天科工集团第二研究院 七〇六所,北京 100854;3.西安邮电大学 通信与信息工程学院,西安 710121;4.中国航天空气动力技术研究院 创新与应用中心,北京 100074)
无人机(Unmanned Aerial Vehicle,UAV)最早起源于20世纪20 年代,受到各国高度关注,成为了全球新一轮技术革命、产业革命的热点,无人机也因此得到了广泛应用。无人机系统路线图2005—2030 版预测,未来无人机将在遥控引导、实时健康/诊断、故障自适应/飞行条件自适应、机上航路重规划、编队协同、集群战术重规划、集群战术目标、分布控制、集群战略目标等技术上实现无人机的自主性[1]。目前,无人机综合路线图2017—2042 年版进一步延伸,提出无人机互用性、自主性、网络安全以及人机协同四大发展主题,其中自主性发展中提高无人任务和作战的安全性和效率是关键支撑技术之一[2]。无人机系统发展至今,种类繁多、性能强劲,具有功耗低、体积小、重量轻、灵活机动、造价低廉和作战环境要求低的特点,可代替有人机完成高难度、高强度任务。军用无人机作为空中侦察平台和武器平台,可通过携带先进设备执行情报侦察、信息对抗、空中打击、通信中继、目标跟踪等军事作战任务。民用无人机则主要应用在航空摄像、电力巡检、环境监测、抢险救灾、快递运输等民生方面。
然而,由于无人机在执行任务过程中无飞行员现场操作,从而导致发生故障时不能及时采取相应的应急措施,安全性和可靠性远不如有人机。无人机的高故障率引发了各国研究机构对事故缓解策略的制定和实施,究其根本,无人机执行任务时缺少有效的方法检测自身故障;因此,无人机机载健康监测已成为国内外相关机构关注的重点,而飞行数据异常检测技术是无人机的状态监测和潜在异常状态挖掘的有力手段,它的研究工作对于改善无人机的运行可靠性、预防事故的发生具有十分重要的应用价值。
面向无人机机载健康监测,本文阐述了无人机飞行数据的特点和常见的异常类型,并重点总结了基于数据驱动的无人机飞行数据异常检测算法的研究现状,从算法实时性、精确性和鲁棒性等方面对比分析了各类算法的优缺点,为未来无人机异常检测领域的研究提供了参考依据。
异常数据指存在于数据集中不属于随机偏差,而是由其他机制产生的数据[3],即异常指数据表现为不同于所设定的正常模式或与正常数据偏差过大的现象。异常检测则是基于一定的方法,如统计理论、数据挖掘或机器学习理论,从数据集中检测不符合期望行为的数据或模式[4]。
异常检测算法的设计与应用场景数据特性的适配程度越高,准确性和鲁棒性越高。尽管无人机应用场景多种多样,但这些场景中无人机飞行数据具有诸多共性特征,目前国内外在无人机飞行数据异常检测领域的研究工作大多围绕这些共性特点设计算法。
无论在民用还是军用领域,无人机飞行数据都是评估无人机是否处于异常状态的主要手段和重要依据。为保证准确高效地完成作战任务,无人机内部各个子系统安装了多种传感器实时监测飞行状态,包括陀螺仪、加速度传感器、温湿度传感器、气压传感器、超声波传感器、磁方向传感器和全球定位系统(Global Positioning System,GPS)等,涉及无人机的状态、姿态、发动机、环境条件和全球定位等信息,产生高度、角度、加速度和经纬度等飞行状态数据,以及大量控制命令数据,如舵机命令、机翼控制命令、电机控制命令等。无人机飞行数据异常检测致力于分析这些数据,实现无人机的状态监测和潜在异常状态的挖掘。异常检测算法的设计需考虑算法对无人机飞行数据的适用性,因此,首先对无人机飞行数据的特点阐述如下。
1)高维性。无人机飞行数据来自子系统的各类传感器,由与子系统状态密切相关的多种指标数据构成。随着无人机能力增强,传感器数量增多,无人机飞行数据呈现高维度特征。若直接采用原始高维数据作为异常检测算法的训练集,一方面维数过高可能会引发“维数灾难”,影响算法检测的效率;另一方面,无关数据过多导致训练数据在维度上的稀疏化,从而带来较大的泛化误差,影响算法的准确度。
2)异常标签少。无人机作为执行高强度、高难度任务的工具,必须将内部的部件故障率降到最低,实际遥测飞行时很难捕捉无人机真正发生故障的数据,更重要的是无人机故障发生的随机性导致难以完全归纳出所有异常种类。
3)流数据。无人机飞行数据由内部传感器以一定频率采样得到,是一系列顺序、大量、快速、连续到达的随着时间无限增长的动态数据集合。这意味着无人机飞行数据是实时性强、数据量大的流数据。
4)模式切换。无人机飞行过程中存在模式切换,模式切换特性包括两种情况:第一种为飞行模式切换,指无人机在经历起飞、巡航、滑行、降落等模式,在每种模式中又包括具体执行阶段,如无人机起飞时的地面滑跑、离地和加速爬升阶段,降落时的航道截获、下滑、平飘和着陆等阶段;第二种为任务模式切换,指无人机从一种任务模式到另一种任务模式的切换,当切换到未知任务模式时,即在正常飞行模式下执行了训练数据中未出现过的新任务,此时飞行数据将呈现不同的数据特点。两种情况都会导致无人机的飞行数据随着模式的切换发生较明显的变化,从而影响异常检测算法准确度,造成更高的误检率。
针对上述无人机飞行数据特点,适用于无人机的异常检测算法需要满足以下要求。
1)低时间复杂度。针对无人机飞行数据高维和连续到达的特性,无人机飞行数据异常检测算法必须着眼于大数据量和实时性要求。首先,无人机飞行数据的异常检测算法不能随着维度和数据量的增加而导致计算开销呈指数增长,避免引发“维数灾难”;其次,除了满足较低的计算复杂度,还需要改进异常检测算法,使它在面对持续到达的无人机飞行数据时能够自适应更新模型。
2)无监督或半监督。无人机飞行数据异常标签少,有监督的异常检测算法在训练时,正常异常样本分布不均匀且不能包含所有异常种类,此时训练出来的异常检测模型性能较低,不能满足准确性要求;因此在实际应用中,无监督或半监督的异常检测算法更适用于无人机飞行数据。
3)异常度量的普适性。异常检测不是针对某个特定子系统或传感器而设计,算法本身除了要求一定的检测精度外,还要考虑度量的普适性,即如何选取一个度量标准使得算法适用于大部分无人机飞行数据的异常检测。
4)模式切换鲁棒性。针对模式切换带来的影响,异常检测算法有两种解决方案:其一,使用历史数据训练,数据中包含所有已知模式下的正常数据,此方案不需要考虑无人机的飞行模式切换,但当切换到未知任务模式时,需要考虑历史数据更新和模型保存的问题;其二,异常检测模型随着无人机飞行数据流实现在线更新,以保证训练数据中加入了模式切换时的飞行数据,此方案要求算法必须保证较低的训练时间复杂度。两种方案均可行,实际应用中需要根据具体算法的特点选取合适的异常检测方案。
无人机飞行数据在飞行过程中可能会发生不期望的状态或者不遵循某个期望的模式,这些异常可能由仪器的电磁干扰、传感器故障或性能老化和恶劣的任务环境造成。根据异常数据的性质,无人机飞行数据异常可分为点异常、上下文异常和集合异常[3]。
1)点异常。
如果数据点相较于其他正常数据点有明显区别,则该点被称为点异常。当飞行环境中存在较强的电磁干扰信号时,可能导致无人机速度传感器在某些时刻的数据发生跳变,并且与正常数据有明显偏差,如图1 所示。
图1 点异常Fig.1 Point outliers
2)上下文异常。
从数据本身属性,数据在正常范围内,但在特定的上下文环境中此数据为异常,则称该点为上下文异常。例如,当无人机受到攻击时,无人机海拔高度数据可能出现瞬时跳变,跳变值与该时刻所处的爬升、降落等上下文环境不符,如图2 所示。
图2 上下文异常Fig.2 Contextual outliers
上下文的概念由数据集的结构引出,每个数据都有两种属性[3]。
①上下文属性。上下文属性通常用于确定数据所处的上下文,如当考虑无人机高度变化时,无人机的爬升、巡航和降落等飞行模式可作为上下文属性。更经典的属性是经纬度和时间属性,它们分别是空间数据集和时间序列数据集的上下文属性。上下文属性决定了数据应该处在的位置。
②行为属性。行为属性定义了数据的在特定上下文属性的性质。如无人机在巡航的上下文属性中,此时高度的变化趋势和范围可作为行为属性。
因此,对于上下文异常的判断可依据数据在上下文属性中是否符合对应的行为属性。当发生连续的上下文异常时,就构成了集合异常。
3)集合异常。
集合异常表现为单个数据点在当前的上下文属性中可能正常,也可能异常,它们只有作为一个集合一起出现时才视为异常。例如,当气压高度传感器发生故障时,可能出现海拔高度为正常传感器数据,而气压高度在10 000~135 000 m 范围内呈现连续异常,如图3(a)所示。在军事应用场景中,若无人机遭受敌方的重放攻击,则可能发生数据周期性回放,此时在当前处于正常范围的数据也是异常数据。如图3(b)中在150~350 ms时间段海拔高度的周期性回放异常数据。
图3 集合异常Fig.3 Collective outliers
目前异常检测算法应用十分广泛,包括金融、网络安全、气象预警和工业等领域。近年来,随着机器学习的快速发展,很多适用于各个领域的异常检测算法被提出,国内外研究机构在近些年来也随之对多种异常检测算法进行改进以适用于无人机场景。无人机飞行数据异常检测算法可以归结为3 大类:基于先验知识的定性异常检测算法、基于模型的定量异常检测算法和基于数据驱动的异常检测算法[5]。3 种算法各有优劣,总结如表1 所示。
表1 异常检测算法优劣对比Tab.1 Comparison of pros and cons of anomaly detection algorithms
基于先验知识是最早也最简单的一种异常检测算法,它综合了无人机目标系统的数据信息,基于专家的先验知识建立适用于离线的异常检测模型。模型一般由一定的规则(如if-then 语句)将数据症状和异常联系起来。基于先验知识的定性异常检测代表算法有阈值判定、专家系统等。
阈值判定的算法基于事先设定好的信号阈值判断观测数据是否异常,当超出阈值范围时判定为异常。文献[6]中提出了一种基于强化学习的无人机电机温度异常检测系统,利用学习到的动态温度阈值监控无人机在每个状态下是否异常。阈值判定操作简单,但需寻找合适的阈值,防止阈值过高和过低引起的高漏检率和高虚警率。由于阈值判定只适用于简单的异常检测场景且模式切换时设定的阈值适应性差,故实用性不强。
专家系统是一种模拟专家决策的计算机系统[7],系统内部加载了特定应用场景下的大量专家经验,基于此推理数据之间密切的关系。无人机异常检测专家系统的基本构成如图4[8]所示,包括无人机异常检测知识库、无人机异常检测推理机、无人机异常检测解释机制和人机交互接口这4个部分。
图4 无人机异常检测专家系统Fig.4 Expert system for UAV anomaly detection
人机交互接口主要用于用户与故障诊断系统之间的交互,知识库提供包含异常状态因果关系等专家先验知识,推理机根据系统的知识库进行无人机异常的推理工作,并将推理的结果通过交互界面显示,解释机制负责对知识库的内容和推理的结果解释,其中知识库和推理机是整个系统的核心构成部分。知识库的描述方式包括状态空间、语义网络、框架或谓词公式,或者采用结构化的方法。例如文献[8]中基于分级式故障原因结构图建立了无人机的系统知识库。在结构化的知识库构建方法中,故障树分析法是一种适用性较广的方法,它以树状图为导向,通过具体符号和术语定量、定性地描述不同事件之间的因果关系。例如文献[9]中基于故障树分析法研究无人机飞控系统,根据征兆空间与故障空间的对应关系将专家经验转化为故障知识库。在推理机方面,有正向推理、反向推理和双向推理这3 种机制,推理方法分为确定性推理和不确定性推理。确定性推理建立在经典逻辑的基础上,运用确定性知识进行单调性推理。例如文献[10]中基于案例推理,采用分级检索和最近邻算法结合的方法建立了飞机故障诊断专家系统,性能上较好地模拟了专家的诊断能力。为避免采用大量的统计数据和对推理过程中理论性的较高要求,通常采用贝叶斯理论、模糊理论等不确定性推理方法。如文献[8]中采用正反综合推理和主观贝叶斯推理方法提高了专家系统的故障识别率。文献[11]中根据影响无人机飞行安全的各因素之间的逻辑关系,构建了无人机的模糊故障树,并基于模糊故障树和贝叶斯网络模型评估无人机全系统的异常概率。需要说明的是,模糊理论通过模糊集的定义和分类对不确定性系统的估计更为准确,当系统比较复杂时,模糊匹配易出现歧义性。
总体而言,基于先验知识的异常检测算法需要对系统运行的信息和特征有足够的了解,借助专家经验建立观测对象的各参数和系统异常结果的定性模型,通过此模型判断系统信息的异常状态。基于先验知识不需要严格的数据定量分析,实现简单,适用于异常种类已知的异常检测场景,但大部分无人机系统的异常难以完全把握、先验知识少、模型建立困难,难以满足实际需求。
基于模型的定量异常检测算法分为基于物理模型的算法和基于解析模型的算法。两者都是对无人机内部子系统精确建模,区别是物理模型的基本思想是用具有相同输入信号的相同组件复制输出信号[12],再比较与实际信号的残差作出异常诊断决策。例如,文献[13]中对机翼结构全尺寸三维建模,利用FLUENT 和ANSYS 软件进行有限元仿真分析,确定故障监测节点,最后采用信标异常分析法对数据进行异常检测。物理模型法是可靠的,但是代价昂贵且占用空间较多。文献[14]中提出了基于解析模型的算法,根据无人机执行机构的物理结构和运行机理,建立执行机构的数学模型,通过定量的内在解析关系分析系统状态。如图5[15]所示,基于解析模型的算法将无人机的实时状态信息作为测量值,根据执行机构物理参数所建立的解析模型为系统提供解析值,对比测量值与解析值,分析残差的状态和变化,作为故障判断的依据。针对解析模型的正确性对系统性能的影响,文献[15]中还引入了模型校正环节(图5 虚线部分),将模型输出的信息经过对比和处理再反馈到模型校正环节,利用动态反馈修正模型,减小了系统在动态运行中的长时累积误差,降低了局部模型误差对系统整体状态的干扰或负面影响。与物理模型相比,解析模型具有成本优势,但噪声和模型不精确带来的误差以及系统的复杂结构,会对解析模型算法的可靠性产生一定的负面影响。
图5 基于解析模型的无人机异常检测系统Fig.5 Analytical model-based UAV anomaly detection system
目前,越来越多的解析模型算法被提出,包括参数估计法、等价空间法、状态估计法[15-20]。其中,参数估计法需要建立比较准确的数学模型表示系统与元器件的关系方程,通过对比求解的参数与系统实际参数确定系统的异常程度。例如,文献[16]中研究了一种基于参数估计的无人机控制系统故障检测算法,在基础模型构建完成后提取其故障特征参数,并选取不同于正常状态的特征参数,利用噪声估计器诊断故障,分析残差与“零”之间的关系,实现无人机控制系统的故障检测。等价空间法主要针对线性系统,利用系统动态方程的线性相关性求出所选测量值与其余测量值的残差序列,通过处理残差序列实现异常检测。文献[17]中采用等价空间法建立了无人机飞控系统中的作动器数学模型,有效地检测了作动器的卡死故障。状态估计法适用于非线性系统,也是解析模型中研究成果最多的算法。它的原理为利用设计好的观测器或滤波器等模型预测系统的估计值,通过分析估计值与实际值的残差判定数据是否异常,常用算法有:基于非线性观测器、基于滤波器、微分几何法和自适应学习法等[15,18-20]。例如,文献[19]中针对飞控系统中执行器和传感器故障,基于观测器、奇偶空间法和微分几何法分别对不同情况下的飞控系统建立精确的数学模型,实现了故障的检测、诊断和定位。文献[20]中提出了一种通用的异常检测框架,通过使用向量自回归外生模型表示多元时间序列,基于对象之间的向量自回归外生模型构建对象之间的距离矩阵,最后基于对象差异进行异常检测。
基于模型的算法适用于能够精确建模的无人机系统,且需要对无人机内部结构非常了解。当模型准确建立后,环境噪声也是影响模型检测的重要因素,由于噪声不可控,导致鲁棒性较差。重要的是,建立好的模型可移植性差,无人机各系统需要单独建模,实用性差。因此,面对无人机系统内部的复杂结构和飞行环境因素,基于模型的算法显然力不从心。
基于数据驱动的异常检测算法通过分析无人机传感器数据间的相关性,将不符合数据规律的观测数据判定为异常。常用算法有:基于统计的算法[21-24]、基于分类的算法[25-31]、基于相似性的算法[32-38]、基于预测的算法[39-48]。这些算法的特点总结如表2 所示。
表2 各基于数据驱动算法的特点Tab.2 Characteristics of different data-driven algorithms
2.3.1 基于统计的数据驱动异常检测算法
基于统计的算法首先对观测数据作正常性假定,它认为正常数据分布在高概率区域,即由正常数据建立一个统计模型并确定置信区间,将不符合该模型的数据点视为异常点。基于统计的异常检测算法主要分为参数法和非参数法两类:参数法基于高斯模型、基于混合参数分布等;非参数法基于直方图、基于密度估计技术等。参数法和非参数法检测异常的基本思想一致,区别是建立模型的方法。
参数法认为正常的数据对象分布在一个特定参数的统计模型上,该参数的概率密度函数给出了数据对象在该分布出现的概率,以此刻画数据的异常程度:概率越小,异常的可能性越大。文献[21]中针对无线传感器网络建立了一系列马尔可夫模型,基于此估计出一个无异常概率定律,利用大偏差技术开发了较优异常检测规则。文献[22]中利用模型方法和统计方法分别检测无人机故障飞行实验数据,分析了两种方法的适用场景和优劣势。文献[23]中提出了一种基于隐半马尔可夫模型(Hidden Semi-Markov Model,HSMM)的框架,用于检测由人为因素引起的航空安全事件。此方法具有对时序数据建模的能力,表现良好。非参数法并没有特定的参数分布模型,而是希望用观测数据确定统计模型。非参数法模型的参数个数和性质是灵活的,并不是完全无参。文献[24]中对飞控数据的傅里叶系数分布进行分析并推理建模,实现了对传感器的异常检测。
上述基于统计的算法过于依赖数据分布的规律性。在数据分布假设成立的前提下,对观测数据处理速度较快,能有效地检测单个属性的离群点;但在实际的无人机场景中,大部分数据的先验分布假设通常很难确定,且无人机飞行数据海量、高维等特点也加大了统计模型建立的难度,极大降低了模型准确性。
2.3.2 基于分类的数据驱动异常检测算法
基于分类的算法通过带有标签的数据训练出正常与异常数据之间的决策边界或分类器,当观测数据超出边界或不属于正常类别时被视为异常。代表算法有支持向量机(Support Vector Machine,SVM)、一类支持向量机(One-Class SVM,OCSVM)、半监督支持向量机(Semi-Supervised SVM,S3VM)和朴素贝叶斯等。
SVM 是一种二分类算法,主要思想是找到空间中的一个能够将所有数据样本划分开的超平面(分类平面),使得与分类平面距离最近的样本点构成的两个超平面(支持平面)之间的距离(分类间距)最大化,如图6 所示。
图6 SVM示意图Fig.6 Schematic diagram of SVM
SVM 算法已应用于无人机异常检测领域。例如,文献[25]中基于无人机的飞行日志,并利用SVM 算法将无人机在正常飞行阶段和故障阶段的行为进行分类,针对无人机失控故障的检测达到了较高的准确度。文献[26]中针对无人机电机异常,采用SVM 算法对音频信号分类,设计了轻量级故障检测算法,可在嵌入式系统中实时工作。OCSVM 算法是由SVM 算法扩展而来的单分类算法,基本思想是将数据映射到与内核相对应的特征空间,在数据与原点间构建超平面,并且最大化超平面到零点的距离,如图7 所示。文献[27]中提出了一种多核异常检测算法,通过多核组合多维数据源信息,联合OCSVM 算法对飞行数据进行异常检测。文献[28]中将无人机飞行数据的能量指标作为特征向量,结合基于密度的噪声应用空间聚类(Density-Based Spatial Clustering of Applications with Noise,DBSCAN)和OCSVM 两种算法实现了对实际航空飞行数据的异常检测。文献[29]中结合OCSVM 算法和核主成分分析(Kernel Principal Component Analysis,KPCA)算法建立混合模型,完成了对无人机系统和传感器异常的检测。S3VM 是SVM 在半监督学习上的推广,考虑了未标注样本的信息,试图找到能将两类有标记样本分开,且穿过数据低密度区域的分类超平面,如图8 所示。文献[30]中引入改进的S3VM,结合边缘抽样主动学习优化分类模型,实现了对无人机信道遥测数据的异常检测。
图7 OCSVM示意图Fig.7 Schematic diagram of OCSVM
图8 S3VM示意图Fig.8 Schematic diagram of S3VM
朴素贝叶斯算法是一种基于贝叶斯定理与特征条件独立假设的概率分类算法,对于给出的待分类样本,利用贝叶斯公式求解在样本项出现的条件下各个类别出现的概率,即该样本属于某一类的概率,选择具有最大后验概率的类别作为该样本所属的类别,分类过程如图9 所示。文献[31]中通过采用树增广朴素贝叶斯(Tree Augmented Naïve Bayesians,TANs)算法,扩展了朴素贝叶斯学习模式,并结合领域的专家知识,生成可与现有参考模型结构匹配的分类器结构,完成飞行数据的异常检测工作。
图9 朴素贝叶斯分类过程Fig.9 Naïve Bayesians classification process
基于分类的算法对多参数、标签明确且样本比例均衡的异常检测场景效果较好。但在实际的无人机飞行数据中,异常数据少、人工标记成本高,且异常种类难以完全把握,定义一个包含所有正常或异常行为的区域比较困难,因此很难训练出有良好鲁棒性的分类器。
2.3.3 基于相似性的数据驱动异常检测算法
基于相似性的算法是根据距离、密度和角度等信息衡量数据间的相似度。如:K均值聚类(K-means clustering,K-Means)算法、K最邻近(K-Nearest Neighbors,KNN)算法、DBSCAN 算法、孤立森林(Isolation Forest,IForest)算法[32]和基于角度的离群值检测(Angle-Based Outlier Detection,ABOD)算法等。图10 给出了上述算法采用的相似度衡量信息。
图10 基于相似性的数据驱动异常检测算法Fig.10 Data-driven anomaly detection algorithm based on similarity
K-means 和DBSCAN 属于聚类算法,使用距离、密度等信息,将相似度高的数据聚为一个簇,若最终数据为不属于任何一个簇的离群点,则视其为异常。文献[4]中基于高层次综合工具(High Level Synthesis,HLS),实现了K-means 和最小二乘支持向量机(Least Square SVM,LS-SVM)两种异常检测算法的模块化设计,并利用FPGA(Field-Programmable Gate Array)硬件平台提高了算法的检测速度。文献[33]中介绍了一种K近邻搜索的异常检测算法,并结合KD 树(K-Dimension Tree)提高了搜索效率,能够有效检测无人机飞行数据流中的异常。文献[34]中基于DBSCAN 聚类算法,根据数据间的密度相似性完成了对飞行数据的异常检测。
IForest 算法空间划分评估样本点邻近区域数据的稀疏程度,作为样本点与数据集之间相似性的度量,稀疏程度越高,则样本点的离群程度越高,越可能为异常点。IForest 算法将“数据集中容易被孤立的离群点”定义为异常,不断用随机超平面切割数据空间,直到样本点所在空间只包含样本点本身或分割次数达到阈值为止。通常异常点所在区域分布稀疏,较早停止分割,即分割路径较短,因此,分割路径越短的样本点,越可能为异常点。与其他异常检测算法相比,IForest 算法在具有较高准确度的同时,不需要计算距离和密度等信息,因此训练和检测过程的时间复杂度低,适用于高维和海量数据应用场景。文献[35]中讨论了IForest 算法在无人机场景的适用性,并使用航空推进系统仿真数据为基准,验证了IForest 算法的准确性。
基于角度的相似度衡量通过比较数据的角度方差确定是否异常,正常数据和边界数据的角度方差远大于异常点[36]。文献[37]中基于ABOD 算法得出了角度异常因子,通过比较异常因子的大小确定高维数据中数据点的异常程度。文献[38]中通过计算相邻时刻数据子空间方向的变化程度刻画数据的差异性,实现了对无人机飞行数据的异常检测,取得了良好效果。
基于相似性的算法侧重于挖掘无人机飞行数据的空间相关性,根据一定的相似性度量算法刻画观测数据的异常程度,算法的核心在于选取正确且适用的相似性度量函数表示各数据间的相似性,同时还需要考虑数据的计算量,例如其中基于聚类的算法计算复杂度较高,多用于离线数据集的异常检测。
2.3.4 基于预测的数据驱动异常检测算法
基于预测的算法假定未来数据与历史数据存在关联性,通过对历史数据分析建模,预测未来时刻数据,然后计算预测结果与真实数据的残差,并根据残差的波动范围完成对正常与异常数据的划分。基于预测算法的检测流程如图11。
图11 预测模型的检测流程Fig.11 Detection process of prediction model
图11 的检测流程中,预测模型主要包括两类:一是回归模型,例如文献[39]中基于相关向量机(Relevance Vector Machine,RVM)的回归模型训练观测数据,给出了一个估计不确定区间作为飞行数据的异常检测阈值,结合不同飞行参数之间的皮尔逊相关系数,实现了自适应异常检测;二是神经网络模型,主要包括适用于时间序列预测的长短期记忆(Long Short-Term Memory,LSTM)神经网络和时域卷积网络(Temporal Convolutional Network,TCN)。例如,文献[40]中基于只包含正常数据的训练集,建立了LSTM 神经网络预测模型,有效检测了具有北向速度和气动升降速度点异常的真实无人机传感器数据。文献[41]中采用了深度学习算法提取数据特征,构建了无人机时序数据LSTM 预测模型,完成了无人机单维数据的异常检测。文献[42]中比较了基于多重LSTM 和基于多输出卷积LSTM 的无人机数据异常检测算法,指出由于多输出卷积LSTM 结合了适用于多变量数据分析的卷积结构与适用于时间序列分析的LSTM 结构,更适用于无人机的多维时间数据分析。文献[43]中针对无人机高维飞行数据间存在的复杂时空相关性,提出了一种基于时空相关的LSTM 算法,用于无人机飞行数据异常检测,通过人工神经网络挖掘飞行数据的时空相关性获得相关参数集,然后建立LSTM 模型进行异常检测。文献[44-45]中采用TCN分别实现了无人机电池瞬时耗电量的异常检测和无人机传感器数据异常检测。图11 中基于残差的异常判定算法,可采用SVM 等分类算法。例如,文献[46]中使用滑动窗口的单步迭代算法,基于LS-SVM 算法实现了对无人机未来时刻的预测,通过残差检测观测数据的异常状态。文献[47]中采用LSTM 神经网络预测值与真实值作差,并输入OCSVM 分类器中训练得到正样本超平面,通过测试数据到超平面的距离判断数据的异常与否。
图12 对上述基于数据驱动的异常检测算法进行了梳理总结。
图12 基于数据驱动的异常检测算法Fig.12 Data-driven anomaly detection algorithm
基于预测的算法以数据预测为基础,侧重于寻求数据间的时间相关性,在无人机趋势性或周期性数据的异常检测方面有较大优势。模型训练完成后的预测计算复杂度低,因此适用于无人机的在线异常检测;但高维数据会加大预测模型建立和参数寻优的难度,且对不规则分布的噪声数据较为敏感[48]。
随着时代的发展,基于先验知识和基于模型的异常检测算法将逐渐不适用于无人机的异常检测。无人机飞行数据异常检测的发展趋势必然要与数据挖掘结合,未来将更加注重基于数据驱动的异常检测算法,它的研究和应用方向将重点解决以下挑战/问题。
一是提升异常检测算法的抗噪能力。无人机设备复杂度随着作战任务的多样化变得越来越高,所处环境也更加恶劣,这使得无人机状态信息的获取精准度下降,噪声数据难以确认和消除,在一定程度上影响了异常检测算法的准确性。因此,如何提升异常检测算法在强噪条件下的准确性是一个极大的挑战。
二是提升异常检测算法的时空相关特性挖掘能力。无人机系统是复杂的,存在着复杂的时空高维飞行数据之间的相关性与许多参数;然而,现有的算法往往忽略了时空因素,缺乏参数选择,从而导致欠拟合、维数灾难、算法体量过大等诸多问题[43]。因此,如何设计无人机数据时空相关性挖掘算法,将是无人机异常检测需要重点关注的问题之一。
三是提升异常检测算法对无人机飞行模式切换的适应性。由于作战环境和任务的多样性,无人机在不同任务模式中的正常数据表现在不断变化。目前无人机飞行数据异常检测算法大都着眼于常见异常或已知故障类型的检测准确率,而忽视了无人机的模式切换特性带来的高误检率问题,导致它们在应用于无人机飞行数据异常检测时不能识别未知的正常数据,鲁棒性较低。因此,如何提升异常检测算法在模式切换时的鲁棒性也是需要重点解决的一大难题。
四是提升异常检测算法的实时性。无人机机载异常检测系统要求能实时检测飞行数据中出现的异常,以及时采取有效措施,尽可能避免安全事故发生。然而,多数具有较好的检测效果的异常检测算法,计算量较大,时间复杂度较高,不能很好地满足实时性要求[4]。因此,设计计算轻量级、高性能的检测算法亦将成为无人机异常检测领域的重要研究方向之一。
未来将以数据采集和分析为核心,算法准确率和实时性为目标,以无人机飞行数据的时序性、时空相关性、模式切换特性和无人机在线异常检测的时延要求为侧重点,持续改进,使它具有更强的工程应用性。
无人机智能化程度的提高促进了无人机健康状态检测技术的发展,同时出现了一批适用于无人机飞行数据异常检测的算法。无人机的异常检测技术具有重要作用,自身智能监控健康状态能力的提升,能极大降低无人机事故发生率,避免大量人力物力的浪费,为稳定高效完成作战任务提供重要依据。本文首先分析了无人机飞行数据特点,简要介绍了无人机的常见异常模式,并详细总结了无人机飞行数据异常检测算法的研究现状,分析了各类异常检测算法的优缺点以及异常检测面对的挑战,为进一步开展相关研究提供参考。