飞机的飞行是一个复杂的过程,很难从完整的飞行起落数据中总结出飞机飞行的规律,而飞机的飞行可以看成一系列特定机动动作的组合,通过机动划分将繁杂的飞行数据划分成多种有意义、有规律的机动动作片段并掌握在这些机动动作下的飞行规律,就能掌握飞机在整个飞行过程中的规律。目前结构健康监控[1]、故障检测[2]、飞行品质评估[3]等许多研究都建立在机动划分的思想上,国内外学者也从不同的研究目的出发提出了多种机动动作划分方法。
目前的机动划分方法主要有人工识别法、知识库匹配、模式识别方法等。文献[3]将飞参数据与知识库中的判据逐条匹配找出机动动作的起止时刻;文献[4]用已知机动动作的飞行数据构建直升机机动的区域识别模板,文献[5]在此基础上通过计算机再现机动动作并用视觉资料验证机动识别的结果;文献[6, 7]用机动动作库的数据训练支持向量机实现机动识别,文献[8, 9]用神经网络得到了与之类似的结果。
虽然以上文献采用多种方法完成了机动动作识别,但这些方法都无法回避一个基本问题:经验判据与模板数据的获取代价高昂。采用人工识别方法和知识库方法的关键在于获得机动动作的起止判据,这些判据往往需要人工判读大量的飞参数据后凭经验总结,耗费人工并且效率很低。模式识别方法虽然不需要人工判读飞参数据,但是需要精心设计特殊的飞行动作并通过多次飞行验证实验获得标准机动动作模板,经费开支巨大。并且,无论是机动判据还是标准动作模板都只针对特定的机型,不具备通用性。近年来国内一些学者注意到了这一问题,通过多种优化算法提取原有动作库规则的数值特征、删除冗余规则,达到自动产生高效简洁的识别规则、减少人工工作量的目的[10, 11]。
为摆脱机动识别方法对经验判据和模板数据的依赖,自动、自适应地完成机动划分工作,本文创新性地提出了飞机机动划分的数据挖掘方法。该方法以趋势识别技术识别出法向过载参数的变化趋势,并以此为依据提取出飞行数据中含有机动动作的子序列,而后用聚类算法对子序列进行聚类分析形成机动动作分类。
1 飞机机动划分的数据挖掘方法飞行参数是一系列离散的时序数据,在没有先验知识的情况下分析孤立的飞行参数数值是没有意义的,需要通过分析飞参序列的趋势变化来挖掘数据中的机动动作子序列。显然,在飞机平飞时各个飞参数据基本保持平稳,而当飞机进行机动动作时相应的飞参数据的趋势必然发生改变。据此,本文提出了如下机动划分方法:
首先,选取一个关键飞参作为主参数,用趋势识别方法识别出该飞参序列随着时间的变化趋势,并将飞行数据划分成若干只含有单一趋势的子序列,称为“趋势片段”。
其次,按一定规则合并相邻趋势片段,形成包含机动动作的数据序列,称为“机动片段”。计算机动片段序列中各飞参数据的均值与方差,并用一组均值与方差构成的特征向量表示每个机动片段。
最后,对机动片段的特征向量进行聚类分析,得到若干机动片段的集合。理想情况下这些集合就是划分出的机动动作段。算法的流程图如图 1所示:
2 双窗口的简单趋势识别方法趋势识别技术是一种从含噪的过程数据中提取出趋势信息的技术[13],它从定量的数据中提取定性信息并加以描述。描述趋势的基本单元称为“基元”,考虑到飞参数据的信噪比高、趋势清晰、线性趋势明显的特点,仅用线性基元描述飞参趋势是合适的。本文在此基础上提出了一种双窗口的简单趋势识别方法,识别时选用上升、下降、平直三个线性基元,如图 2所示。基元之间通过片段拟合函数斜率数据加以区分。
2.1 基元的选择与识别准则设某时间序列片段含有m个样本,记样本的时间序号X=(x1,x2,…,xm)T,样本值Y=(y1,y2,…,ym)T。对该时序片段做线性拟合,用最小二乘法可求得拟合参数
对于拟合函数斜率k规定斜率阈值ks,当斜率k≥ks时将序列X识别为上升趋势(C基元);当k≤-ks时将 X识别为下降趋势(F基元);当-ks<k <ks时将X识别为水平趋势(A基元)。
又考虑到飞行中经常出现缓慢爬升或盘旋等斜率小但持续时间长的动作,仅用斜率来判定趋势是不合适的。规定拟合函数的高差:
引入高差阈值Δs,当Δ>Δs时,将序列识别为上升趋势。
2.2 双窗口的调整与滑动窗口的大小会影响趋势识别的效果,窗口过大会忽略局部趋势造成混叠,窗口过小则对局部细节过于敏感不能把握整体趋势信息。为了解决这一问题,本文提出了一种双窗口方法。
在算法中设置一个大小固定的滑动窗口以及一个大小可调的固定窗口,如图 3所示。
初始时,两窗口的末端重合,窗口大小均为h。在算法执行时,滑动窗口向前滑动分析局部趋势,固定窗口扩大相同长度记录并分析整体趋势。窗口的行为由当前分析的趋势状态决定:
1) 窗口内的数据处于上升或下降状态。此时滑动窗口向前滑动1个数据点,固定窗口相应扩大。考察滑动窗口中的斜率k,只要斜率符号保持不变就继续滑动;若斜率符号改变,则输出固定窗口中的识别结果,同时将固定窗口的起始点移动至滑动窗口的起始点位置,大小重置为h。
2) 窗口内的数据处于平直状态。此时滑动窗口向前滑动1个单位,固定窗口相应扩大。分别拟合固定窗口与滑动窗口中的数据,考察滑动窗口中的斜率k与固定窗口中的高差Δ。这时出现以下3种情况:
(a) |k|>ks,固定窗口中的数据识别为平直趋势,并将固定窗口长度重置为h,起始点移置滑动窗口位置。
(b) |k|<ks且Δ>Δs,将固定窗口中的数据识别为上升或下降(依k的符号决定),转到情况(a)。
(c)|k|<ks且Δ<Δs,继续向前滑动,扩大固定窗口。
2.3 参数对算法识别性能的影响3个参数的取值对算法性能影响很大。ks主要影响算法识别趋势转折的能力,ks越小算法对趋势的转折就越敏感,但过小的ks会使算法局限于局部趋势,造成过分类。Δs主要作为对ks准则的补充以识别斜率小但持续上升或下降的趋势,同时也反映了对平直段中数据起伏的容忍程度。h表征了算法认可的最小趋势片段长度,h越大算法对局部趋势的关注度就越小,受噪声的影响越小。但过大的h会使算法迟钝,造成趋势混叠。
综上所述,只需给定合适的斜率阈值ks、高差阈值Δs和初始窗口大小h,算法即可自动将飞参数据划分成为一系列的“趋势片段”,并且相邻的两个趋势片段的趋势一定不同。
3 机动片段提取一个机动动作内的飞参变化不会只呈单一的趋势,往往是多个相邻趋势片段组合而成的“起伏”形状。因此需要将相邻的趋势片段组合成有意义的“机动片段”。
考虑到飞行过程中平飞状态的数据占大多数,并且执行机动动作后通常要回到平飞状态。因此可以将两段平飞状态之间的一系列趋势片段合并为一个机动片段。
由于机动动作中也可能包含短暂的类似平飞的动作,为此引入最短平飞长度阈值θh,只有长度超过阈值的水平趋势片段才能被识别为平飞状态。
考虑到一些突变噪声很可能将一个较长的水平趋势片段截成两段而造成噪声被识别为机动片段的错误,引入机动片段最小长度阈值Δhmin,若机动片段长度小于阈值则取消该分段。一般取长度阈值为2倍的初始窗口长度(2h)。
需要注意的是,至此得到的机动片段仅仅是剔除平飞数据后的结果,还不能确定每个机动片段究竟是何种机动动作。需要根据每个机动片段的飞参特征对它们进行分类。这可以归结为一个无导师的模式识别问题并采用聚类算法解决。
4 迭代自组织的数据分析算法 4.1 算法简介迭代自组织的数据分析算法也被称为ISODATA算法[13]。它是一种自动修改类中心以及类数目的动态聚类方法。该算法会自动选择若干样本作为聚类中心并在之后的运算中通过样本均值的迭代调整类中心,通过模式类的合并与分裂来实现聚类中心数目的调整。
ISODATA算法的基本原则是:合并距离太近的分类,取消样本数太少的分类,细分离散度太大的分类。ISODATA算法的实现较为复杂,算法详细流程见文献[13],本文在此仅给出算法思路:
1) 初始化算法参数。算法一共包括6个参数:
K: 允许样本能够被分成的最多分类个数。
θN: 一个类内的最少样本数。若样本数太少则取消该类。
θS: 聚类中样本的标准差阈值。若某分类的标准差大于阈值则将此分类进一步细分。
θC: 两个聚类中心之间的最短距离。若两类中心间距离小于阈值则合并这两个分类。
L: 一次迭代中允许合并的聚类中心的最多数量。
I: 允许的最大迭代次数。
2) 选择一些样本作为初始的聚类中心,按照最近邻原则将样本分类,并计算新的类中心。
3) 计算各类中的样本数、类内标准差和各类间距。按照给定的参数值决定是否调整类中心的个数。
4) 判断结果是否符合要求,若符合则结束运算,否则返回步骤2)。
4.2 特征向量的建立机动片段是时间序列数据,不能直接使用ISODATA算法进行聚类。可以先提取机动片段的统计特征,并用一个特征向量来表征机动片段后再带入聚类算法。
文献[1]中采用均值与方差来代表一个飞参序列并取得了成功,本文借鉴这种方法,使用机动片段中各个飞参的均值与方差建立特征向量。
设含有n个飞参、m个数据点的机动片段为:
矩阵中每一列为一种飞参,每一行为一个数据样本,每个元素代表飞参的具体数值。
首先,为了消除各个飞参数据间数值量级上的差异需要对飞参数据进行规范化处理,本文按下式将飞参数据规范为-0.5~0.5。
而后分别计算规范化后每组飞参数据的均值与方差
最后构建含2n个元素的特征向量
用ISODATA算法对所有机动片段的特征向量分类即可实现对机动片段的分类。
4.3 聚类结果的评价在没有验证数据集的情况下一般使用相对评价法评判聚类结果[14],本文选用如下2个指标:
1) 类中心间的距离。一般选取欧式距离
2) 类内样本标准差
本文采用以下评价函数来评价一次聚类结果的整体效果:
该函数实际上是对各类的类间距和类内标准差的加权平均再相除。可以看出,类间距越大、类内标准差越小时函数值越大,对聚类效果的评价越高。
5 算 例为了验证本文方法的有效性,分别使用一组小规模数据与一组大规模数据验证算法的有效性。
根据文献[1, 2, 3, 4, 5]中的经验,算法选择高度、速度、俯仰角、倾斜角、侧滑角和法向过载6个飞参进行机动划分。由于飞机的机动动作必然伴随着飞机法向过载的改变,因此选择法向过载为主参数。
5.1 小规模数据验证现有某飞机的飞行数据如图 4所示,其中H为高度,V为速度,NY为法向过载。经人工识别可确定该次飞行中共执行了4种、6次机动动作,在图 4中以字母A~D标出,其中A1与A2为一种相同机动动作,B1与B2为另一种相同机动动作。
1) 趋势识别:
分析法向过载数据的数值特征,一种比较好的参数设置方法如表 1所示。识别结果如图 5,图中浅色实线表示平飞趋势,深色实线曲线表示上升趋势,虚线表示下降趋势。从图中可见趋势识别结果准确可靠。
2) 机动片段提取与特征向量的建立:
选取θh=128从数据中提取出7个机动片段,如图 6所示。可以看出1~6号机动片段与真实机动片段完全吻合,7号机动片段为误分导致的虚假机动片段。按照公式(3)将机动片段内的飞参分别规范化处理,再按照公式(4)、(5)计算各机动片段内飞参的均值与方差构建特征向量,特征向量如表2所示(篇幅有限仅给出部分)。
序号 | 特征向量 | |||||||||||
1 | -0.304 6 | 0.095 8 | 0.063 2 | 0.019 9 | 0.053 7 | 0.039 8 | 0.002 0 | 0.054 9 | 0.063 5 | 0.199 0 | -0.363 6 | 0.026 1 |
2 | -0.093 6 | 0.047 2 | 0.084 5 | 0.009 1 | 0.085 3 | 0.022 9 | 0.018 0 | 0.014 1 | 0.435 2 | 0.001 8 | -0.377 0 | 0.025 9 |
| …… | |||||||||||
7 | -0.457 3 | 0.017 8 | -0.000 5 | 0.082 9 | 0.049 9 | 0.246 5 | -0.019 0 | 0.125 0 | -0.037 9 | 0.219 1 | -0.364 5 | 0.016 5 |
3) 聚类参数的选择:
ISODATA的6个聚类参数中,K、L、I 3个参数比较容易选择,θN、θS、θC难以调整。本文选取K=30,L=1,I=100,采用遗传算法寻找θN、θS、θC。设适应度函数为:
遗传算法参数设置如表 3所示,算法进化结果如图 7所示,图中三角形代表每代最优个体的适应度,圆圈代表每代的平均适应度。算法在70代时基本收敛,最终得到最优的参数设置值为θN=1,θS=0.173 8,θC=0.143 7此时聚类评价函数值V=2.061。
项目 | 参数设置 | ||
种群大小 | 20 | ||
编码方式 | 二进制 | ||
编码长度 | 20 | ||
代沟 | 0.8 | ||
最大进化代数 | 100 | ||
选择方式 | 随机抽样 | ||
交叉方式 | 单点交叉 | ||
项目 | 参数设置 | ||
变异方式 | 离散变异 | ||
目标函数 | 聚类评估函数 | ||
适应度计算 | 线性 | ||
θN | [0, 10] | ||
θS | [0, 1] | ||
θC | [0, 1] | ||
终止条件 | 满足进化代数 |
4) 聚类分析:
设置聚类参数为K=30,L=1,I=100,θN=1,θS=0.173 8,θC=0.143 7,ISODATA算法将7个机动片段归为4类,每类的包含的机动片段个数以及机动片段编号如表 4所示。
可见除了由于误划分而产生的虚假机动片段7外,该算法成功识别出了数据中的全部6个机动动作并正确归为4类。
5.2 大规模数据验证为了进一步验证算法的工程应用价值,选择某3组飞行数据进行机动识别。识别过程和算法各参数的选取与5.1节中相同,此处略去分析过程仅给出机动划分结果。
经人工识别,3组飞行数据中共包含9种、67个机动动作,每种机动动作分别以A~I的字母表示。算法从数据中提取出75个机动片段,经聚类分析后得到13种机动分类,其中包括8个虚假机动片段及2个虚假分类。
算法得到的机动划分结果与人工识别的正确结果对比如表 5所示。其中,划分正确率定义为正确划分的机动片段个数除以机动片段总数;识别正确率定义为正确划分的机动片段个数除以实际机动动作总数。
分类编号 | 对应机动动作 | 实际机动动作个数 | 正确划分个数 | 错误划分个数 | 错误原因 |
1 | F | 10 | 10 | 0 | |
2 | E | 3 | 1 | 2 | B类误分 |
3 | A | 11 | 10 | 0 | |
4 | D | 9 | 9 | 1 | A类误分 |
5 | G | 6 | 6 | 1 | 虚假片段 |
6 | H | 9 | 7 | 0 | |
7 | C | 7 | 7 | 2 | 虚假片段 |
8 | — | 0 | 0 | 3 | 虚假片段 |
9 | I | 9 | 8 | 2 | H类误分 |
10 | — | 0 | 0 | 3 | 虚假片段、I类误分 |
11 | B | 3 | 2 | 1 | E类误分 |
实际机动总数 | 67 | 正确划分总数 | 60 | 错误划分总数 | 15 |
划分正确率 | 80.0% | ||||
识别正确率 | 89.55% |
从结果可以看出,89.55%的机动动作能够被算法识别出并正确分类,证明算法具有解决工程实际问题的能力。但为了保证算法能够提取出数据中的所有潜在机动片段,在参数设置时偏于激进,导致算法过分类,产生了8个虚假机动片段与2个虚假分类,干扰了机动划分的准确性。
6 结 论本文提出了基于数据挖掘思想的飞机机动划分方法,该方法仅凭借飞行数据的数值特征即可实现对飞机机动动作的自动划分。根据本文分析可以得到以下结论:
1) 机动划分的数据挖掘方法充分利用了飞行数据本身的数值特征实现机动动作的识别与划分,机动划分的精度与效果通过算法中的若干参数控制。算法参数的选取可以通过遗传算法等优化算法自适应的完成,因此本文提出算法具有通用性与自适应性。
2) 经验证,本文提出的机动划分方法能够识别并正确分类飞行数据中89%以上的机动动作,具有一定的工程应用价值。
3) 本方法能够为传统机动识别方法提供数据支持,极大的减少工作量。由于算法能自动的将数据中相同或相似的机动动作归类,因此仅需略微修正分类结果并识别出各分类所代表的机动动作的物理含义即可完成机动识别。这在建立新机机动库等经验知识不足的情况下能有效提高工作效率。
本文方法还存在着虚假分类较多、分类结果解释困难等问题。进一步可以考虑结合专家经验与推理机,用少量推理规则消除聚类结果中的虚假分类并识别各个分类所代表的具体机动动作。
[1] | Eric Bechhoefer. The Best Regime Recognition Algorithm for HUMS[C]//American Helicopter Society Specialist's Meeting on Condition Based Maintenance, 2008 |
[2] | Oza N C, Tumer K, Tumer I Y, et al. Classification of Aircraft Maneuvers for Fault Detection[M]. Multiple Classifier Systems Springer Berlin Heidelberg, 2003: 375-384 |
[3] | 倪世宏, 史忠科, 谢川,等. 军用战机机动飞行动作识别知识库的建立[J]. 计算机仿真, 2005, 22(4):23-26 Ni Shihong, Shi Zhongke, Xie Chuan, et al. Establishment of Avion Inflight Maneuver Action Recognizing Knowledge Base[J]. Computer Simulation, 2005, 22(4): 23-26 (in Chinese) |
Cited By in Cnki (12) | |
[4] | Barndt G, Sarkar S, Miller C. Maneuver Regime Recognition Development and Verification for H-60 Structural Monitoring[C]//Annual Forum Proceedings-American Helicopter Society, American Helicopter Society, INC, 2007, 63(1): 317 |
[5] | Suresh M, Nam P, David C. Maneuver Recognition Verification & Validation Using Visualization[C]//AIAC-14 Fourteenth Australian International Aerospace Congress APISAT 2011, Melbourne, Australian |
[6] | 谢川, 倪世宏, 张宗麟,等. 基于状态匹配与支持向量机的飞行动作识别方法[J]. 弹箭与制导学报, 2004, 24(2):240-245 Xie Chuan, Ni Shihong, Zhang Zonglin, et al. Recognition Method of Acrobatic Maneuver Based on State Matching and Support Vector Machines[J]. Journal of Projectiles; Rockets; Missiles and Guidance, 2004, 24(2):240-245 (in Chinese) |
Cited By in Cnki (3) | |
[7] | 杨俊, 谢寿生. 基于模糊支持向量机的飞机飞行动作识别[J]. 航空学报, 2005, 26(6):738-742 Yang Jun, Xie Shousheng. Fuzzy Support Vector Machines Based Recognition for AeroplaneFlight Action[J]. Acta Aeronautica et Astronautica Sinica, 2005, 26(6): 738-742 (in Chinese) |
Cited By in Cnki (11) | |
[8] | Kim D, Pechaud L. Improved Methodology for the Prediction of the Empennage Maneuver In-Flight Loads of a General Aviation Aircraft Using Neural Networks[R]. Embry-Riddle Aeronautical Univ, Daytona Beach Fl, 2001 |
[9] | 李玉峰, 倪世宏. 一种基于模糊Kohonen网络的飞行数据智能处理方法[J]. 系统工程与电子技术, 2002, 24(9): 53-55 Li Yufeng, Ni Shihong. An Intelligent Approach to Flight Data Processing Based on a Fuzzy Kohonen Neural Network[J]. Systems Engineering and Electronics, 2002, 24(9): 53-55 (in Chinese) |
Cited By in Cnki (9) | |
[10] | 苏晨, 倪世宏, 王彦鸿. 一种改进人工免疫的飞行状态规则提取方法[J]. 计算机工程与应用, 2011, 47(3): 237-239 Su Cheng, Ni Shihong, Wang Yanhong. Method of Rule Acquirement of Flight State Based on Improved AIS[J]. Computer Engineering and Applications, 2011, 47(3): 237-239 (in Chinese) |
Cited By in Cnki (2) | |
[11] | 高原, 倪世宏, 王彦鸿, 等. 一种基于改进量子遗传算法的飞行状态规则提取方法[J]. 电光与控制, 2011, 18(1): 28-31 Gao Yuan, Ni Shihong, Wang Yanhong, et al. A Method for Flight State Rule Acquisition Based on Improved Quantum Genetic Algorithm[J]. Electronics Optics & Control, 2011, 18(1): 28-31 (in Chinese) |
Cited By in Cnki (5) | |
[12] | 高东, 马昕, 许欣,等. 基于滑动窗口的定性趋势分析方法及应用[J]. 计算机应用研究, 2014, 31(5): 1441-1444 Gao Dong, Ma Xin, Xu Xin, et al. Method and Application of Qualitative Trend Analysis with Sliding Window[J]. Application Research of Computers, 2014, 31(5): 1441-1444 (in Chinese) |
Click to display the text | |
[13] | 齐敏, 李大健, 郝重阳. 模式识别导论[M]. 北京: 清华大学出版社, 2009: 27-35 Qi Min, Li Dajian, Hao Chongyang. An Introduction to Pattern Recognition[M]. Beijing, Tsinghua University Press, 2009: 27-35 (in Chinese) |
[14] | 杨燕, 靳蕃, Mohamed K. 聚类有效性评价综述[J]. 计算机应用研究, 2008, 25(6): 1630-1632 Yang Yan, Jin Fan, Mohamed K. Survey of Clustering Validity Evaluation[J]. Application Research of Computers, 2008, 25(6): 1630-1632 (in Chinese) |
Cited By in Cnki (144) |