发明名称 遥测数据驱动的无人机飞行状态识别方法
摘要 本发明提供了一种遥测数据驱动的无人机飞行状态识别方法,本发明提出一种基于切比雪夫特征提取和随机森林分类算法(Chebyshev‑Random Forest Algorithm,C‑RF算法)的无人机状态识别方法。采用Chebyshev拟合法对无人机的遥测数据进行特征提取和降维,利用随机森林算法实现飞行状态的自适应分类。所提出方法将Chebyshev拟合系数计算简单、接近最佳拟合的优点与随机森林算法的训练速度快、分类准确率高和抗噪能力强等优点相结合,可覆盖无人机的各类样本且避免过拟合问题,实现了无人机飞行状态的有效识别。采用真实无人机飞行遥测数据进行验证,总体识别准确率高于90%,少类样本同样被准确识别,证明了所提出方法的有效性和实用性。
申请公布号 CN106197424A 申请公布日期 2016.12.07
申请号 CN201610487801.4 申请日期 2016.06.28
申请人 哈尔滨工业大学 发明人 彭宇;贺思捷;刘大同;王文娟;彭喜元
分类号 G01C21/20(2006.01)I 主分类号 G01C21/20(2006.01)I
代理机构 北京天奇智新知识产权代理有限公司 11340 代理人 范光晔
主权项 一种遥测数据驱动的无人机飞行状态识别方法,其特征在于以下步骤,步骤一:数据预处理及特征提取无人机遥测数据的预处理包括以下三个部分:野值剔除,数据分段和遥测数据平滑滤波;①野值剔除原始的无人机遥测数据存在野值点和噪声,因此在进行无人机飞行状态识别之前,需要对数据进行预处理,去除野值,采用3σ原则处理数据的一阶差分,将野值剔除;假设某次飞行中,参数x共记录了n个时刻的值{x<sub>1</sub>,x<sub>2</sub>,…,x<sub>n</sub>},首先计算该参数的一阶差分y,即y<sub>i</sub>=x<sub>i+1</sub>‑x<sub>i</sub>,且i=1,2,…n‑1;计算一阶差分y的平均值<img file="FDA0001033537550000011.GIF" wi="35" he="46" />和标准差σ,依据3σ原则将<img file="FDA0001033537550000012.GIF" wi="275" he="62" />以外的数据点对应的原始数据删除;②数据分段无人机的各个飞行状态连续的记录在遥测数据中,为了实现对无人机不同飞行状态的识别,需要将数据根据飞行状态的不同进行分段;根据无人机飞行前预设的导航点可以较为准确得划分出爬升,下降等飞行状态,而转弯,盘旋与平飞的划分则通过对橫偏差数据进行分析,利用数值方法对橫偏差求取一阶导数,判断橫偏差出现突变的点,从而确定从平飞到转弯与盘旋间的分界点;最后,利用遥测数据中的经度,维度和高度的三维图验证数据分段的准确性,并对不同飞行状态进行标定,此时每个样本均为特征维数固定,而行数随样本的采样时间不同而变化的矩阵,如下式<img file="FDA0001033537550000013.GIF" wi="606" he="311" />其中,A<sub>i</sub>是第i个遥测参数,i=1,2,…,m;m是遥测参数的个数;t<sub>j</sub>是第j个时间点,j=1,2,…,n;n是该样本采样时间点的个数;③遥测数据平滑滤波无人机遥测数据包含在测量过程中引入的噪声,采用滑动平均方法实现对数据的平滑滤波,其核心思想是计算序列的多个顺序数值的滑动平均,由此形成一个平均值的新序列,即序列中的每一点的数值均由其之后的序列均值代替,即:<maths num="0001"><math><![CDATA[<mrow><msubsup><mi>a</mi><mrow><mi>i</mi><mi>j</mi></mrow><mo>&prime;</mo></msubsup><mo>=</mo><mfrac><mn>1</mn><mi>m</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mi>i</mi></mrow><mrow><mi>i</mi><mo>+</mo><mi>m</mi><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>a</mi><mrow><mi>k</mi><mi>j</mi></mrow></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001033537550000021.GIF" wi="500" he="111" /></maths>原始样本中的每个点a<sub>ij</sub>均被a′<sub>ij</sub>代替,此时高频噪声被滤除,数据的变化更为平滑;对数据进行必要的预处理之后,每个数据样本转化为列数相同而行数不同的矩阵,此时采用Chebyshev拟合算法实现特征提取,将样本转化为统一的形式,用于后续分类算法的输入;步骤二:Chebyshev拟合特征提取分别对分段后的每一维时间序列{a<sub>1</sub>,a<sub>2</sub>,…,a<sub>n</sub>}进行Chebyshev拟合,将其视为一组二维数据<img file="FDA0001033537550000022.GIF" wi="211" he="70" />其中d<sub>i</sub>为采样点时间点,用正整数数字序号{1,2,…,n}代替,将时间和参数变化趋势的关系进行拟合;假设:<maths num="0002"><math><![CDATA[<mrow><msub><mi>a</mi><mi>i</mi></msub><mo>&ap;</mo><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></munderover><msub><mi>c</mi><mi>j</mi></msub><msub><mi>T</mi><mi>j</mi></msub><mrow><mo>(</mo><msub><mi>d</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001033537550000023.GIF" wi="502" he="115" /></maths>根据最小二乘原理,使拟合的残差平方和最小,即:<maths num="0003"><math><![CDATA[<mrow><mi>min</mi><mi> </mi><mi>J</mi><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><mi>V</mi><msup><mrow><mo>(</mo><msub><mi>d</mi><mi>i</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>=</mo><mo>&lt;</mo><mi>T</mi><mi>C</mi><mo>-</mo><mi>A</mi><mo>,</mo><mi>T</mi><mi>C</mi><mo>-</mo><mi>A</mi><mo>&gt;</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001033537550000024.GIF" wi="757" he="111" /></maths>其中,C=[c<sub>0</sub> c<sub>1</sub> … c<sub>k</sub>]<sup>T</sup>是Chebyshev系数,某维参数在n个点的真实遥测参数为A=[a<sub>1</sub> a<sub>2</sub> … a<sub>n</sub>]<sup>T</sup>,Chebyshev基函数矩阵如下式:<img file="FDA0001033537550000025.GIF" wi="765" he="253" />由前述正规方程可知,当C为最小二乘估计的最优解时满足:T<sup>T</sup>TC=T<sup>T</sup>A    (6)求解正规方程获得最优的Chebyshev系数,选取前两个Chebyshev系数的商作为该参数的特征,如下:<maths num="0004"><math><![CDATA[<mrow><mi>t</mi><mo>=</mo><mfrac><msub><mi>c</mi><mn>1</mn></msub><msub><mi>c</mi><mn>0</mn></msub></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001033537550000031.GIF" wi="390" he="103" /></maths>由Chebyshev拟合的基函数特性可知,c<sub>0</sub>可以表征数据变化的常数基准,c<sub>1</sub>可以反映数据的变化速率,该商可以表征拟合所获得的主要信息;由此,对于各飞行状态样本中各个参数,仅需一个特征值即可代表该参数在此样本中的序列信息;因此,对一个m维的时间序列,假设第i个维度的特征值为t<sub>i</sub>,仅需将各参数的特征值依次排列,即可构成该飞行状态样本的特征向量,每个飞行状态样本所需的存储空间大幅降低,并且可以被标准化成相同的形式,作为分类算法的输入,实现飞行状态的识别;步骤三:随机森林分类器构建采用随机森林算法,首先需要针对训练数据构建多个CART决策树,再综合多个CART决策树的分类结果,输出最终的飞行样本的状态类型;此时,每个飞行状态样本x<sub>i</sub>均可用一个特征向量表示,训练样本集为X={x<sub>1</sub>,x<sub>2</sub>,…,x<sub>n</sub>},样本的类别为Y={y<sub>1</sub>,y<sub>2</sub>,…,y<sub>n</sub>},n为样本个数,x<sub>i</sub>代表第i个样本,为m个特征值构成的特征向量[t<sub>i1</sub> t<sub>i2</sub> … t<sub>im</sub>],样本对应的类别为y<sub>i</sub>,而y<sub>i</sub>~{1,2,…,o},即共有o种飞行状态;构建CART决策树的过程就是寻找最优的分割属性,递归得将数据划分为更小的子集,CART决策树的选择标准是寻找使划分后的子树Gini指数最低的属性,并计算该属性分割点的值;当该节点的分割属性确定时,原始节点被划分为两个子节点S<sub>1</sub>和S<sub>2</sub>;针对子节点S<sub>i</sub>,其Gini指数表达式为:<maths num="0005"><math><![CDATA[<mrow><mi>G</mi><mi>i</mi><mi>n</mi><mi>i</mi><mrow><mo>(</mo><msub><mi>S</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>=</mo><mn>1</mn><mo>-</mo><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>o</mi></munderover><msubsup><mi>p</mi><mi>k</mi><mn>2</mn></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001033537550000032.GIF" wi="541" he="103" /></maths>即分别计算从类别1到类别o的样本在该节点的出现频率的平方和,当该节点中仅存在一种类别时,Gini指数的值为0,但当样本分布越均匀,Gini指数则更接近1,即该节点的不纯度变高;此时,原始节点被划分为各子节点构成的一棵子树,子树的Gini指数为:<maths num="0006"><math><![CDATA[<mrow><msub><mi>Gini</mi><mi>T</mi></msub><mrow><mo>(</mo><mi>S</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><mo>|</mo><msub><mi>S</mi><mn>1</mn></msub><mo>|</mo></mrow><mi>S</mi></mfrac><mi>G</mi><mi>i</mi><mi>n</mi><mi>i</mi><mrow><mo>(</mo><msub><mi>S</mi><mn>1</mn></msub><mo>)</mo></mrow><mo>+</mo><mfrac><mrow><mo>|</mo><msub><mi>S</mi><mn>2</mn></msub><mo>|</mo></mrow><mi>S</mi></mfrac><mi>G</mi><mi>i</mi><mi>n</mi><mi>i</mi><mrow><mo>(</mo><msub><mi>S</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001033537550000041.GIF" wi="768" he="119" /></maths>通过最小化Gini指数获得最优分割属性,并自顶向下逐渐增加决策树的子节点,通常决策树生长的停止标准是该节点的样本数目达到某一阈值或者Gini指数达到最小值;然而,用于生成随机森林的CART树不需要考虑过拟合问题,应尽量使其自由生长,无需剪枝;此时,可获得在某一方面具有很强分类能力的分类器,这样在随机森林算法最终集成多个子分类器时,才能更为全面得获得针对不同类别的分类能力;随机森林算法的核心是集成多个具有随机性的CART决策树,其随机性体现在两个方面,训练集的随机性和构建分类器时所用特征属性的随机性,随机森林分类器构建流程如下:(1)随机选择训练样本对原有训练集进行重采样,原有训练集为X={x<sub>1</sub>,x<sub>2</sub>,…,x<sub>n</sub>},以相同的概率从原有训练集中随机抽取n个样本组成新的训练集,第1次重采样后的训练集为X<sub>1</sub>={x<sub>11</sub>,x<sub>12</sub>,…,x<sub>1n</sub>},此后第i次重采样的训练集为X<sub>i</sub>={x<sub>i1</sub>,x<sub>i2</sub>,…,x<sub>in</sub>},在重采样的训练集中可以重复出现原有训练集中的样本,每次重采样获得的新的训练集各不相同,使构建的子分类器具有一定的随机性;(2)随机选取特征属性为了使不同CART决策树间的差异性增大,在每次构建CART决策树时选取不同的特征属性作为决策树的分割属性,样本的原有特征向量为[t<sub>1</sub> t<sub>2</sub> … t<sub>m</sub>],共包含m个分类属性,在构建不同CART决策树时,则随机抽取其中p个不同的特征作为CART决策树可选择分类属性,此时样本的特征向量为[t<sub>1</sub> t<sub>2</sub> … t<sub>p</sub>],其中p≤m;(3)构建CART决策树选用第一步重采样获得的训练集和第二步随机选取的特征属性,构建单一的CART决策树f,其中,第i棵决策树的函数表示为:f<sub>i</sub>(x,θ<sub>i</sub>):X<sub>i</sub>→Y    (10)其中,X<sub>i</sub>是输入向量,即重采样后获得的飞行状态样本训练集,θ是独立同分布的随机向量,该向量表征作用在数据集的特征空间,用于构建子特征空间的随机选择;(4)循环实现第一步到第三步的操作假设随机森林是由k棵CART决策树组成的,即将第一步到第三步的操作循环k次,构建k个不同的CART决策树,则随机森林可以表示为:F={f<sub>1</sub>,f<sub>2</sub>,…,f<sub>k</sub>}    (11)(5)集成CART决策树的分类结果随机森林F由k个决策树组成,当输入一个飞行状态样本时,k个决策树会分别输出一个对应的飞行状态类型,随机森林算法的核心思想是将多个决策树的结果进行投票,最终获得投票数最多的类别,即为该飞行样本的状态类型,如下式:<maths num="0007"><math><![CDATA[<mrow><msup><mi>y</mi><mo>*</mo></msup><mo>=</mo><munder><mi>argmax</mi><mrow><mi>y</mi><mo>&Element;</mo><mi>Y</mi></mrow></munder><munder><mo>&Sigma;</mo><mrow><mi>f</mi><mo>&Element;</mo><mi>F</mi></mrow></munder><mi>I</mi><mrow><mo>(</mo><mi>f</mi><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo><mo>=</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001033537550000051.GIF" wi="694" he="94" /></maths>其中,I(·)是指示函数,当括号中条件成立时为1,反之为0,y<sup>*</sup>是输出飞行状态的类型。
地址 150001 黑龙江省哈尔滨市南岗区西大直街92号